use of net.parostroj.timetable.gui.actions.execution.ImportModelAction in project grafikon by jub77.
the class ImportReplaceOutputTemplatesUrlAction method actionPerformed.
@Override
public void actionPerformed(ActionEvent e) {
ActionHandler handler = ActionHandler.getInstance();
ActionContext context = new ActionContext(GuiComponentUtils.getTopLevelComponent(e.getSource()));
context.setAttribute("diagramImport", model.getDiagram());
String url = model.getLibraryBaseUrl() + "/" + TEMPLATE;
context.setAttribute("libraryUrl", url);
log.debug("Loading library: {}", url);
handler.execute(new LoadLibraryUrlModelAction(context));
handler.execute(new OutputTemplateSelectionModelAction(context));
handler.execute(new ImportModelAction(context));
handler.execute(new CopyTemplatesToOutputsModelAction(context, model));
}
use of net.parostroj.timetable.gui.actions.execution.ImportModelAction in project grafikon by jub77.
the class ImportAction method actionPerformed.
@Override
public void actionPerformed(ActionEvent event) {
final Component parent = GuiComponentUtils.getTopLevelComponent(event.getSource());
ActionContext context = new ActionContext(parent);
ActionHandler handler = ActionHandler.getInstance();
context.setAttribute("fileType", supportLibrary ? FileChooserFactory.Type.GTM_GTML : FileChooserFactory.Type.GTM);
context.setAttribute("diagramImport", model.getDiagram());
handler.execute(new OpenFileModelAction(context));
handler.execute(new SelectLoadAction(context));
handler.execute(new LoadDiagramModelAction(context));
handler.execute(new LoadLibraryModelAction(context));
handler.execute(new EventDispatchModelAction(context) {
@Override
protected void eventDispatchAction() {
TrainDiagram diagram = (TrainDiagram) context.getAttribute("diagram");
boolean cancelled = false;
Predicate<ObjectWithId> filter = null;
if (trainImport) {
groupDialog.setLocationRelativeTo(parent);
groupDialog.showDialog(diagram, null, model.getDiagram(), null);
if (groupDialog.isSelected()) {
final Group group = groupDialog.getSelectedFrom();
filter = new TrainGroupFilter(group);
} else {
cancelled = !groupDialog.isSelected();
}
}
context.setAttribute("trainFilter", filter);
context.setCancelled(cancelled);
if (trainImport) {
context.setAttribute("trainImport", new ImportModelAction.TrainImportConfig(groupDialog.isRemoveExistingTrains(), groupDialog.getSelectedFrom(), groupDialog.getSelectedTo()));
}
}
});
handler.execute(new ImportSelectionModelAction(context));
handler.execute(new ImportModelAction(context));
}
use of net.parostroj.timetable.gui.actions.execution.ImportModelAction in project grafikon by jub77.
the class ImportReplaceOutputTemplatesAction method actionPerformed.
@Override
public void actionPerformed(ActionEvent e) {
ActionHandler handler = ActionHandler.getInstance();
ActionContext context = new ActionContext(GuiComponentUtils.getTopLevelComponent(e.getSource()));
context.setAttribute("fileType", FileChooserFactory.Type.GTM_GTML);
context.setAttribute("diagramImport", model.getDiagram());
handler.execute(new OpenFileModelAction(context));
handler.execute(new SelectLoadAction(context));
handler.execute(new LoadDiagramModelAction(context));
handler.execute(new LoadLibraryModelAction(context));
handler.execute(new OutputTemplateSelectionModelAction(context));
handler.execute(new ImportModelAction(context));
handler.execute(new CopyTemplatesToOutputsModelAction(context, model));
}
Aggregations