~ubuntu-branches/debian/squeeze/latexdraw/squeeze

« back to all changes in this revision

Viewing changes to latexDraw/ui/components/LMenuBar.java

  • Committer: Bazaar Package Importer
  • Author(s): Stuart Prescott
  • Date: 2009-05-03 23:49:35 UTC
  • Revision ID: james.westby@ubuntu.com-20090503234935-cls7n48x018g0vk2
Tags: upstream-2.0.2+1
ImportĀ upstreamĀ versionĀ 2.0.2+1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * LMenuBar.java
 
3
 */
 
4
package latexDraw.ui.components;
 
5
 
 
6
import java.awt.event.InputEvent;
 
7
import java.awt.event.KeyEvent;
 
8
import java.util.Vector;
 
9
 
 
10
import javax.swing.ButtonGroup;
 
11
import javax.swing.JCheckBoxMenuItem;
 
12
import javax.swing.JMenu;
 
13
import javax.swing.JMenuBar;
 
14
import javax.swing.JMenuItem;
 
15
import javax.swing.JRadioButtonMenuItem;
 
16
import javax.swing.KeyStroke;
 
17
 
 
18
import latexDraw.lang.LaTeXDrawLang;
 
19
import latexDraw.ui.CodePanel;
 
20
import latexDraw.ui.DrawPanel;
 
21
import latexDraw.ui.LaTeXDrawFrame;
 
22
import latexDraw.ui.dialog.ExceptionFrameDialog;
 
23
import latexDraw.ui.listeners.MenusListener;
 
24
import latexDraw.ui.listeners.RecentFilesListener;
 
25
import latexDraw.util.LaTeXDrawResources;
 
26
 
 
27
 
 
28
/** 
 
29
 * Defines the latexdraw menu bar..<br>
 
30
 *<br>
 
31
 * This file is part of LaTeXDraw<br>
 
32
 * Copyright (c) 2005-2008 Arnaud BLOUIN<br>
 
33
 *<br>
 
34
 *  LaTeXDraw is free software; you can redistribute it and/or modify
 
35
 *  it under the terms of the GNU General Public License as published by
 
36
 *  the Free Software Foundation; either version 2 of the License, or
 
37
 *  (at your option) any later version.<br>
 
38
 *<br>
 
39
 *  LaTeXDraw is distributed without any warranty; without even the 
 
40
 *  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
 
41
 *  PURPOSE. See the GNU General Public License for more details.<br>
 
42
 *<br>
 
43
 * 09/22/07<br>
 
44
 * @author Arnaud BLOUIN<br>
 
45
 * @version 2.0.0<br>
 
46
 */
 
47
public class LMenuBar extends JMenuBar
 
48
{
 
49
        private static final long       serialVersionUID        = 1L;
 
50
        
 
51
        /** The menu which allows to import templates */
 
52
        protected MenuTemplate menuTemplate;
 
53
        
 
54
        /** Allows to cut a figure */
 
55
        protected JMenuItem cutMenu;
 
56
        
 
57
        /** Allows to paste a figure */
 
58
        protected JMenuItem pasteMenu;
 
59
        
 
60
        /** Allows to copy a figure */
 
61
        protected JMenuItem copyMenu;
 
62
        
 
63
        /** This menu allows to export the drawing as a template */
 
64
        protected JMenuItem exportTemplateMenu;
 
65
        
 
66
        /** Allows to undo actions */
 
67
        protected JMenuItem undoMenu;
 
68
        
 
69
        /** Allows to redo actions */
 
70
        protected JMenuItem redoMenu;
 
71
        
 
72
    /** This menu allows the user to export either the pstricks code or the drawing as jpg picture */
 
73
        protected JMenu exportAsMenu;
 
74
        
 
75
        protected JMenu recentFilesMenu;
 
76
        
 
77
        /** The menu "drawing" */
 
78
        protected JMenu drawMenu;
 
79
        
 
80
        /** This menu allows the user to set his preferences */
 
81
        protected JMenuItem preferencesMenu;
 
82
        
 
83
        /** This menu allows the set the properties of the selected figure */
 
84
        protected JMenuItem propertiesFigureMenu;
 
85
        
 
86
    /** This menu allows the user to delete a figure in the drawing. */
 
87
        protected JMenuItem deleteFigure;
 
88
    
 
89
    /** This menu allows the user to see or not the borders of the drawing */
 
90
    protected JCheckBoxMenuItem displayBorders;
 
91
    
 
92
    /** This menu allows the user to see or not the X-scale */
 
93
    protected JCheckBoxMenuItem displayXScale;
 
94
    
 
95
    /** This menu allows the user to see or not the Y-scale */
 
96
    protected JCheckBoxMenuItem displayYScale;
 
97
    
 
98
    /** This menu allows the user to see or not the grids */
 
99
    protected JCheckBoxMenuItem displayGrid;
 
100
    
 
101
    protected JCheckBoxMenuItem displayPersoGrid;
 
102
    
 
103
    /** This menu allows the user to set visible or not the code panel */
 
104
    protected JCheckBoxMenuItem displayCodePanel;
 
105
    
 
106
    /** This menu allows to activate the automatic adjustment of the borders of the drawing */
 
107
    protected JCheckBoxMenuItem autoAdjustBorders;
 
108
    
 
109
        /** The button of the menubar to draw polygons */
 
110
    protected JRadioButtonMenuItem menuPoly;
 
111
        
 
112
        /** The button of the menubar to draw lines */
 
113
    protected JRadioButtonMenuItem menuLine;
 
114
        
 
115
        /** The button of the menubar to draw rectangles */
 
116
    protected JRadioButtonMenuItem menuRect;
 
117
        
 
118
        /** The button of the menubar to draw squares */
 
119
    protected JRadioButtonMenuItem menuSquare;
 
120
        
 
121
        /** The button of the menubar to draw dots */
 
122
    protected JRadioButtonMenuItem menuDot;
 
123
        
 
124
        /** The button of the menubar to draw rhombus */
 
125
    protected JRadioButtonMenuItem menuRhombus;
 
126
        
 
127
        /** The button of the menubar to draw triangles */
 
128
    protected JRadioButtonMenuItem menuTriangle;
 
129
        
 
130
        /** The button of the menubar to draw joined lines */
 
131
    protected JRadioButtonMenuItem menuJoinedLines;
 
132
        
 
133
        /** The button of the menubar to draw circles */
 
134
    protected JRadioButtonMenuItem menuCircle;
 
135
        
 
136
    protected JRadioButtonMenuItem menuAxes;
 
137
        
 
138
        /** The button of the menubar to draw chords */
 
139
    protected JRadioButtonMenuItem menuChord;
 
140
        
 
141
        /** The button of the menubar to draw ellipses */
 
142
    protected JRadioButtonMenuItem menuEllipse;
 
143
        
 
144
        /** The button of the menubar to draw BĆ©zier curves */
 
145
    protected JRadioButtonMenuItem menuBezierCurve;
 
146
        
 
147
    protected JRadioButtonMenuItem menuClosedBezierCurve;
 
148
        
 
149
        /** The button of the menubar to select figures */
 
150
    protected JRadioButtonMenuItem menuSelect;
 
151
        
 
152
        /** The button of the menubar to draw arcs */
 
153
    protected JRadioButtonMenuItem menuArc;
 
154
        
 
155
        /** The button of the menubar to draw wedges */
 
156
    protected JRadioButtonMenuItem menuWedge;
 
157
        
 
158
        /** The button of the menubar to draw texts */
 
159
    protected JRadioButtonMenuItem menuText;
 
160
        
 
161
        /** The button of the menubar to draw akin points */
 
162
    protected JRadioButtonMenuItem menuPointsAkin;
 
163
        
 
164
        /** The button of the menubar to draw grids */
 
165
    protected JRadioButtonMenuItem menuGrid;
 
166
        protected JCheckBoxMenuItem menuAutoUpdate;
 
167
        protected JMenuItem menuReloadCode;
 
168
        protected JMenuItem updateToGridMenu;
 
169
        
 
170
        protected LaTeXDrawFrame parentFrame;
 
171
        
 
172
        
 
173
        public LMenuBar(LaTeXDrawFrame p)
 
174
        {
 
175
                super();
 
176
                
 
177
                if(p==null)
 
178
                        throw new IllegalArgumentException();
 
179
                
 
180
                parentFrame = p;
 
181
                
 
182
                MenusListener ml = parentFrame.getMenuListener();
 
183
                ButtonGroup drawMenuGroup = new ButtonGroup();
 
184
 
 
185
                JMenu fileMenu = new JMenu(LaTeXDrawLang.getStringLaTeXDrawFrame("LaTeXDrawFrame.88")); //$NON-NLS-1$
 
186
                JMenu editMenu = new JMenu(LaTeXDrawLang.getStringLaTeXDrawFrame("LaTeXDrawFrame.89")); //$NON-NLS-1$
 
187
                JMenu displayM = new JMenu(LaTeXDrawLang.getStringLaTeXDrawFrame("LaTeXDrawFrame.90")); //$NON-NLS-1$
 
188
                drawMenu = new JMenu(LaTeXDrawLang.getStringLaTeXDrawFrame("LaTeXDrawFrame.91")); //$NON-NLS-1$
 
189
                JMenu insertMenu = new JMenu(LaTeXDrawLang.getString1_6("LaTeXDrawFrame.10")); //$NON-NLS-1$
 
190
                JMenu codeMenu = new JMenu(LaTeXDrawLang.getStringLaTeXDrawFrame("LaTeXDrawFrame.92")); //$NON-NLS-1$
 
191
                JMenu helpMenu = new JMenu(LaTeXDrawLang.getStringLaTeXDrawFrame("LaTeXDrawFrame.93")); //$NON-NLS-1$
 
192
                JMenuItem menu;
 
193
                
 
194
                undoMenu = new JMenuItem(LaTeXDrawResources.LABEL_UNDO, KeyEvent.VK_Z);
 
195
                undoMenu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z,InputEvent.CTRL_MASK));
 
196
                undoMenu.setIcon(LaTeXDrawResources.undoIcon);
 
197
                undoMenu.addActionListener(ml); 
 
198
                undoMenu.setActionCommand(LaTeXDrawResources.LABEL_UNDO);
 
199
                editMenu.add(undoMenu); 
 
200
                
 
201
                redoMenu = new JMenuItem(LaTeXDrawResources.LABEL_REDO, KeyEvent.VK_Y);
 
202
                redoMenu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Y,InputEvent.CTRL_MASK));
 
203
                redoMenu.setIcon(LaTeXDrawResources.redoIcon);
 
204
                redoMenu.addActionListener(ml); 
 
205
                redoMenu.setActionCommand(LaTeXDrawResources.LABEL_REDO);
 
206
                editMenu.add(redoMenu); 
 
207
                
 
208
                editMenu.addSeparator();
 
209
                
 
210
                copyMenu = new JMenuItem(LaTeXDrawResources.LABEL_COPY, KeyEvent.VK_C);
 
211
                copyMenu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_MASK));
 
212
                copyMenu.setIcon(LaTeXDrawResources.copyIcon);
 
213
                copyMenu.addActionListener(ml); 
 
214
                copyMenu.setActionCommand(LaTeXDrawResources.LABEL_COPY);
 
215
                editMenu.add(copyMenu); 
 
216
                copyMenu.setEnabled(false);
 
217
                
 
218
                cutMenu = new JMenuItem(LaTeXDrawResources.LABEL_CUT, KeyEvent.VK_X);
 
219
                cutMenu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK));
 
220
                cutMenu.setIcon(LaTeXDrawResources.cutIcon);
 
221
                cutMenu.addActionListener(ml); 
 
222
                cutMenu.setActionCommand(LaTeXDrawResources.LABEL_CUT);
 
223
                editMenu.add(cutMenu); 
 
224
                cutMenu.setEnabled(false);
 
225
                
 
226
                pasteMenu = new JMenuItem(LaTeXDrawResources.LABEL_PASTE, KeyEvent.VK_V);
 
227
                pasteMenu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,InputEvent.CTRL_MASK));
 
228
                pasteMenu.setIcon(LaTeXDrawResources.pasteIcon);
 
229
                pasteMenu.addActionListener(ml); 
 
230
                pasteMenu.setActionCommand(LaTeXDrawResources.LABEL_PASTE);
 
231
                editMenu.add(pasteMenu); 
 
232
                pasteMenu.setEnabled(false);
 
233
                
 
234
                menu = new JMenuItem(LaTeXDrawResources.LABEL_NEW, KeyEvent.VK_N);
 
235
                menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_MASK));
 
236
                menu.setIcon(LaTeXDrawResources.newIcon);
 
237
                menu.addActionListener(ml); 
 
238
                menu.setActionCommand(LaTeXDrawResources.LABEL_NEW);
 
239
                fileMenu.add(menu);
 
240
                
 
241
                menu = new JMenuItem(LaTeXDrawResources.LABEL_NEW_WITH_SEL);
 
242
                menu.setIcon(LaTeXDrawResources.newIcon);
 
243
                menu.addActionListener(ml); 
 
244
                menu.setActionCommand(LaTeXDrawResources.LABEL_NEW_WITH_SEL);
 
245
                fileMenu.add(menu);
 
246
 
 
247
                menu = new JMenuItem(LaTeXDrawResources.LABEL_OPEN, KeyEvent.VK_O);
 
248
                menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MASK));
 
249
                menu.setIcon(LaTeXDrawResources.openIcon);
 
250
                menu.addActionListener(ml); 
 
251
                menu.setActionCommand(LaTeXDrawResources.LABEL_OPEN);
 
252
        fileMenu.add(menu);
 
253
        
 
254
        menu = new JMenuItem(LaTeXDrawResources.LABEL_SAVE, KeyEvent.VK_S);
 
255
        menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
 
256
        menu.setIcon(LaTeXDrawResources.saveIcon);
 
257
        menu.addActionListener(ml); 
 
258
        menu.setActionCommand(LaTeXDrawResources.LABEL_SAVE);
 
259
        fileMenu.add(menu);
 
260
        
 
261
        menu = new JMenuItem(LaTeXDrawResources.LABEL_SAVE_AS, KeyEvent.VK_A);
 
262
        menu.setIcon(LaTeXDrawResources.saveAsIcon);
 
263
        menu.addActionListener(ml); 
 
264
        menu.setActionCommand(LaTeXDrawResources.LABEL_SAVE_AS);
 
265
        fileMenu.add(menu);
 
266
        
 
267
        recentFilesMenu = new JMenu(LaTeXDrawResources.LABEL_RECENT_FILES);
 
268
        recentFilesMenu.setIcon(LaTeXDrawResources.emptyIcon);
 
269
        recentFilesMenu.setActionCommand(LaTeXDrawResources.LABEL_RECENT_FILES);
 
270
        fileMenu.add(recentFilesMenu);
 
271
        
 
272
        fileMenu.addSeparator();
 
273
        
 
274
        JMenu importM = new JMenu(LaTeXDrawResources.LABEL_IMPORT);
 
275
        importM.setIcon(LaTeXDrawResources.importIcon);
 
276
        fileMenu.add(importM);
 
277
        
 
278
        menu = new JMenuItem(LaTeXDrawResources.LABEL_IMPORT_TEX, KeyEvent.VK_X);
 
279
        menu.setIcon(LaTeXDrawResources.insertPSTricksIcon);
 
280
        menu.addActionListener(ml); 
 
281
        menu.setActionCommand(LaTeXDrawResources.LABEL_IMPORT_TEX);
 
282
        importM.add(menu);
 
283
        
 
284
        exportAsMenu = new JMenu(LaTeXDrawResources.LABEL_EXPORT_AS);
 
285
        exportAsMenu.setIcon(LaTeXDrawResources.exportIcon);
 
286
        fileMenu.add(exportAsMenu);
 
287
        exportAsMenu.setEnabled(false);
 
288
        
 
289
        menu = new JMenuItem(LaTeXDrawResources.LABEL_EXPORT_TRICKS, KeyEvent.VK_T);
 
290
        menu.addActionListener(ml); 
 
291
        menu.setActionCommand(LaTeXDrawResources.LABEL_EXPORT_TRICKS);
 
292
        exportAsMenu.add(menu);
 
293
       
 
294
        menu = new JMenuItem(LaTeXDrawResources.LABEL_EXPORT_JPG, KeyEvent.VK_J);
 
295
        menu.addActionListener(ml); 
 
296
        menu.setActionCommand(LaTeXDrawResources.LABEL_EXPORT_JPG);
 
297
        exportAsMenu.add(menu);
 
298
        
 
299
        menu = new JMenuItem(LaTeXDrawResources.LABEL_EXPORT_PNG, KeyEvent.VK_P);
 
300
        menu.addActionListener(ml); 
 
301
        menu.setActionCommand(LaTeXDrawResources.LABEL_EXPORT_PNG);
 
302
        exportAsMenu.add(menu);
 
303
        
 
304
        menu = new JMenuItem(LaTeXDrawResources.LABEL_EXPORT_EPS, KeyEvent.VK_E);
 
305
        menu.addActionListener(ml); 
 
306
        menu.setActionCommand(LaTeXDrawResources.LABEL_EXPORT_EPS);
 
307
        exportAsMenu.add(menu);
 
308
        
 
309
        menu = new JMenuItem(LaTeXDrawResources.LABEL_EXPORT_BMP, KeyEvent.VK_B);
 
310
        menu.addActionListener(ml); 
 
311
        menu.setActionCommand(LaTeXDrawResources.LABEL_EXPORT_BMP);
 
312
        exportAsMenu.add(menu);
 
313
        
 
314
        menu = new JMenuItem(LaTeXDrawResources.LABEL_EXPORT_PPM, KeyEvent.VK_N);
 
315
        menu.addActionListener(ml); 
 
316
        menu.setActionCommand(LaTeXDrawResources.LABEL_EXPORT_PPM);
 
317
        exportAsMenu.add(menu);
 
318
        
 
319
        exportTemplateMenu = new JMenuItem(LaTeXDrawResources.LABEL_TEMPLATE_EXPORT);
 
320
        exportTemplateMenu.addActionListener(ml); 
 
321
        exportTemplateMenu.setActionCommand(LaTeXDrawResources.LABEL_TEMPLATE_EXPORT);
 
322
        exportAsMenu.add(exportTemplateMenu);
 
323
        exportTemplateMenu.setEnabled(false);
 
324
           
 
325
        fileMenu.addSeparator();
 
326
     
 
327
        menu = new JMenuItem(LaTeXDrawResources.LABEL_BATCH_CONVERT, KeyEvent.VK_V);
 
328
        menu.addActionListener(ml); 
 
329
        menu.setIcon(LaTeXDrawResources.copyIcon);
 
330
        menu.setActionCommand(LaTeXDrawResources.LABEL_BATCH_CONVERT);
 
331
        fileMenu.add(menu);
 
332
        
 
333
        fileMenu.addSeparator();
 
334
        
 
335
        preferencesMenu = new JMenuItem(LaTeXDrawResources.LABEL_PREFERENCES, KeyEvent.VK_P);
 
336
        preferencesMenu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P,InputEvent.CTRL_MASK));
 
337
        preferencesMenu.setIcon(LaTeXDrawResources.preferencesIcon);
 
338
        preferencesMenu.addActionListener(parentFrame); 
 
339
        preferencesMenu.setActionCommand(LaTeXDrawResources.LABEL_PREFERENCES);
 
340
        fileMenu.add(preferencesMenu);
 
341
        
 
342
        fileMenu.addSeparator();
 
343
        
 
344
        menu = new JMenuItem(LaTeXDrawResources.LABEL_PRINT_CODE, KeyEvent.VK_E);
 
345
        menu.setIcon(LaTeXDrawResources.printIcon);
 
346
        menu.addActionListener(ml); 
 
347
        menu.setActionCommand(LaTeXDrawResources.LABEL_PRINT_CODE);
 
348
        fileMenu.add(menu);
 
349
         
 
350
        menu = new JMenuItem(LaTeXDrawResources.LABEL_PRINT_DRAW, KeyEvent.VK_D);
 
351
        menu.setIcon(LaTeXDrawResources.printIcon);
 
352
        menu.addActionListener(ml); 
 
353
        menu.setActionCommand(LaTeXDrawResources.LABEL_PRINT_DRAW);
 
354
        fileMenu.add(menu);
 
355
        
 
356
        fileMenu.addSeparator();
 
357
         
 
358
        menu = new JMenuItem(LaTeXDrawResources.LABEL_QUIT, KeyEvent.VK_Q);
 
359
        menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_W,InputEvent.CTRL_MASK));
 
360
        menu.setIcon(LaTeXDrawResources.emptyIcon);
 
361
        menu.addActionListener(ml); 
 
362
        menu.setActionCommand(LaTeXDrawResources.LABEL_QUIT);
 
363
        fileMenu.add(menu);
 
364
        
 
365
        menu = new JMenuItem(LaTeXDrawResources.LABEL_HELP, KeyEvent.VK_H);
 
366
        menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F1, 0));
 
367
        menu.setIcon(LaTeXDrawResources.helpIcon);
 
368
        menu.addActionListener(parentFrame); 
 
369
        menu.setActionCommand(LaTeXDrawResources.LABEL_HELP);
 
370
        helpMenu.add(menu); 
 
371
        
 
372
        menu = new JMenuItem(LaTeXDrawLang.getString1_9("LaTeXDrawFrame.3"), KeyEvent.VK_S); //$NON-NLS-1$
 
373
        menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F2, 0));
 
374
        menu.setIcon(LaTeXDrawResources.helpIcon);
 
375
        menu.addActionListener(ml); 
 
376
        menu.setActionCommand(MenusListener.ACTION_CMD_SHORTCUTS);
 
377
        helpMenu.add(menu);   
 
378
     
 
379
        helpMenu.addSeparator();
 
380
        
 
381
        if(LaTeXDrawFrame.WITH_UPDATE)
 
382
        {
 
383
                menu = new JMenuItem(LaTeXDrawLang.getString1_9("LaTeXDrawFrame.4"), KeyEvent.VK_U); //$NON-NLS-1$
 
384
                menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F3, 0));
 
385
                menu.setIcon(LaTeXDrawResources.updateIcon);
 
386
                menu.addActionListener(ml);
 
387
                menu.setActionCommand(MenusListener.LABEL_CHECK_UPDATE);
 
388
                helpMenu.add(menu);   
 
389
             
 
390
                helpMenu.addSeparator();
 
391
        }
 
392
     
 
393
        menu = new JMenuItem(LaTeXDrawResources.LABEL_ABOUT, KeyEvent.VK_A);
 
394
        menu.setIcon(LaTeXDrawResources.aboutIcon);
 
395
        menu.addActionListener(parentFrame); 
 
396
        menu.setActionCommand(LaTeXDrawResources.LABEL_ABOUT);
 
397
        helpMenu.add(menu);    
 
398
              
 
399
        drawMenu.add(createTemplateMenu());        
 
400
        drawMenu.addSeparator();
 
401
        
 
402
        menu = new JMenu(LaTeXDrawLang.getString1_9("LaTeXDrawFrame.5")); //$NON-NLS-1$
 
403
        menu.setIcon(LaTeXDrawResources.emptyIcon);
 
404
        drawMenu.add(menu);
 
405
        
 
406
        menuLine = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_LINE, LaTeXDrawResources.lineIcon);
 
407
        menuLine.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_L, 0));
 
408
        menuLine.setMnemonic(KeyEvent.VK_L);
 
409
        menuLine.addActionListener(ml);
 
410
        menuLine.setActionCommand(LaTeXDrawResources.LABEL_LINE);
 
411
        menu.add(menuLine);
 
412
        drawMenuGroup.add(menuLine);
 
413
        
 
414
        menuJoinedLines = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_JOINED_LINES, LaTeXDrawResources.joinedLinesIcon);
 
415
        menuJoinedLines.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_J,0));
 
416
        menuJoinedLines.setMnemonic(KeyEvent.VK_J);
 
417
        menuJoinedLines.addActionListener(ml);
 
418
        menuJoinedLines.setActionCommand(LaTeXDrawResources.LABEL_JOINED_LINES);
 
419
        menu.add(menuJoinedLines);
 
420
        drawMenuGroup.add(menuJoinedLines);
 
421
           
 
422
        menuPoly = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_POLY, LaTeXDrawResources.polygonIcon);
 
423
        menuPoly.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P,0));
 
424
        menuPoly.setMnemonic(KeyEvent.VK_P);
 
425
        menuPoly.addActionListener(ml);
 
426
        menuPoly.setActionCommand(LaTeXDrawResources.LABEL_POLY);
 
427
        menu.add(menuPoly);
 
428
        drawMenuGroup.add(menuPoly);
 
429
        menuPoly.setSelected(false);
 
430
        
 
431
        menuDot = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_DOT, LaTeXDrawResources.dotIcon);
 
432
        menuDot.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_D,0));
 
433
        menuDot.setMnemonic(KeyEvent.VK_D);
 
434
        menuDot.addActionListener(ml);
 
435
        menuDot.setActionCommand(LaTeXDrawResources.LABEL_DOT);
 
436
        menu.add(menuDot);
 
437
        drawMenuGroup.add(menuDot);
 
438
        menuDot.setSelected(false);
 
439
        
 
440
        menuRect = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_RECT, LaTeXDrawResources.rectIcon);
 
441
        menuRect.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_R,0));
 
442
        menuRect.setMnemonic(KeyEvent.VK_R);
 
443
        menuRect.addActionListener(ml);
 
444
        menuRect.setActionCommand(LaTeXDrawResources.LABEL_RECT);
 
445
        menu.add(menuRect);
 
446
        drawMenuGroup.add(menuRect);
 
447
        menuRect.setSelected(false);
 
448
        
 
449
        menuSquare = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_SQUARE, LaTeXDrawResources.squareIcon);
 
450
        menuSquare.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,0));
 
451
        menuSquare.setMnemonic(KeyEvent.VK_S);
 
452
        menuSquare.addActionListener(ml);
 
453
        menuSquare.setActionCommand(LaTeXDrawResources.LABEL_SQUARE);
 
454
        menu.add(menuSquare);
 
455
        drawMenuGroup.add(menuSquare);
 
456
        menuSquare.setSelected(false);
 
457
        
 
458
        menuRhombus = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_RHOMBUS, LaTeXDrawResources.rhombusIcon);
 
459
        menuRhombus.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_H,0));
 
460
        menuRhombus.setMnemonic(KeyEvent.VK_H);
 
461
        menuRhombus.addActionListener(ml);
 
462
        menuRhombus.setActionCommand(LaTeXDrawResources.LABEL_RHOMBUS);
 
463
        menu.add(menuRhombus);
 
464
        drawMenuGroup.add(menuRhombus);
 
465
        menuRhombus.setSelected(false);
 
466
        
 
467
        menuTriangle = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_TRIANGLE, LaTeXDrawResources.triangleIcon);
 
468
        menuTriangle.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_T,0));
 
469
        menuTriangle.setMnemonic(KeyEvent.VK_T);
 
470
        menuTriangle.addActionListener(ml);
 
471
        menuTriangle.setActionCommand(LaTeXDrawResources.LABEL_TRIANGLE);
 
472
        menu.add(menuTriangle);
 
473
        drawMenuGroup.add(menuTriangle);
 
474
        menuTriangle.setSelected(false);
 
475
 
 
476
        menuEllipse = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_ELLIPSE, LaTeXDrawResources.ellipseIcon);
 
477
        menuEllipse.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E,0));
 
478
        menuEllipse.setMnemonic(KeyEvent.VK_E);
 
479
        menuEllipse.addActionListener(ml);
 
480
        menuEllipse.setActionCommand(LaTeXDrawResources.LABEL_ELLIPSE);
 
481
        menu.add(menuEllipse);
 
482
        drawMenuGroup.add(menuEllipse);
 
483
        menuEllipse.setSelected(false);
 
484
        
 
485
        menuCircle = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_CIRCLE, LaTeXDrawResources.circleIcon);
 
486
        menuCircle.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,0));
 
487
        menuCircle.setMnemonic(KeyEvent.VK_C);
 
488
        menuCircle.addActionListener(ml);
 
489
        menuCircle.setActionCommand(LaTeXDrawResources.LABEL_CIRCLE);
 
490
        menu.add(menuCircle);
 
491
        drawMenuGroup.add(menuCircle);
 
492
        menuCircle.setSelected(false);
 
493
        
 
494
        menuArc = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_ARC, LaTeXDrawResources.arcIcon);
 
495
        menuArc.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,0));
 
496
        menuArc.setMnemonic(KeyEvent.VK_A);
 
497
        menuArc.addActionListener(ml);
 
498
        menuArc.setActionCommand(LaTeXDrawResources.LABEL_ARC);
 
499
        menu.add(menuArc);
 
500
        drawMenuGroup.add(menuArc);
 
501
        menuArc.setSelected(false);
 
502
        
 
503
        menuWedge = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_WEDGE, LaTeXDrawResources.wedgeIcon);
 
504
        menuWedge.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_W,0));
 
505
        menuWedge.setMnemonic(KeyEvent.VK_W);
 
506
        menuWedge.addActionListener(ml);
 
507
        menuWedge.setActionCommand(LaTeXDrawResources.LABEL_WEDGE);
 
508
        menu.add(menuWedge);
 
509
        drawMenuGroup.add(menuWedge);
 
510
        menuWedge.setSelected(false);
 
511
        
 
512
        menuChord = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_CHORD, LaTeXDrawResources.chordIcon);
 
513
        menuChord.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,0));
 
514
        menuChord.setMnemonic(KeyEvent.VK_O);
 
515
        menuChord.addActionListener(ml);
 
516
        menuChord.setActionCommand(LaTeXDrawResources.LABEL_CHORD);
 
517
        menu.add(menuChord);
 
518
        drawMenuGroup.add(menuChord);
 
519
        menuChord.setSelected(false);
 
520
        
 
521
        menuBezierCurve = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_BEZIER_CURVE, LaTeXDrawResources.bezierCurveIcon);
 
522
        menuBezierCurve.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_B,0));
 
523
        menuBezierCurve.setMnemonic(KeyEvent.VK_B);
 
524
        menuBezierCurve.addActionListener(ml);
 
525
        menuBezierCurve.setActionCommand(LaTeXDrawResources.LABEL_BEZIER_CURVE);
 
526
        menu.add(menuBezierCurve);
 
527
        drawMenuGroup.add(menuBezierCurve);
 
528
        menuBezierCurve.setSelected(false);
 
529
        
 
530
        menuClosedBezierCurve = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_CLOSED_BEZIER_CURVE, LaTeXDrawResources.closedBezierIcon);
 
531
        menuClosedBezierCurve.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,0));
 
532
        menuClosedBezierCurve.setMnemonic(KeyEvent.VK_B);
 
533
        menuClosedBezierCurve.addActionListener(ml);
 
534
        menuClosedBezierCurve.setActionCommand(LaTeXDrawResources.LABEL_CLOSED_BEZIER_CURVE);
 
535
        menu.add(menuClosedBezierCurve);
 
536
        drawMenuGroup.add(menuClosedBezierCurve);
 
537
        menuClosedBezierCurve.setSelected(false);
 
538
        
 
539
        menuGrid = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_GRID, LaTeXDrawResources.gridIcon);
 
540
        menuGrid.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_G,0));
 
541
        menuGrid.setMnemonic(KeyEvent.VK_G);
 
542
        menuGrid.addActionListener(ml);
 
543
        menuGrid.setActionCommand(LaTeXDrawResources.LABEL_GRID);
 
544
        menu.add(menuGrid);
 
545
        drawMenuGroup.add(menuGrid);
 
546
        menuGrid.setSelected(false);
 
547
        
 
548
        menuAxes = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_AXES, LaTeXDrawResources.axesIcon);
 
549
        menuAxes.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z,0));
 
550
        menuAxes.setMnemonic(KeyEvent.VK_Z);
 
551
        menuAxes.addActionListener(ml);
 
552
        menuAxes.setActionCommand(LaTeXDrawResources.LABEL_AXES);
 
553
        menu.add(menuAxes);
 
554
        drawMenuGroup.add(menuAxes);
 
555
        menuAxes.setSelected(false);
 
556
        
 
557
        menuPointsAkin = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_POINTS_AKIN, LaTeXDrawResources.pointsAkinIcon);
 
558
        menuPointsAkin.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_K,0));
 
559
        menuPointsAkin.setMnemonic(KeyEvent.VK_K);
 
560
        menuPointsAkin.addActionListener(ml);
 
561
        menuPointsAkin.setActionCommand(LaTeXDrawResources.LABEL_POINTS_AKIN);
 
562
        menu.add(menuPointsAkin);
 
563
        drawMenuGroup.add(menuPointsAkin);
 
564
        menuPointsAkin.setSelected(false);
 
565
               
 
566
        menuText = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_TEXT, LaTeXDrawResources.textIcon);
 
567
        menuText.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,0));
 
568
        menuText.setMnemonic(KeyEvent.VK_X);
 
569
        menuText.addActionListener(ml);
 
570
        menuText.setActionCommand(LaTeXDrawResources.LABEL_TEXT);
 
571
        menu.add(menuText);
 
572
        drawMenuGroup.add(menuText);
 
573
        menuText.setSelected(false);
 
574
        
 
575
        menuSelect = new JRadioButtonMenuItem(LaTeXDrawResources.LABEL_SELECT_FIGURE, LaTeXDrawResources.selectIcon);
 
576
        menuSelect.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F,0));
 
577
        menuSelect.addActionListener(ml);
 
578
        menuSelect.setActionCommand(LaTeXDrawResources.LABEL_SELECT_FIGURE);
 
579
        drawMenu.add(menuSelect);
 
580
        drawMenuGroup.add(menuSelect);
 
581
        menuSelect.setSelected(true);
 
582
        
 
583
        deleteFigure = new JMenuItem(LaTeXDrawResources.LABEL_DELETE, LaTeXDrawResources.delIcon);
 
584
        deleteFigure.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE,0));
 
585
        deleteFigure.addActionListener(ml);
 
586
        deleteFigure.setActionCommand(LaTeXDrawResources.LABEL_DELETE);
 
587
        deleteFigure.setEnabled(false);
 
588
        drawMenu.add(deleteFigure);
 
589
        
 
590
        updateToGridMenu = new JMenuItem(DrawPanel.LABEL_UPDATE_TO_GRID, LaTeXDrawResources.emptyIcon);
 
591
        updateToGridMenu.setActionCommand(DrawPanel.ACTION_CMD_UPDATETOGRID);
 
592
        updateToGridMenu.addActionListener(ml);
 
593
        drawMenu.add(updateToGridMenu);
 
594
        
 
595
        menu = new JMenuItem(LaTeXDrawLang.getString1_9("LaTeXDrawFrame.6"), LaTeXDrawResources.emptyIcon); //$NON-NLS-1$
 
596
        menu.setToolTipText(LaTeXDrawLang.getString1_9("LaTeXDrawFrame.7")); //$NON-NLS-1$
 
597
                menu.setActionCommand(MenusListener.ACTION_VISIBLE_ALL_FIGURES);
 
598
                menu.addActionListener(ml);
 
599
                drawMenu.add(menu);
 
600
        drawMenu.addSeparator();
 
601
        
 
602
        propertiesFigureMenu = new JMenuItem(LaTeXDrawResources.LABEL_FIGURE_PROPERTIES, LaTeXDrawResources.propertiesIcon);
 
603
        propertiesFigureMenu.addActionListener(ml);
 
604
        propertiesFigureMenu.setActionCommand(LaTeXDrawResources.LABEL_FIGURE_PROPERTIES);
 
605
        propertiesFigureMenu.setEnabled(false);
 
606
        drawMenu.add(propertiesFigureMenu);
 
607
        
 
608
        menu = new JMenuItem(LaTeXDrawResources.LABEL_DRAW_PROPERTIES, LaTeXDrawResources.drawingPropIcon);
 
609
        menu.addActionListener(parentFrame);
 
610
        menu.setActionCommand(LaTeXDrawResources.LABEL_DRAW_PROPERTIES);
 
611
        drawMenu.add(menu);
 
612
        
 
613
        drawMenu.addSeparator();
 
614
        
 
615
        displayBorders = new JCheckBoxMenuItem(LaTeXDrawResources.LABEL_DISPLAY_BORDERS, LaTeXDrawResources.bordersIcon);
 
616
        displayBorders.addActionListener(ml);
 
617
        displayBorders.setActionCommand(LaTeXDrawResources.LABEL_DISPLAY_BORDERS);
 
618
        displayBorders.setSelected(false);
 
619
        drawMenu.add(displayBorders);
 
620
        
 
621
        autoAdjustBorders = new JCheckBoxMenuItem(LaTeXDrawResources.LABEL_AUTO_ADJUST_BORDERS, LaTeXDrawResources.autoBordersIcon);
 
622
        autoAdjustBorders.addActionListener(ml);
 
623
        autoAdjustBorders.setActionCommand(LaTeXDrawResources.LABEL_AUTO_ADJUST_BORDERS);
 
624
        autoAdjustBorders.setSelected(true);
 
625
        drawMenu.add(autoAdjustBorders);
 
626
        
 
627
        
 
628
        displayXScale = new JCheckBoxMenuItem(LaTeXDrawResources.LABEL_DISPLAY_XSCALE, LaTeXDrawResources.emptyIcon);
 
629
        displayXScale.addActionListener(ml);
 
630
        displayXScale.setActionCommand(LaTeXDrawResources.LABEL_DISPLAY_XSCALE);
 
631
        displayXScale.setSelected(LaTeXDrawFrame.DEFAULT_DISPLAY_XSCALE);
 
632
        displayM.add(displayXScale);
 
633
        
 
634
        displayYScale = new JCheckBoxMenuItem(LaTeXDrawResources.LABEL_DISPLAY_YSCALE, LaTeXDrawResources.emptyIcon);
 
635
        displayYScale.addActionListener(ml);
 
636
        displayYScale.setActionCommand(LaTeXDrawResources.LABEL_DISPLAY_YSCALE);
 
637
        displayYScale.setSelected(LaTeXDrawFrame.DEFAULT_DISPLAY_YSCALE);
 
638
        displayM.add(displayYScale);
 
639
        
 
640
        JMenu menuGrill = new JMenu(LaTeXDrawLang.getDialogFrameString("PreferencesFrame.grid"));  //$NON-NLS-1$
 
641
        menuGrill.setIcon(LaTeXDrawResources.displayGridIcon);
 
642
        
 
643
        displayGrid = new JCheckBoxMenuItem(LaTeXDrawResources.LABEL_DISPLAY_GRID, LaTeXDrawResources.emptyIcon);
 
644
        displayGrid.setToolTipText(LaTeXDrawLang.getString1_8("LaTeXDrawFrame.10")); //$NON-NLS-1$
 
645
        displayGrid.addActionListener(parentFrame);
 
646
        displayGrid.setActionCommand(LaTeXDrawResources.LABEL_DISPLAY_GRID);
 
647
        displayGrid.setSelected(LaTeXDrawFrame.DEFAULT_DISPLAY_GRID && MagneticGrid.DEFAULT_TYPE!=MagneticGrid.TYPE_PERSONAL);
 
648
        menuGrill.add(displayGrid);
 
649
        displayM.add(menuGrill);
 
650
        
 
651
        displayPersoGrid = new JCheckBoxMenuItem(LaTeXDrawResources.LABEL_DISPLAY_PERSO_GRID, LaTeXDrawResources.emptyIcon);
 
652
        displayPersoGrid.setToolTipText(LaTeXDrawLang.getString1_8("LaTeXDrawFrame.11")); //$NON-NLS-1$
 
653
        displayPersoGrid.addActionListener(parentFrame);
 
654
        displayPersoGrid.setActionCommand(LaTeXDrawResources.LABEL_DISPLAY_PERSO_GRID);
 
655
        displayPersoGrid.setSelected(LaTeXDrawFrame.DEFAULT_DISPLAY_GRID && MagneticGrid.DEFAULT_TYPE==MagneticGrid.TYPE_PERSONAL);
 
656
        menuGrill.add(displayPersoGrid);
 
657
        
 
658
        displayCodePanel = new JCheckBoxMenuItem(LaTeXDrawResources.LABEL_DISPLAY_CODE_PANEL, LaTeXDrawResources.emptyIcon);
 
659
        displayCodePanel.addActionListener(parentFrame);
 
660
        displayCodePanel.setActionCommand(LaTeXDrawResources.LABEL_DISPLAY_CODE_PANEL);
 
661
        displayCodePanel.setSelected(LaTeXDrawFrame.DEFAULT_DISPLAY_CODEPANEL);
 
662
        displayCodePanel.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E,InputEvent.CTRL_MASK));
 
663
        displayM.add(displayCodePanel);
 
664
        
 
665
        displayM.addSeparator();
 
666
        
 
667
        menu = new JMenuItem(LaTeXDrawResources.LABEL_ZOOM_IN, LaTeXDrawResources.zoomInIcon);
 
668
        menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_ADD,0));
 
669
        menu.setToolTipText(LaTeXDrawLang.getStringLaTeXDrawFrame("LaTeXDrawFrame.94")); //$NON-NLS-1$
 
670
        menu.addActionListener(ml);
 
671
        menu.setActionCommand(LaTeXDrawResources.LABEL_ZOOM_IN);
 
672
        displayM.add(menu);
 
673
        
 
674
        menu = new JMenuItem(LaTeXDrawResources.LABEL_ZOOM_OUT, LaTeXDrawResources.zoomOutIcon);
 
675
        menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_SUBTRACT,0));
 
676
        menu.setToolTipText(LaTeXDrawLang.getStringLaTeXDrawFrame("LaTeXDrawFrame.95")); //$NON-NLS-1$
 
677
        menu.addActionListener(ml);
 
678
        menu.setActionCommand(LaTeXDrawResources.LABEL_ZOOM_OUT);
 
679
        displayM.add(menu);
 
680
        
 
681
        menu = new JMenuItem(LaTeXDrawResources.LABEL_ZOOM_DEFAULT, LaTeXDrawResources.zoomDefaultIcon);
 
682
        menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F9,0));
 
683
        menu.setToolTipText(LaTeXDrawLang.getStringLaTeXDrawFrame("LaTeXDrawFrame.96")); //$NON-NLS-1$
 
684
        menu.addActionListener(ml);
 
685
        menu.setActionCommand(LaTeXDrawResources.LABEL_ZOOM_DEFAULT);
 
686
        displayM.add(menu);
 
687
        
 
688
        menu = new JMenuItem(LaTeXDrawResources.LABEL_INSERT_CODE, LaTeXDrawResources.insertPSTricksIcon);
 
689
        menu.setToolTipText(LaTeXDrawLang.getString1_6("LaTeXDrawFrame.11"));  //$NON-NLS-1$
 
690
        menu.addActionListener(parentFrame);
 
691
        menu.setActionCommand(LaTeXDrawResources.LABEL_INSERT_CODE);
 
692
        insertMenu.add(menu); 
 
693
        
 
694
        menu = new JMenuItem(LaTeXDrawResources.LABEL_INSERT_PIX, LaTeXDrawResources.insertPicIcon);
 
695
        menu.setToolTipText(LaTeXDrawLang.getString1_6("LaTeXDrawFrame.1"));  //$NON-NLS-1$
 
696
        menu.addActionListener(ml);
 
697
        menu.setActionCommand(LaTeXDrawResources.LABEL_INSERT_PIX);
 
698
        insertMenu.add(menu); 
 
699
        
 
700
        menu = new JMenuItem(LaTeXDrawResources.LABEL_COMMENTS, LaTeXDrawResources.commentIcon); 
 
701
        menu.addActionListener(parentFrame);
 
702
        menu.setActionCommand(LaTeXDrawResources.LABEL_COMMENTS);
 
703
        codeMenu.add(menu);
 
704
        
 
705
        codeMenu.addSeparator();
 
706
        
 
707
        menu = new JMenuItem(CodePanel.LABEL_COPY_ALL, LaTeXDrawResources.copyIcon);
 
708
        menu.addActionListener(parentFrame.getCodePanel());
 
709
        menu.setActionCommand(CodePanel.LABEL_COPY_ALL);
 
710
        codeMenu.add(menu);
 
711
        
 
712
        codeMenu.addSeparator();
 
713
        
 
714
        menuAutoUpdate = new JCheckBoxMenuItem(CodePanel.LABEL_AUTO_UPDATE, LaTeXDrawResources.emptyIcon);
 
715
        menuAutoUpdate.addActionListener(parentFrame.getCodePanel());
 
716
        menuAutoUpdate.setToolTipText(LaTeXDrawLang.getOthersString("CodePanel.tip")); //$NON-NLS-1$
 
717
        menuAutoUpdate.setActionCommand(CodePanel.LABEL_AUTO_UPDATE);
 
718
        menuAutoUpdate.setSelected(CodePanel.DEFAULT_AUTO_UPDATE);
 
719
        codeMenu.add(menuAutoUpdate);
 
720
        
 
721
        menuReloadCode = new JMenuItem(CodePanel.LABEL_RELOAD, LaTeXDrawResources.reloadIcon);
 
722
        menuReloadCode.addActionListener(parentFrame.getCodePanel());
 
723
        menuReloadCode.setToolTipText(LaTeXDrawLang.getOthersString("CodePanel.updateCode")); //$NON-NLS-1$
 
724
        menuReloadCode.setActionCommand(CodePanel.LABEL_RELOAD);
 
725
        menuReloadCode.setSelected(!CodePanel.DEFAULT_AUTO_UPDATE);
 
726
        codeMenu.add(menuReloadCode);
 
727
        
 
728
        add(fileMenu);
 
729
        add(editMenu);
 
730
        add(displayM);
 
731
        add(drawMenu);
 
732
        add(insertMenu);
 
733
        add(codeMenu);
 
734
        add(helpMenu);  
 
735
        }
 
736
 
 
737
        
 
738
        
 
739
    /**
 
740
     * Allows to create the menu "template".
 
741
     * @return The menu template.
 
742
     */
 
743
    private JMenu createTemplateMenu()
 
744
    {
 
745
                try
 
746
                {
 
747
                menuTemplate = new MenuTemplate(LaTeXDrawLang.getStringLaTeXDrawFrame("LaTeXDrawFrame.103"), parentFrame); //$NON-NLS-1$
 
748
                menuTemplate.setIcon(LaTeXDrawResources.emptyIcon);
 
749
                
 
750
                }catch(Exception e)
 
751
                {
 
752
                        parentFrame.setStatusBarText(LaTeXDrawLang.getStringLaTeXDrawFrame("LaTeXDrawFrame.105")); //$NON-NLS-1$
 
753
                        e.printStackTrace();
 
754
                        ExceptionFrameDialog.showExceptionDialog(e);
 
755
                }
 
756
        return menuTemplate;
 
757
    }
 
758
 
 
759
        /**
 
760
         * @return the menuTemplate.
 
761
         * @since 2.0.0
 
762
         */
 
763
        public MenuTemplate getMenuTemplate()
 
764
        {
 
765
                return menuTemplate;
 
766
        }
 
767
 
 
768
        /**
 
769
         * @return the cutMenu.
 
770
         * @since 2.0.0
 
771
         */
 
772
        public JMenuItem getCutMenu()
 
773
        {
 
774
                return cutMenu;
 
775
        }
 
776
 
 
777
        /**
 
778
         * @return the pasteMenu.
 
779
         * @since 2.0.0
 
780
         */
 
781
        public JMenuItem getPasteMenu()
 
782
        {
 
783
                return pasteMenu;
 
784
        }
 
785
 
 
786
        /**
 
787
         * @return the copyMenu.
 
788
         * @since 2.0.0
 
789
         */
 
790
        public JMenuItem getCopyMenu()
 
791
        {
 
792
                return copyMenu;
 
793
        }
 
794
 
 
795
        /**
 
796
         * @return the exportTemplateMenu.
 
797
         * @since 2.0.0
 
798
         */
 
799
        public JMenuItem getExportTemplateMenu()
 
800
        {
 
801
                return exportTemplateMenu;
 
802
        }
 
803
 
 
804
        /**
 
805
         * @return the undoMenu.
 
806
         * @since 2.0.0
 
807
         */
 
808
        public JMenuItem getUndoMenu()
 
809
        {
 
810
                return undoMenu;
 
811
        }
 
812
 
 
813
        /**
 
814
         * @return the redoMenu.
 
815
         * @since 2.0.0
 
816
         */
 
817
        public JMenuItem getRedoMenu()
 
818
        {
 
819
                return redoMenu;
 
820
        }
 
821
 
 
822
        /**
 
823
         * @return the exportAsMenu.
 
824
         * @since 2.0.0
 
825
         */
 
826
        public JMenu getExportAsMenu()
 
827
        {
 
828
                return exportAsMenu;
 
829
        }
 
830
 
 
831
        /**
 
832
         * @return the recentFilesMenu.
 
833
         * @since 2.0.0
 
834
         */
 
835
        public JMenu getRecentFilesMenu()
 
836
        {
 
837
                return recentFilesMenu;
 
838
        }
 
839
 
 
840
        /**
 
841
         * @return the drawMenu.
 
842
         * @since 2.0.0
 
843
         */
 
844
        public JMenu getDrawMenu()
 
845
        {
 
846
                return drawMenu;
 
847
        }
 
848
 
 
849
        /**
 
850
         * @return the preferencesMenu.
 
851
         * @since 2.0.0
 
852
         */
 
853
        public JMenuItem getPreferencesMenu()
 
854
        {
 
855
                return preferencesMenu;
 
856
        }
 
857
 
 
858
        /**
 
859
         * @return the propertiesFigureMenu.
 
860
         * @since 2.0.0
 
861
         */
 
862
        public JMenuItem getPropertiesFigureMenu()
 
863
        {
 
864
                return propertiesFigureMenu;
 
865
        }
 
866
 
 
867
        /**
 
868
         * @return the deleteFigure.
 
869
         * @since 2.0.0
 
870
         */
 
871
        public JMenuItem getDeleteFigure()
 
872
        {
 
873
                return deleteFigure;
 
874
        }
 
875
 
 
876
        /**
 
877
         * @return the displayBorders.
 
878
         * @since 2.0.0
 
879
         */
 
880
        public JCheckBoxMenuItem getDisplayBorders()
 
881
        {
 
882
                return displayBorders;
 
883
        }
 
884
 
 
885
        /**
 
886
         * @return the displayXScale.
 
887
         * @since 2.0.0
 
888
         */
 
889
        public JCheckBoxMenuItem getDisplayXScale()
 
890
        {
 
891
                return displayXScale;
 
892
        }
 
893
 
 
894
        /**
 
895
         * @return the displayYScale.
 
896
         * @since 2.0.0
 
897
         */
 
898
        public JCheckBoxMenuItem getDisplayYScale()
 
899
        {
 
900
                return displayYScale;
 
901
        }
 
902
 
 
903
        /**
 
904
         * @return the displayGrid.
 
905
         * @since 2.0.0
 
906
         */
 
907
        public JCheckBoxMenuItem getDisplayGrid()
 
908
        {
 
909
                return displayGrid;
 
910
        }
 
911
 
 
912
        /**
 
913
         * @return the displayPersoGrid.
 
914
         * @since 2.0.0
 
915
         */
 
916
        public JCheckBoxMenuItem getDisplayPersoGrid()
 
917
        {
 
918
                return displayPersoGrid;
 
919
        }
 
920
 
 
921
        /**
 
922
         * @return the displayCodePanel.
 
923
         * @since 2.0.0
 
924
         */
 
925
        public JCheckBoxMenuItem getDisplayCodePanel()
 
926
        {
 
927
                return displayCodePanel;
 
928
        }
 
929
 
 
930
        /**
 
931
         * @return the autoAdjustBorders.
 
932
         * @since 2.0.0
 
933
         */
 
934
        public JCheckBoxMenuItem getAutoAdjustBorders()
 
935
        {
 
936
                return autoAdjustBorders;
 
937
        }
 
938
 
 
939
        /**
 
940
         * @return the menuPoly.
 
941
         * @since 2.0.0
 
942
         */
 
943
        public JRadioButtonMenuItem getMenuPoly()
 
944
        {
 
945
                return menuPoly;
 
946
        }
 
947
 
 
948
        /**
 
949
         * @return the menuLine.
 
950
         * @since 2.0.0
 
951
         */
 
952
        public JRadioButtonMenuItem getMenuLine()
 
953
        {
 
954
                return menuLine;
 
955
        }
 
956
 
 
957
        /**
 
958
         * @return the menuRect.
 
959
         * @since 2.0.0
 
960
         */
 
961
        public JRadioButtonMenuItem getMenuRect()
 
962
        {
 
963
                return menuRect;
 
964
        }
 
965
 
 
966
        /**
 
967
         * @return the menuSquare.
 
968
         * @since 2.0.0
 
969
         */
 
970
        public JRadioButtonMenuItem getMenuSquare()
 
971
        {
 
972
                return menuSquare;
 
973
        }
 
974
 
 
975
        /**
 
976
         * @return the menuDot.
 
977
         * @since 2.0.0
 
978
         */
 
979
        public JRadioButtonMenuItem getMenuDot()
 
980
        {
 
981
                return menuDot;
 
982
        }
 
983
 
 
984
        /**
 
985
         * @return the menuRhombus.
 
986
         * @since 2.0.0
 
987
         */
 
988
        public JRadioButtonMenuItem getMenuRhombus()
 
989
        {
 
990
                return menuRhombus;
 
991
        }
 
992
 
 
993
        /**
 
994
         * @return the menuTriangle.
 
995
         * @since 2.0.0
 
996
         */
 
997
        public JRadioButtonMenuItem getMenuTriangle()
 
998
        {
 
999
                return menuTriangle;
 
1000
        }
 
1001
 
 
1002
        /**
 
1003
         * @return the menuJoinedLines.
 
1004
         * @since 2.0.0
 
1005
         */
 
1006
        public JRadioButtonMenuItem getMenuJoinedLines()
 
1007
        {
 
1008
                return menuJoinedLines;
 
1009
        }
 
1010
 
 
1011
        /**
 
1012
         * @return the menuCircle.
 
1013
         * @since 2.0.0
 
1014
         */
 
1015
        public JRadioButtonMenuItem getMenuCircle()
 
1016
        {
 
1017
                return menuCircle;
 
1018
        }
 
1019
 
 
1020
        /**
 
1021
         * @return the menuAxes.
 
1022
         * @since 2.0.0
 
1023
         */
 
1024
        public JRadioButtonMenuItem getMenuAxes()
 
1025
        {
 
1026
                return menuAxes;
 
1027
        }
 
1028
 
 
1029
        /**
 
1030
         * @return the menuChord.
 
1031
         * @since 2.0.0
 
1032
         */
 
1033
        public JRadioButtonMenuItem getMenuChord()
 
1034
        {
 
1035
                return menuChord;
 
1036
        }
 
1037
 
 
1038
        /**
 
1039
         * @return the menuEllipse.
 
1040
         * @since 2.0.0
 
1041
         */
 
1042
        public JRadioButtonMenuItem getMenuEllipse()
 
1043
        {
 
1044
                return menuEllipse;
 
1045
        }
 
1046
 
 
1047
        /**
 
1048
         * @return the menuBezierCurve.
 
1049
         * @since 2.0.0
 
1050
         */
 
1051
        public JRadioButtonMenuItem getMenuBezierCurve()
 
1052
        {
 
1053
                return menuBezierCurve;
 
1054
        }
 
1055
 
 
1056
        /**
 
1057
         * @return the menuClosedBezierCurve.
 
1058
         * @since 2.0.0
 
1059
         */
 
1060
        public JRadioButtonMenuItem getMenuClosedBezierCurve()
 
1061
        {
 
1062
                return menuClosedBezierCurve;
 
1063
        }
 
1064
 
 
1065
        /**
 
1066
         * @return the menuSelect.
 
1067
         * @since 2.0.0
 
1068
         */
 
1069
        public JRadioButtonMenuItem getMenuSelect()
 
1070
        {
 
1071
                return menuSelect;
 
1072
        }
 
1073
 
 
1074
        /**
 
1075
         * @return the menuArc.
 
1076
         * @since 2.0.0
 
1077
         */
 
1078
        public JRadioButtonMenuItem getMenuArc()
 
1079
        {
 
1080
                return menuArc;
 
1081
        }
 
1082
 
 
1083
        /**
 
1084
         * @return the menuWedge.
 
1085
         * @since 2.0.0
 
1086
         */
 
1087
        public JRadioButtonMenuItem getMenuWedge()
 
1088
        {
 
1089
                return menuWedge;
 
1090
        }
 
1091
 
 
1092
        /**
 
1093
         * @return the menuText.
 
1094
         * @since 2.0.0
 
1095
         */
 
1096
        public JRadioButtonMenuItem getMenuText()
 
1097
        {
 
1098
                return menuText;
 
1099
        }
 
1100
 
 
1101
        /**
 
1102
         * @return the menuPointsAkin.
 
1103
         * @since 2.0.0
 
1104
         */
 
1105
        public JRadioButtonMenuItem getMenuPointsAkin()
 
1106
        {
 
1107
                return menuPointsAkin;
 
1108
        }
 
1109
 
 
1110
        /**
 
1111
         * @return the menuGrid.
 
1112
         * @since 2.0.0
 
1113
         */
 
1114
        public JRadioButtonMenuItem getMenuGrid()
 
1115
        {
 
1116
                return menuGrid;
 
1117
        }
 
1118
 
 
1119
        /**
 
1120
         * @return the menuAutoUpdate.
 
1121
         * @since 2.0.0
 
1122
         */
 
1123
        public JCheckBoxMenuItem getMenuAutoUpdate()
 
1124
        {
 
1125
                return menuAutoUpdate;
 
1126
        }
 
1127
 
 
1128
        /**
 
1129
         * @return the menuReloadCode.
 
1130
         * @since 2.0.0
 
1131
         */
 
1132
        public JMenuItem getMenuReloadCode()
 
1133
        {
 
1134
                return menuReloadCode;
 
1135
        }
 
1136
 
 
1137
        /**
 
1138
         * @return the updateToGridMenu.
 
1139
         * @since 2.0.0
 
1140
         */
 
1141
        public JMenuItem getUpdateToGridMenu()
 
1142
        {
 
1143
                return updateToGridMenu;
 
1144
        }
 
1145
 
 
1146
        /**
 
1147
         * @return the parentFrame.
 
1148
         * @since 2.0.0
 
1149
         */
 
1150
        public LaTeXDrawFrame getParentFrame()
 
1151
        {
 
1152
                return parentFrame;
 
1153
        }
 
1154
        
 
1155
        
 
1156
        
 
1157
        /**
 
1158
         * Updates the menus related to the grid.
 
1159
         * @param displayed Defines if the grid is shown or not.
 
1160
         * @param classic Defines if the grid is classic or defined by the user.
 
1161
         * @since 2.0.0
 
1162
         */
 
1163
        public void setGridDisplayed(boolean displayed, boolean classic)
 
1164
        {
 
1165
                if(displayed)
 
1166
                {
 
1167
                        displayGrid.setSelected(classic);
 
1168
                        displayPersoGrid.setSelected(!classic);
 
1169
                }
 
1170
                else
 
1171
                {
 
1172
                        displayGrid.setSelected(false);
 
1173
                        displayPersoGrid.setSelected(false);
 
1174
                }
 
1175
        }
 
1176
        
 
1177
        
 
1178
        
 
1179
        /**
 
1180
         * Create the menu item of the menu "recent files".
 
1181
         * @since 1.9
 
1182
         */
 
1183
        public void updateRecentFilesMenu()
 
1184
        {
 
1185
                Vector<String> recentFilesName = parentFrame.getPreferencesFrame().getRecentFilesName();
 
1186
                recentFilesMenu.removeAll();
 
1187
                
 
1188
                for(String fileName : recentFilesName)
 
1189
                {
 
1190
                        String shortName = fileName.substring(fileName.lastIndexOf(System.getProperty("file.separator"))+1);//$NON-NLS-1$
 
1191
                        JMenuItem menuItem = new JMenuItem(shortName);
 
1192
                        menuItem.setToolTipText(fileName);
 
1193
                        menuItem.addActionListener(parentFrame.getRecentFilesListener());
 
1194
                        menuItem.setActionCommand(RecentFilesListener.RECENT_PREFIX_CMD+fileName);
 
1195
                        recentFilesMenu.add(menuItem);
 
1196
                }
 
1197
                
 
1198
                recentFilesMenu.addSeparator();
 
1199
                JMenuItem delMenu = new JMenuItem(LaTeXDrawLang.getString1_9("LaTeXDrawFrame.2"), LaTeXDrawResources.delIcon); //$NON-NLS-1$
 
1200
                delMenu.setActionCommand(RecentFilesListener.ACTION_CMD_RECENT_CLEAR);
 
1201
                delMenu.addActionListener(parentFrame.getRecentFilesListener());
 
1202
                recentFilesMenu.add(delMenu);
 
1203
        }
 
1204
}