1 32 33 package it.businesslogic.ireport.gui; 34 import it.businesslogic.ireport.util.*; 35 import java.io.File ; 36 import javax.swing.*; 37 import it.businesslogic.ireport.gui.event.*; 38 import it.businesslogic.ireport.gui.sheet.*; 39 import java.util.*; 40 41 import java.util.Locale ; 42 46 public class OptionsDialog extends javax.swing.JDialog implements LanguageChangedListener, SheetPropertyValueChangedListener { 47 48 MainFrame mf = null; 49 it.businesslogic.ireport.util.Unit[] units; 50 java.util.List listOfLanguages; 51 java.util.List listOfPLAF; 52 53 private CategorySheetPanel categorySheetPanel = null; 54 55 56 public OptionsDialog(java.awt.Frame parent, boolean modal) { 57 super(parent, modal); 58 this.mf = (MainFrame)parent; 59 initComponents(); 60 javax.swing.event.DocumentListener listener = new javax.swing.event.DocumentListener () 61 { 62 public void changedUpdate(javax.swing.event.DocumentEvent evt) 63 { 64 enableApplyAndOk(); 65 } 66 public void insertUpdate(javax.swing.event.DocumentEvent evt) 67 { 68 enableApplyAndOk(); 69 } 70 public void removeUpdate(javax.swing.event.DocumentEvent evt) 71 { 72 enableApplyAndOk(); 73 } 74 }; 75 76 this.jTextFieldBackupDirectory.getDocument().addDocumentListener(listener); 77 this.jTextFieldCSVViewer.getDocument().addDocumentListener(listener); 78 this.jTextFieldCompilationDir.getDocument().addDocumentListener(listener); 79 this.jTextFieldEditor.getDocument().addDocumentListener(listener); 80 this.jTextFieldHTMLViewer.getDocument().addDocumentListener(listener); 81 this.jTextFieldPDFViewer.getDocument().addDocumentListener(listener); 82 this.jTextFieldTemplate.getDocument().addDocumentListener(listener); 83 this.jTextFieldXLSViewer.getDocument().addDocumentListener(listener); 84 this.jTextFieldVirtualizerDir.getDocument().addDocumentListener(listener); 85 this.jTextFieldTXTViewer.getDocument().addDocumentListener(listener); 86 this.jTextFieldRTFViewer.getDocument().addDocumentListener(listener); 87 88 89 jComboBoxVirtualizer.addItem( new Tag("JRFileVirtualizer", I18n.getString("virtualizer.file","File virtualizer") )); 90 jComboBoxVirtualizer.addItem( new Tag("JRSwapFileVirtualizer",I18n.getString("virtualizer.swap","Single swap/file virtualizer"))); 91 jComboBoxVirtualizer.addItem( new Tag("JRGzipVirtualizer",I18n.getString("virtualizer.gzip","GZIP in-memory virtualizer"))); 92 93 units = it.businesslogic.ireport.util.Unit.getStandardUnits(); 94 95 jSpinnerVirtualizerSize.setModel(new javax.swing.SpinnerNumberModel (100,1,100000000,10)); 96 jSpinnerVirtualizerBlockSize.setModel(new javax.swing.SpinnerNumberModel (100,1,100000000,10)); 97 jSpinnerVirtualizerGrownCount.setModel(new javax.swing.SpinnerNumberModel (1,1,100000000,10)); 98 99 I18n.addOnLanguageChangedListener( this ); 103 104 105 categorySheetPanel = new CategorySheetPanel(); 106 categorySheetPanel.setShowResetButton(false); 107 108 createSheet(); 109 applyI18n(); 110 jPanel8.add("Center", categorySheetPanel); 111 112 113 javax.swing.KeyStroke escape = javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false); 114 javax.swing.Action escapeAction = new javax.swing.AbstractAction () { 115 public void actionPerformed(java.awt.event.ActionEvent e) { 116 jButtonCancelActionPerformed(e); 117 } 118 }; 119 120 getRootPane().getInputMap(javax.swing.JComponent.WHEN_IN_FOCUSED_WINDOW).put(escape, "ESCAPE"); 121 getRootPane().getActionMap().put("ESCAPE", escapeAction); 122 123 124 this.getRootPane().setDefaultButton(this.jButtonOK); 126 127 128 pack(); 129 130 } 131 132 133 private void createSheet() 134 { 135 if (categorySheetPanel == null) return; 136 categorySheetPanel.removeAllProperties(); 138 String category_name = it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.TabGeneral","General"); 139 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("RecentFilesLength",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelRecentFileListLength","Num of recent files in file menu"), SheetProperty.INTEGER)); 140 units = it.businesslogic.ireport.util.Unit.getStandardUnits(); 141 SheetProperty sp = new SheetProperty("DefaultUnit",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelDefaultUnit","Default unit"), SheetProperty.COMBOBOX); 142 Vector tags = new Vector(); 143 for (int i=0; i< units.length; ++i) { 144 Tag t = new Tag(units[i].getKeyName(), units[i]+""); 145 tags.add(t); 146 } 147 sp.setTags( tags ); 148 categorySheetPanel.addSheetProperty(category_name, sp); 149 150 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("showGrid",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelViewGrid","View grid"), SheetProperty.BOOLEAN)); 151 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("ViewRules",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelViewRules","View rules"), SheetProperty.BOOLEAN)); 152 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("GridSize",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelGridSize","Grid size"), SheetProperty.INTEGER)); 153 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("ViewBorderForTextElements",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelViewBorderForTextElements","View border for text elements"), SheetProperty.BOOLEAN)); 154 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("ViewBorderColor",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelTextBorderColor","Text border color"), SheetProperty.COLOR)); 155 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("Antialias",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelAntialias","Use antialiasing"), SheetProperty.BOOLEAN)); 156 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("ShowToolTipsInDesign",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelShowToolTipsInDesign","Show ToolTips in design"), SheetProperty.BOOLEAN)); 157 158 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("enableRMIServer",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.startRMIServer","Enable RMI server"), SheetProperty.BOOLEAN)); 159 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("RMIServerPort",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.RMIServerPort","RMI server port"), SheetProperty.INTEGER)); 160 161 SheetProperty sp_language = new SheetProperty("Language",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelLanguage","Language"), SheetProperty.COMBOBOX); 162 Vector tags_language = new Vector(); 163 164 listOfLanguages = it.businesslogic.ireport.util.I18n.getListOfAvailLanguages(); 166 167 listOfLanguages.add(0, Locale.getDefault()); 168 it.businesslogic.ireport.Language languageModel = null; 169 170 String selectedLanguage = mf.getProperties().getProperty("Language"); 171 String selectedCountry = mf.getProperties().getProperty("Country"); 172 String selectedVariant = mf.getProperties().getProperty("Variant"); 174 176 String def_language = ""; 177 for (int i=0; i< listOfLanguages.size(); ++i) 178 { 179 Locale lang = (Locale )listOfLanguages.get(i); 180 LocaleAdapter adapter = new LocaleAdapter(lang); 181 Tag t = new Tag("" + adapter); 182 tags_language.add(t); 183 if( lang.getCountry().equals(selectedCountry) && 184 lang.getLanguage().equals(selectedLanguage) && 185 lang.getVariant().equals(selectedVariant) ) { 186 def_language = "" + adapter; 187 } 188 } 189 sp_language.setTags( tags_language); 190 if (def_language.length() > 0) 191 { 192 sp_language.setValue( def_language); 193 } 194 else 195 { 196 sp_language.setValue( "" + new LocaleAdapter( Locale.getDefault())); 197 } 198 categorySheetPanel.addSheetProperty(category_name, sp_language ); 199 200 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("EnableTextResizeClick",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelEnableTextResizeClick","Enable text fields resize click"), SheetProperty.BOOLEAN)); 202 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("SynchronizeReportName",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelSynchronizeReportName","Synchronize report name with file name"), SheetProperty.BOOLEAN)); 203 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("AutoReload",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.AutoReload","Reload externally modified files without ask"), SheetProperty.BOOLEAN)); 204 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("AskToSave",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.AskToSave","Ask to save modified files before close them"), SheetProperty.BOOLEAN)); 205 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("LoadFontOnStartup",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LoadFontOnStartup","Load font files on startup"), SheetProperty.BOOLEAN)); 206 207 208 categorySheetPanel.addSheetProperty(category_name, new SheetProperty("RestoreLayout",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.RestoreLayoutOnStartup","Restore layout on startup"), SheetProperty.BOOLEAN)); 209 210 211 category_name = it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.ReportDefaults","Report defaults"); 212 SheetProperty sp_script_language = new SheetProperty("DefaultScriptingLanguage",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.DefaultScriptingLanguage","Default language for expressions"), SheetProperty.COMBOBOX); 213 Vector tags_script_languages = new Vector(); 214 tags_script_languages.add(new Tag("groovy", "Groovy")); 215 tags_script_languages.add(new Tag("java", "Java")); 216 sp_script_language.setTags(tags_script_languages); 217 categorySheetPanel.addSheetProperty(category_name, sp_script_language); 218 219 220 SheetProperty sp_default_style = new SheetProperty("DefaultStyle",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.DefaultStyle","Default style"), SheetProperty.COMBOBOX); 221 Vector tags_default_style = new Vector(); 222 tags_default_style.add(new Tag("", it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.DefaultStyle.none","None"))); 223 Vector libStyles = MainFrame.getMainInstance().getStyleLibrarySet(); 224 for (int i=0; i< libStyles.size(); ++i) 225 { 226 String styleName = ""+libStyles.get(i); 227 Tag t = new Tag(styleName); 228 tags_default_style.add(t); 229 } 230 sp_default_style.setTags(tags_default_style); 231 categorySheetPanel.addSheetProperty(category_name, sp_default_style); 232 233 SheetProperty sp_laf = new SheetProperty("LookAndFeel",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelLookAndFeel","Look & Feel"), SheetProperty.COMBOBOX); 234 Vector tags_laf = new Vector(); 235 236 listOfPLAF = it.businesslogic.ireport.util.Misc.getAvailablePLAF(); 237 String selectedPAF = mf.getProperties().getProperty("LookAndFeel"); 238 for (int i=0; i< listOfPLAF.size(); ++i) 239 { 240 String pnf = (String )listOfPLAF.get(i); 241 Tag t = new Tag(pnf + ""); 242 tags_laf.add(t); 243 } 244 sp_laf.setTags( tags_laf); 245 sp_laf.setValue( selectedPAF ); 246 247 categorySheetPanel.addSheetProperty("LookAndFeel", sp_laf ); 248 249 categorySheetPanel.addSheetProperty("LookAndFeel", new SheetProperty("overrideDefaultFont",it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.OverrideDefaultFont","Override default font"), SheetProperty.BOOLEAN)); 250 NumberComboBoxSheetProperty spFontSize = null; 251 spFontSize = new NumberComboBoxSheetProperty("overrideDefaultFontSize",it.businesslogic.ireport.util.I18n.getString("gui.elementpropertiessheet.fontSize","Font size")); 252 spFontSize.addEntry("3",3); 253 spFontSize.addEntry("5",5); 254 spFontSize.addEntry("8",8); 255 spFontSize.addEntry("10",10); 256 spFontSize.addEntry("11",11); 257 spFontSize.addEntry("12",13); 258 spFontSize.addEntry("13",13); 259 spFontSize.addEntry("14",14); 260 spFontSize.addEntry("15",15); 261 spFontSize.addEntry("16",16); 262 263 SheetProperty spFontName = new SheetProperty("overrideDefaultFontName",it.businesslogic.ireport.util.I18n.getString("gui.elementpropertiessheet.fontName","Font"), SheetProperty.COMBOBOX); 264 Vector fontsVec = new Vector(); 265 String [] fontFamilies = java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames(); 266 for (int i=0; i<fontFamilies.length; ++i) { 267 fontsVec.add( new Tag(fontFamilies[i])); 268 } 269 spFontName.setTags( fontsVec ); 270 spFontName.setDefaultValue("Tahoma"); 271 272 categorySheetPanel.addSheetProperty("LookAndFeel", spFontName); 273 categorySheetPanel.addSheetProperty("LookAndFeel", spFontSize); 274 categorySheetPanel.addSheetProperty("LookAndFeel", new SheetProperty("overrideDefaultFontAttrs",it.businesslogic.ireport.util.I18n.getString("gui.elementpropertiessheet.Bold","Bold"), SheetProperty.BOOLEAN)); 275 276 277 categorySheetPanel.setShowResetButton(false); 278 categorySheetPanel.recreateSheet(); 279 280 categorySheetPanel.addSheetPropertyValueChangedListener( this ); 281 } 282 283 286 public void applyI18n() 287 { 288 jCheckBoxDontUseTemplateFromMenu.setText(I18n.getString("optionsDialog.checkBoxDontUseTemplateFromMenu","Don't use the template when using menu File > New report")); 290 jCheckBoxKeepJavaFile.setText(I18n.getString("optionsDialog.checkBoxKeepJavaFile","keep .java file (if available)")); 291 jLabel1.setText(I18n.getString("optionsDialog.label1","Use this virtualizer")); 294 jLabelReportVirtualizerMinGrowCount.setText(I18n.getString("optionsDialog.labelReportVirtualizerMinGrowCount","Min. grow count")); 295 jLabelReportVirtualizerSize1.setText(I18n.getString("optionsDialog.labelReportVirtualizerSize1","Block size")); 296 299 jLabelTemplateForNewDocs.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelTemplateForNewDocs","Use this file as template for new documents")); 301 302 304 306 jButtonTemplate.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.Browse","Browse")); 307 jButtonOK.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.ButtonSave","Save")); 308 jButtonApply.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.ButtonApply","Apply")); 309 jButtonCancel.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.ButtonCancel","Cancel")); 310 jTabbedPane1.setTitleAt(0, it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.TabGeneral","General")); 311 jTabbedPane1.setTitleAt(1, it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.TabCompiler","Compiler")); 312 ((javax.swing.border.TitledBorder )jPanelCompileDir.getBorder()).setTitle(it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.DefaultCompileDir","Default compilation directory")); 313 jCheckBoxUseCurrentFilesDirectoryForCompiles.setText( it.businesslogic.ireport.util.I18n.getString( "gui.OptionsDialog.UseCurrentFilesDirectoryForCompiles","Use the reports directory for compiles")); 314 jCheckBoxAutosave.setText(it.businesslogic.ireport.util.I18n.getString( "gui.OptionsDialog.Autosave","Autosave before compiling")); 315 jButtonCompilationDir.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.Browse","Browse")); 316 jTabbedPane1.setTitleAt(2, it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.TabBackup","Backup")); 317 jTabbedPane1.setTitleAt(3, it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.TabExternalPrograms","External programs")); 318 ((javax.swing.border.TitledBorder )jPanel6.getBorder()).setTitle(it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.BackupFilesOnSave","Backup files on save")); 319 jRadioButton1_NoBackup.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.NoBackup","No backup")); 320 jRadioButton2_ReplaceExtension.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.ReplaceExtension","Replace extension with .bak")); 321 jRadioButton3_AppendExtension.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.AppendExtension","Append .bak to existing extension")); 322 jLabelDefaultBackupDir.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.LabelDefaultBackupDir","Default backup directory")); 323 jButtonBackupDirectory.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.Browse","Browse")); 324 jButtonBrowseEditor.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.Browse","Browse")); 325 jButtonBrowseEditor1.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.Browse","Browse")); 326 jButtonBrowseEditor2.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.Browse","Browse")); 327 jButtonBrowseEditor3.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.Browse","Browse")); 328 jButtonBrowseEditor4.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.Browse","Browse")); 329 jButtonBrowseEditor5.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.Browse","Browse")); 330 jButtonBrowseEditor6.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.Browse","Browse")); 331 ((javax.swing.border.TitledBorder )jPanelExternalEditor.getBorder()).setTitle(it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.ExternalEditor","External editor")); 332 ((javax.swing.border.TitledBorder )jPanelViewers.getBorder()).setTitle(it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.Viewers","Viewers")); 333 334 jLabelPDFViewer.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.PDFViewer","PDF Viewer")); 336 jLabelCSVViewer.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.CSVViewer","CSV Viewer")); 337 jLabelHTMLViewer.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.HTMLViewer","HTML Viewer")); 338 jLabelXLSViewer.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.XLSViewer","XLS Viewer")); 339 jLabelTXTViewer.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.TXTViewer","TXT Viewer")); 340 jLabelRTFViewer.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.RTFViewer","RTF Viewer")); 341 342 343 jButtonVirtualizerDirBrowse.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.Browse","Browse")); 344 jLabelReportVirtualizerDirectory.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.ReportVirtualizerDir","Directory where the paged out data is to be stored")); 345 jLabelReportVirtualizerSize.setText( it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.ReportVirtualizerSize","Maximum size (in JRVirtualizable objects) of the paged in cache")); 346 347 348 jTabbedPane1.setTitleAt(0, I18n.getString("optionsDialog.tab.General","General")); 349 jTabbedPane1.setTitleAt(1, I18n.getString("optionsDialog.tab.Compiler","Compiler")); 350 jTabbedPane1.setTitleAt(2, I18n.getString("optionsDialog.tab.Backup","Backup")); 351 jTabbedPane1.setTitleAt(3, I18n.getString("optionsDialog.tab.ExternalPrograms","External programs")); 352 353 ((javax.swing.border.TitledBorder )jPanelCompileDir.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("optionsDialog.panelBorder.DefaultCompilationDirectory","Default compilation directory") ); 354 ((javax.swing.border.TitledBorder )jPanelCompileDir1.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("optionsDialog.panelBorder.Compiler","Compiler") ); 355 ((javax.swing.border.TitledBorder )jPanelCompileDir2.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("optionsDialog.panelBorder.ReportVirtualizer","Report Virtualizer") ); 356 ((javax.swing.border.TitledBorder )jPanel7.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("optionsDialog.panelBorder.SwapFile","Swap file") ); 357 ((javax.swing.border.TitledBorder )jPanel6.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("optionsDialog.panelBorder.BackupFilesOnSave","Backup files on save") ); 358 ((javax.swing.border.TitledBorder )jPanelExternalEditor.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("optionsDialog.panelBorder.ExternalEditor","External editor") ); 359 ((javax.swing.border.TitledBorder )jPanelViewers.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("optionsDialog.panelBorder.Viewers","Viewers") ); 360 361 createSheet(); 362 loadConfiguration(); 363 this.setTitle("iReport - " + it.businesslogic.ireport.util.I18n.getString("gui.OptionsDialog.title","Options")); 364 this.getRootPane().updateUI(); 365 366 } 367 368 369 370 371 374 public void loadConfiguration() 375 { 376 if (mf == null || mf.getProperties() == null) 377 { 378 return; 379 } 380 try 381 { 382 this.categorySheetPanel.setPropertyValue("Antialias", Misc.nvl(mf.getProperties().getProperty("Antialias"),"true") ); 383 this.categorySheetPanel.setPropertyValue("ShowToolTipsInDesign", Misc.nvl(mf.getProperties().getProperty("ShowToolTipsInDesign"),"false") ); 384 this.categorySheetPanel.setPropertyValue("RecentFilesLength", Misc.nvl(mf.getProperties().getProperty("RecentFilesLength"),"10")); 385 this.categorySheetPanel.setPropertyValue("DefaultUnit", Misc.nvl(mf.getProperties().getProperty("DefaultUnit"),"cm") ); 386 this.categorySheetPanel.setPropertyValue("showGrid", Misc.nvl(mf.getProperties().getProperty("showGrid"),"false") ); 387 this.categorySheetPanel.setPropertyValue("ViewRules", Misc.nvl(mf.getProperties().getProperty("ViewRules"),"true") ); 388 this.categorySheetPanel.setPropertyValue("ViewBorderForTextElements", Misc.nvl(mf.getProperties().getProperty("ViewBorderForTextElements"),"true") ); 389 390 this.categorySheetPanel.setPropertyValue("AutoReload", Misc.nvl(mf.getProperties().getProperty("AutoReload"),"false") ); 391 this.categorySheetPanel.setPropertyValue("AskToSave", Misc.nvl(mf.getProperties().getProperty("AskToSave"),"true") ); 392 393 this.categorySheetPanel.setPropertyValue("LoadFontOnStartup", Misc.nvl(mf.getProperties().getProperty("LoadFontOnStartup"),"true") ); 394 395 this.categorySheetPanel.setPropertyValue("RestoreLayout", Misc.nvl(mf.getProperties().getProperty("RestoreLayout"),"true") ); 396 397 398 java.awt.Color color = new java.awt.Color (Integer.parseInt( Misc.nvl(mf.getProperties().getProperty("ViewBorderColor"),"1"))); 399 String color_str = "[" + color.getRed() + "," + color.getGreen() + "," + color.getBlue()+ "]"; 400 this.categorySheetPanel.setPropertyValue("ViewBorderColor", color_str ); 401 String size = Misc.nvl(mf.getProperties().getProperty("GridSize"),"10"); 402 if (size.equals("null") || size.trim().length() == 0) size = "10"; 403 this.categorySheetPanel.setPropertyValue("GridSize", size); 404 this.categorySheetPanel.setPropertyValue("EnableTextResizeClick", Misc.nvl(mf.getProperties().getProperty("EnableTextResizeClick"),"true") ); 406 this.categorySheetPanel.setPropertyValue("SynchronizeReportName", Misc.nvl(mf.getProperties().getProperty("SynchronizeReportName"),"true") ); 407 this.categorySheetPanel.setPropertyValue("DefaultScriptingLanguage", Misc.nvl(mf.getProperties().getProperty("DefaultScriptingLanguage"),"java") ); 408 this.categorySheetPanel.setPropertyValue("DefaultStyle", Misc.nvl(mf.getProperties().getProperty("DefaultStyle"),"") ); 409 410 this.categorySheetPanel.setPropertyValue("overrideDefaultFont", Misc.nvl(mf.getProperties().getProperty("overrideDefaultFont"),"true") ); 411 this.categorySheetPanel.setPropertyValue("overrideDefaultFontSize", Misc.nvl(mf.getProperties().getProperty("overrideDefaultFontSize","11"),"11") ); 412 this.categorySheetPanel.setPropertyValue("overrideDefaultFontName", mf.getProperties().getProperty("overrideDefaultFontName","Tahoma") ); 413 this.categorySheetPanel.setPropertyValue("overrideDefaultFontAttrs", ""+Misc.nvl(mf.getProperties().getProperty("overrideDefaultFontAttrs"),"0").equals("1") ); 414 415 this.jTextFieldTemplate.setText( Misc.nvl(mf.getProperties().getProperty("DefaultTemplate"),"") ); 416 417 this.categorySheetPanel.setPropertyValue("enableRMIServer", Misc.nvl(mf.getProperties().getProperty("enableRMIServer"),"false") ); 418 this.categorySheetPanel.setPropertyValue("RMIServerPort", Misc.nvl(mf.getProperties().getProperty("RMIServerPort"),"2100")); 419 420 this.jTextFieldCompilationDir.setText( mf.getDefaultCompilationDirectory() ); 422 this.jCheckBoxUseCurrentFilesDirectoryForCompiles.setSelected(mf.isUsingCurrentFilesDirectoryForCompiles()); 423 this.jCheckBoxAutosave.setSelected(Misc.nvl(mf.getProperties().getProperty("SaveBeforeCompiling"),"true").equals("true")); 424 this.jComboBox1.setSelectedIndex(Integer.parseInt( Misc.nvl(mf.getProperties().getProperty("DefaultCompiler"),"0") )); 425 this.jCheckBoxKeepJavaFile.setSelected(Misc.nvl(mf.getProperties().getProperty("KeepJavaFile"),"true").equals("true")); 426 427 this.jTextFieldBackupDirectory.setText( Misc.nvl(mf.getProperties().getProperty("DefaultBackupDirectory"),"")); 429 this.jRadioButton1_NoBackup.setSelected( Misc.nvl(mf.getProperties().getProperty("BackupPolicy"),"3").equals("1")); 430 this.jRadioButton2_ReplaceExtension.setSelected( Misc.nvl(mf.getProperties().getProperty("BackupPolicy"),"3").equals("2")); 431 this.jRadioButton3_AppendExtension.setSelected( Misc.nvl(mf.getProperties().getProperty("BackupPolicy"),"3").equals("3")); 432 if(mf.isUsingCurrentFilesDirectoryForCompiles()) 433 { 434 this.disableCompileDirectoryBrowse(); 435 } 436 437 this.jTextFieldEditor.setText( Misc.nvl(mf.getProperties().getProperty("ExternalEditor"),"")); 439 this.jTextFieldPDFViewer.setText( Misc.nvl(mf.getProperties().getProperty("ExternalPDFViewer"),"")); 440 this.jTextFieldHTMLViewer.setText( Misc.nvl(mf.getProperties().getProperty("ExternalHTMLViewer"),"")); 441 this.jTextFieldXLSViewer.setText( Misc.nvl(mf.getProperties().getProperty("ExternalXLSViewer"),"")); 442 this.jTextFieldCSVViewer.setText( Misc.nvl(mf.getProperties().getProperty("ExternalCSVViewer"),"")); 443 this.jTextFieldTXTViewer.setText( Misc.nvl(mf.getProperties().getProperty("ExternalTXTViewer"),"")); 444 this.jTextFieldRTFViewer.setText( Misc.nvl(mf.getProperties().getProperty("ExternalRTFViewer"),"")); 445 446 this.jTextFieldVirtualizerDir.setText( mf.getProperties().getProperty("ReportVirtualizerDirectory",mf.getDefaultCompilationDirectory())); 447 this.jSpinnerVirtualizerSize.setValue(new Integer ( mf.getProperties().getProperty("ReportVirtualizerSize","100"))); 448 Misc.setComboboxSelectedTagValue(jComboBoxVirtualizer, mf.getProperties().getProperty("ReportVirtualizer", "JRFileVirtualizer") ); 449 this.jSpinnerVirtualizerBlockSize.setValue(new Integer ( mf.getProperties().getProperty("ReportVirtualizerBlockSize","100"))); 450 this.jSpinnerVirtualizerGrownCount.setValue(new Integer ( mf.getProperties().getProperty("ReportVirtualizerMinGrownCount","100"))); 451 452 this.jCheckBoxDontUseTemplateFromMenu.setSelected( Misc.nvl(mf.getProperties().getProperty("DontUseTemplateFromMenu"),"true").equals("true") ); 453 454 457 458 } 459 catch (Exception ex) 460 { 461 ex.printStackTrace(); 462 } 463 464 this.disableApplyAndOk(); 465 pack(); 466 } 467 468 473 private void initComponents() { 475 java.awt.GridBagConstraints gridBagConstraints; 476 477 buttonGroup1 = new javax.swing.ButtonGroup (); 478 jTabbedPane1 = new javax.swing.JTabbedPane (); 479 jPanelGeneral = new javax.swing.JPanel (); 480 jPanel8 = new javax.swing.JPanel (); 481 jPanel2 = new javax.swing.JPanel (); 482 jLabelTemplateForNewDocs = new javax.swing.JLabel (); 483 jTextFieldTemplate = new javax.swing.JTextField (); 484 jButtonTemplate = new javax.swing.JButton (); 485 jCheckBoxDontUseTemplateFromMenu = new javax.swing.JCheckBox (); 486 jPanelComper = new javax.swing.JPanel (); 487 jPanelCompileDir = new javax.swing.JPanel (); 488 jTextFieldCompilationDir = new javax.swing.JTextField (); 489 jButtonCompilationDir = new javax.swing.JButton (); 490 jCheckBoxAutosave = new javax.swing.JCheckBox (); 491 jCheckBoxUseCurrentFilesDirectoryForCompiles = new javax.swing.JCheckBox (); 492 jCheckBoxKeepJavaFile = new javax.swing.JCheckBox (); 493 jPanelCompileDir1 = new javax.swing.JPanel (); 494 jComboBox1 = new javax.swing.JComboBox (); 495 jPanelCompileDir2 = new javax.swing.JPanel (); 496 jLabel1 = new javax.swing.JLabel (); 497 jComboBoxVirtualizer = new javax.swing.JComboBox (); 498 jPanel4 = new javax.swing.JPanel (); 499 jLabelReportVirtualizerDirectory = new javax.swing.JLabel (); 500 jTextFieldVirtualizerDir = new javax.swing.JTextField (); 501 jButtonVirtualizerDirBrowse = new javax.swing.JButton (); 502 jLabelReportVirtualizerSize = new javax.swing.JLabel (); 503 jSpinnerVirtualizerSize = new javax.swing.JSpinner (); 504 jPanel7 = new javax.swing.JPanel (); 505 jLabelReportVirtualizerSize1 = new javax.swing.JLabel (); 506 jSpinnerVirtualizerBlockSize = new javax.swing.JSpinner (); 507 jLabelReportVirtualizerMinGrowCount = new javax.swing.JLabel (); 508 jSpinnerVirtualizerGrownCount = new javax.swing.JSpinner (); 509 jPanel3 = new javax.swing.JPanel (); 510 jPanelBackup = new javax.swing.JPanel (); 511 jPanel6 = new javax.swing.JPanel (); 512 jTextFieldBackupDirectory = new javax.swing.JTextField (); 513 jButtonBackupDirectory = new javax.swing.JButton (); 514 jRadioButton1_NoBackup = new javax.swing.JRadioButton (); 515 jRadioButton2_ReplaceExtension = new javax.swing.JRadioButton (); 516 jRadioButton3_AppendExtension = new javax.swing.JRadioButton (); 517 jLabelDefaultBackupDir = new javax.swing.JLabel (); 518 jPanelExternalPrograms = new javax.swing.JPanel (); 519 jPanelExternalEditor = new javax.swing.JPanel (); 520 jTextFieldEditor = new javax.swing.JTextField (); 521 jButtonBrowseEditor = new javax.swing.JButton (); 522 jPanelViewers = new javax.swing.JPanel (); 523 jTextFieldPDFViewer = new javax.swing.JTextField (); 524 jButtonBrowseEditor1 = new javax.swing.JButton (); 525 jTextFieldHTMLViewer = new javax.swing.JTextField (); 526 jButtonBrowseEditor2 = new javax.swing.JButton (); 527 jTextFieldXLSViewer = new javax.swing.JTextField (); 528 jButtonBrowseEditor3 = new javax.swing.JButton (); 529 jLabelPDFViewer = new javax.swing.JLabel (); 530 jLabelHTMLViewer = new javax.swing.JLabel (); 531 jLabelXLSViewer = new javax.swing.JLabel (); 532 jLabelCSVViewer = new javax.swing.JLabel (); 533 jTextFieldCSVViewer = new javax.swing.JTextField (); 534 jButtonBrowseEditor4 = new javax.swing.JButton (); 535 jLabelTXTViewer = new javax.swing.JLabel (); 536 jTextFieldTXTViewer = new javax.swing.JTextField (); 537 jButtonBrowseEditor5 = new javax.swing.JButton (); 538 jLabelRTFViewer = new javax.swing.JLabel (); 539 jTextFieldRTFViewer = new javax.swing.JTextField (); 540 jButtonBrowseEditor6 = new javax.swing.JButton (); 541 jPanel1 = new javax.swing.JPanel (); 542 jButtonOK = new javax.swing.JButton (); 543 jButtonApply = new javax.swing.JButton (); 544 jButtonCancel = new javax.swing.JButton (); 545 546 setTitle("iReport Options"); 547 addWindowListener(new java.awt.event.WindowAdapter () { 548 public void windowClosing(java.awt.event.WindowEvent evt) { 549 closeDialog(evt); 550 } 551 }); 552 553 jTabbedPane1.setMinimumSize(new java.awt.Dimension (332, 430)); 554 jTabbedPane1.setPreferredSize(new java.awt.Dimension (505, 430)); 555 jPanelGeneral.setLayout(new java.awt.BorderLayout ()); 556 557 jPanel8.setLayout(new java.awt.BorderLayout ()); 558 559 jPanel8.setMinimumSize(new java.awt.Dimension (250, 325)); 560 jPanel8.setPreferredSize(new java.awt.Dimension (500, 330)); 561 jPanelGeneral.add(jPanel8, java.awt.BorderLayout.CENTER); 562 563 jPanel2.setLayout(new java.awt.GridBagLayout ()); 564 565 jLabelTemplateForNewDocs.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); 566 jLabelTemplateForNewDocs.setText("Use this file as template for new documents"); 567 gridBagConstraints = new java.awt.GridBagConstraints (); 568 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 569 gridBagConstraints.insets = new java.awt.Insets (0, 7, 0, 0); 570 jPanel2.add(jLabelTemplateForNewDocs, gridBagConstraints); 571 572 jTextFieldTemplate.addActionListener(new java.awt.event.ActionListener () { 573 public void actionPerformed(java.awt.event.ActionEvent evt) { 574 jTextFieldTemplateActionPerformed(evt); 575 } 576 }); 577 jTextFieldTemplate.addInputMethodListener(new java.awt.event.InputMethodListener () { 578 public void caretPositionChanged(java.awt.event.InputMethodEvent evt) { 579 } 580 public void inputMethodTextChanged(java.awt.event.InputMethodEvent evt) { 581 jTextFieldTemplateInputMethodTextChanged(evt); 582 } 583 }); 584 585 gridBagConstraints = new java.awt.GridBagConstraints (); 586 gridBagConstraints.gridx = 0; 587 gridBagConstraints.gridy = 1; 588 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 589 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 590 gridBagConstraints.weightx = 1000.0; 591 gridBagConstraints.insets = new java.awt.Insets (0, 7, 3, 0); 592 jPanel2.add(jTextFieldTemplate, gridBagConstraints); 593 594 jButtonTemplate.setText("Browse"); 595 jButtonTemplate.setMargin(new java.awt.Insets (2, 2, 2, 2)); 596 jButtonTemplate.addActionListener(new java.awt.event.ActionListener () { 597 public void actionPerformed(java.awt.event.ActionEvent evt) { 598 jButtonTemplateActionPerformed(evt); 599 } 600 }); 601 602 gridBagConstraints = new java.awt.GridBagConstraints (); 603 gridBagConstraints.gridx = 1; 604 gridBagConstraints.gridy = 1; 605 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 606 gridBagConstraints.weightx = 1.0; 607 gridBagConstraints.weighty = 1.0; 608 gridBagConstraints.insets = new java.awt.Insets (0, 3, 3, 6); 609 jPanel2.add(jButtonTemplate, gridBagConstraints); 610 611 jCheckBoxDontUseTemplateFromMenu.setText("Don't use the template when using menu File > New report"); 612 jCheckBoxDontUseTemplateFromMenu.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0)); 613 jCheckBoxDontUseTemplateFromMenu.setMargin(new java.awt.Insets (0, 0, 0, 0)); 614 jCheckBoxDontUseTemplateFromMenu.addActionListener(new java.awt.event.ActionListener () { 615 public void actionPerformed(java.awt.event.ActionEvent evt) { 616 jCheckBoxDontUseTemplateFromMenuActionPerformed(evt); 617 } 618 }); 619 620 gridBagConstraints = new java.awt.GridBagConstraints (); 621 gridBagConstraints.gridx = 0; 622 gridBagConstraints.gridwidth = 2; 623 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 624 gridBagConstraints.insets = new java.awt.Insets (0, 8, 4, 8); 625 jPanel2.add(jCheckBoxDontUseTemplateFromMenu, gridBagConstraints); 626 627 jPanelGeneral.add(jPanel2, java.awt.BorderLayout.SOUTH); 628 629 jTabbedPane1.addTab("General", jPanelGeneral); 630 631 jPanelComper.setLayout(new java.awt.GridBagLayout ()); 632 633 jPanelCompileDir.setLayout(new java.awt.GridBagLayout ()); 634 635 jPanelCompileDir.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Default compilation directory")); 636 gridBagConstraints = new java.awt.GridBagConstraints (); 637 gridBagConstraints.gridx = 0; 638 gridBagConstraints.gridy = 0; 639 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 640 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 641 gridBagConstraints.weightx = 1000.0; 642 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 643 jPanelCompileDir.add(jTextFieldCompilationDir, gridBagConstraints); 644 645 jButtonCompilationDir.setText("Browse"); 646 jButtonCompilationDir.setMargin(new java.awt.Insets (2, 2, 2, 2)); 647 jButtonCompilationDir.addActionListener(new java.awt.event.ActionListener () { 648 public void actionPerformed(java.awt.event.ActionEvent evt) { 649 jButtonCompilationDirActionPerformed(evt); 650 } 651 }); 652 653 gridBagConstraints = new java.awt.GridBagConstraints (); 654 gridBagConstraints.gridx = 1; 655 gridBagConstraints.gridy = 0; 656 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 657 gridBagConstraints.weightx = 1.0; 658 gridBagConstraints.weighty = 1.0; 659 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 660 jPanelCompileDir.add(jButtonCompilationDir, gridBagConstraints); 661 662 gridBagConstraints = new java.awt.GridBagConstraints (); 663 gridBagConstraints.gridx = 0; 664 gridBagConstraints.gridy = 0; 665 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 666 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 667 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 668 jPanelComper.add(jPanelCompileDir, gridBagConstraints); 669 670 jCheckBoxAutosave.setText("Autosave before compiling"); 671 jCheckBoxAutosave.addActionListener(new java.awt.event.ActionListener () { 672 public void actionPerformed(java.awt.event.ActionEvent evt) { 673 jCheckBoxAutosaveActionPerformed(evt); 674 } 675 }); 676 677 gridBagConstraints = new java.awt.GridBagConstraints (); 678 gridBagConstraints.gridx = 0; 679 gridBagConstraints.gridy = 2; 680 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 681 gridBagConstraints.weightx = 1.0; 682 gridBagConstraints.insets = new java.awt.Insets (0, 3, 3, 3); 683 jPanelComper.add(jCheckBoxAutosave, gridBagConstraints); 684 685 jCheckBoxUseCurrentFilesDirectoryForCompiles.setText("Use the reports directory for compiles"); 686 jCheckBoxUseCurrentFilesDirectoryForCompiles.addActionListener(new java.awt.event.ActionListener () { 687 public void actionPerformed(java.awt.event.ActionEvent evt) { 688 jCheckBoxUseCurrentFilesDirectoryForCompilesActionPerformed(evt); 689 } 690 }); 691 692 gridBagConstraints = new java.awt.GridBagConstraints (); 693 gridBagConstraints.gridx = 0; 694 gridBagConstraints.gridy = 1; 695 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 696 gridBagConstraints.insets = new java.awt.Insets (3, 3, 0, 3); 697 jPanelComper.add(jCheckBoxUseCurrentFilesDirectoryForCompiles, gridBagConstraints); 698 699 jCheckBoxKeepJavaFile.setSelected(true); 700 jCheckBoxKeepJavaFile.setText("keep .java file (if available)"); 701 jCheckBoxKeepJavaFile.addActionListener(new java.awt.event.ActionListener () { 702 public void actionPerformed(java.awt.event.ActionEvent evt) { 703 jCheckBoxKeepJavaFileActionPerformed(evt); 704 } 705 }); 706 707 gridBagConstraints = new java.awt.GridBagConstraints (); 708 gridBagConstraints.gridx = 0; 709 gridBagConstraints.gridy = 4; 710 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 711 gridBagConstraints.weightx = 1.0; 712 gridBagConstraints.insets = new java.awt.Insets (0, 3, 3, 3); 713 jPanelComper.add(jCheckBoxKeepJavaFile, gridBagConstraints); 714 715 jPanelCompileDir1.setLayout(new java.awt.GridBagLayout ()); 716 717 jPanelCompileDir1.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Compiler")); 718 jComboBox1.setModel(new javax.swing.DefaultComboBoxModel (new String [] { "JasperReports default", "Java Compiler (need tools.jar)", "JDT Compiler (need jdt-compiler.jar)", "Bean shell compiler (need bsh-1.3.0.jar)", "Jikes compiler (need jikes command)" })); 719 jComboBox1.addActionListener(new java.awt.event.ActionListener () { 720 public void actionPerformed(java.awt.event.ActionEvent evt) { 721 jComboBox1ActionPerformed(evt); 722 } 723 }); 724 725 gridBagConstraints = new java.awt.GridBagConstraints (); 726 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 727 gridBagConstraints.weightx = 1.0; 728 jPanelCompileDir1.add(jComboBox1, gridBagConstraints); 729 730 gridBagConstraints = new java.awt.GridBagConstraints (); 731 gridBagConstraints.gridx = 0; 732 gridBagConstraints.gridy = 3; 733 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 734 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 735 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 736 jPanelComper.add(jPanelCompileDir1, gridBagConstraints); 737 738 jPanelCompileDir2.setLayout(new java.awt.GridBagLayout ()); 739 740 jPanelCompileDir2.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Report Virtualizer")); 741 jLabel1.setText("Use this virtualizer"); 742 gridBagConstraints = new java.awt.GridBagConstraints (); 743 gridBagConstraints.gridx = 0; 744 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 745 gridBagConstraints.weightx = 1.0; 746 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 747 jPanelCompileDir2.add(jLabel1, gridBagConstraints); 748 749 jComboBoxVirtualizer.addActionListener(new java.awt.event.ActionListener () { 750 public void actionPerformed(java.awt.event.ActionEvent evt) { 751 jComboBoxVirtualizerActionPerformed(evt); 752 } 753 }); 754 755 gridBagConstraints = new java.awt.GridBagConstraints (); 756 gridBagConstraints.gridx = 0; 757 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 758 gridBagConstraints.weightx = 1.0; 759 gridBagConstraints.insets = new java.awt.Insets (0, 3, 8, 3); 760 jPanelCompileDir2.add(jComboBoxVirtualizer, gridBagConstraints); 761 762 jPanel4.setLayout(new java.awt.GridBagLayout ()); 763 764 jLabelReportVirtualizerDirectory.setText("Directory where the paged out data is to be stored"); 765 gridBagConstraints = new java.awt.GridBagConstraints (); 766 gridBagConstraints.gridx = 0; 767 gridBagConstraints.gridy = 0; 768 gridBagConstraints.gridwidth = 2; 769 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 770 gridBagConstraints.insets = new java.awt.Insets (0, 4, 0, 4); 771 jPanel4.add(jLabelReportVirtualizerDirectory, gridBagConstraints); 772 773 jTextFieldVirtualizerDir.addActionListener(new java.awt.event.ActionListener () { 774 public void actionPerformed(java.awt.event.ActionEvent evt) { 775 jTextFieldVirtualizerDirActionPerformed(evt); 776 } 777 }); 778 779 gridBagConstraints = new java.awt.GridBagConstraints (); 780 gridBagConstraints.gridx = 0; 781 gridBagConstraints.gridy = 1; 782 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 783 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 784 gridBagConstraints.weightx = 1000.0; 785 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 786 jPanel4.add(jTextFieldVirtualizerDir, gridBagConstraints); 787 788 jButtonVirtualizerDirBrowse.setText("Browse"); 789 jButtonVirtualizerDirBrowse.setMargin(new java.awt.Insets (2, 2, 2, 2)); 790 jButtonVirtualizerDirBrowse.addActionListener(new java.awt.event.ActionListener () { 791 public void actionPerformed(java.awt.event.ActionEvent evt) { 792 jButtonVirtualizerDirBrowseActionPerformed(evt); 793 } 794 }); 795 796 gridBagConstraints = new java.awt.GridBagConstraints (); 797 gridBagConstraints.gridx = 1; 798 gridBagConstraints.gridy = 1; 799 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 800 gridBagConstraints.weightx = 1.0; 801 gridBagConstraints.weighty = 1.0; 802 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 803 jPanel4.add(jButtonVirtualizerDirBrowse, gridBagConstraints); 804 805 jLabelReportVirtualizerSize.setText("Maximum size (in JRVirtualizable objects) of the paged in cache"); 806 gridBagConstraints = new java.awt.GridBagConstraints (); 807 gridBagConstraints.gridx = 0; 808 gridBagConstraints.gridy = 3; 809 gridBagConstraints.gridwidth = 2; 810 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 811 gridBagConstraints.insets = new java.awt.Insets (2, 4, 0, 4); 812 jPanel4.add(jLabelReportVirtualizerSize, gridBagConstraints); 813 814 jSpinnerVirtualizerSize.setMinimumSize(new java.awt.Dimension (127, 20)); 815 jSpinnerVirtualizerSize.setPreferredSize(new java.awt.Dimension (127, 20)); 816 jSpinnerVirtualizerSize.addChangeListener(new javax.swing.event.ChangeListener () { 817 public void stateChanged(javax.swing.event.ChangeEvent evt) { 818 jSpinnerVirtualizerSizeStateChanged(evt); 819 } 820 }); 821 822 gridBagConstraints = new java.awt.GridBagConstraints (); 823 gridBagConstraints.gridy = 4; 824 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 825 gridBagConstraints.insets = new java.awt.Insets (0, 4, 0, 0); 826 jPanel4.add(jSpinnerVirtualizerSize, gridBagConstraints); 827 828 gridBagConstraints = new java.awt.GridBagConstraints (); 829 gridBagConstraints.gridx = 0; 830 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 831 gridBagConstraints.weightx = 1.0; 832 gridBagConstraints.weighty = 1.0; 833 jPanelCompileDir2.add(jPanel4, gridBagConstraints); 834 835 jPanel7.setLayout(new java.awt.GridBagLayout ()); 836 837 jPanel7.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Swap file")); 838 jLabelReportVirtualizerSize1.setText("Block size"); 839 gridBagConstraints = new java.awt.GridBagConstraints (); 840 gridBagConstraints.gridx = 0; 841 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 842 gridBagConstraints.weightx = 0.5; 843 gridBagConstraints.insets = new java.awt.Insets (0, 4, 0, 4); 844 jPanel7.add(jLabelReportVirtualizerSize1, gridBagConstraints); 845 846 jSpinnerVirtualizerBlockSize.setMinimumSize(new java.awt.Dimension (127, 20)); 847 jSpinnerVirtualizerBlockSize.setPreferredSize(new java.awt.Dimension (127, 20)); 848 jSpinnerVirtualizerBlockSize.addChangeListener(new javax.swing.event.ChangeListener () { 849 public void stateChanged(javax.swing.event.ChangeEvent evt) { 850 jSpinnerVirtualizerSizeStateChanged2(evt); 851 } 852 }); 853 854 gridBagConstraints = new java.awt.GridBagConstraints (); 855 gridBagConstraints.gridx = 0; 856 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 857 gridBagConstraints.weightx = 0.5; 858 gridBagConstraints.insets = new java.awt.Insets (0, 4, 0, 0); 859 jPanel7.add(jSpinnerVirtualizerBlockSize, gridBagConstraints); 860 861 jLabelReportVirtualizerMinGrowCount.setText("Min. grow count"); 862 gridBagConstraints = new java.awt.GridBagConstraints (); 863 gridBagConstraints.gridx = 1; 864 gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; 865 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 866 gridBagConstraints.weightx = 0.5; 867 gridBagConstraints.insets = new java.awt.Insets (0, 4, 0, 4); 868 jPanel7.add(jLabelReportVirtualizerMinGrowCount, gridBagConstraints); 869 870 jSpinnerVirtualizerGrownCount.setMinimumSize(new java.awt.Dimension (127, 20)); 871 jSpinnerVirtualizerGrownCount.setPreferredSize(new java.awt.Dimension (127, 20)); 872 jSpinnerVirtualizerGrownCount.addChangeListener(new javax.swing.event.ChangeListener () { 873 public void stateChanged(javax.swing.event.ChangeEvent evt) { 874 jSpinnerVirtualizerSize1jSpinnerVirtualizerSizeStateChanged2(evt); 875 } 876 }); 877 878 gridBagConstraints = new java.awt.GridBagConstraints (); 879 gridBagConstraints.gridx = 1; 880 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 881 gridBagConstraints.weightx = 0.5; 882 gridBagConstraints.insets = new java.awt.Insets (0, 4, 0, 0); 883 jPanel7.add(jSpinnerVirtualizerGrownCount, gridBagConstraints); 884 885 gridBagConstraints = new java.awt.GridBagConstraints (); 886 gridBagConstraints.gridx = 0; 887 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 888 gridBagConstraints.weightx = 1.0; 889 gridBagConstraints.weighty = 1.0; 890 gridBagConstraints.insets = new java.awt.Insets (4, 4, 4, 4); 891 jPanelCompileDir2.add(jPanel7, gridBagConstraints); 892 893 gridBagConstraints = new java.awt.GridBagConstraints (); 894 gridBagConstraints.gridx = 0; 895 gridBagConstraints.gridy = 5; 896 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 897 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 898 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 899 jPanelComper.add(jPanelCompileDir2, gridBagConstraints); 900 901 gridBagConstraints = new java.awt.GridBagConstraints (); 902 gridBagConstraints.gridy = 99; 903 gridBagConstraints.weighty = 1.0; 904 jPanelComper.add(jPanel3, gridBagConstraints); 905 906 jTabbedPane1.addTab("Compiler", jPanelComper); 907 908 jPanelBackup.setLayout(new java.awt.GridBagLayout ()); 909 910 jPanel6.setLayout(new java.awt.GridBagLayout ()); 911 912 jPanel6.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Backup files on save")); 913 gridBagConstraints = new java.awt.GridBagConstraints (); 914 gridBagConstraints.gridx = 0; 915 gridBagConstraints.gridy = 4; 916 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 917 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 918 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 919 jPanel6.add(jTextFieldBackupDirectory, gridBagConstraints); 920 921 jButtonBackupDirectory.setText("Browse"); 922 jButtonBackupDirectory.setMargin(new java.awt.Insets (2, 2, 2, 2)); 923 jButtonBackupDirectory.addActionListener(new java.awt.event.ActionListener () { 924 public void actionPerformed(java.awt.event.ActionEvent evt) { 925 jButtonBackupDirectoryActionPerformed(evt); 926 } 927 }); 928 929 gridBagConstraints = new java.awt.GridBagConstraints (); 930 gridBagConstraints.gridx = 1; 931 gridBagConstraints.gridy = 4; 932 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 933 gridBagConstraints.weightx = 1.0; 934 gridBagConstraints.weighty = 1.0; 935 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 936 jPanel6.add(jButtonBackupDirectory, gridBagConstraints); 937 938 buttonGroup1.add(jRadioButton1_NoBackup); 939 jRadioButton1_NoBackup.setText("No backup"); 940 jRadioButton1_NoBackup.addActionListener(new java.awt.event.ActionListener () { 941 public void actionPerformed(java.awt.event.ActionEvent evt) { 942 jRadioButton1_NoBackupActionPerformed(evt); 943 } 944 }); 945 946 gridBagConstraints = new java.awt.GridBagConstraints (); 947 gridBagConstraints.gridx = 0; 948 gridBagConstraints.gridy = 0; 949 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 950 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 951 gridBagConstraints.insets = new java.awt.Insets (3, 3, 0, 3); 952 jPanel6.add(jRadioButton1_NoBackup, gridBagConstraints); 953 954 buttonGroup1.add(jRadioButton2_ReplaceExtension); 955 jRadioButton2_ReplaceExtension.setText("Replace extension with .bak"); 956 jRadioButton2_ReplaceExtension.addActionListener(new java.awt.event.ActionListener () { 957 public void actionPerformed(java.awt.event.ActionEvent evt) { 958 jRadioButton2_ReplaceExtensionActionPerformed(evt); 959 } 960 }); 961 962 gridBagConstraints = new java.awt.GridBagConstraints (); 963 gridBagConstraints.gridx = 0; 964 gridBagConstraints.gridy = 1; 965 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 966 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 967 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 968 jPanel6.add(jRadioButton2_ReplaceExtension, gridBagConstraints); 969 970 buttonGroup1.add(jRadioButton3_AppendExtension); 971 jRadioButton3_AppendExtension.setSelected(true); 972 jRadioButton3_AppendExtension.setText("Append .bak to existing extension"); 973 jRadioButton3_AppendExtension.addActionListener(new java.awt.event.ActionListener () { 974 public void actionPerformed(java.awt.event.ActionEvent evt) { 975 jRadioButton3_AppendExtensionActionPerformed(evt); 976 } 977 }); 978 979 gridBagConstraints = new java.awt.GridBagConstraints (); 980 gridBagConstraints.gridx = 0; 981 gridBagConstraints.gridy = 2; 982 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 983 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 984 gridBagConstraints.insets = new java.awt.Insets (0, 3, 5, 3); 985 jPanel6.add(jRadioButton3_AppendExtension, gridBagConstraints); 986 987 jLabelDefaultBackupDir.setText("Default backup directory"); 988 gridBagConstraints = new java.awt.GridBagConstraints (); 989 gridBagConstraints.gridx = 0; 990 gridBagConstraints.gridy = 3; 991 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 992 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 993 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 994 jPanel6.add(jLabelDefaultBackupDir, gridBagConstraints); 995 996 gridBagConstraints = new java.awt.GridBagConstraints (); 997 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 998 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 999 gridBagConstraints.weightx = 1.0; 1000 gridBagConstraints.weighty = 1.0; 1001 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 1002 jPanelBackup.add(jPanel6, gridBagConstraints); 1003 1004 jTabbedPane1.addTab("Backup", jPanelBackup); 1005 1006 jPanelExternalPrograms.setLayout(new java.awt.GridBagLayout ()); 1007 1008 jPanelExternalEditor.setLayout(new java.awt.GridBagLayout ()); 1009 1010 jPanelExternalEditor.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "External editor")); 1011 gridBagConstraints = new java.awt.GridBagConstraints (); 1012 gridBagConstraints.gridx = 0; 1013 gridBagConstraints.gridy = 0; 1014 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1015 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 1016 gridBagConstraints.weightx = 1000.0; 1017 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1018 jPanelExternalEditor.add(jTextFieldEditor, gridBagConstraints); 1019 1020 jButtonBrowseEditor.setText("Browse"); 1021 jButtonBrowseEditor.setMargin(new java.awt.Insets (2, 2, 2, 2)); 1022 jButtonBrowseEditor.addActionListener(new java.awt.event.ActionListener () { 1023 public void actionPerformed(java.awt.event.ActionEvent evt) { 1024 jButtonBrowseEditorActionPerformed(evt); 1025 } 1026 }); 1027 1028 gridBagConstraints = new java.awt.GridBagConstraints (); 1029 gridBagConstraints.gridx = 1; 1030 gridBagConstraints.gridy = 0; 1031 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 1032 gridBagConstraints.weightx = 1.0; 1033 gridBagConstraints.weighty = 1.0; 1034 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1035 jPanelExternalEditor.add(jButtonBrowseEditor, gridBagConstraints); 1036 1037 gridBagConstraints = new java.awt.GridBagConstraints (); 1038 gridBagConstraints.gridx = 0; 1039 gridBagConstraints.gridy = 0; 1040 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1041 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 1042 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 1043 jPanelExternalPrograms.add(jPanelExternalEditor, gridBagConstraints); 1044 1045 jPanelViewers.setLayout(new java.awt.GridBagLayout ()); 1046 1047 jPanelViewers.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Viewers")); 1048 gridBagConstraints = new java.awt.GridBagConstraints (); 1049 gridBagConstraints.gridx = 0; 1050 gridBagConstraints.gridy = 1; 1051 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1052 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 1053 gridBagConstraints.weightx = 1000.0; 1054 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1055 jPanelViewers.add(jTextFieldPDFViewer, gridBagConstraints); 1056 1057 jButtonBrowseEditor1.setText("Browse"); 1058 jButtonBrowseEditor1.setMargin(new java.awt.Insets (2, 2, 2, 2)); 1059 jButtonBrowseEditor1.addActionListener(new java.awt.event.ActionListener () { 1060 public void actionPerformed(java.awt.event.ActionEvent evt) { 1061 jButtonBrowseEditor1ActionPerformed(evt); 1062 } 1063 }); 1064 1065 gridBagConstraints = new java.awt.GridBagConstraints (); 1066 gridBagConstraints.gridx = 1; 1067 gridBagConstraints.gridy = 1; 1068 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 1069 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1070 jPanelViewers.add(jButtonBrowseEditor1, gridBagConstraints); 1071 1072 gridBagConstraints = new java.awt.GridBagConstraints (); 1073 gridBagConstraints.gridx = 0; 1074 gridBagConstraints.gridy = 3; 1075 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1076 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 1077 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1078 jPanelViewers.add(jTextFieldHTMLViewer, gridBagConstraints); 1079 1080 jButtonBrowseEditor2.setText("Browse"); 1081 jButtonBrowseEditor2.setMargin(new java.awt.Insets (2, 2, 2, 2)); 1082 jButtonBrowseEditor2.addActionListener(new java.awt.event.ActionListener () { 1083 public void actionPerformed(java.awt.event.ActionEvent evt) { 1084 jButtonBrowseEditor2ActionPerformed(evt); 1085 } 1086 }); 1087 1088 gridBagConstraints = new java.awt.GridBagConstraints (); 1089 gridBagConstraints.gridx = 1; 1090 gridBagConstraints.gridy = 3; 1091 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 1092 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1093 jPanelViewers.add(jButtonBrowseEditor2, gridBagConstraints); 1094 1095 gridBagConstraints = new java.awt.GridBagConstraints (); 1096 gridBagConstraints.gridx = 0; 1097 gridBagConstraints.gridy = 5; 1098 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1099 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 1100 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1101 jPanelViewers.add(jTextFieldXLSViewer, gridBagConstraints); 1102 1103 jButtonBrowseEditor3.setText("Browse"); 1104 jButtonBrowseEditor3.setMargin(new java.awt.Insets (2, 2, 2, 2)); 1105 jButtonBrowseEditor3.addActionListener(new java.awt.event.ActionListener () { 1106 public void actionPerformed(java.awt.event.ActionEvent evt) { 1107 jButtonBrowseEditor3ActionPerformed(evt); 1108 } 1109 }); 1110 1111 gridBagConstraints = new java.awt.GridBagConstraints (); 1112 gridBagConstraints.gridx = 1; 1113 gridBagConstraints.gridy = 5; 1114 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 1115 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1116 jPanelViewers.add(jButtonBrowseEditor3, gridBagConstraints); 1117 1118 jLabelPDFViewer.setText("PDF viewer"); 1119 gridBagConstraints = new java.awt.GridBagConstraints (); 1120 gridBagConstraints.gridx = 0; 1121 gridBagConstraints.gridy = 0; 1122 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1123 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 1124 gridBagConstraints.weightx = 1.0; 1125 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1126 jPanelViewers.add(jLabelPDFViewer, gridBagConstraints); 1127 1128 jLabelHTMLViewer.setText("HTML viewer"); 1129 gridBagConstraints = new java.awt.GridBagConstraints (); 1130 gridBagConstraints.gridx = 0; 1131 gridBagConstraints.gridy = 2; 1132 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1133 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 1134 gridBagConstraints.weightx = 1.0; 1135 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1136 jPanelViewers.add(jLabelHTMLViewer, gridBagConstraints); 1137 1138 jLabelXLSViewer.setText("XLS viewer"); 1139 gridBagConstraints = new java.awt.GridBagConstraints (); 1140 gridBagConstraints.gridx = 0; 1141 gridBagConstraints.gridy = 4; 1142 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1143 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 1144 gridBagConstraints.weightx = 1.0; 1145 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1146 jPanelViewers.add(jLabelXLSViewer, gridBagConstraints); 1147 1148 jLabelCSVViewer.setText("CSV viewer"); 1149 gridBagConstraints = new java.awt.GridBagConstraints (); 1150 gridBagConstraints.gridx = 0; 1151 gridBagConstraints.gridy = 6; 1152 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1153 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 1154 gridBagConstraints.weightx = 1.0; 1155 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1156 jPanelViewers.add(jLabelCSVViewer, gridBagConstraints); 1157 1158 gridBagConstraints = new java.awt.GridBagConstraints (); 1159 gridBagConstraints.gridx = 0; 1160 gridBagConstraints.gridy = 7; 1161 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1162 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 1163 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1164 jPanelViewers.add(jTextFieldCSVViewer, gridBagConstraints); 1165 1166 jButtonBrowseEditor4.setText("Browse"); 1167 jButtonBrowseEditor4.setMargin(new java.awt.Insets (2, 2, 2, 2)); 1168 jButtonBrowseEditor4.addActionListener(new java.awt.event.ActionListener () { 1169 public void actionPerformed(java.awt.event.ActionEvent evt) { 1170 jButtonBrowseEditor4ActionPerformed(evt); 1171 } 1172 }); 1173 1174 gridBagConstraints = new java.awt.GridBagConstraints (); 1175 gridBagConstraints.gridx = 1; 1176 gridBagConstraints.gridy = 7; 1177 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 1178 gridBagConstraints.weightx = 1.0; 1179 gridBagConstraints.weighty = 1.0; 1180 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1181 jPanelViewers.add(jButtonBrowseEditor4, gridBagConstraints); 1182 1183 jLabelTXTViewer.setText("Text viewer"); 1184 gridBagConstraints = new java.awt.GridBagConstraints (); 1185 gridBagConstraints.gridx = 0; 1186 gridBagConstraints.gridy = 8; 1187 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1188 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 1189 gridBagConstraints.weightx = 1.0; 1190 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1191 jPanelViewers.add(jLabelTXTViewer, gridBagConstraints); 1192 1193 gridBagConstraints = new java.awt.GridBagConstraints (); 1194 gridBagConstraints.gridx = 0; 1195 gridBagConstraints.gridy = 9; 1196 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1197 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 1198 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1199 jPanelViewers.add(jTextFieldTXTViewer, gridBagConstraints); 1200 1201 jButtonBrowseEditor5.setText("Browse"); 1202 jButtonBrowseEditor5.setMargin(new java.awt.Insets (2, 2, 2, 2)); 1203 jButtonBrowseEditor5.addActionListener(new java.awt.event.ActionListener () { 1204 public void actionPerformed(java.awt.event.ActionEvent evt) { 1205 jButtonBrowseEditor5ActionPerformed(evt); 1206 } 1207 }); 1208 1209 gridBagConstraints = new java.awt.GridBagConstraints (); 1210 gridBagConstraints.gridx = 1; 1211 gridBagConstraints.gridy = 9; 1212 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 1213 gridBagConstraints.weightx = 1.0; 1214 gridBagConstraints.weighty = 1.0; 1215 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1216 jPanelViewers.add(jButtonBrowseEditor5, gridBagConstraints); 1217 1218 jLabelRTFViewer.setText("CSV viewer"); 1219 gridBagConstraints = new java.awt.GridBagConstraints (); 1220 gridBagConstraints.gridx = 0; 1221 gridBagConstraints.gridy = 10; 1222 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1223 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 1224 gridBagConstraints.weightx = 1.0; 1225 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1226 jPanelViewers.add(jLabelRTFViewer, gridBagConstraints); 1227 1228 gridBagConstraints = new java.awt.GridBagConstraints (); 1229 gridBagConstraints.gridx = 0; 1230 gridBagConstraints.gridy = 11; 1231 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1232 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 1233 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1234 jPanelViewers.add(jTextFieldRTFViewer, gridBagConstraints); 1235 1236 jButtonBrowseEditor6.setText("Browse"); 1237 jButtonBrowseEditor6.setMargin(new java.awt.Insets (2, 2, 2, 2)); 1238 jButtonBrowseEditor6.addActionListener(new java.awt.event.ActionListener () { 1239 public void actionPerformed(java.awt.event.ActionEvent evt) { 1240 jButtonBrowseEditor6ActionPerformed(evt); 1241 } 1242 }); 1243 1244 gridBagConstraints = new java.awt.GridBagConstraints (); 1245 gridBagConstraints.gridx = 1; 1246 gridBagConstraints.gridy = 11; 1247 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 1248 gridBagConstraints.weightx = 1.0; 1249 gridBagConstraints.weighty = 1.0; 1250 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 1251 jPanelViewers.add(jButtonBrowseEditor6, gridBagConstraints); 1252 1253 gridBagConstraints = new java.awt.GridBagConstraints (); 1254 gridBagConstraints.gridx = 0; 1255 gridBagConstraints.gridy = 1; 1256 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 1257 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 1258 gridBagConstraints.weightx = 1.0; 1259 gridBagConstraints.weighty = 1.0; 1260 gridBagConstraints.insets = new java.awt.Insets (0, 3, 6, 3); 1261 jPanelExternalPrograms.add(jPanelViewers, gridBagConstraints); 1262 1263 jTabbedPane1.addTab("External programs", jPanelExternalPrograms); 1264 1265 getContentPane().add(jTabbedPane1, java.awt.BorderLayout.CENTER); 1266 1267 jPanel1.setLayout(new java.awt.FlowLayout (java.awt.FlowLayout.RIGHT)); 1268 1269 jPanel1.setMinimumSize(new java.awt.Dimension (10, 30)); 1270 jButtonOK.setMnemonic('s'); 1271 jButtonOK.setText("Save"); 1272 jButtonOK.setEnabled(false); 1273 jButtonOK.addActionListener(new java.awt.event.ActionListener () { 1274 public void actionPerformed(java.awt.event.ActionEvent evt) { 1275 jButtonOKActionPerformed(evt); 1276 } 1277 }); 1278 1279 jPanel1.add(jButtonOK); 1280 1281 jButtonApply.setMnemonic('a'); 1282 jButtonApply.setText("Apply"); 1283 jButtonApply.setEnabled(false); 1284 jButtonApply.addActionListener(new java.awt.event.ActionListener () { 1285 public void actionPerformed(java.awt.event.ActionEvent evt) { 1286 jButtonApplyActionPerformed(evt); 1287 } 1288 }); 1289 1290 jPanel1.add(jButtonApply); 1291 1292 jButtonCancel.setMnemonic('c'); 1293 jButtonCancel.setText("Cancel"); 1294 jButtonCancel.addActionListener(new java.awt.event.ActionListener () { 1295 public void actionPerformed(java.awt.event.ActionEvent evt) { 1296 jButtonCancelActionPerformed(evt); 1297 } 1298 }); 1299 1300 jPanel1.add(jButtonCancel); 1301 1302 getContentPane().add(jPanel1, java.awt.BorderLayout.SOUTH); 1303 1304 pack(); 1305 java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); 1306 java.awt.Dimension dialogSize = getSize(); 1307 setLocation((screenSize.width-dialogSize.width)/2,(screenSize.height-dialogSize.height)/2); 1308 } 1310 private void jCheckBoxDontUseTemplateFromMenuActionPerformed(java.awt.event.ActionEvent evt) { this.enableApplyAndOk(); 1312 } 1314 private void jComboBoxVirtualizerActionPerformed(java.awt.event.ActionEvent evt) { this.enableApplyAndOk(); 1316 } 1318 private void jSpinnerVirtualizerSize1jSpinnerVirtualizerSizeStateChanged2(javax.swing.event.ChangeEvent evt) { this.enableApplyAndOk(); 1320 } 1322 private void jSpinnerVirtualizerSizeStateChanged2(javax.swing.event.ChangeEvent evt) { this.enableApplyAndOk(); 1324 } 1326 private void jButtonBrowseEditor6ActionPerformed(java.awt.event.ActionEvent evt) { javax.swing.JFileChooser jfc = new javax.swing.JFileChooser (); 1328 1329 jfc.setDialogTitle(it.businesslogic.ireport.util.I18n.getString("chooseRTF","Choose a RTF viewer...")); 1331 jfc.setMultiSelectionEnabled(false); 1332 if (jfc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { 1333 jTextFieldRTFViewer.setText( jfc.getSelectedFile().getPath()); 1334 } 1335 } 1337 private void jButtonBrowseEditor5ActionPerformed(java.awt.event.ActionEvent evt) { javax.swing.JFileChooser jfc = new javax.swing.JFileChooser (); 1339 1340 jfc.setDialogTitle(it.businesslogic.ireport.util.I18n.getString("chooseText","Choose a Text viewer...")); 1342 jfc.setMultiSelectionEnabled(false); 1343 if (jfc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { 1344 jTextFieldTXTViewer.setText( jfc.getSelectedFile().getPath()); 1345 } 1346 } 1348 private void jTextFieldVirtualizerDirActionPerformed(java.awt.event.ActionEvent evt) { this.enableApplyAndOk(); 1350 } 1352 private void jSpinnerVirtualizerSizeStateChanged(javax.swing.event.ChangeEvent evt) { this.enableApplyAndOk(); 1354 } 1356 private void jButtonVirtualizerDirBrowseActionPerformed(java.awt.event.ActionEvent evt) { JFileChooser jfc = new JFileChooser(); 1358 jfc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); 1359 if (jfc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { 1360 jTextFieldVirtualizerDir.setText( jfc.getSelectedFile().getPath()); 1361 } 1362 this.enableApplyAndOk(); 1363 } 1365 private void jCheckBoxKeepJavaFileActionPerformed(java.awt.event.ActionEvent evt) { this.enableApplyAndOk(); 1367 } 1369 private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) { this.enableApplyAndOk(); 1371 } 1373 private void jCheckBoxUseCurrentFilesDirectoryForCompilesActionPerformed(java.awt.event.ActionEvent evt) { if(this.jCheckBoxUseCurrentFilesDirectoryForCompiles.isSelected()) { 1376 this.disableCompileDirectoryBrowse(); 1377 } 1378 else { 1379 this.enableCompileDirectoryBrowse(); 1380 } 1381 this.enableApplyAndOk(); 1382 } 1384 private void jButtonOKActionPerformed(java.awt.event.ActionEvent evt) { if ( jButtonApply.isEnabled()) 1386 jButtonApplyActionPerformed(evt); 1387 1388 if (mf != null) mf.saveiReportConfiguration(); 1389 this.jButtonOK.setEnabled(false); 1390 this.setVisible(false); 1391 this.dispose(); 1392 } 1394 private void jButtonApplyActionPerformed(java.awt.event.ActionEvent evt) { applyConfiguration(); 1396 jButtonApply.setEnabled(false); 1397 } 1399 private void jButtonCancelActionPerformed(java.awt.event.ActionEvent evt) { this.setVisible(false); 1401 this.dispose(); 1402 } 1404 private void jButtonBrowseEditor4ActionPerformed(java.awt.event.ActionEvent evt) { javax.swing.JFileChooser jfc = new javax.swing.JFileChooser (); 1406 1407 jfc.setDialogTitle(it.businesslogic.ireport.util.I18n.getString("chooseCSV","Choose a CSV viewer...")); 1409 jfc.setMultiSelectionEnabled(false); 1410 if (jfc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { 1411 jTextFieldCSVViewer.setText( jfc.getSelectedFile().getPath()); 1412 } 1413 } 1415 private void jButtonBrowseEditor3ActionPerformed(java.awt.event.ActionEvent evt) { javax.swing.JFileChooser jfc = new javax.swing.JFileChooser (); 1417 1418 jfc.setDialogTitle(it.businesslogic.ireport.util.I18n.getString("chooseXLS","Choose a XLS viewer...")); 1420 jfc.setMultiSelectionEnabled(false); 1421 if (jfc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { 1422 jTextFieldXLSViewer.setText( jfc.getSelectedFile().getPath()); 1423 } 1424 } 1426 private void jButtonBrowseEditor2ActionPerformed(java.awt.event.ActionEvent evt) { javax.swing.JFileChooser jfc = new javax.swing.JFileChooser (); 1428 1429 jfc.setDialogTitle(it.businesslogic.ireport.util.I18n.getString("chooseHTML","Choose a HTML viewer...")); 1431 jfc.setMultiSelectionEnabled(false); 1432 if (jfc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { 1433 jTextFieldHTMLViewer.setText( jfc.getSelectedFile().getPath()); 1434 } 1435 } 1437 private void jButtonBrowseEditor1ActionPerformed(java.awt.event.ActionEvent evt) { javax.swing.JFileChooser jfc = new javax.swing.JFileChooser (); 1439 1440 jfc.setDialogTitle(it.businesslogic.ireport.util.I18n.getString("choosePDF","Choose a PDF viewer...")); 1442 jfc.setMultiSelectionEnabled(false); 1443 if (jfc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { 1444 jTextFieldPDFViewer.setText( jfc.getSelectedFile().getPath()); 1445 } 1446 } 1448 private void jButtonBrowseEditorActionPerformed(java.awt.event.ActionEvent evt) { javax.swing.JFileChooser jfc = new javax.swing.JFileChooser (); 1450 1451 jfc.setDialogTitle(it.businesslogic.ireport.util.I18n.getString("chooseEditor","Choose an editor...")); 1453 jfc.setMultiSelectionEnabled(false); 1454 if (jfc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { 1455 jTextFieldEditor.setText( jfc.getSelectedFile().getPath()); 1456 } 1457 1458 } 1460 private void jButtonBackupDirectoryActionPerformed(java.awt.event.ActionEvent evt) { JFileChooser jfc = new JFileChooser(); 1462 jfc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); 1463 if (jfc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { 1464 jTextFieldBackupDirectory.setText( jfc.getSelectedFile().getPath()); 1465 } 1466 } 1468 private void jButtonCompilationDirActionPerformed(java.awt.event.ActionEvent evt) { 1470 JFileChooser jfc = new JFileChooser(); 1471 jfc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); 1472 if (jTextFieldCompilationDir.getText().length() > 0) 1473 { 1474 try { 1475 jfc.setCurrentDirectory( new File (jTextFieldCompilationDir.getText())); 1476 1477 } catch (Exception ex){ 1478 try { 1479 jfc.setCurrentDirectory( new File (MainFrame.getMainInstance().getCurrentDirectory())); 1480 } catch (Exception ex2){} 1481 } 1482 } 1483 1484 if (jfc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { 1485 jTextFieldCompilationDir.setText( jfc.getSelectedFile().getPath()); 1486 } 1487 } 1489 private void jButtonTemplateActionPerformed(java.awt.event.ActionEvent evt) { JFileChooser jfc = new JFileChooser(); 1492 jfc.setFileFilter( new javax.swing.filechooser.FileFilter () { 1493 public boolean accept(java.io.File file) { 1494 String filename = file.getName(); 1495 return (filename.endsWith(".xml") || file.isDirectory()) ; 1496 } 1497 public String getDescription() { 1498 return "JasperReports XML *.xml"; 1499 } 1500 }); 1501 if (jfc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { 1502 jTextFieldTemplate.setText( jfc.getSelectedFile().getPath()); 1503 } 1504 } 1506 private void jRadioButton3_AppendExtensionActionPerformed(java.awt.event.ActionEvent evt) { this.enableApplyAndOk(); 1508 } 1510 private void jRadioButton2_ReplaceExtensionActionPerformed(java.awt.event.ActionEvent evt) { this.enableApplyAndOk(); 1512 } 1514 private void jRadioButton1_NoBackupActionPerformed(java.awt.event.ActionEvent evt) { this.enableApplyAndOk(); 1516 } 1518 private void jCheckBoxAutosaveActionPerformed(java.awt.event.ActionEvent evt) { this.enableApplyAndOk(); 1520 } 1522 private void jTextFieldTemplateInputMethodTextChanged(java.awt.event.InputMethodEvent evt) { this.enableApplyAndOk(); 1524 } 1526 private void jTextFieldTemplateActionPerformed(java.awt.event.ActionEvent evt) { this.enableApplyAndOk(); 1528 } 1530 1531 private void closeDialog(java.awt.event.WindowEvent evt) { setVisible(false); 1533 dispose(); 1534 } 1536 1539 public static void main(String args[]) { 1540 new OptionsDialog(new javax.swing.JFrame (), true).setVisible(true); 1541 } 1542 1543 1544 private javax.swing.ButtonGroup buttonGroup1; 1546 private javax.swing.JButton jButtonApply; 1547 private javax.swing.JButton jButtonBackupDirectory; 1548 private javax.swing.JButton jButtonBrowseEditor; 1549 private javax.swing.JButton jButtonBrowseEditor1; 1550 private javax.swing.JButton jButtonBrowseEditor2; 1551 private javax.swing.JButton jButtonBrowseEditor3; 1552 private javax.swing.JButton jButtonBrowseEditor4; 1553 private javax.swing.JButton jButtonBrowseEditor5; 1554 private javax.swing.JButton jButtonBrowseEditor6; 1555 private javax.swing.JButton jButtonCancel; 1556 private javax.swing.JButton jButtonCompilationDir; 1557 private javax.swing.JButton jButtonOK; 1558 private javax.swing.JButton jButtonTemplate; 1559 private javax.swing.JButton jButtonVirtualizerDirBrowse; 1560 private javax.swing.JCheckBox jCheckBoxAutosave; 1561 private javax.swing.JCheckBox jCheckBoxDontUseTemplateFromMenu; 1562 private javax.swing.JCheckBox jCheckBoxKeepJavaFile; 1563 private javax.swing.JCheckBox jCheckBoxUseCurrentFilesDirectoryForCompiles; 1564 private javax.swing.JComboBox jComboBox1; 1565 private javax.swing.JComboBox jComboBoxVirtualizer; 1566 private javax.swing.JLabel jLabel1; 1567 private javax.swing.JLabel jLabelCSVViewer; 1568 private javax.swing.JLabel jLabelDefaultBackupDir; 1569 private javax.swing.JLabel jLabelHTMLViewer; 1570 private javax.swing.JLabel jLabelPDFViewer; 1571 private javax.swing.JLabel jLabelRTFViewer; 1572 private javax.swing.JLabel jLabelReportVirtualizerDirectory; 1573 private javax.swing.JLabel jLabelReportVirtualizerMinGrowCount; 1574 private javax.swing.JLabel jLabelReportVirtualizerSize; 1575 private javax.swing.JLabel jLabelReportVirtualizerSize1; 1576 private javax.swing.JLabel jLabelTXTViewer; 1577 private javax.swing.JLabel jLabelTemplateForNewDocs; 1578 private javax.swing.JLabel jLabelXLSViewer; 1579 private javax.swing.JPanel jPanel1; 1580 private javax.swing.JPanel jPanel2; 1581 private javax.swing.JPanel jPanel3; 1582 private javax.swing.JPanel jPanel4; 1583 private javax.swing.JPanel jPanel6; 1584 private javax.swing.JPanel jPanel7; 1585 private javax.swing.JPanel jPanel8; 1586 private javax.swing.JPanel jPanelBackup; 1587 private javax.swing.JPanel jPanelComper; 1588 private javax.swing.JPanel jPanelCompileDir; 1589 private javax.swing.JPanel jPanelCompileDir1; 1590 private javax.swing.JPanel jPanelCompileDir2; 1591 private javax.swing.JPanel jPanelExternalEditor; 1592 private javax.swing.JPanel jPanelExternalPrograms; 1593 private javax.swing.JPanel jPanelGeneral; 1594 private javax.swing.JPanel jPanelViewers; 1595 private javax.swing.JRadioButton jRadioButton1_NoBackup; 1596 private javax.swing.JRadioButton jRadioButton2_ReplaceExtension; 1597 private javax.swing.JRadioButton jRadioButton3_AppendExtension; 1598 private javax.swing.JSpinner jSpinnerVirtualizerBlockSize; 1599 private javax.swing.JSpinner jSpinnerVirtualizerGrownCount; 1600 private javax.swing.JSpinner jSpinnerVirtualizerSize; 1601 private javax.swing.JTabbedPane jTabbedPane1; 1602 private javax.swing.JTextField jTextFieldBackupDirectory; 1603 private javax.swing.JTextField jTextFieldCSVViewer; 1604 private javax.swing.JTextField jTextFieldCompilationDir; 1605 private javax.swing.JTextField jTextFieldEditor; 1606 private javax.swing.JTextField jTextFieldHTMLViewer; 1607 private javax.swing.JTextField jTextFieldPDFViewer; 1608 private javax.swing.JTextField jTextFieldRTFViewer; 1609 private javax.swing.JTextField jTextFieldTXTViewer; 1610 private javax.swing.JTextField jTextFieldTemplate; 1611 private javax.swing.JTextField jTextFieldVirtualizerDir; 1612 private javax.swing.JTextField jTextFieldXLSViewer; 1613 1621 1622 public void applyConfiguration() { 1623 if (mf == null || mf.getProperties() == null) { 1624 return; 1625 } 1626 java.util.Properties prop = mf.getProperties(); 1627 try { 1628 prop.put("RecentFilesLength", ""+this.categorySheetPanel.getPropertyValue("RecentFilesLength")); 1630 prop.put("DefaultUnit",""+this.categorySheetPanel.getPropertyValue("DefaultUnit")); 1631 prop.put("GridSize",""+this.categorySheetPanel.getPropertyValue("GridSize")); 1632 prop.put("ViewRules",""+this.categorySheetPanel.getPropertyValue("ViewRules")); 1633 prop.put("showGrid",""+this.categorySheetPanel.getPropertyValue("showGrid")); 1634 prop.put("Antialias",""+this.categorySheetPanel.getPropertyValue("Antialias")); 1635 prop.put("AutoReload",""+this.categorySheetPanel.getPropertyValue("AutoReload")); 1636 prop.put("AskToSave",""+this.categorySheetPanel.getPropertyValue("AskToSave")); 1637 prop.put("LoadFontOnStartup",""+this.categorySheetPanel.getPropertyValue("LoadFontOnStartup")); 1638 prop.put("RestoreLayout",""+this.categorySheetPanel.getPropertyValue("RestoreLayout")); 1639 1640 prop.put("ShowToolTipsInDesign",""+""+this.categorySheetPanel.getPropertyValue("ShowToolTipsInDesign")); 1641 1642 prop.put("enableRMIServer",""+this.categorySheetPanel.getPropertyValue("enableRMIServer")); 1643 prop.put("RMIServerPort",""+""+this.categorySheetPanel.getPropertyValue("RMIServerPort")); 1644 1645 mf.updateAntialiasMode(); 1646 1647 prop.put("ViewBorderForTextElements",""+""+this.categorySheetPanel.getPropertyValue("ViewBorderForTextElements")); 1648 1649 1650 java.awt.Color color = null; 1651 color = ColorSelectorPanel.parseColorString( ""+this.categorySheetPanel.getPropertyValue("ViewBorderColor") ); 1652 1653 prop.put("ViewBorderColor",""+((color != null) ? color.getRGB() : java.awt.Color.GRAY.getRGB())); 1654 1655 String currentLAF = prop.getProperty("LookAndFeel",""); 1656 1657 prop.put("LookAndFeel",""+""+this.categorySheetPanel.getPropertyValue("LookAndFeel")); 1658 prop.put("EnableTextResizeClick",""+""+this.categorySheetPanel.getPropertyValue("EnableTextResizeClick")); 1660 prop.put("SynchronizeReportName",""+""+this.categorySheetPanel.getPropertyValue("SynchronizeReportName")); 1661 prop.put("DefaultScriptingLanguage",""+""+this.categorySheetPanel.getPropertyValue("DefaultScriptingLanguage")); 1662 1663 prop.put("DefaultStyle",""+""+this.categorySheetPanel.getPropertyValue("DefaultStyle")); 1664 1665 String currentOverrideDefaultFont = prop.getProperty("overrideDefaultFont",""); 1666 String currentOverrideDefaultFontSize = prop.getProperty("overrideDefaultFontSize",""); 1667 1668 prop.put("overrideDefaultFont",""+this.categorySheetPanel.getPropertyValue("overrideDefaultFont")); 1669 try { 1670 1671 Integer.parseInt(""+ this.categorySheetPanel.getPropertyValue("overrideDefaultFontSize") ); 1672 prop.put("overrideDefaultFontSize",""+this.categorySheetPanel.getPropertyValue("overrideDefaultFontSize")); 1673 1674 } catch (Exception ex) 1675 { 1676 ex.printStackTrace(); 1677 } 1678 1679 String currentOverrideDefaultFontName = prop.getProperty("overrideDefaultFontName",""); 1680 String currentOverrideDefaultFontAttrs = prop.getProperty("overrideDefaultFontAttrs",""); 1681 1682 1683 prop.put("overrideDefaultFontName",""+this.categorySheetPanel.getPropertyValue("overrideDefaultFontName")); 1684 prop.put("overrideDefaultFontAttrs",""+this.categorySheetPanel.getPropertyValue("overrideDefaultFontAttrs")); 1685 1686 1687 1688 String lang_str = (String )this.categorySheetPanel.getPropertyValue("Language"); 1689 1690 Locale selectedLang = null; 1691 1692 1693 1694 for (int i=0; i< listOfLanguages.size(); ++i) 1695 { 1696 Locale lang = (Locale )listOfLanguages.get(i); 1697 LocaleAdapter adapter = new LocaleAdapter(lang); 1698 if( lang_str.equals(""+adapter) ) { 1699 selectedLang = adapter.getLocale(); 1700 prop.put("Language", selectedLang.getLanguage() ); 1701 prop.put("Country", selectedLang.getCountry() ); 1702 prop.put("Variant", selectedLang.getVariant() ); 1703 break; 1704 } 1705 } 1706 1707 prop.put("DefaultBackupDirectory",""+this.jTextFieldBackupDirectory.getText()); 1709 prop.put("ExternalCSVViewer",""+this.jTextFieldCSVViewer.getText()); 1710 prop.put("ExternalPDFViewer",""+this.jTextFieldPDFViewer.getText()); 1711 prop.put("ExternalXLSViewer",""+this.jTextFieldXLSViewer.getText()); 1712 prop.put("ExternalHTMLViewer",""+this.jTextFieldHTMLViewer.getText()); 1713 prop.put("ExternalTXTViewer",""+this.jTextFieldTXTViewer.getText()); 1714 prop.put("ExternalRTFViewer",""+this.jTextFieldRTFViewer.getText()); 1715 prop.put("ExternalEditor",""+this.jTextFieldEditor.getText()); 1716 prop.put("DefaultTemplate",""+this.jTextFieldTemplate.getText()); 1717 prop.put("SaveBeforeCompiling",""+this.jCheckBoxAutosave.isSelected()); 1718 1719 1720 1721 mf.setUsingMultiLineExpressions(false); mf.setUsingCurrentFilesDirectoryForCompiles(this.jCheckBoxUseCurrentFilesDirectoryForCompiles.isSelected()); 1725 prop.put("useCurrentFilesDirectoryForCompiles", this.jCheckBoxUseCurrentFilesDirectoryForCompiles.isSelected()+"" ); 1726 1727 mf.setDefaultCompilationDirectory(this.jTextFieldCompilationDir.getText()); 1728 prop.put("DefaultCompilationDirectory", this.jTextFieldCompilationDir.getText() ); 1729 1730 String policy = "3"; 1731 if (this.jRadioButton1_NoBackup.isSelected()) 1732 { policy = "1"; } 1733 if (this.jRadioButton2_ReplaceExtension.isSelected()) 1734 { policy = "2";} 1735 if (this.jRadioButton3_AppendExtension.isSelected()) 1736 { policy = "3";} 1737 1738 prop.put("BackupPolicy", policy ); 1739 1741 prop.put("DefaultCompiler", ""+jComboBox1.getSelectedIndex()); 1742 prop.put("KeepJavaFile", this.jCheckBoxKeepJavaFile.isSelected()+"" ); 1743 1744 prop.put("ReportVirtualizer",""+((Tag)this.jComboBoxVirtualizer.getSelectedItem()).getValue()); 1745 prop.put("ReportVirtualizerDirectory",""+this.jTextFieldVirtualizerDir.getText().trim()); 1746 prop.put("ReportVirtualizerSize",""+this.jSpinnerVirtualizerSize.getValue()); 1747 prop.put("ReportVirtualizerBlockSize",""+this.jSpinnerVirtualizerBlockSize.getValue()); 1748 prop.put("ReportVirtualizerMinGrownCount",""+this.jSpinnerVirtualizerGrownCount.getValue()); 1749 1750 prop.put("DontUseTemplateFromMenu", this.jCheckBoxDontUseTemplateFromMenu.isSelected()+"" ); 1751 1752 1755 if (!currentLAF.equals(prop.getProperty("LookAndFeel","")) || 1756 !currentOverrideDefaultFontName.equals(prop.getProperty("overrideDefaultFontName","")) || 1757 !currentOverrideDefaultFontAttrs.equals(prop.getProperty("overrideDefaultFontAttrs","")) || 1758 !currentOverrideDefaultFont.equals(prop.getProperty("overrideDefaultFont","")) || 1759 !currentOverrideDefaultFontSize.equals(prop.getProperty("overrideDefaultFontSize",""))) 1760 { 1761 Misc.setPLAF( prop.getProperty("LookAndFeel","") ); 1762 SwingUtilities.updateComponentTreeUI(this); 1763 MainFrame.getMainInstance().upadateLAF(); 1764 JInternalFrame activeframe = MainFrame.getMainInstance().getJMDIDesktopPane().getSelectedFrame(); 1765 if (activeframe != null && activeframe.isMaximum()) 1766 { 1767 activeframe.setMaximum(false); 1768 activeframe.setMaximum(true); 1769 } 1770 } 1771 1772 if (selectedLang != null) 1773 { 1774 I18n.setCurrentLocale( selectedLang ); 1775 } 1776 1777 JInternalFrame[] frames = mf.getJMDIDesktopPane().getAllFrames(); 1779 1780 for (int i=0; i < frames.length; ++i) 1781 { 1782 JInternalFrame f = frames[i]; 1783 if (f instanceof JReportFrame) 1784 { 1785 JReportFrame jrf = (JReportFrame)f; 1786 jrf.repaint(); 1787 jrf.repaintRules(); 1788 } 1789 } 1790 1791 } catch (Exception ex) 1792 { ex.printStackTrace(); } 1793 1794 this.jButtonApply.setEnabled(false); 1795 1796 } 1797 1798 protected void enableCompileDirectoryBrowse() { 1799 this.jTextFieldCompilationDir.setEnabled(true); 1800 this.jButtonCompilationDir.setEnabled(true); 1801 } 1802 1803 protected void disableCompileDirectoryBrowse() { 1804 this.jTextFieldCompilationDir.setEnabled(false); 1805 this.jButtonCompilationDir.setEnabled(false); 1806 } 1807 1808 protected void disableApplyAndOk() { 1809 this.jButtonApply.setEnabled(false); 1810 this.jButtonOK.setEnabled(false); 1811 } 1812 1813 protected void disableApply() { 1814 this.jButtonOK.setEnabled(false); 1815 } 1816 1817 protected void enableApplyAndOk() { 1818 this.jButtonApply.setEnabled(true); 1819 this.jButtonOK.setEnabled(true); 1820 } 1821 1822 protected void enableApply() { 1823 this.jButtonOK.setEnabled(true); 1824 } 1825 1826 public void languageChanged(LanguageChangedEvent evt) { 1827 this.applyI18n(); 1828 } 1829 1830 public void sheetPropertyValueChanged(SheetPropertyValueChangedEvent evt) 1831 { 1832 this.enableApplyAndOk(); 1833 } 1834 1835} | Popular Tags |