use of javax.swing.AbstractAction in project gephi by gephi.
the class ImportDB method getMenuPresenter.
@Override
public JMenuItem getMenuPresenter() {
JMenu menu = new JMenu(NbBundle.getMessage(ImportDB.class, "CTL_ImportDB"));
final ImportControllerUI importController = Lookup.getDefault().lookup(ImportControllerUI.class);
if (importController != null) {
for (final DatabaseImporterBuilder dbb : Lookup.getDefault().lookupAll(DatabaseImporterBuilder.class)) {
ImporterUI ui = importController.getImportController().getUI(dbb.buildImporter());
String menuName = dbb.getName();
if (ui != null) {
menuName = ui.getDisplayName();
}
JMenuItem menuItem = new JMenuItem(new AbstractAction(menuName) {
@Override
public void actionPerformed(ActionEvent e) {
importController.importDatabase(dbb.buildImporter());
}
});
menu.add(menuItem);
}
}
return menu;
}
use of javax.swing.AbstractAction in project gephi by gephi.
the class Export method getMenuPresenter.
@Override
public JMenuItem getMenuPresenter() {
for (final ExporterClassUI ui : Lookup.getDefault().lookupAll(ExporterClassUI.class)) {
String menuName = ui.getName();
JMenuItem menuItem = new JMenuItem(new AbstractAction(menuName) {
@Override
public void actionPerformed(ActionEvent e) {
ui.action();
}
});
menu.add(menuItem);
menuItem.setEnabled(ui.isEnable());
}
return menu;
}
use of javax.swing.AbstractAction in project gephi by gephi.
the class WelcomeTopComponent method initAction.
private void initAction() {
openAction = new AbstractAction("", ImageUtilities.loadImageIcon("org/gephi/desktop/welcome/resources/gephifile20.png", false)) {
@Override
public void actionPerformed(ActionEvent e) {
JXHyperlink link = (JXHyperlink) e.getSource();
File file = (File) link.getClientProperty(LINK_PATH);
FileObject fileObject = FileUtil.toFileObject(file);
if (fileObject.hasExt(GEPHI_EXTENSION)) {
ProjectControllerUI pc = Lookup.getDefault().lookup(ProjectControllerUI.class);
try {
pc.openProject(file);
} catch (Exception ex) {
ex.printStackTrace();
NotifyDescriptor.Message msg = new NotifyDescriptor.Message(NbBundle.getMessage(WelcomeTopComponent.class, "WelcomeTopComponent.openGephiError"), NotifyDescriptor.WARNING_MESSAGE);
DialogDisplayer.getDefault().notify(msg);
}
} else {
ImportControllerUI importController = Lookup.getDefault().lookup(ImportControllerUI.class);
if (importController.getImportController().isFileSupported(FileUtil.toFile(fileObject))) {
importController.importFile(fileObject);
}
}
closeDialog();
}
};
newProjectLink.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
ProjectControllerUI pc = Lookup.getDefault().lookup(ProjectControllerUI.class);
pc.newProject();
closeDialog();
}
});
openFileLink.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
ProjectControllerUI pc = Lookup.getDefault().lookup(ProjectControllerUI.class);
pc.openFile();
closeDialog();
}
});
}
use of javax.swing.AbstractAction in project gephi by gephi.
the class WelcomeTopComponent method loadSamples.
private void loadSamples() {
net.miginfocom.swing.MigLayout migLayout1 = new net.miginfocom.swing.MigLayout();
migLayout1.setColumnConstraints("[pref]");
samplesPanel.setLayout(migLayout1);
String[] samplePath = new String[3];
samplePath[0] = "/org/gephi/desktop/welcome/samples/Les Miserables.gexf";
samplePath[1] = "/org/gephi/desktop/welcome/samples/Java.gexf";
samplePath[2] = "/org/gephi/desktop/welcome/samples/Power Grid.gml";
String[] sampleTooltip = new String[3];
sampleTooltip[0] = "Coappearance Network of Characters in 'Les Miserables' (D. E. Knuth)";
sampleTooltip[1] = "Java Programming Language Dependency graph (V. Batagelj)";
sampleTooltip[2] = "Topology of the Western States Power Grid of the US (D. Watts & S. Strogatz)";
try {
for (int i = 0; i < samplePath.length; i++) {
final String s = samplePath[i];
String tooltip = sampleTooltip[i];
String fileName = s.substring(s.lastIndexOf('/') + 1, s.length());
final String importer = fileName.substring(fileName.lastIndexOf('.'), fileName.length());
JXHyperlink fileLink = new JXHyperlink(new AbstractAction() {
@Override
public void actionPerformed(ActionEvent e) {
final InputStream stream = WelcomeTopComponent.class.getResourceAsStream(s);
ImportControllerUI importController = Lookup.getDefault().lookup(ImportControllerUI.class);
importController.importStream(stream, importer);
closeDialog();
}
});
fileLink.setText(fileName);
fileLink.setToolTipText(tooltip);
fileLink.putClientProperty(LINK_PATH, importer);
samplesPanel.add(fileLink, "wrap");
}
} catch (Exception ex) {
Exceptions.printStackTrace(ex);
}
}
use of javax.swing.AbstractAction in project gephi by gephi.
the class RecentFiles method getMenuPresenter.
@Override
public JMenuItem getMenuPresenter() {
JMenu menu = new JMenu(NbBundle.getMessage(RecentFiles.class, "CTL_OpenRecentFiles"));
MostRecentFiles mru = Lookup.getDefault().lookup(MostRecentFiles.class);
for (String filePath : mru.getMRUFileList()) {
final File file = new File(filePath);
if (file.exists()) {
final String fileName = file.getName();
JMenuItem menuItem = new JMenuItem(new AbstractAction(fileName) {
@Override
public void actionPerformed(ActionEvent e) {
FileObject fileObject = FileUtil.toFileObject(file);
if (fileObject.hasExt(GEPHI_EXTENSION)) {
ProjectControllerUI pc = Lookup.getDefault().lookup(ProjectControllerUI.class);
try {
pc.openProject(file);
} catch (Exception ex) {
Exceptions.printStackTrace(ex);
}
} else {
ImportControllerUI importController = Lookup.getDefault().lookup(ImportControllerUI.class);
if (importController.getImportController().isFileSupported(file)) {
importController.importFile(fileObject);
}
}
}
});
menu.add(menuItem);
}
}
return menu;
}
Aggregations