|
|
|
@ -21,7 +21,6 @@ import com.fr.design.gui.ilable.UILabel;
|
|
|
|
|
import com.fr.design.gui.iprogressbar.UIProgressBarUI; |
|
|
|
|
import com.fr.design.gui.ispinner.UISpinner; |
|
|
|
|
import com.fr.design.gui.itextfield.UITextField; |
|
|
|
|
import com.fr.design.i18n.Toolkit; |
|
|
|
|
import com.fr.design.layout.FRGUIPaneFactory; |
|
|
|
|
import com.fr.design.layout.TableLayout; |
|
|
|
|
import com.fr.design.layout.TableLayoutHelper; |
|
|
|
@ -40,7 +39,6 @@ import com.fr.general.log.Log4jConfig;
|
|
|
|
|
import com.fr.locale.InterProviderFactory; |
|
|
|
|
import com.fr.log.FineLoggerFactory; |
|
|
|
|
import com.fr.stable.Constants; |
|
|
|
|
import com.fr.stable.StringUtils; |
|
|
|
|
import com.fr.third.apache.log4j.Level; |
|
|
|
|
import com.fr.transaction.Configurations; |
|
|
|
|
import com.fr.transaction.Worker; |
|
|
|
@ -48,46 +46,18 @@ import com.fr.workspace.WorkContext;
|
|
|
|
|
import com.fr.workspace.server.vcs.VcsOperator; |
|
|
|
|
import com.fr.workspace.server.vcs.git.config.GcConfig; |
|
|
|
|
|
|
|
|
|
import javax.swing.BorderFactory; |
|
|
|
|
import javax.swing.JFileChooser; |
|
|
|
|
import javax.swing.JOptionPane; |
|
|
|
|
import javax.swing.BoxLayout; |
|
|
|
|
import javax.swing.JPanel; |
|
|
|
|
import javax.swing.JProgressBar; |
|
|
|
|
import javax.swing.JDialog; |
|
|
|
|
|
|
|
|
|
import javax.swing.Timer; |
|
|
|
|
import javax.swing.SwingWorker; |
|
|
|
|
import javax.swing.UIManager; |
|
|
|
|
import javax.swing.KeyStroke; |
|
|
|
|
import javax.swing.SwingUtilities; |
|
|
|
|
import javax.swing.event.ChangeEvent; |
|
|
|
|
import javax.swing.event.ChangeListener; |
|
|
|
|
import java.awt.BorderLayout; |
|
|
|
|
import java.awt.Component; |
|
|
|
|
import java.awt.Dialog; |
|
|
|
|
import java.awt.Color; |
|
|
|
|
import java.awt.Dimension; |
|
|
|
|
import java.awt.Font; |
|
|
|
|
import java.awt.FlowLayout; |
|
|
|
|
|
|
|
|
|
import java.awt.Window; |
|
|
|
|
import java.awt.event.ActionEvent; |
|
|
|
|
import java.awt.event.ActionListener; |
|
|
|
|
import java.awt.event.KeyAdapter; |
|
|
|
|
import java.awt.event.KeyEvent; |
|
|
|
|
import java.awt.event.MouseAdapter; |
|
|
|
|
import java.awt.event.MouseEvent; |
|
|
|
|
import java.awt.event.WindowEvent; |
|
|
|
|
|
|
|
|
|
import java.awt.event.WindowAdapter; |
|
|
|
|
import javax.swing.*; |
|
|
|
|
import javax.swing.event.*; |
|
|
|
|
import java.awt.*; |
|
|
|
|
import java.awt.event.*; |
|
|
|
|
import java.io.File; |
|
|
|
|
import java.text.DecimalFormat; |
|
|
|
|
import java.util.Locale; |
|
|
|
|
import java.util.Map; |
|
|
|
|
import java.util.UUID; |
|
|
|
|
import java.util.concurrent.ExecutionException; |
|
|
|
|
|
|
|
|
|
import static com.fr.design.i18n.Toolkit.i18nText; |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 选项对话框 |
|
|
|
|
* |
|
|
|
@ -168,6 +138,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
private UICheckBox useUniverseDBMCheckbox; |
|
|
|
|
private UICheckBox joinProductImproveCheckBox; |
|
|
|
|
private UICheckBox autoPushUpdateCheckBox; |
|
|
|
|
private UICheckBox embedServerLazyStartupCheckBox; |
|
|
|
|
|
|
|
|
|
private UICheckBox vcsEnableCheckBox; |
|
|
|
|
private UICheckBox saveCommitCheckBox; |
|
|
|
@ -183,7 +154,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
private JPanel gcProgressBarPanel = new JPanel(); |
|
|
|
|
private JProgressBar gcProgressBar; |
|
|
|
|
private Timer gcProgressTimer; |
|
|
|
|
private UIButton gcOkButton = new UIButton(Toolkit.i18nText("Fine-Design_Report_OK")); |
|
|
|
|
private UIButton gcOkButton = new UIButton(i18nText("Fine-Design_Report_OK")); |
|
|
|
|
|
|
|
|
|
public PreferencePane() { |
|
|
|
|
this.initComponents(); |
|
|
|
@ -196,9 +167,9 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
|
|
|
|
|
UITabbedPane jtabPane = new UITabbedPane(); |
|
|
|
|
JPanel generalPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_L_Pane(); |
|
|
|
|
jtabPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_General"), generalPane); |
|
|
|
|
jtabPane.addTab(i18nText("Fine-Design_Basic_General"), generalPane); |
|
|
|
|
JPanel advancePane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_L_Pane(); |
|
|
|
|
jtabPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Advanced"), advancePane); |
|
|
|
|
jtabPane.addTab(i18nText("Fine-Design_Basic_Advanced"), advancePane); |
|
|
|
|
contentPane.add(jtabPane, BorderLayout.NORTH); |
|
|
|
|
|
|
|
|
|
createFunctionPane(generalPane); |
|
|
|
@ -219,31 +190,31 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
|
|
|
|
|
createServerPane(advancePane); |
|
|
|
|
|
|
|
|
|
JPanel oraclePane = FRGUIPaneFactory.createTitledBorderPane("Oracle" + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Oracle_All_Tables")); |
|
|
|
|
oracleSpace = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Show_All_Oracle_Tables")); |
|
|
|
|
JPanel oraclePane = FRGUIPaneFactory.createTitledBorderPane("Oracle" + i18nText("Fine-Design_Basic_Oracle_All_Tables")); |
|
|
|
|
oracleSpace = new UICheckBox(i18nText("Fine-Design_Basic_Show_All_Oracle_Tables")); |
|
|
|
|
oraclePane.add(oracleSpace); |
|
|
|
|
|
|
|
|
|
JPanel debuggerPane = FRGUIPaneFactory.createTitledBorderPane(Toolkit.i18nText("Fine-Design_Basic_Develop_Tools")); |
|
|
|
|
openDebugComboBox = new UICheckBox(Toolkit.i18nText("Fine-Design_Basic_Open_Debug_Window")); |
|
|
|
|
JPanel debuggerPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Develop_Tools")); |
|
|
|
|
openDebugComboBox = new UICheckBox(i18nText("Fine-Design_Basic_Open_Debug_Window")); |
|
|
|
|
debuggerPane.add(openDebugComboBox, BorderLayout.CENTER); |
|
|
|
|
advancePane.add(debuggerPane); |
|
|
|
|
|
|
|
|
|
JPanel upmSelectorPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Update_Plugin_Manager")); |
|
|
|
|
useOptimizedUPMCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Use_New_Update_Plugin_Manager")); |
|
|
|
|
JPanel upmSelectorPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Update_Plugin_Manager")); |
|
|
|
|
useOptimizedUPMCheckbox = new UICheckBox(i18nText("Fine-Design_Basic_Use_New_Update_Plugin_Manager")); |
|
|
|
|
upmSelectorPane.add(useOptimizedUPMCheckbox); |
|
|
|
|
advancePane.add(upmSelectorPane); |
|
|
|
|
|
|
|
|
|
JPanel dbmSelectorPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Database_Manager")); |
|
|
|
|
useUniverseDBMCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Use_Universe_Database_Manager")); |
|
|
|
|
JPanel dbmSelectorPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Database_Manager")); |
|
|
|
|
useUniverseDBMCheckbox = new UICheckBox(i18nText("Fine-Design_Basic_Use_Universe_Database_Manager")); |
|
|
|
|
dbmSelectorPane.add(useUniverseDBMCheckbox); |
|
|
|
|
advancePane.add(dbmSelectorPane); |
|
|
|
|
|
|
|
|
|
JPanel improvePane = FRGUIPaneFactory.createVerticalTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Product_Improve")); |
|
|
|
|
joinProductImproveCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Join_Product_Improve")); |
|
|
|
|
JPanel improvePane = FRGUIPaneFactory.createVerticalTitledBorderPane(i18nText("Fine-Design_Basic_Product_Improve")); |
|
|
|
|
joinProductImproveCheckBox = new UICheckBox(i18nText("Fine-Design_Basic_Join_Product_Improve")); |
|
|
|
|
improvePane.add(joinProductImproveCheckBox); |
|
|
|
|
|
|
|
|
|
if (DesignerPushUpdateManager.getInstance().isAutoPushUpdateSupported()) { |
|
|
|
|
autoPushUpdateCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Automatic_Push_Update")); |
|
|
|
|
autoPushUpdateCheckBox = new UICheckBox(i18nText("Fine-Design_Automatic_Push_Update")); |
|
|
|
|
improvePane.add(autoPushUpdateCheckBox); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -252,15 +223,21 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
spaceUpPane.add(createMemoryPane(), BorderLayout.CENTER); |
|
|
|
|
spaceUpPane.add(improvePane, BorderLayout.SOUTH); |
|
|
|
|
advancePane.add(spaceUpPane); |
|
|
|
|
|
|
|
|
|
JPanel embedServerPanel = FRGUIPaneFactory.createVerticalTitledBorderPane(i18nText("Fine-Design_Embed_Server")); |
|
|
|
|
embedServerLazyStartupCheckBox = new UICheckBox(i18nText("Fine-Design_Startup_When_Needed")); |
|
|
|
|
embedServerPanel.add(embedServerLazyStartupCheckBox); |
|
|
|
|
advancePane.add(embedServerPanel); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void createVcsSettingPane(JPanel generalPane) { |
|
|
|
|
JPanel vcsPane = FRGUIPaneFactory.createVerticalTitledBorderPane(Toolkit.i18nText("Fine-Design_Vcs_Title")); |
|
|
|
|
JPanel vcsPane = FRGUIPaneFactory.createVerticalTitledBorderPane(i18nText("Fine-Design_Vcs_Title")); |
|
|
|
|
generalPane.add(vcsPane); |
|
|
|
|
remindVcsLabel = new UILabel(Toolkit.i18nText("Fine-Design_Vcs_Remind")); |
|
|
|
|
remindVcsLabel = new UILabel(i18nText("Fine-Design_Vcs_Remind")); |
|
|
|
|
remindVcsLabel.setVisible(!VcsHelper.getInstance().needInit()); |
|
|
|
|
vcsEnableCheckBox = new UICheckBox(Toolkit.i18nText("Fine-Design_Vcs_SaveAuto")); |
|
|
|
|
saveCommitCheckBox = new UICheckBox(Toolkit.i18nText("Fine-Design_Vcs_No_Delete")); |
|
|
|
|
vcsEnableCheckBox = new UICheckBox(i18nText("Fine-Design_Vcs_SaveAuto")); |
|
|
|
|
saveCommitCheckBox = new UICheckBox(i18nText("Fine-Design_Vcs_No_Delete")); |
|
|
|
|
saveIntervalEditor = new IntegerEditor(60); |
|
|
|
|
useIntervalCheckBox = new UICheckBox(); |
|
|
|
|
|
|
|
|
@ -271,8 +248,8 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
enableVcsPanel.add(vcsEnableCheckBox); |
|
|
|
|
enableVcsPanel.add(remindVcsLabel); |
|
|
|
|
JPanel intervalPanel = new JPanel(FRGUIPaneFactory.createLeftZeroLayout()); |
|
|
|
|
final UILabel everyLabel = new UILabel(Toolkit.i18nText("Fine-Design_Vcs_Every")); |
|
|
|
|
final UILabel delayLabel = new UILabel(Toolkit.i18nText("Fine-Design_Vcs_Delay")); |
|
|
|
|
final UILabel everyLabel = new UILabel(i18nText("Fine-Design_Vcs_Every")); |
|
|
|
|
final UILabel delayLabel = new UILabel(i18nText("Fine-Design_Vcs_Delay")); |
|
|
|
|
intervalPanel.add(useIntervalCheckBox); |
|
|
|
|
intervalPanel.add(everyLabel); |
|
|
|
|
intervalPanel.add(saveIntervalEditor); |
|
|
|
@ -311,7 +288,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
//gc面板
|
|
|
|
|
JPanel gcControlPane = new JPanel(new FlowLayout(FlowLayout.LEFT, 0, 0)); |
|
|
|
|
JPanel gcButtonPane = new JPanel(new FlowLayout(FlowLayout.LEFT, 40, 0)); |
|
|
|
|
gcEnableCheckBox = new UICheckBox(Toolkit.i18nText("Fine-Design_Vcs_Storage_Optimization")); |
|
|
|
|
gcEnableCheckBox = new UICheckBox(i18nText("Fine-Design_Vcs_Storage_Optimization")); |
|
|
|
|
gcButton = initGcButton(); |
|
|
|
|
gcButtonPane.add(gcButton); |
|
|
|
|
gcControlPane.add(gcEnableCheckBox); |
|
|
|
@ -338,21 +315,22 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void createFunctionPane(JPanel generalPane) { |
|
|
|
|
JPanel functionPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Function")); |
|
|
|
|
JPanel functionPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Preference_Function")); |
|
|
|
|
generalPane.add(functionPane); |
|
|
|
|
|
|
|
|
|
//添加supportUndo选择项
|
|
|
|
|
supportUndoCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Support_Undo")); |
|
|
|
|
supportUndoCheckBox = new UICheckBox(i18nText("Fine-Design_Basic_Preference_Support_Undo")); |
|
|
|
|
functionPane.add(supportUndoCheckBox); |
|
|
|
|
//添加maxUndoLimit
|
|
|
|
|
//String[] undoTimes = {"最大撤销次数","5次","10次","15次","20次","50次"};
|
|
|
|
|
String[] undoTimes = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Max_Undo_Limit"), MAX_UNDO_LIMIT_5 + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Time(s)"), MAX_UNDO_LIMIT_10 + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Time(s)") |
|
|
|
|
, MAX_UNDO_LIMIT_15 + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Time(s)"), MAX_UNDO_LIMIT_20 + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Time(s)"), MAX_UNDO_LIMIT_50 + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Time(s)")}; |
|
|
|
|
String[] undoTimes = {i18nText("Fine-Design_Basic_Max_Undo_Limit"), MAX_UNDO_LIMIT_5 + i18nText("Fine-Design_Basic_Time(s)"), MAX_UNDO_LIMIT_10 + i18nText("Fine-Design_Basic_Time(s)") |
|
|
|
|
, MAX_UNDO_LIMIT_15 + i18nText("Fine-Design_Basic_Time(s)"), MAX_UNDO_LIMIT_20 + i18nText("Fine-Design_Basic_Time(s)"), MAX_UNDO_LIMIT_50 + i18nText("Fine-Design_Basic_Time(s)")}; |
|
|
|
|
maxUndoLimit = new UIComboBox(undoTimes); |
|
|
|
|
functionPane.add(maxUndoLimit); |
|
|
|
|
|
|
|
|
|
//不支持撤销则不能选择撤销可缓存,也不能设置最大撤销次数
|
|
|
|
|
supportUndoCheckBox.addActionListener(new ActionListener() { |
|
|
|
|
@Override |
|
|
|
|
public void actionPerformed(ActionEvent e) { |
|
|
|
|
maxUndoLimit.setEnabled(supportUndoCheckBox.isSelected()); |
|
|
|
|
} |
|
|
|
@ -361,31 +339,32 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
|
|
|
|
|
//添加supportDefaultParentCalculate选择项
|
|
|
|
|
supportDefaultParentCalculateCheckBox = new UICheckBox( |
|
|
|
|
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Support_Default_Parent_Calculate")); |
|
|
|
|
i18nText("Fine-Design_Basic_Preference_Support_Default_Parent_Calculate")); |
|
|
|
|
functionPane.add(supportDefaultParentCalculateCheckBox); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void createEditPane(JPanel generalPane) { |
|
|
|
|
//samuel:编辑器设置
|
|
|
|
|
JPanel editPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Editor_Preference")); |
|
|
|
|
JPanel editPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Editor_Preference")); |
|
|
|
|
generalPane.add(editPane); |
|
|
|
|
|
|
|
|
|
//设置是否支持将字符串编辑为公式
|
|
|
|
|
supportStringToFormulaBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Support_String_To_Formula")); |
|
|
|
|
supportStringToFormulaBox = new UICheckBox(i18nText("Fine-Design_Report_Support_String_To_Formula")); |
|
|
|
|
editPane.add(supportStringToFormulaBox); |
|
|
|
|
|
|
|
|
|
//是否默认转化
|
|
|
|
|
defaultStringToFormulaBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Always")); |
|
|
|
|
defaultStringToFormulaBox = new UICheckBox(i18nText("Fine-Design_Basic_Always")); |
|
|
|
|
|
|
|
|
|
editPane.add(defaultStringToFormulaBox); |
|
|
|
|
//不支持转化则不能默认执行
|
|
|
|
|
supportStringToFormulaBox.addActionListener(new ActionListener() { |
|
|
|
|
@Override |
|
|
|
|
public void actionPerformed(ActionEvent e) { |
|
|
|
|
defaultStringToFormulaBox.setEnabled(supportStringToFormulaBox.isSelected()); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
JPanel keyStrokePane = new JPanel(new BorderLayout()); |
|
|
|
|
keyStrokePane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Support_Auto_Complete_Shortcut") + ":"), BorderLayout.WEST); |
|
|
|
|
keyStrokePane.add(new UILabel(i18nText("Fine-Design_Basic_Support_Auto_Complete_Shortcut") + ":"), BorderLayout.WEST); |
|
|
|
|
shortCutLabel = new UILabel(); |
|
|
|
|
keyStrokePane.add(shortCutLabel, BorderLayout.CENTER); |
|
|
|
|
editPane.add(keyStrokePane); |
|
|
|
@ -415,7 +394,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
requestFocusInWindow(); |
|
|
|
|
label = new UILabel(text); |
|
|
|
|
add(GUICoreUtils.createBorderLayoutPane( |
|
|
|
|
new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Support_Current_Auto_Complete_Shortcut") + ":"), |
|
|
|
|
new UILabel(i18nText("Fine-Design_Basic_Support_Current_Auto_Complete_Shortcut") + ":"), |
|
|
|
|
BorderLayout.WEST, |
|
|
|
|
label, |
|
|
|
|
BorderLayout.CENTER), |
|
|
|
@ -449,24 +428,24 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
|
|
|
|
|
private void createGuiOfGridPane(JPanel generalPane) { |
|
|
|
|
// GridPane
|
|
|
|
|
JPanel guiOfGridPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Setting_Grid")); |
|
|
|
|
JPanel guiOfGridPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Preference_Setting_Grid")); |
|
|
|
|
generalPane.add(guiOfGridPane); |
|
|
|
|
|
|
|
|
|
supportCellEditorDefCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Support_Cell_Editor_Definition")); |
|
|
|
|
supportCellEditorDefCheckBox = new UICheckBox(i18nText("Fine-Design_Basic_Preference_Support_Cell_Editor_Definition")); |
|
|
|
|
guiOfGridPane.add(supportCellEditorDefCheckBox); |
|
|
|
|
|
|
|
|
|
isDragPermitedCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Is_Drag_Permited")); |
|
|
|
|
isDragPermitedCheckBox = new UICheckBox(i18nText("Fine-Design_Basic_Preference_Is_Drag_Permited")); |
|
|
|
|
guiOfGridPane.add(isDragPermitedCheckBox); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void createColorSettingPane(JPanel generalPane) { |
|
|
|
|
// Color Setting Pane
|
|
|
|
|
JPanel colorSettingPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Setting_Colors")); |
|
|
|
|
JPanel colorSettingPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Preference_Setting_Colors")); |
|
|
|
|
generalPane.add(colorSettingPane); |
|
|
|
|
|
|
|
|
|
new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Grid_Line_Color")); |
|
|
|
|
new UILabel(i18nText("Fine-Design_Basic_Preference_Grid_Line_Color")); |
|
|
|
|
|
|
|
|
|
new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Pagination_Line_Color")); |
|
|
|
|
new UILabel(i18nText("Fine-Design_Basic_Preference_Pagination_Line_Color")); |
|
|
|
|
|
|
|
|
|
gridLineColorTBButton = new UIColorButton(IOUtils.readIcon("/com/fr/design/images/gui/color/foreground.png")); |
|
|
|
|
gridLineColorTBButton.setEnabled(this.isEnabled()); |
|
|
|
@ -475,10 +454,10 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
paginationLineColorTBButton.setEnabled(this.isEnabled()); |
|
|
|
|
|
|
|
|
|
JPanel leftPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); |
|
|
|
|
leftPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Grid_Line_Color") + ":")); |
|
|
|
|
leftPane.add(new UILabel(i18nText("Fine-Design_Basic_Preference_Grid_Line_Color") + ":")); |
|
|
|
|
leftPane.add(gridLineColorTBButton); |
|
|
|
|
JPanel rightPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); |
|
|
|
|
rightPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Pagination_Line_Color") + ":")); |
|
|
|
|
rightPane.add(new UILabel(i18nText("Fine-Design_Basic_Preference_Pagination_Line_Color") + ":")); |
|
|
|
|
rightPane.add(paginationLineColorTBButton); |
|
|
|
|
colorSettingPane.add(leftPane); |
|
|
|
|
colorSettingPane.add(rightPane); |
|
|
|
@ -488,9 +467,9 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
//richer:选择导出log文件的目录.
|
|
|
|
|
JPanel logPane = FRGUIPaneFactory.createX_AXISBoxInnerContainer_S_Pane(); |
|
|
|
|
advancePane.add(logPane); |
|
|
|
|
JPanel logExportPane = FRGUIPaneFactory.createTitledBorderPane("log" + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Export_Setting")); |
|
|
|
|
JPanel logExportPane = FRGUIPaneFactory.createTitledBorderPane("log" + i18nText("Fine-Design_Basic_Export_Setting")); |
|
|
|
|
logPane.add(logExportPane); |
|
|
|
|
UILabel logLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select_Export_Log_Directory") + ":"); |
|
|
|
|
UILabel logLabel = new UILabel(i18nText("Fine-Design_Basic_Select_Export_Log_Directory") + ":"); |
|
|
|
|
logExportPane.add(logLabel, BorderLayout.WEST); |
|
|
|
|
logExportDirectoryField = new UITextField(24); |
|
|
|
|
logExportPane.add(logExportDirectoryField, BorderLayout.CENTER); |
|
|
|
@ -498,6 +477,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
logExportPane.add(chooseDirBtn, BorderLayout.EAST); |
|
|
|
|
chooseDirBtn.setPreferredSize(new Dimension(25, 25)); |
|
|
|
|
chooseDirBtn.addActionListener(new ActionListener() { |
|
|
|
|
@Override |
|
|
|
|
public void actionPerformed(ActionEvent evt) { |
|
|
|
|
JFileChooser fileChooser = new JFileChooser(); |
|
|
|
|
fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); |
|
|
|
@ -509,11 +489,12 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
JPanel logLevelPane = FRGUIPaneFactory.createTitledBorderPane("log" + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Level_Setting")); |
|
|
|
|
JPanel logLevelPane = FRGUIPaneFactory.createTitledBorderPane("log" + i18nText("Fine-Design_Basic_Level_Setting")); |
|
|
|
|
logPane.add(logLevelPane); |
|
|
|
|
logLevelComboBox = new UIComboBox(LOG); |
|
|
|
|
logLevelPane.add(logLevelComboBox); |
|
|
|
|
logLevelComboBox.addActionListener(new ActionListener() { |
|
|
|
|
@Override |
|
|
|
|
public void actionPerformed(ActionEvent e) { |
|
|
|
|
Configurations.update(new Worker() { |
|
|
|
|
@Override |
|
|
|
@ -533,13 +514,13 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
private void createLanPane(JPanel generalPane) { |
|
|
|
|
// ben:选择版本语言;
|
|
|
|
|
JPanel languageAndDashBoard_pane = FRGUIPaneFactory.createX_AXISBoxInnerContainer_S_Pane(); |
|
|
|
|
JPanel LanguagePane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Choose_Language")); |
|
|
|
|
JPanel LanguagePane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Choose_Language")); |
|
|
|
|
generalPane.add(languageAndDashBoard_pane); |
|
|
|
|
languageAndDashBoard_pane.add(LanguagePane); |
|
|
|
|
|
|
|
|
|
languageComboBox = createLanguageComboBox(); |
|
|
|
|
|
|
|
|
|
ActionLabel languageLabel = new ActionLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Designer_Language")); |
|
|
|
|
ActionLabel languageLabel = new ActionLabel(i18nText("Fine-Design_Basic_Designer_Language")); |
|
|
|
|
languageLabel.addActionListener(new ActionListener() { |
|
|
|
|
@Override |
|
|
|
|
public void actionPerformed(ActionEvent e) { |
|
|
|
@ -553,7 +534,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
dlg.setVisible(true); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
UILabel noticeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Work_After_Restart_Designer"));//sail:提示重启后生效
|
|
|
|
|
UILabel noticeLabel = new UILabel(i18nText("Fine-Design_Basic_Work_After_Restart_Designer"));//sail:提示重启后生效
|
|
|
|
|
double p = TableLayout.PREFERRED; |
|
|
|
|
double rowSize[] = {p}; |
|
|
|
|
double columnSize[] = {p, p, p}; |
|
|
|
@ -599,16 +580,16 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
double rowSize[] = {p}; |
|
|
|
|
|
|
|
|
|
// 长度单位选择
|
|
|
|
|
JPanel lengthPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Setting_Ruler_Units")); |
|
|
|
|
JPanel lengthPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Setting_Ruler_Units")); |
|
|
|
|
advancePane.add(lengthPane); |
|
|
|
|
pageLengthComboBox = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Page_Setup_MM"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_CM"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_INCH")}); |
|
|
|
|
pageLengthComboBox = new UIComboBox(new String[]{i18nText("Fine-Design_Basic_Page_Setup_MM"), i18nText("Fine-Design_Report_Unit_CM"), i18nText("Fine-Design_Report_Unit_INCH")}); |
|
|
|
|
pageLengthComboBox.setPreferredSize(new Dimension(80, 20)); |
|
|
|
|
pageLengthComboBox.setMinimumSize(new Dimension(80, 20)); |
|
|
|
|
reportLengthComboBox = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Page_Setup_MM"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_CM"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_INCH"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_PT_Duplicate")}); |
|
|
|
|
reportLengthComboBox = new UIComboBox(new String[]{i18nText("Fine-Design_Basic_Page_Setup_MM"), i18nText("Fine-Design_Report_Unit_CM"), i18nText("Fine-Design_Report_Unit_INCH"), i18nText("Fine-Design_Report_Unit_PT_Duplicate")}); |
|
|
|
|
reportLengthComboBox.setPreferredSize(new Dimension(80, 20)); |
|
|
|
|
reportLengthComboBox.setMinimumSize(new Dimension(80, 20)); |
|
|
|
|
UILabel pagelengthLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Page_Setup_Scale_Units") + ":"); |
|
|
|
|
UILabel reportLengthLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Report_Design_Ruler_Units") + ":"); |
|
|
|
|
UILabel pagelengthLabel = new UILabel(i18nText("Fine-Design_Basic_Page_Setup_Scale_Units") + ":"); |
|
|
|
|
UILabel reportLengthLabel = new UILabel(i18nText("Fine-Design_Basic_Report_Design_Ruler_Units") + ":"); |
|
|
|
|
Component[][] lengthComponents = { |
|
|
|
|
{pagelengthLabel, pageLengthComboBox, reportLengthLabel, reportLengthComboBox}, |
|
|
|
|
}; |
|
|
|
@ -621,13 +602,13 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
double rowSize[] = {p}; |
|
|
|
|
double columnSize[] = {p, p, p}; |
|
|
|
|
|
|
|
|
|
JPanel serverPortPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Web_Preview_Port_Setting")); |
|
|
|
|
JPanel serverPortPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Web_Preview_Port_Setting")); |
|
|
|
|
advancePane.add(serverPortPane); |
|
|
|
|
portEditor = new IntegerEditor(); |
|
|
|
|
portEditor.setPreferredSize(new Dimension(80, 20)); |
|
|
|
|
portEditor.setMinimumSize(new Dimension(80, 20)); |
|
|
|
|
UILabel notiJlabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Work_After_Restart_Designer")); |
|
|
|
|
UILabel serverPortLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Web_Preview_Port") + ":"); |
|
|
|
|
UILabel notiJlabel = new UILabel(i18nText("Fine-Design_Basic_Work_After_Restart_Designer")); |
|
|
|
|
UILabel serverPortLabel = new UILabel(i18nText("Fine-Design_Basic_Web_Preview_Port") + ":"); |
|
|
|
|
Component[][] portComponents = { |
|
|
|
|
{serverPortLabel, portEditor, notiJlabel}, |
|
|
|
|
}; |
|
|
|
@ -636,10 +617,10 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private JPanel createMemoryPane() { |
|
|
|
|
JPanel memoryPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Caching_Template")); |
|
|
|
|
UILabel memoryLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Max_Caching_Template")); |
|
|
|
|
JPanel memoryPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Preference_Caching_Template")); |
|
|
|
|
UILabel memoryLabel = new UILabel(i18nText("Fine-Design_Basic_Preference_Max_Caching_Template")); |
|
|
|
|
UILabel memoryTipLabel = FRWidgetFactory.createLineWrapLabel( |
|
|
|
|
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Caching_Template_Tip"), MEMORY_TIP_LABEL_MAX_WIDTH); |
|
|
|
|
i18nText("Fine-Design_Basic_Preference_Caching_Template_Tip"), MEMORY_TIP_LABEL_MAX_WIDTH); |
|
|
|
|
memoryTipLabel.setBorder(BorderFactory.createEmptyBorder(0, CACHING_GAP, 0, 0)); |
|
|
|
|
cachingTemplateSpinner = new UISpinner(0, CACHING_MAX, 1, CACHING_DEFAULT); |
|
|
|
|
JPanel memorySpace = new JPanel(FRGUIPaneFactory.createLeftZeroLayout()); |
|
|
|
@ -652,7 +633,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
protected String title4PopupWindow() { |
|
|
|
|
return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_M_Window_Preference"); |
|
|
|
|
return i18nText("Fine-Design_Basic_M_Window_Preference"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
@ -734,6 +715,8 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
if (this.autoPushUpdateCheckBox != null) { |
|
|
|
|
this.autoPushUpdateCheckBox.setSelected(designerEnvManager.isAutoPushUpdateEnabled()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
this.embedServerLazyStartupCheckBox.setSelected(designerEnvManager.isEmbedServerLazyStartup()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private int chooseCase(int sign) { |
|
|
|
@ -795,6 +778,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
designerEnvManager.setOracleSystemSpace(this.oracleSpace.isSelected()); |
|
|
|
|
designerEnvManager.setCachingTemplateLimit((int) this.cachingTemplateSpinner.getValue()); |
|
|
|
|
designerEnvManager.setJoinProductImprove(this.joinProductImproveCheckBox.isSelected()); |
|
|
|
|
designerEnvManager.setEmbedServerLazyStartup(this.embedServerLazyStartupCheckBox.isSelected()); |
|
|
|
|
VcsConfigManager vcsConfigManager = designerEnvManager.getVcsConfigManager(); |
|
|
|
|
vcsConfigManager.setSaveInterval(this.saveIntervalEditor.getValue()); |
|
|
|
|
vcsConfigManager.setVcsEnable(this.vcsEnableCheckBox.isSelected()); |
|
|
|
@ -842,7 +826,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public Class<? extends Configuration>[] targets() { |
|
|
|
|
return new Class[] {ServerPreferenceConfig.class}; |
|
|
|
|
return new Class[]{ServerPreferenceConfig.class}; |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
@ -855,12 +839,12 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
} |
|
|
|
|
int rv = JOptionPane.showOptionDialog( |
|
|
|
|
null, |
|
|
|
|
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Language_Change_Successful"), |
|
|
|
|
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), |
|
|
|
|
i18nText("Fine-Design_Basic_Language_Change_Successful"), |
|
|
|
|
i18nText("Fine-Design_Basic_Plugin_Warning"), |
|
|
|
|
JOptionPane.YES_NO_OPTION, |
|
|
|
|
JOptionPane.INFORMATION_MESSAGE, |
|
|
|
|
null, |
|
|
|
|
new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Restart_Designer"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Restart_Designer_Later")}, |
|
|
|
|
new String[]{i18nText("Fine-Design_Basic_Restart_Designer"), i18nText("Fine-Design_Basic_Restart_Designer_Later")}, |
|
|
|
|
null |
|
|
|
|
); |
|
|
|
|
if (rv == JOptionPane.OK_OPTION) { |
|
|
|
@ -885,7 +869,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
|
|
|
|
|
private void tryGc() { |
|
|
|
|
final SwingWorker<Boolean, Void> worker = new SwingWorker<Boolean, Void>() { |
|
|
|
|
private long size = 0; |
|
|
|
|
private long size = 0; |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
protected Boolean doInBackground() { |
|
|
|
@ -898,12 +882,12 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
try { |
|
|
|
|
get(); |
|
|
|
|
} catch (ExecutionException e) { |
|
|
|
|
updateGcDialogPanelInfo(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Vcs_Need_Update_Remote_Server_Jar")); |
|
|
|
|
updateGcDialogPanelInfo(i18nText("Fine-Design_Vcs_Need_Update_Remote_Server_Jar")); |
|
|
|
|
return; |
|
|
|
|
} catch (InterruptedException e) { |
|
|
|
|
FineLoggerFactory.getLogger().error(e, e.getMessage()); |
|
|
|
|
} |
|
|
|
|
updateGcDialogPanelInfo(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Vcs_Reduce_File_Size") + fileSizeConvert(size)); |
|
|
|
|
updateGcDialogPanelInfo(i18nText("Fine-Design_Vcs_Reduce_File_Size") + fileSizeConvert(size)); |
|
|
|
|
gcDialogDownPane.revalidate(); |
|
|
|
|
gcDialogDownPane.repaint(); |
|
|
|
|
gcDialogDownPane.add(gcOkButton); |
|
|
|
@ -940,7 +924,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
gcProgressBarPanel.remove(gcProgressBar); |
|
|
|
|
} |
|
|
|
|
if (null != gcDialog) { |
|
|
|
|
gcDialog.setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Joption_News")); |
|
|
|
|
gcDialog.setTitle(i18nText("Fine-Design_Form_Joption_News")); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -948,7 +932,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
* 初始化 gc 对话框 |
|
|
|
|
*/ |
|
|
|
|
private void initGcDialog() { |
|
|
|
|
gcDialog = new JDialog((Dialog) SwingUtilities.getWindowAncestor(PreferencePane.this), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Vcs_Clean_Progress") + "...", true); |
|
|
|
|
gcDialog = new JDialog((Dialog) SwingUtilities.getWindowAncestor(PreferencePane.this), i18nText("Fine-Design_Vcs_Clean_Progress") + "...", true); |
|
|
|
|
gcDialog.setSize(new Dimension(340, 140)); |
|
|
|
|
|
|
|
|
|
JPanel jp = new JPanel(); |
|
|
|
@ -983,7 +967,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
jp.setLayout(layout); |
|
|
|
|
|
|
|
|
|
//提示
|
|
|
|
|
gcMessage = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Vcs_Cleaning")); |
|
|
|
|
gcMessage = new UILabel(i18nText("Fine-Design_Vcs_Cleaning")); |
|
|
|
|
// 创建一个进度条
|
|
|
|
|
gcProgressBar = createGcProgressBar(0, 30, 240, 15, Color.GREEN); |
|
|
|
|
gcProgressTimer = createGcProgressTimer(500, gcProgressBar); |
|
|
|
@ -1075,7 +1059,7 @@ public class PreferencePane extends BasicPane {
|
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
private UIButton initGcButton() { |
|
|
|
|
UIButton gcButton = new UIButton(Toolkit.i18nText("Fine-Design_Vcs_Clean")); |
|
|
|
|
UIButton gcButton = new UIButton(i18nText("Fine-Design_Vcs_Clean")); |
|
|
|
|
gcButton.setPreferredSize(new Dimension(100, 15)); |
|
|
|
|
gcButton.setRoundBorder(true, Constants.LEFT); |
|
|
|
|
return gcButton; |
|
|
|
|