Xcos GUI: enable Compile action
[scilab.git] / scilab / modules / xcos / src / java / org / scilab / modules / xcos / utils / XcosMessages.java
1 /*
2  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  * Copyright (C) 2009 - DIGITEO - Vincent COUVERT
4  * Copyright (C) 2009 - DIGITEO - Clement DAVID
5  * Copyright (C) Scilab Enterprises - 2011-2012 - Clement DAVID
6  *
7  * This file must be used under the terms of the CeCILL.
8  * This source file is licensed as described in the file COPYING, which
9  * you should have received as part of this distribution.  The terms
10  * are also available at
11  * http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
12  *
13  */
14 package org.scilab.modules.xcos.utils;
15
16 import java.awt.event.MouseEvent;
17
18 import javax.swing.SwingUtilities;
19
20 import org.scilab.modules.localization.Messages;
21
22 /**
23  * All localized messages/menus labels used in Xcos
24  */
25 // CSOFF: JavadocVariable
26 // CSOFF: LineLength
27 // CSOFF: MultipleStringLiterals
28 public final class XcosMessages {
29
30     public static final String XCOS = Messages.gettext("Xcos");
31
32     public static final String DOTS = "...";
33
34     public static final String UNTITLED = Messages.gettext("Untitled");
35
36     /* File menu */
37     public static final String FILE = Messages.gettext("File");
38     public static final String NEW = Messages.gettext("New");
39     public static final String NEW_DIAGRAM = Messages.gettext("New diagram") + DOTS;
40     public static final String NEW_PALETTE = Messages.gettext("New palette") + DOTS;
41     public static final String OPEN = Messages.gettext("Open") + DOTS;
42     public static final String OPEN_IN = Messages.gettext("Open file in Scilab current directory");
43     public static final String SAVE = Messages.gettext("Save");
44     public static final String SAVE_AS = Messages.gettext("Save as") + DOTS;
45     public static final String EXPORT = Messages.gettext("Export") + DOTS;
46     public static final String EXPORT_ALL = Messages.gettext("Export all diagrams");
47     public static final String SAVE_AS_INTERFACE_FUNCTION = Messages.gettext("Save as interface function") + DOTS;
48     public static final String PRINT = Messages.gettext("Print") + DOTS;
49     public static final String CLOSE = Messages.gettext("Close");
50     public static final String QUIT = Messages.gettext("Quit Xcos");
51     public static final String RECENT_FILES = Messages.gettext("Recent files");
52
53     /* Edit Menu */
54     public static final String EDIT = Messages.gettext("Edit");
55     public static final String BLOCK_PARAMETERS = Messages.gettext("Block Parameters") + DOTS;
56     public static final String REGION_TO_SUPERBLOCK = Messages.gettext("Selection to superblock");
57     public static final String SUPERBLOCK_MASK = Messages.gettext("Superblock mask");
58     public static final String CREATE = Messages.gettext("Create");
59     public static final String RENAME = Messages.gettext("Rename");
60     public static final String REMOVE = Messages.gettext("Remove");
61     public static final String CUSTOMIZE = Messages.gettext("Customize") + DOTS;
62     public static final String SAVE_BLOCK_GUI = Messages.gettext("Save block GUI");
63
64     /* Palette menu in palette browser */
65     public static final String LOAD_AS_PAL = Messages.gettext("Load as palette") + DOTS;
66     public static final String USER_DEFINED = Messages.gettext("User-Defined");
67     public static final String REMOVE_USER_DEFINED = REMOVE;
68     public static final String CREATE_CATEGORY = Messages.gettext("Create a category");
69     public static final String ADDTO_CATEGORY = Messages.gettext("Add to a new category");
70     public static final String DEFAULT_CATEGORY_NAME = Messages.gettext("Category");
71     public static final String ASK_FOR_A_NAME = Messages.gettext("Enter a name");
72
73     public static final String DUMP = Messages.gettext("Dump");
74     public static final String VIEW_IN_SCICOS = Messages.gettext("View in Scicos");
75
76     /* View Menu */
77     public static final String VIEW = Messages.gettext("View");
78     public static final String FIT_DIAGRAM_TO_VIEW = Messages.gettext("Fit diagram or blocks to view");
79     public static final String NORMAL_100 = Messages.gettext("Normal 100%");
80     public static final String PALETTE_BROWSER = Messages.gettext("Palette browser");
81     public static final String DIAGRAM_BROWSER = Messages.gettext("Diagram browser");
82     public static final String VIEWPORT = Messages.gettext("Viewport");
83     public static final String GET_INFOS = Messages.gettext("Get infos");
84     public static final String DETAILS = Messages.gettext("Details");
85     public static final String SHOW_PARENT = Messages.gettext("Show parent diagram");
86
87     /* Simulation menu */
88     public static final String SIMULATION = Messages.gettext("Simulation");
89     public static final String SETUP = Messages.gettext("Setup");
90     public static final String COMPILE = Messages.gettext("Compile");
91     public static final String START = Messages.gettext("Start");
92     public static final String STOP = Messages.gettext("Stop");
93     public static final String SET_CONTEXT = Messages.gettext("Set Context");
94
95     /* Format menu */
96     public static final String FORMAT = Messages.gettext("Format");
97     public static final String RESIZE = Messages.gettext("Resize");
98     public static final String ROTATE = Messages.gettext("Rotate");
99     public static final String FLIP = Messages.gettext("Flip");
100     public static final String MIRROR = Messages.gettext("Mirror");
101     public static final String SHOWHIDE_SHADOW = Messages.gettext("Show/Hide shadow");
102     public static final String GRID = Messages.gettext("Grid");
103     public static final String DIAGRAM_BACKGROUND = Messages.gettext("Diagram background") + DOTS;
104
105     /* Format - Edit dialog */
106     public static final String BOLD = Messages.gettext("Bold");
107     public static final String ITALIC = Messages.gettext("Italic");
108     public static final String FONT_SIZE = Messages.gettext("Font size");
109     public static final String FONT_NAME = Messages.gettext("Font name");
110     public static final String FONT_STYLE = Messages.gettext("Font style");
111     public static final String TEXT_SETTINGS = Messages.gettext("Text settings");
112     public static final String IMAGE_PATH = Messages.gettext("Image path");
113
114     /* Tools menu */
115     public static final String TOOLS = Messages.gettext("Tools");
116     public static final String CODE_GENERATION = Messages.gettext("Code generation");
117
118     /* Help menu */
119     public static final String HELP = Messages.gettext("?");
120     public static final String XCOS_DOCUMENTATION = Messages.gettext("Xcos Help");
121     public static final String BLOCK_DOCUMENTATION = Messages.gettext("Block Help");
122     public static final String XCOS_DEMONSTRATIONS = Messages.gettext("Xcos Demonstrations");
123     // For the moment, "About Xcos" points to "About Scilab", we may update this when we get a nice splash image
124     public static final String ABOUT_XCOS = Messages.gettext("About Scilab") + DOTS;
125
126     /* PALETTES */
127     public static final String PALETTES = Messages.gettext("Palettes");
128     public static final String SOURCES_PAL = Messages.gettext("Sources");
129     public static final String CONTINUOUS_PAL = Messages.gettext("Continuous time systems");
130     public static final String IMPLICIT_PAL = Messages.gettext("Implicit");
131     public static final String DISCONTINUOUS_PAL = Messages.gettext("Discontinuities");
132     public static final String LOOKUPTABLES_PAL = Messages.gettext("Lookup Tables");
133     public static final String SIGNALPROCESSING_PAL = Messages.gettext("Signal Processing");
134     public static final String THRESHOLD_PAL = Messages.gettext("Zero crossing detection");
135     public static final String MATHSOPS_PAL = Messages.gettext("Mathematical Operations");
136     public static final String INTEGER_PAL = Messages.gettext("Integer");
137     public static final String MATRIX_PAL = Messages.gettext("Matrix");
138     public static final String SINKS_PAL = Messages.gettext("Sinks");
139     public static final String PORTACTION_PAL = Messages.gettext("Port & Subsystem");
140     public static final String ANNOTATIONS_PAL = Messages.gettext("Annotations");
141     public static final String DISCRETE_PAL = Messages.gettext("Discrete time systems");
142     public static final String EVENTS_PAL = Messages.gettext("Event handling");
143     public static final String SIGNALROUTING_PAL = Messages.gettext("Signal Routing");
144     public static final String COMMONUSED_PAL = Messages.gettext("Commonly Used Blocks");
145     public static final String USERDEFINEDFUNCTIONS_PAL = Messages.gettext("User-Defined Functions");
146     public static final String DEMOBLOCKS_PAL = Messages.gettext("Demonstrations Blocks");
147     public static final String ELECTRICAL_PAL = Messages.gettext("Electrical");
148     public static final String THERMOHYDRAULICS_PAL = Messages.gettext("Thermo-Hydraulics");
149
150     public static final String ENABLE = Messages.gettext("Enable");
151     public static final String PAL_NAME = Messages.gettext("Palette name");
152
153     public static final String DIAGRAM_MODIFIED = Messages.gettext("Diagram has been modified since last save.<br/> Do you want to save it?");
154     public static final String FILE_DOESNT_EXIST = Messages.gettext("The file %s doesn't exist\n Do you want to create it?");
155
156     public static final String IMAGE_URL_DOESNT_EXIST = Messages.gettext("Unable to decode the URI : %s .");
157
158     public static final String OK = Messages.gettext("Ok");
159     public static final String CANCEL = Messages.gettext("Cancel");
160     public static final String RESET = Messages.gettext("Reset to default");
161
162     public static final String SET_CONTEXT_LABEL_TEXT = "<html>"
163             + Messages
164             .gettext("You may enter here scilab instructions to define symbolic parameters used in block definitions using Scilab instructions.<br/>These instructions are evaluated once confirmed (i.e. you click on OK and every time the diagram is loaded).")
165             + "</html>";
166
167     public static final String FAIL_LOADING_DIAGRAM = Messages.gettext("Failed to load Diagram");
168     public static final String FAIL_SAVING_DIAGRAM = Messages.gettext("Could not save diagram.");
169     public static final String OVERWRITE_EXISTING_FILE = Messages.gettext("Do you want to overwrite existing file?");
170     public static final String TRANSPARENT_BACKGROUND = Messages.gettext("Do you want a transparent background image?");
171     public static final String NO_IMAGE_DATA = Messages.gettext("Image contains no data.");
172     public static final String UNKNOW_VERSION = Messages.gettext("Unknown Diagram Version : ");
173     public static final String TRY_TO_CONTINUE = Messages.gettext("Will try to continue...");
174
175     public static final String XCOS_ERROR = Messages.gettext("Xcos error");
176     public static final String UNABLE_TO_DELETE = Messages.gettext("Unable to delete ");
177     public static final String NO_BLOCK_SELECTED = Messages.gettext("No block selected");
178
179     public static final String EXPORT_TO_XML = Messages.gettext("Export to XML") + DOTS;
180     public static final String IMPORT_FROM_XML = Messages.gettext("Import from XML") + DOTS;
181
182     public static final String ADDTO = Messages.gettext("Add to");
183     public static final String ADDTO_NEW_DIAGRAM = Messages.gettext("Add to new diagram");
184
185     public static final String LINK_ERROR_EXPLICIT_IN = Messages.gettext("Explicit data input port must be connected to explicit data output port");
186     public static final String LINK_ERROR_IMPLICIT_IN = Messages.gettext("Implicit data input port must be connected to implicit data output port");
187     public static final String LINK_ERROR_EXPLICIT_OUT = Messages.gettext("Explicit data output port must be connected to explicit data input port");
188     public static final String LINK_ERROR_IMPLICIT_OUT = Messages.gettext("Implicit data output port must be connected to implicit data input port");
189     public static final String LINK_ERROR_EVENT_IN = Messages.gettext("Command port must be connected to control port");
190     public static final String LINK_ERROR_EVENT_OUT = Messages.gettext("control port must be connected to command port");
191     public static final String LINK_ERROR_ALREADY_CONNECTED = Messages.gettext("Port is already connected, please select an unconnected port or a valid link.");
192
193     public static final String ALIGN_BLOCKS = Messages.gettext("Align Blocks");
194     public static final String ALIGN_LEFT = Messages.gettext("Left");
195     public static final String ALIGN_RIGHT = Messages.gettext("Right");
196     public static final String ALIGN_CENTER = Messages.gettext("Center");
197     public static final String ALIGN_TOP = Messages.gettext("Top");
198     public static final String ALIGN_BOTTOM = Messages.gettext("Bottom");
199     public static final String ALIGN_MIDDLE = Messages.gettext("Middle");
200
201     public static final String BORDER_COLOR = Messages.gettext("Border Color");
202     public static final String FILL_COLOR = Messages.gettext("Fill Color");
203     public static final String TEXT_COLOR = Messages.gettext("Text Color");
204
205     public static final String LINK_STYLE = Messages.gettext("Link Style");
206     public static final String LINK_STYLE_STRAIGHT = Messages.gettext("Straight");
207     public static final String LINK_STYLE_HORIZONTAL = Messages.gettext("Horizontal");
208     public static final String LINK_STYLE_VERTICAL = Messages.gettext("Vertical");
209
210     public static final String DEBUG_LEVEL_LABEL = "<html>" + Messages.gettext("Set debugging level (0,1,2,3) <br/> it performs scicos_debug(n)") + "</html>";
211     public static final String SET_DEBUG = Messages.gettext("Execution trace and Debug");
212
213     /* Setup box */
214     public static final String FINAL_INTEGRATION_TIME = Messages.gettext("Final integration time");
215     public static final String REAL_TIME_SCALING = Messages.gettext("Real time scaling");
216     public static final String INTEGRATOR_ABSOLUTE_TOLERANCE = Messages.gettext("Integrator absolute tolerance");
217     public static final String INTEGRATOR_RELATIVE_TOLERANCE = Messages.gettext("Integrator relative tolerance");
218     public static final String TOLERANCE_ON_TIME = Messages.gettext("Tolerance on time");
219     public static final String MAX_INTEGRATION_TIME_INTERVAL = Messages.gettext("Max integration time interval");
220     public static final String SOLVER_CHOICE = Messages.gettext("Solver kind");
221     public static final String MAXIMUN_STEP_SIZE = Messages.gettext("Maximum step size (0 means no limit)");
222     public static final String DEFAULT = Messages.gettext("Default");
223     public static final String SETUP_TITLE = Messages.gettext("Set Parameters");
224
225     /* About box */
226     public static final String COPYRIGHT_INRIA = "Copyright (c) 1989-2009 (INRIA)";
227     public static final String SCICOS_BASED = Messages.gettext("Based on Scicos");
228
229     /* InfoBar messages */
230     public static final String EMPTY_INFO = "";
231     public static final String SAVING_DIAGRAM = Messages.gettext("Saving diagram") + DOTS;
232     public static final String LOADING_DIAGRAM = Messages.gettext("Loading diagram");
233     public static final String LOADING_PALETTES = Messages.gettext("Loading palettes") + DOTS;
234     public static final String LOADING_USER_DEFINE = Messages.gettext("Loading user defined palettes") + DOTS;
235     public static final String GENERATING_C_CODE = Messages.gettext("Generating C Code for SuperBlock") + DOTS;
236     public static final String ERROR_GENERATING_C_CODE = Messages.gettext("A SuperBlock must be selected to generate code");
237     public static final String SIMULATION_IN_PROGRESS = Messages.gettext("Simulation in progress");
238     public static final String COMPILATION_IN_PROGRESS = Messages.gettext("Compilation in progress, results will be stored in the \'cpr\' variable");
239     public static final String GENERATE_SUPERBLOCK = Messages.gettext("Generate SuperBlock, please wait") + DOTS;
240     public static final String DRAW_LINK = Messages.gettext("Click on diagram to add link point or on a compatible target to finish");
241
242     /* Debug level messages */
243     public static final String DEBUGLEVEL_0 = Messages.gettext("No trace nor debug printing");
244     public static final String DEBUGLEVEL_1 = Messages.gettext("Light Simulation trace (Discrete and Continuous part switches)");
245     public static final String DEBUGLEVEL_2 = Messages.gettext("Per block execution trace and Debug block calls");
246     public static final String DEBUGLEVEL_3 = Messages.gettext("Debug block calls without trace");
247
248     /* File description */
249     public static final String ALL_SUPPORTED_FORMATS = Messages.gettext("All supported formats");
250     public static final String FILE_COSF = Messages.gettext("Scicos file");
251     public static final String FILE_COS = FILE_COSF;
252     public static final String FILE_XCOS = Messages.gettext("Xcos file");
253     public static final String FILE_ZCOS = Messages.gettext("Xcos (zip) file");
254     public static final String FILE_SOD = Messages.gettext("Scilab Open Data file");
255
256     /* Superblock mask editor */
257     public static final String MASK_TITLE = Messages.gettext("Masked SuperBlock editor");
258     public static final String MASK_INSERT = Messages.gettext("Insert");
259     public static final String MASK_DELETE = Messages.gettext("Delete");
260     public static final String MASK_MOVEUP = Messages.gettext("Move Up");
261     public static final String MASK_MOVEDOWN = Messages.gettext("Move Down");
262     public static final String MASK_ROWS = Messages.gettext("Rows");
263     public static final String MASK_VARSETTINGS = Messages.gettext("Variable settings");
264     public static final String MASK_DEFAULTVALUES = Messages.gettext("Default values");
265     public static final String MASK_WINTITLEVAR = Messages.gettext("WinTitle");
266     public static final String MASK_WINTITLE = Messages.gettext("Window title");
267     public static final String MASK_VARNAME = Messages.gettext("Variable names");
268     public static final String MASK_VARDESC = Messages.gettext("Variable descriptions");
269     public static final String MASK_EDITABLE = Messages.gettext("Editable");
270     public static final String MASK_VARVALUES = Messages.gettext("Values");
271     public static final String MASK_DEFAULTWINDOWNAME = Messages.gettext("Set block parameters");
272
273     /* Configuration Error */
274     public static final String ERR_CONFIG_PALETTE_INVALID = Messages
275             .gettext("The user palette configuration file (palettes.xml) is invalid.<BR> Switching to the default one.");
276     public static final String ERR_CONFIG_INVALID = Messages.gettext("The user configuration file (xcos.xml) is invalid.<BR> Switching to the default one.");
277
278     /* Modelica Compiler */
279     public static final String INITIALIZING_MODELICA_COMPILER = Messages.gettext("Setting up Modelica Compiler.");
280     public static final String INIT_MODELICA = Messages.gettext("Modelica initialize");
281
282     /* Blocks values */
283     public static final String BLOCK_FROM = "From %s";
284     public static final String BLOCK_GOTO = "Goto %s";
285
286     /* Errors */
287     public static final String ERROR_UNABLE_TO_COMPILE_THIS_SUPER_BLOCK = Messages.gettext("Error: unable to compile this SuperBlock");
288     public static final String WRONG_PORT_NUMBER = Messages.gettext("Evaluation problem: wrong port number.");
289     public static final String EXPECTING_NUMBER = Messages.gettext("Expecting '%d'.");
290     public static final String LINK_NOT_CONNECTED = Messages
291             .gettext("<html><body>Compilation error: link ignored because it is not connected. <br/>Please reconnect it.</body></html>");
292
293     // CSON: JavadocVariable
294     // CSON: LineLength
295     // CSON: MultipleStringLiterals
296
297     /** This class is a static singleton, thus it must not be instantiated */
298     private XcosMessages() {
299     }
300
301     /**
302      * This function checks for the popup menu activation under MacOS with Java
303      * version 1.5 Related to Scilab bug #5190
304      *
305      * @param e
306      *            Click event
307      * @return true if Java 1.5 and MacOS and mouse clic and ctrl activated
308      */
309     public static boolean isMacOsPopupTrigger(MouseEvent e) {
310         return (SwingUtilities.isLeftMouseButton(e) && e.isControlDown() && (System.getProperty("os.name").toLowerCase().indexOf("mac") != -1) && (System
311                 .getProperty("java.specification.version").equals("1.5")));
312     }
313 }