use of org.gephi.preview.spi.PreviewUI in project gephi by gephi.
the class PreviewSettingsTopComponent method setup.
public void setup(PreviewUIModel previewModel) {
propertySheet.setNodes(new Node[] { new PreviewNode(propertySheet) });
PreviewUIController previewUIController = Lookup.getDefault().lookup(PreviewUIController.class);
if (previewModel != null) {
ratioSlider.setValue((int) (previewModel.getVisibilityRatio() * 100));
}
//Presets
if (previewModel == null) {
saveButton.setEnabled(false);
labelPreset.setEnabled(false);
presetComboBox.setEnabled(false);
presetComboBox.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "---" }));
} else {
saveButton.setEnabled(true);
labelPreset.setEnabled(true);
presetComboBox.setEnabled(true);
DefaultComboBoxModel comboBoxModel = new DefaultComboBoxModel();
defaultPresetLimit = 0;
for (PreviewPreset preset : previewUIController.getDefaultPresets()) {
comboBoxModel.addElement(preset);
defaultPresetLimit++;
}
PreviewPreset[] userPresets = previewUIController.getUserPresets();
if (userPresets.length > 0) {
comboBoxModel.addElement(NO_SELECTION);
for (PreviewPreset preset : userPresets) {
comboBoxModel.addElement(preset);
}
}
presetComboBox.setSelectedItem(previewModel.getCurrentPreset());
presetComboBox.setModel(comboBoxModel);
}
//Refresh tabs
int tabCount = tabbedPane.getTabCount();
for (int i = 2; i < tabCount; i++) {
//Start at 2, not removing settings and renderer manager tabs
tabbedPane.removeTabAt(i);
}
for (PreviewUI pui : Lookup.getDefault().lookupAll(PreviewUI.class)) {
pui.unsetup();
}
if (previewModel != null) {
PreviewController previewController = Lookup.getDefault().lookup(PreviewController.class);
PreviewModel pModel = previewController.getModel();
//Add new tabs
for (PreviewUI pui : Lookup.getDefault().lookupAll(PreviewUI.class)) {
pui.setup(pModel);
JPanel pluginPanel = pui.getPanel();
if (UIUtils.isAquaLookAndFeel()) {
pluginPanel.setBackground(UIManager.getColor("NbExplorerView.background"));
}
if (pui.getIcon() != null) {
tabbedPane.addTab(pui.getPanelTitle(), pui.getIcon(), pluginPanel);
} else {
tabbedPane.addTab(pui.getPanelTitle(), pluginPanel);
}
}
}
}
Aggregations