use of org.gephi.visualization.text.ColorMode in project gephi by gephi.
the class LabelSettingsPanel method setup.
public void setup() {
VizModel vizModel = VizController.getInstance().getVizModel();
TextModelImpl model = vizModel.getTextModel();
vizModel.addPropertyChangeListener(new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
if (evt.getPropertyName().equals("init")) {
refreshSharedConfig();
}
}
});
// NodePanel
showNodeLabelsCheckbox.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
boolean value = showNodeLabelsCheckbox.isSelected();
TextModelImpl model = VizController.getInstance().getVizModel().getTextModel();
if (value != model.isShowNodeLabels()) {
model.setShowNodeLabels(value);
setEnable(true);
}
}
});
nodeFontButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
TextModelImpl model = VizController.getInstance().getVizModel().getTextModel();
Font font = JFontChooser.showDialog(WindowManager.getDefault().getMainWindow(), model.getNodeFont());
if (font != null && font != model.getNodeFont()) {
model.setNodeFont(font);
}
}
});
((JColorButton) nodeColorButton).addPropertyChangeListener(JColorButton.EVENT_COLOR, new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
TextModelImpl model = VizController.getInstance().getVizModel().getTextModel();
if (!model.getNodeColor().equals(((JColorButton) nodeColorButton).getColor())) {
model.setNodeColor(((JColorButton) nodeColorButton).getColor());
}
}
});
nodeSizeSlider.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
TextModelImpl model = VizController.getInstance().getVizModel().getTextModel();
if (model.getNodeSizeFactor() != nodeSizeSlider.getValue() / 100f) {
model.setNodeSizeFactor(nodeSizeSlider.getValue() / 100f);
}
}
});
// EdgePanel
showEdgeLabelsCheckbox.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
boolean value = showEdgeLabelsCheckbox.isSelected();
TextModelImpl model = VizController.getInstance().getVizModel().getTextModel();
if (value != model.isShowEdgeLabels()) {
model.setShowEdgeLabels(value);
setEnable(true);
}
}
});
edgeFontButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
TextModelImpl model = VizController.getInstance().getVizModel().getTextModel();
Font font = JFontChooser.showDialog(WindowManager.getDefault().getMainWindow(), model.getEdgeFont());
if (font != null && font != model.getEdgeFont()) {
model.setEdgeFont(font);
}
}
});
((JColorButton) edgeColorButton).addPropertyChangeListener(JColorButton.EVENT_COLOR, new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
TextModelImpl model = VizController.getInstance().getVizModel().getTextModel();
if (!model.getEdgeColor().equals(((JColorButton) edgeColorButton).getColor())) {
model.setEdgeColor(((JColorButton) edgeColorButton).getColor());
}
}
});
edgeSizeSlider.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
TextModelImpl model = VizController.getInstance().getVizModel().getTextModel();
model.setEdgeSizeFactor(edgeSizeSlider.getValue() / 100f);
}
});
// General
final TextManager textManager = VizController.getInstance().getTextManager();
final DefaultComboBoxModel sizeModeModel = new DefaultComboBoxModel(textManager.getSizeModes());
sizeModeCombo.setModel(sizeModeModel);
final DefaultComboBoxModel colorModeModel = new DefaultComboBoxModel(textManager.getColorModes());
colorModeCombo.setModel(colorModeModel);
sizeModeCombo.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
TextModelImpl model = VizController.getInstance().getVizModel().getTextModel();
if (model.getSizeMode() != sizeModeModel.getSelectedItem()) {
model.setSizeMode((SizeMode) sizeModeModel.getSelectedItem());
}
}
});
colorModeCombo.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
TextModelImpl model = VizController.getInstance().getVizModel().getTextModel();
if (model.getColorMode() != colorModeModel.getSelectedItem()) {
model.setColorMode((ColorMode) colorModeModel.getSelectedItem());
}
}
});
hideNonSelectedCheckbox.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
TextModelImpl model = VizController.getInstance().getVizModel().getTextModel();
if (model.isSelectedOnly() != hideNonSelectedCheckbox.isSelected()) {
model.setSelectedOnly(hideNonSelectedCheckbox.isSelected());
}
}
});
// Attributes
configureLabelsButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
TextModelImpl model = VizController.getInstance().getVizModel().getTextModel();
LabelAttributesPanel panel = new LabelAttributesPanel();
panel.setup(model);
DialogDescriptor dd = new DialogDescriptor(panel, NbBundle.getMessage(VizBarController.class, "LabelAttributesPanel.title"), true, NotifyDescriptor.OK_CANCEL_OPTION, null, null);
if (DialogDisplayer.getDefault().notify(dd).equals(NotifyDescriptor.OK_OPTION)) {
panel.unsetup();
return;
}
}
});
// Evt
model.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
refreshSharedConfig();
}
});
refreshSharedConfig();
}
Aggregations