2 # Note - gpcb-menu.res is used to build gpcb-menu.h
3 # Note - parameters are sensitive to extra spaces around the commas
9 ctrl = { Mode(Save) Mode(None) Mode(Restore) Mode(Notify) }
10 shift-ctrl = { Mode(Save) Mode(Remove) Mode(Notify) Mode(Restore) }
17 ctrl = Display(CycleCrosshair)
22 ctrl = { Mode(Save) Mode(Copy) Mode(Notify) }
23 up-ctrl = { Mode(Notify) Mode(Restore) }
24 shift-ctrl = { Display(ToggleRubberbandMode) Mode(Save) Mode(Move) Mode(Notify) }
25 up-shift-ctrl = { Mode(Notify) Mode(Restore) Display(ToggleRubberbandMode) }
37 # If you want zoom to center, do this instead.
38 #Up = { {Zoom(0.8) Center()} }
39 #Down = { {Zoom(1.25) Center()} }
49 {"Save layout" Save(Layout) tip="Saves current layout"}
50 {"Save layout as..." Save(LayoutAs) tip="Saves current layout into a new file"}
52 {"Revert" Load(Revert,none) tip="Revert to the layout stored on disk"}
54 {"Import Schematics" Import() }
55 {"Load layout" Load(Layout) tip="Load a layout from a file"}
56 {"Load element data to paste-buffer" PasteBuffer(Clear) Load(ElementTobuffer)}
57 {"Load layout data to paste-buffer" PasteBuffer(Clear) Load(LayoutTobuffer)}
58 {"Load netlist file" Load(Netlist)}
59 {"Load vendor resource file" LoadVendorFrom()}
61 {"Save connection data of"
62 {" a single element" GetXY(Click to set the element mark <>) Save(ElementConnections)}
63 {" all elements" Save(AllConnections)}
64 {" unused pins" Save(AllUnusedPins)}
67 {"Print layout..." Print()}
68 {"Export layout..." Export()}
69 {"Calibrate Printer..." PrintCalibrate()}
71 {"Start new layout" New()}
73 {"Preferences..." DoWindows(Preferences)}
75 {"Quit Program" Quit() a={"Ctrl-Q" "Ctrl<Key>q"}}
82 {"Undo last operation" Undo() a={"U" "<Key>u"}}
83 {"Redo last undone operation" Redo() a={"Shift-R" "Shift<Key>r"}}
84 {"Clear undo-buffer" Undo(ClearList) a={"Shift-Ctrl-U" "Shift Ctrl<Key>u"}}
86 {"Cut selection to buffer" GetXY(Click to set the snap point for this buffer)
87 PasteBuffer(Clear) PasteBuffer(AddSelected) RemoveSelected() Mode(PasteBuffer)
88 a={"Ctrl-X" "Ctrl<Key>x"}}
89 {"Copy selection to buffer" GetXY(Click to set the snap point for this buffer)
90 PasteBuffer(Clear) PasteBuffer(AddSelected) Unselect(All) Mode(PasteBuffer)
91 a={"Ctrl-C" "Ctrl<Key>c"}}
92 {"Paste buffer to layout" Mode(PasteBuffer) a={"Ctrl-V" "Ctrl<Key>v"}}
94 {"Unselect all" Unselect(All) a={"Shift-Alt-A" "Shift Alt<Key>a"}}
95 {"Select all visible" Select(All) a={"Alt-A" "Alt<Key>a"}}
98 {"text on layout" ChangeName(Object) a={"N" "<Key>n"}}
99 {"layout" ChangeName(Layout)}
100 {"active layer" ChangeName(Layer)}
102 {"Edit attributes of"
103 {"Layout" Attributes(Layout)}
104 {"CurrentLayer" Attributes(Layer)}
105 {"Element" Attributes(Element)}
108 {"Move to current layer" MoveToCurrentLayer(Object) a={"M" "<Key>m"}}
109 {"Move selected to current layer" MoveToCurrentLayer(Selected) a={"Shift-M" "Shift<Key>m"}}
110 {"Route Styles" @routestyles
112 {"Edit..." AdjustStyle(0)}
120 {"Enable visible grid" checked=drawgrid Display(Grid)}
122 {"mil" checked=grid_units_mm,0 SetUnits(mil)}
123 {"mm" checked=grid_units_mm,1 SetUnits(mm)}
126 {"No Grid" checked=gridsize,1 SetValue(Grid,1)}
128 { "0.1 mil" checked=gridsize,10 SetUnits(mil) SetValue(Grid,10)}
129 { "1 mil" checked=gridsize,100 SetUnits(mil) SetValue(Grid,100)}
130 { "5 mil" checked=gridsize,500 SetUnits(mil) SetValue(Grid,500)}
131 { "10 mil" checked=gridsize,1000 SetUnits(mil) SetValue(Grid,1000)}
132 { "25 mil" checked=gridsize,2500 SetUnits(mil) SetValue(Grid,2500)}
133 { "50 mil" checked=gridsize,5000 SetUnits(mil) SetValue(Grid,5000)}
134 {"100 mil" checked=gridsize,10000 SetUnits(mil) SetValue(Grid,10000)}
136 {"0.01 mm" checked=gridsize,39 SetUnits(mm) SetValue(Grid,39.37007874)}
137 {"0.05 mm" checked=gridsize,197 SetUnits(mm) SetValue(Grid,196.85039370)}
138 {"0.1 mm" checked=gridsize,394 SetUnits(mm) SetValue(Grid,393.70078740)}
139 {"0.25 mm" checked=gridsize,984 SetUnits(mm) SetValue(Grid,984.25197)}
140 {"0.5 mm" checked=gridsize,1969 SetUnits(mm) SetValue(Grid,1968.503937)}
141 {"1 mm" checked=gridsize,3937 SetUnits(mm) SetValue(Grid,3937.00787400)}
143 {"Grid -5mil" SetValue(Grid,-5,mil) a={"Shift-G" "Shift<Key>g"}}
144 {"Grid +5mil" SetValue(Grid,+5,mil) a={"G" "<Key>g"}}
145 {"Grid -0.05mm" SetValue(Grid,-0.05,mm) a={"Shift-Ctrl-G" "Shift Ctrl<Key>g"}}
146 {"Grid +0.05mm" SetValue(Grid,+0.05,mm) a={"Ctrl-G" "Ctrl<Key>g"}}
148 {"Realign grid" GetXY(Click to set the grid origin) Display(ToggleGrid)}
150 {"Displayed element name"
151 {"Description" Display(Description) checked=elementname,1}
152 {"Reference Designator" Display(NameOnPCB) checked=elementname,2}
153 {"Value" Display(Value) checked=elementname,3}
155 {"Enable Pinout shows number" checked=shownumber Display(ToggleName)}
156 {"Pins/Via show Name/Number" Display(PinOrPadName) a={"D" "<Key>d"}}
158 {"Zoom In 20%" Zoom(-1.2) m=Z a={"Z" "<Key>z"}}
159 {"Zoom Out 20%" Zoom(+1.2) m=O a={"Shift-Z" "Shift<Key>z"}}
160 {"More zooms and view changes"
161 {"Zoom Max" Zoom() m=M a={"V" "<Key>v"}}
162 {"Zoom In 2X" Zoom(-2)}
163 {"Zoom Out 2X" Zoom(+2)}
164 {"Zoom to 0.1mil/px" Zoom(=10)}
165 {"Zoom to 0.01mm/px" Zoom(=39.37)}
166 {"Zoom to 1mil/px" Zoom(=100)}
167 {"Zoom to 0.05mm/px" Zoom(=196.8504)}
168 {"Zoom to 2.5mil/px" Zoom(=250)}
169 {"Zoom to 0.1mm/px" Zoom(=393.7)}
170 {"Zoom to 10mil/px" Zoom(=1000)}
171 {"Zoom In 20% and center" Zoom(-1.2) Center() m=Z }
172 {"Zoom Out 20% and center" Zoom(+1.2) Center() m=O }
173 {"Flip up/down" checked=flip_y SwapSides(V) a={"Tab" "<Key>Tab"}}
174 {"Flip left/right" checked=flip_x SwapSides(H) a={"Shift-Tab" "Shift<Key>Tab"}}
175 {"Spin 180 degrees" SwapSides(R) a={"Ctrl-Tab" "Ctrl<Key>Tab"}}
176 {"Swap Sides" SwapSides() a={"Ctrl-Shift-Tab" "Ctrl Shift<Key>Tab"}}
177 {"Center cursor" Center() a={"C" "<Key>c"}}
183 {"Edit Layer Groups" EditLayerGroups()}
188 {"Delete current layer" MoveLayer(c,-1)}
189 {"Add new layer" MoveLayer(-1,c)}
190 {"Move current layer up" MoveLayer(c,up)}
191 {"Move current layer down" MoveLayer(c,down)}
199 {"'All-direction' lines" checked=alldirection Display(Toggle45Degree) a={"." "<Key>."}}
200 {"Auto swap line start angle" checked=swapstartdir Display(ToggleStartDirection)}
201 {"Orthogonal moves" checked=orthomove Display(ToggleOrthoMove)}
202 {"Crosshair snaps to pins and pads" checked=snappin Display(ToggleSnapPin)}
203 {"Crosshair shows DRC clearance" checked=showdrc Display(ToggleShowDRC)}
204 {"Auto enforce DRC clearance" checked=autodrc Display(ToggleAutoDRC)}
205 {"Lock Names" checked=locknames Display(ToggleLockNames)}
206 {"Only Names" checked=onlynames Display(ToggleOnlyNames)}
207 {"Hide Names" checked=hidenames Display(ToggleHideNames)}
209 {"Rubber band mode" checked=rubberband Display(ToggleRubberBandMode)}
210 {"Require unique element names" checked=uniquename Display(ToggleUniqueNames)}
211 {"Auto-zero delta measurements" checked=localref Display(ToggleLocalRef)}
212 {"New lines, arcs clear polygons" checked=clearnew Display(ToggleClearLine)}
213 {"New polygons are full ones" checked=newfullpoly Display(ToggleFullPoly)}
214 {"Show autorouter trials" checked=liveroute Display(ToggleLiveRoute)}
215 {"Thin draw" checked=thindraw Display(ToggleThindraw) a={"|" "<Key>|"}}
216 {"Thin draw poly" checked=thindrawpoly Display(ToggleThindrawPoly) a={"Ctrl-Shift-P" "Ctrl Shift<Key>p"}}
217 {"Check polygons" checked=checkplanes Display(ToggleCheckPlanes)}
219 {"Vendor drill mapping" ToggleVendor() checked=VendorMapOn}
226 {"Select all visible objects" Select(All)}
227 {"Select all connected objects" Select(Connection)}
229 {"Unselect all objects" Unselect(All)}
230 {"unselect all connected objects" Unselect(Connection)}
233 {"All objects" Select(ObjectByName) active=have_regex}
234 {"Elements" Select(ElementByName) active=have_regex}
235 {"Pads" Select(PadByName) active=have_regex}
236 {"Pins" Select(PinByName) active=have_regex}
237 {"Text" Select(TextByName) active=have_regex}
238 {"Vias" Select(ViaByName) active=have_regex}
241 {"Auto-place selected elements" AutoPlaceSelected() a={"Ctrl-P" "Ctrl<Key>p"}}
242 {"Disperse all elements" DisperseElements(All)}
243 {"Disperse selected elements" DisperseElements(Selected)}
245 {"Move selected elements to other side" Flip(SelectedElements) a={"Shift-B" "Shift<Key>b"}}
246 {"Remove selected objects" RemoveSelected() a={"Shift-Delete" "Shift<Key>Delete"}}
247 {"Convert selection to element" Select(Convert)}
249 {"Optimize selected rats" DeleteRats(SelectedRats) AddRats(SelectedRats)}
250 {"Auto-route selected rats" AutoRoute(SelectedRats) a={"Alt-R" "Alt<Key>r"}}
251 {"Rip up selected auto-routed tracks" RipUp(Selected)}
253 {"Change size of selected objects"
254 {"Lines -10 mil" ChangeSize(SelectedLines,-10,mil) ChangeSize(SelectedArcs,-10,mil)}
255 {"Lines +10 mil" ChangeSize(SelectedLines,+10,mil) ChangeSize(SelectedArcs,+10,mil)}
256 {"Pads -10 mil" ChangeSize(SelectedPads,-10,mil)}
257 {"Pads +10 mil" ChangeSize(SelectedPads,+10,mil)}
258 {"Pins -10 mil" ChangeSize(SelectedPins,-10,mil)}
259 {"Pins +10 mil" ChangeSize(SelectedPins,+10,mil)}
260 {"Texts -10 mil" ChangeSize(SelectedTexts,-10,mil)}
261 {"Texts +10 mil" ChangeSize(SelectedTexts,+10,mil)}
262 {"Vias -10 mil" ChangeSize(SelectedVias,-10,mil)}
263 {"Vias +10 mil" ChangeSize(SelectedVias,+10,mil)}
266 {"Change drilling hole of selected objects"
267 {"Vias -10 mil" ChangeDrillSize(SelectedVias,-10,mil)}
268 {"Vias +10 mil" ChangeDrillSize(SelectedVias,+10,mil)}
269 {"Pins -10 mil" ChangeDrillSize(SelectedPins,-10,mil)}
270 {"Pins +10 mil" ChangeDrillSize(SelectedPins,+10,mil)}
273 {"Change square-flag of selected objects"
274 {"Elements" ChangeSquare(SelectedElements)}
275 {"Pins" ChangeSquare(SelectedPins)}
283 {"Cut selection to buffer" GetXY(Click to set the snap point for this buffer)
284 PasteBuffer(Clear) PasteBuffer(AddSelected) RemoveSelected() Mode(PasteBuffer)}
285 {"Paste buffer to layout" Mode(PasteBuffer)}
287 {"Rotate buffer 90 deg CCW" Mode(PasteBuffer) PasteBuffer(Rotate,1)
288 a={"Shift-F7" "Shift<Key>F7"}}
289 {"Rotate buffer 90 deg CW" Mode(PasteBuffer) PasteBuffer(Rotate,3)}
290 {"Mirror buffer (up/down)" Mode(PasteBuffer) PasteBuffer(Mirror)}
291 {"Mirror buffer (left/right)" Mode(PasteBuffer) PasteBuffer(Rotate,1)
292 PasteBuffer(Mirror) PasteBuffer(Rotate,3)}
294 {"Clear buffer" PasteBuffer(Clear)}
295 {"Convert buffer to element" PasteBuffer(Convert)}
296 {"Break buffer elements to pieces" PasteBuffer(Restore)}
297 {"Save buffer elements to file" Save(PasteBuffer)}
299 {"Select current buffer" foreground=grey50 sensitive=false}
300 {"#1" checked=buffer,1 PasteBuffer(1) a={"Shift-1" "Shift<Key>1"}}
301 {"#2" checked=buffer,2 PasteBuffer(2) a={"Shift-2" "Shift<Key>2"}}
302 {"#3" checked=buffer,3 PasteBuffer(3) a={"Shift-3" "Shift<Key>3"}}
303 {"#4" checked=buffer,4 PasteBuffer(4) a={"Shift-4" "Shift<Key>4"}}
304 {"#5" checked=buffer,5 PasteBuffer(5) a={"Shift-5" "Shift<Key>5"}}
311 {"Lookup connection to object" GetXY(Click on the object) Connection(Find) a={"Ctrl-F" "Ctrl<Key>f"}}
312 {"Reset scanned pads/pins/vias" Connection(ResetPinsViasAndPads) Display(Redraw)}
313 {"Reset scanned lines/polygons" Connection(ResetLinesAndPolygons) Display(Redraw)}
314 {"Reset all connections" Connection(Reset) Display(Redraw) a={"Shift-F" "Shift<Key>f"}}
316 {"Optimize rats nest" Atomic(Save) DeleteRats(AllRats)
317 Atomic(Restore) AddRats(AllRats) Atomic(Block) a={"O" "<Key>o"}}
318 {"Erase rats nest" DeleteRats(AllRats) a={"E" "<Key>e"}}
319 {"Erase selected rats" DeleteRats(SelectedRats) a={"Shift-E" "Shift<Key>e"}}
321 {"Auto-route selected rats" AutoRoute(Selected)}
322 {"Auto-route all rats" AutoRoute(AllRats)}
323 {"Rip up all auto-routed tracks" RipUp(All)}
325 {"Optimize routed tracks"
326 {"Auto-Optimize" djopt(auto) a={"Shift-=" "Shift<Key>="}}
327 {"Debumpify" djopt(debumpify) }
328 {"Unjaggy" djopt(unjaggy) }
329 {"Vianudge" djopt(vianudge) }
330 {"Viatrim" djopt(viatrim) }
331 {"Ortho pull" djopt(orthopull) }
332 {"Simple optimization" djopt(simple) a={"=" "<Key>="}}
333 {"Miter" djopt(miter) }
334 {"Puller" a={"Y" "<Key>y"} Puller() }
336 {"Selected" GlobalPuller(selected) }
337 {"Found" GlobalPuller(found) }
338 {"All" GlobalPuller() }
341 {"Only autorouted nets" OptAutoOnly() checked=optautoonly}
344 {"Design Rule Checker" DRC()}
346 {"Apply vendor drill mapping" ApplyVendor()}
353 {"Generate object report" ReportObject() a={"Ctrl-R" "Ctrl<Key>r"}}
354 {"Generate drill summary" Report(DrillReport)}
355 {"Report found pins/pads" Report(FoundPins)}
357 {"Remove" a={"Delete" "<Key>Delete"}
363 {"Remove Selected" a={"Backspace" "<Key>BackSpace"}
366 {"Remove Connected" a={"Shift-Backspace" "Shift<Key>BackSpace"}
400 {"Set Same" a={"A" "<Key>a"} SetSame()}
401 {"Flip Object" a={"B" "<Key>b"} Flip(Object)}
402 {"Find Connections" a={"F" "<Key>f"} Connection(Reset) Connection(Find)}
403 {"ToggleHideName Object" a={"H" "<Key>h"} ToggleHideName(Object)}
404 {"ToggleHideName SelectedElement" a={"Shift-H" "Shift<Key>h"} ToggleHideName(SelectedElements)}
405 {"ChangeHole Object" a={"Ctrl-H" "Ctrl<Key>h"} ChangeHole(Object)}
406 {"ChangeJoin Object" a={"J" "<Key>j"} ChangeJoin(Object)}
407 {"ChangeJoin SelectedObject" a={"Shift-J" "Shift<Key>j"} ChangeJoin(SelectedObjects)}
408 {"Clear Object +2 mil" a={"K" "<Key>k"} ChangeClearSize(Object,+2,mil)}
409 {"Clear Object -2 mil" a={"Shift-K" "Shift<Key>k"} ChangeClearSize(Object,-2,mil)}
410 {"Clear Selected +2 mil" a={"Ctrl-K" "Ctrl<Key>k"} ChangeClearSize(SelectedObjects,+2,mil)}
411 {"Clear Selected -2 mil" a={"Shift-Ctrl-K" "Shift Ctrl<Key>k"} ChangeClearSize(SelectedObjects,-2,mil)}
412 {"Line Tool size +5 mil" a={"L" "<Key>l"} SetValue(LineSize,+5,mil)}
413 {"Line Tool size -5 mil" a={"Shift-L" "Shift<Key>l"} SetValue(LineSize,-5,mil)}
414 {"MarkCrosshair" a={"Ctrl-M" "Ctrl<Key>m"} MarkCrosshair()}
415 {"Select shortest rat" a={"Shift-N" "Shift<Key>n"} AddRats(Close)}
416 {"AddRats to selected pins" a={"Shift-O" "Shift<Key>o"}
420 AddRats(SelectedRats)
422 {"ChangeOctagon Object" a={"Ctrl-O" "Ctrl<Key>o"} ChangeOctagon(Object)}
423 {"Polygon PreviousPoint" a={"P" "<Key>p"} Polygon(PreviousPoint)}
424 {"Polygon Close" a={"Shift-P" "Shift<Key>p"} Polygon(Close)}
425 {"ChangeSquare Object" a={"Q" "<Key>q"} ChangeSquare(ToggleObject)}
426 {"ChangeSize +5 mil" a={"S" "<Key>s"} ChangeSize(Object,+5,mil)}
427 {"ChangeSize -5 mil" a={"Shift-S" "Shift<Key>s"} ChangeSize(Object,-5,mil)}
428 {"ChangeDrill +5 mil" a={"Alt-S" "Alt<Key>s"} ChangeDrillSize(Object,+5,mil)}
429 {"ChangeDrill -5 mil" a={"Alt-Shift-S" "Alt Shift<Key>s"} ChangeDrillSize(Object,-5,mil)}
430 {"Text Tool scale +10 mil" a={"T" "<Key>t"} SetValue(TextScale,+10,mil)}
431 {"Text Tool scale -10 mil" a={"Shift-T" "Shift<Key>t"} SetValue(TextScale,-10,mil)}
432 {"Via Tool size +5 mil" a={"Shift-V" "Shift<Key>v"} SetValue(ViaSize,+5,mil)}
433 {"Via Tool size -5 mil" a={"Shift-Ctrl-V" "Shift Ctrl<Key>v"} SetValue(ViaSize,-5,mil)}
434 {"Via Tool drill +5 mil" a={"Alt-V" "Alt<Key>v"} SetValue(ViaDrillingHole,+5,mil)}
435 {"Via Tool drill -5 mil" a={"Alt-Shift-V" "Alt Shift<Key>v"} SetValue(ViaDrillingHole,-5,mil)}
436 {"AddRats Selected" a={"Shift-W" "Shift<Key>w"} AddRats(SelectedRats)}
437 {"Add All Rats" a={"W" "<Key>w"} AddRats(AllRats)}
438 {"Cycle Clip" a={"/" "<Key>/"} Display(CycleClip)}
439 {"Arrow Mode" a={"Space" "<Key>space"} Mode(Arrow) checked=arrowmode,1}
440 {"Temp Arrow ON" a={"[" "<Key>["} Mode(Save) Mode(Arrow) Mode(Notify)}
441 {"Temp Arrow OFF" a={"]" "<Key>]"} Mode(Release) Mode(Restore)}
443 {"Step Up" a={"Up" "<Key>Up"} Cursor(Warp,0,1,grid)}
444 {"Step Down" a={"Down" "<Key>Down"} Cursor(Warp,0,-1,grid)}
445 {"Step Left" a={"Left" "<Key>Left"} Cursor(Warp,-1,0,grid)}
446 {"Step Right" a={"Right" "<Key>Right"} Cursor(Warp,1,0,grid)}
447 {"Step +Up" a={"Up" "Shift<Key>Up"} Cursor(Pan,0,50,view)}
448 {"Step +Down" a={"Down" "Shift<Key>Down"} Cursor(Pan,0,-50,view)}
449 {"Step +Left" a={"Left" "Shift<Key>Left"} Cursor(Pan,-50,0,view)}
450 {"Step +Right" a={"Right" "Shift<Key>Right"} Cursor(Pan,50,0,view)}
451 {'"Click"' a={"Enter" "<Key>Enter"} Mode(Notify) Mode(Release)}
460 {"Library" DoWindows(Library) a={"i" "<Key>i"}}
461 {"Message Log" DoWindows(Log)}
462 {"DRC Check" DoWindows(DRC)}
463 {"Netlist" DoWindows(Netlist)}
464 {"Command Entry" Command() a={":" "<Key>:"}}
465 {"Pinout" Display(Pinout) a={"Shift-D" "Shift<Key>d"}}
475 {"Operations on selections"
476 {"Unselect all objects" Unselect(All)}
477 {"Remove selected objects" RemoveSelected()}
478 {"Copy selection to buffer"
479 GetXY(Click to set the snap point for this buffer)
481 PasteBuffer(AddSelected)
484 {"Cut selection to buffer"
485 GetXY(Click to set the snap point for this buffer)
487 PasteBuffer(AddSelected)
491 {"Convert selection to element" Select(Convert)}
492 {"Auto place selected elements" AutoPlaceSelected()}
493 {"Autoroute selected elements" AutoRoute(SelectedRats)}
494 {"Rip up selected auto-routed tracks" RipUp(Selected)}
496 {"Operations on this location"
497 {"Generate object report" GetXY(Click on the object) Report(Object)}
500 {"Undo last operation" Undo()}
501 {"Redo last undone operation" Redo()}
504 {"None" checked=nomode,1 Mode(None)}
505 {"Via" checked=viamode,1 Mode(Via) a={"F1" "<Key>F1"}}
506 {"Line" checked=linemode,1 Mode(Line) a={"F2" "<Key>F2"}}
507 {"Arc" checked=arcmode,1 Mode(Arc) a={"F3" "<Key>F3"}}
508 {"Text" checked=textmode,1 Mode(Text) a={"F4" "<Key>F4"}}
509 {"Rectangle" checked=rectanglemode,1 Mode(Rectangle) a={"F5" "<Key>F5"}}
510 {"Polygon" checked=polygonmode,1 Mode(Polygon) a={"F6" "<Key>F6"}}
511 {"Polygon Hole" checked=polygonholemode,1 Mode(PolygonHole)}
512 {"Buffer" checked=pastebuffermode,1 Mode(PasteBuffer) a={"F7" "<Key>F7"}}
513 {"Remove" checked=removemode,1 Mode(Remove) a={"F8" "<Key>F8"}}
514 {"Rotate" checked=rotatemode,1 Mode(Rotate) a={"F9" "<Key>F9"}}
515 {"Thermal" checked=thermalmode,1 Mode(Thermal) a={"F10" "<Key>F10"}}
516 {"Arrow" checked=arrowmode,1 Mode(Arrow) a={"F11" "<Key>F11"}}
517 {"Insert Point" checked=insertpointmode,1 Mode(InsertPoint) a={"Insert" "<Key>Insert"}}
518 {"Move" checked=movemode,1 Mode(Move)}
519 {"Copy" checked=copymode,1 Mode(Copy)}
520 {"Lock" checked=lockmode,1 Mode(Lock) a={"F12" "<Key>F12"}}
521 {"Cancel" Mode(Escape) a={"Esc" "<Key>Escape"}}