📄 gemlayoutconfigurationdialog.java
字号:
panelOverlapSwitch.add(cb_avoidOverlapping);
JPanel panelEmpty = new JPanel();
panelEmpty.setOpaque(false);
panelOverlap.setBorder(BorderFactory.createTitledBorder(BorderFactory.createRaisedBevelBorder(),"Force for overlapping Cells",TitledBorder.LEADING,TitledBorder.ABOVE_TOP));
panelOverlap.add(panelOverlapSwitch);
panelOverlap.add(panelEmpty);
panelOverlap.add(new JLabel("detection width :"));
panelOverlap.add(tf_overlapDetectWidth);
panelOverlap.add(new JLabel("pref. distance :"));
panelOverlap.add(tf_overlapPrefDistance);
cb_useOptimizationAlg = new JCheckBox();
cb_useOptimizationAlg.setOpaque(false);
cb_useOptimizationAlg.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
switchVisibility();
}
});
button_ConfigOptimizeAlg = new JButton("Configure");
button_ConfigOptimizeAlg.setBackground(panelLayoutRun.getBackground());
JPanel panelEmpty2 = new JPanel();
panelEmpty2.setOpaque(false);
panelOptiAlg.add(new JLabel("Use optimization Algorithm:"));
panelOptiAlg.add(cb_useOptimizationAlg);
panelOptiAlg.add(panelEmpty2);
panelOptiAlg.add(button_ConfigOptimizeAlg);
panelOptiAlg.setOpaque(false);
button_ConfigOptimizeAlg.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
optimizeAlgController.configure();
}
});
cb_avoidOverlapping.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
switchVisibility();
}
});
cb_lu_enableLayoutUpdate.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e){
switchLayoutUpdatePanel();
}
});
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
closeDialog();
}
});
JButton buttonFinished = new JButton("OK");
JButton buttonCancel = new JButton("Cancel");
comb_loadPreSets = new JComboBox();
for( int i = 0; i < presetConfigs.length; i++ )
comb_loadPreSets.addItem(presetConfigs[i].get(GEMLayoutController.KEY_CONFIG_NAME));
panelButtons.add(buttonFinished);
panelButtons.add(comb_loadPreSets);
panelButtons.add(buttonCancel);
buttonFinished.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
action_ok();
}
});
comb_loadPreSets.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e){
action_LoadPreSets(((JComboBox)e.getSource()).getSelectedIndex());
}
});
buttonCancel.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
action_cancel();
}
});
getRootPane().setDefaultButton(buttonFinished);
/*-----------------LAYOUT-UPDATE-------------------------*/
JPanel panelLULabels = new JPanel(new GridLayout(16,1, 0,5));
JPanel panelLUFields = new JPanel(new GridLayout(16,1, 0,5));
JPanel panelLUDefaults = new JPanel(new BorderLayout(10,5));
JPanel panelLUOverlap = new JPanel(new GridLayout(3,2,10,4));
JPanel panelLUOptimize = new JPanel(new BorderLayout());
JPanel panelLUOptiAlg = new JPanel(new GridLayout(2,2,10,4));
JPanel panelLUCluster = new JPanel(new GridLayout(4,2,10,4));
panelLUDefaults.setOpaque(false);
panelLULabels.setOpaque(false);
panelLUFields.setOpaque(false);
panelLUOverlap.setOpaque(false);
panelLUOptimize.setOpaque(false);
panelLUOptiAlg.setOpaque(false);
panelLUCluster.setOpaque(false);
panelLUDefaults.add(panelLULabels,BorderLayout.WEST);
panelLUDefaults.add(panelLUFields,BorderLayout.EAST);
panelLUDefaults.add(panelLUCluster,BorderLayout.SOUTH);
panelLUOptimize.add(panelLUOptiAlg,BorderLayout.NORTH);
panelLUOptimize.add(panelLUOverlap,BorderLayout.CENTER);
panelLayoutUpdate.add(panelLUDefaults,BorderLayout.NORTH);
panelLayoutUpdate.add(panelLUOptimize,BorderLayout.CENTER);
panelLayoutUpdate.add(getAdditionalForceLUConfig(),BorderLayout.SOUTH);
panelLULabels.add( new JLabel("start temperature :"));
panelLULabels.add( new JLabel("min. temperature :"));
panelLULabels.add( new JLabel("max. temperature :"));
panelLULabels.add( new JLabel("preferred Edge length :"));
panelLULabels.add( new JLabel("gravitation :"));
panelLULabels.add( new JLabel("range of random impulse :"));
panelLULabels.add( new JLabel("compute permutations :"));
panelLULabels.add( new JLabel("end condition is average :"));
panelLULabels.add( new JLabel("alpha oscillation :"));
panelLULabels.add( new JLabel("alpha rotation :"));
panelLULabels.add( new JLabel("sigma oscillation :"));
panelLULabels.add( new JLabel("sigma rotation :"));
panelLULabels.add( new JLabel("layout update method :"));
panelLULabels.add( new JLabel("layout update depth :"));
panelLULabels.add( new JLabel("layout update perimeter init size :"));
panelLULabels.add( new JLabel("layout update perimeter increase value :"));
tf_lu_initTemperature = new JTextField();
tf_lu_minTemperature = new JTextField();
tf_lu_maxTemperature = new JTextField();
tf_lu_prefEdgeLength = new JTextField();
tf_lu_gravitation = new JTextField();
tf_lu_randomImpulseRange = new JTextField();
cb_lu_computePermutation = new JCheckBox();
cb_lu_endPerAverage = new JCheckBox();
cb_lu_computePermutation .setOpaque(false);
cb_lu_endPerAverage .setOpaque(false);
tf_lu_alphaOsc = new JTextField();
tf_lu_alphaRot = new JTextField();
tf_lu_sigmaOsc = new JTextField();
tf_lu_sigmaRot = new JTextField();
tf_lu_depth = new JTextField();
comb_lu_method = new JComboBox();
comb_lu_method.addItem(GEMLayoutController.KEY_LAYOUT_UPDATE_METHOD_NEIGHBORS_ONLY);
comb_lu_method.addItem(GEMLayoutController.KEY_LAYOUT_UPDATE_METHOD_PERIMETERS);
comb_lu_method.setBackground(panelLayoutUpdate.getBackground());
tf_lu_perimeter_initSize = new JTextField();
tf_lu_perimeter_sizeInc = new JTextField();
panelLUFields.add(tf_lu_initTemperature);
panelLUFields.add(tf_lu_minTemperature);
panelLUFields.add(tf_lu_maxTemperature);
panelLUFields.add(tf_lu_prefEdgeLength);
panelLUFields.add(tf_lu_gravitation);
panelLUFields.add(tf_lu_randomImpulseRange);
panelLUFields.add(cb_lu_computePermutation);
panelLUFields.add(cb_lu_endPerAverage);
panelLUFields.add(tf_lu_alphaOsc);
panelLUFields.add(tf_lu_alphaRot);
panelLUFields.add(tf_lu_sigmaOsc);
panelLUFields.add(tf_lu_sigmaRot);
panelLUFields.add(comb_lu_method);
panelLUFields.add(tf_lu_depth);
panelLUFields.add(tf_lu_perimeter_initSize);
panelLUFields.add(tf_lu_perimeter_sizeInc);
tf_lu_cluster_initTemperature = new JTextField();
tf_lu_cluster_forceScalingFactor = new JTextField();
tf_lu_cluster_factor = new JTextField();
cb_lu_cluster_enable = new JCheckBox();
cb_lu_cluster_enable.setOpaque(false);
cb_lu_cluster_enable.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
switchVisibility();
}
});
JPanel panelLUClusteringSwitch = new JPanel(new GridLayout(1,2,10,4));
panelLUClusteringSwitch.setOpaque(false);
panelLUClusteringSwitch.add(new JLabel("on/off"));
panelLUClusteringSwitch.add(cb_lu_cluster_enable);
JPanel panelLUClusterEmpty = new JPanel();
panelLUClusterEmpty.setOpaque(false);
panelLUCluster.setBorder(BorderFactory.createTitledBorder(BorderFactory.createRaisedBevelBorder(),"Clustering",TitledBorder.LEADING,TitledBorder.ABOVE_TOP));
panelLUCluster.add(panelLUClusteringSwitch);
panelLUCluster.add(panelLUClusterEmpty);
panelLUCluster.add(new JLabel("clustering factor :"));
panelLUCluster.add(tf_lu_cluster_factor);
panelLUCluster.add(new JLabel("init temperature :"));
panelLUCluster.add(tf_lu_cluster_initTemperature);
panelLUCluster.add(new JLabel("force scaling factor :"));
panelLUCluster.add(tf_lu_cluster_forceScalingFactor);
cb_lu_avoidOverlapping = new JCheckBox();
cb_lu_avoidOverlapping.setOpaque(false);
tf_lu_overlapDetectWidth = new JTextField();
tf_lu_overlapPrefDistance = new JTextField();
JPanel panelLUOverlapSwitch = new JPanel(new GridLayout(1,2,10,4));
panelLUOverlapSwitch.setOpaque(false);
panelLUOverlapSwitch.add(new JLabel("on/off"));
panelLUOverlapSwitch.add(cb_lu_avoidOverlapping);
JPanel panelLUEmpty = new JPanel();
panelLUEmpty.setOpaque(false);
panelLUOverlap.setBorder(BorderFactory.createTitledBorder(BorderFactory.createRaisedBevelBorder(),"Force for overlapping Cells",TitledBorder.LEADING,TitledBorder.ABOVE_TOP));
panelLUOverlap.add(panelLUOverlapSwitch);
panelLUOverlap.add(panelLUEmpty);
panelLUOverlap.add(new JLabel("detection width :"));
panelLUOverlap.add(tf_lu_overlapDetectWidth);
panelLUOverlap.add(new JLabel("pref. distance :"));
panelLUOverlap.add(tf_lu_overlapPrefDistance);
cb_lu_avoidOverlapping.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
switchVisibility();
}
});
cb_lu_useOptimizationAlg = new JCheckBox();
cb_lu_useOptimizationAlg.setOpaque(false);
cb_lu_useOptimizationAlg.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
switchVisibility();
}
});
button_lu_ConfigOptimizeAlg = new JButton(button_ConfigOptimizeAlg.getText());
button_lu_ConfigOptimizeAlg.setBackground(panelLayoutUpdate.getBackground());
button_lu_ConfigOptimizeAlg.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
lu_optimizeAlgController.configure();
}
});
JPanel emptyPanel3 = new JPanel();
emptyPanel3.setOpaque(false);
panelLUOptiAlg.add(new JLabel("Use optimization Algorithm:"));
panelLUOptiAlg.add(cb_lu_useOptimizationAlg);
panelLUOptiAlg.add(emptyPanel3);
panelLUOptiAlg.add(button_lu_ConfigOptimizeAlg);
panelLayoutRunWrapper = new JScrollPane(panelLayoutRun);
Dimension innerSize = new Dimension(500, 350);
panelLayoutRunWrapper .setPreferredSize(innerSize);
panelLayoutUpdateWrapper = new JScrollPane(panelLayoutUpdate);
panelLayoutUpdateWrapper.setPreferredSize(innerSize);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -