this.setLayout(new BorderLayout());
this.setBorder(BorderFactory.createTitledBorder(""));
//the collapsible panel
CollapsiblePanel collapsiblePanel = new CollapsiblePanel("FAG-EC Options");
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel,BoxLayout.Y_AXIS));
panel.setBorder(BorderFactory.createTitledBorder(""));
//the radio botton panel
JPanel functionPanel=new JPanel();
functionPanel.setLayout(new BorderLayout());
//the radio bottons
weak = new JRadioButton("Weak",true);
weak.setToolTipText("use weak module definition");
strong = new JRadioButton("Strong", false);
strong.setToolTipText("use strong module definition");
ButtonGroup choices = new ButtonGroup();
choices.add(weak);
choices.add(strong);
weak.addActionListener(new FunctionAction());
strong.addActionListener(new FunctionAction());
functionPanel.add(weak,BorderLayout.WEST);
functionPanel.add(strong,BorderLayout.CENTER);
//the weak module definition parameter input Panel
weakPanel = new JPanel();
weakPanel.setLayout(new BorderLayout());
//the label
JLabel label=new JLabel("Threshold"); //Clique Size Threshold input
fThreshold = new JFormattedTextField(decimal) {
public JToolTip createToolTip() {
return new MyTipTool();
}
};
//the input text field
fThreshold.setColumns(3);
fThreshold.addPropertyChangeListener("value", new FAGECPanel.FormattedTextFieldAction());
String tip2 = "threshold to define a module\n" +
"It stands for the proportion of\n"+
"the indegree to the outdegree of a clique";
fThreshold.setToolTipText(tip2);
fThreshold.setText((new Double(currentParameters.getfThreshold()).toString()));
weakPanel.add(fThreshold,BorderLayout.EAST);
weakPanel.add(label,BorderLayout.WEST);
weakPanel.setVisible(true);
//the cliqueSize Panel
cliqueSizePanel=createCliqueSizePanel();
//the ComplexSize Panel
JPanel complexSizePanel=createComplexSizePanel();
//Produce Overlapped Complexes input
JLabel overlapLabel = new JLabel(" Produce Overlapped Complexes");
overlapped = new JCheckBox() {
public JToolTip createToolTip() {
return new MyTipTool();
}
};
overlapped.addItemListener(new overlappedCheckBoxAction());
String overlapTip = "Produce overlapped module.";
overlapped.setToolTipText(overlapTip);
overlapped.setSelected(currentParameters.isOverlapped());
JPanel overlapPanel = new JPanel() {
public JToolTip createToolTip() {
return new MyTipTool();
}
};
overlapPanel.setLayout(new BorderLayout());
overlapPanel.setToolTipText(overlapTip);
overlapPanel.add(overlapLabel, BorderLayout.WEST);
overlapPanel.add(overlapped, BorderLayout.EAST);
panel.add(functionPanel);
panel.add(weakPanel);
panel.add(complexSizePanel);
panel.add(overlapPanel);
panel.add(cliqueSizePanel);
cliqueSizePanel.setVisible(currentParameters.isOverlapped());
collapsiblePanel.getContentPane().add(panel, BorderLayout.NORTH);
collapsiblePanel.setToolTipText("Customize parameters for FAG-EC (Optional)");
this.add(collapsiblePanel);
}