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