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