Search in sources :

Example 1 with ShowSelectionAsRectangleAction

use of org.freeplane.core.ui.ShowSelectionAsRectangleAction in project freeplane by freeplane.

the class SModeControllerFactory method createController.

Controller createController(final JDialog dialog) {
    Controller currentController = Controller.getCurrentController();
    final Controller controller = new Controller(ResourceController.getResourceController());
    Controller.setCurrentController(controller);
    final MapViewController mapViewController = new MMapViewController(controller);
    final DialogController viewController = new DialogController(controller, mapViewController, dialog);
    controller.setViewController(viewController);
    controller.addExtension(HighlightController.class, new HighlightController());
    controller.addAction(currentController.getAction("AboutAction"));
    FilterController.install();
    TextController.install();
    controller.addAction(new ViewLayoutTypeAction(MapViewLayout.OUTLINE));
    controller.addAction(new ShowSelectionAsRectangleAction());
    modeController = new SModeController(controller);
    controller.selectModeForBuild(modeController);
    modeController.addAction(new NewUserStyleAction());
    modeController.addAction(new DeleteUserStyleAction());
    modeController.addAction(new NewLevelStyleAction());
    modeController.addAction(new DeleteLevelStyleAction());
    modeController.addAction(new SetAcceleratorOnNextClickAction());
    final UserInputListenerFactory userInputListenerFactory = new UserInputListenerFactory(modeController);
    userInputListenerFactory.setNodeMouseMotionListener(new DefaultNodeMouseMotionListener());
    userInputListenerFactory.setNodeMouseWheelListener(new MNodeMouseWheelListener(userInputListenerFactory.getMapMouseWheelListener()));
    modeController.setUserInputListenerFactory(userInputListenerFactory);
    controller.addExtension(ModelessAttributeController.class, new ModelessAttributeController());
    new MMapController(modeController);
    ModelessAttributeController.installConditions();
    new MTextController(modeController).install(modeController);
    SpellCheckerController.install(modeController);
    new MIconController(modeController).install(modeController);
    NodeStyleController.install(new MNodeStyleController(modeController));
    LocationController.install(new MLocationController());
    EdgeController.install(new MEdgeController(modeController));
    CloudController.install(new MCloudController(modeController));
    NoteController.install(new MNoteController(modeController));
    LinkController.install(new MLinkController(modeController));
    MFileManager.install(new MFileManager());
    MMapIO.install(modeController);
    final MLogicalStyleController logicalStyleController = new MLogicalStyleController(modeController);
    logicalStyleController.initS();
    LogicalStyleController.install(logicalStyleController);
    AttributeController.install(new MAttributeController(modeController));
    FormatController.install(new FormatController());
    IconController.installConditionControllers();
    final ScannerController scannerController = new ScannerController();
    ScannerController.install(scannerController);
    scannerController.addParsersForStandardFormats();
    modeController.addAction(new EditAttributesAction());
    userInputListenerFactory.setMapMouseListener(new MMapMouseListener());
    final JPopupMenu popupmenu = new JPopupMenu();
    userInputListenerFactory.setNodePopupMenu(popupmenu);
    final FreeplaneToolBar toolBar = new FreeplaneToolBar("main_toolbar", SwingConstants.HORIZONTAL);
    UIComponentVisibilityDispatcher.install(viewController, toolBar, "toolbarVisible");
    userInputListenerFactory.addToolBar("/main_toolbar", ViewController.TOP, toolBar);
    userInputListenerFactory.addToolBar("/icon_toolbar", ViewController.LEFT, ((MIconController) IconController.getController()).getIconToolBarScrollPane());
    userInputListenerFactory.addToolBar("/status", ViewController.BOTTOM, controller.getViewController().getStatusBar());
    modeController.addAction(new ToggleToolbarAction("ToggleLeftToolbarAction", "/icon_toolbar"));
    MapStyle.install(false);
    controller.addModeController(modeController);
    controller.selectModeForBuild(modeController);
    if (extentionInstaller != null)
        extentionInstaller.installExtensions(controller);
    final SModeController modeController = this.modeController;
    final StyleEditorPanel styleEditorPanel = new StyleEditorPanel(modeController, null, false);
    modeController.addAction(new ShowFormatPanelAction());
    final MapController mapController = modeController.getMapController();
    mapController.addNodeSelectionListener(new INodeSelectionListener() {

        @Override
        public void onSelect(final NodeModel node) {
            final IMapSelection selection = controller.getSelection();
            if (selection == null) {
                return;
            }
            if (selection.size() == 1 && node.depth() >= 2) {
                return;
            }
            final NodeModel nextSelection;
            if (node.depth() < 2) {
                if (node.depth() == 1 && node.hasChildren()) {
                    nextSelection = node.getChildAt(0);
                } else {
                    nextSelection = (node.getMap().getRootNode().getChildAt(0).getChildAt(0));
                }
            } else {
                nextSelection = node;
            }
            EventQueue.invokeLater(new Runnable() {

                @Override
                public void run() {
                    selection.selectAsTheOnlyOneSelected(nextSelection);
                }
            });
        }

        @Override
        public void onDeselect(final NodeModel node) {
        }
    });
    mapController.addNodeChangeListener(new INodeChangeListener() {

        @Override
        public void nodeChanged(NodeChangeEvent event) {
            final NodeModel node = event.getNode();
            if (node.getUserObject().equals(MapStyleModel.DEFAULT_STYLE)) {
                mapController.fireMapChanged(new MapChangeEvent(this, node.getMap(), MapStyle.MAP_STYLES, null, null));
            }
        }
    });
    final JScrollPane styleScrollPane = new JScrollPane(styleEditorPanel, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
    UITools.setScrollbarIncrement(styleScrollPane);
    // styleEditorPanel.setPreferredSize(new Dimension(200, 200));
    userInputListenerFactory.addToolBar("/format", ViewController.RIGHT, styleScrollPane);
    UIComponentVisibilityDispatcher.install(viewController, styleScrollPane, "styleScrollPaneVisible");
    modeController.addExtension(MUIFactory.class, new MUIFactory());
    final Set<String> emptySet = Collections.emptySet();
    modeController.updateMenus("/xml/stylemodemenu.xml", emptySet);
    this.modeController = null;
    return controller;
}
Also used : MUIFactory(org.freeplane.features.styles.mindmapmode.MUIFactory) StyleEditorPanel(org.freeplane.features.styles.mindmapmode.styleeditorpanel.StyleEditorPanel) MAttributeController(org.freeplane.features.attribute.mindmapmode.MAttributeController) MMapController(org.freeplane.features.map.mindmapmode.MMapController) ShowFormatPanelAction(org.freeplane.features.styles.mindmapmode.ShowFormatPanelAction) ModelessAttributeController(org.freeplane.features.attribute.ModelessAttributeController) NodeModel(org.freeplane.features.map.NodeModel) MapChangeEvent(org.freeplane.features.map.MapChangeEvent) MEdgeController(org.freeplane.features.edge.mindmapmode.MEdgeController) SetAcceleratorOnNextClickAction(org.freeplane.core.ui.SetAcceleratorOnNextClickAction) MCloudController(org.freeplane.features.cloud.mindmapmode.MCloudController) MIconController(org.freeplane.features.icon.mindmapmode.MIconController) UserInputListenerFactory(org.freeplane.view.swing.ui.UserInputListenerFactory) EditAttributesAction(org.freeplane.view.swing.map.attribute.EditAttributesAction) DefaultNodeMouseMotionListener(org.freeplane.view.swing.ui.DefaultNodeMouseMotionListener) MMapViewController(org.freeplane.view.swing.map.mindmapmode.MMapViewController) MapViewController(org.freeplane.view.swing.map.MapViewController) MNoteController(org.freeplane.features.note.mindmapmode.MNoteController) INodeSelectionListener(org.freeplane.features.map.INodeSelectionListener) MLinkController(org.freeplane.features.link.mindmapmode.MLinkController) ViewLayoutTypeAction(org.freeplane.view.swing.map.ViewLayoutTypeAction) FreeplaneToolBar(org.freeplane.core.ui.components.FreeplaneToolBar) MLocationController(org.freeplane.features.nodelocation.mindmapmode.MLocationController) IMapSelection(org.freeplane.features.map.IMapSelection) FormatController(org.freeplane.features.format.FormatController) MMapMouseListener(org.freeplane.view.swing.ui.mindmapmode.MMapMouseListener) MFileManager(org.freeplane.features.url.mindmapmode.MFileManager) MNodeMouseWheelListener(org.freeplane.view.swing.ui.mindmapmode.MNodeMouseWheelListener) MLogicalStyleController(org.freeplane.features.styles.mindmapmode.MLogicalStyleController) NodeChangeEvent(org.freeplane.features.map.NodeChangeEvent) JScrollPane(javax.swing.JScrollPane) MMapViewController(org.freeplane.view.swing.map.mindmapmode.MMapViewController) HighlightController(org.freeplane.features.highlight.HighlightController) AttributeController(org.freeplane.features.attribute.AttributeController) MNoteController(org.freeplane.features.note.mindmapmode.MNoteController) MLogicalStyleController(org.freeplane.features.styles.mindmapmode.MLogicalStyleController) MTextController(org.freeplane.features.text.mindmapmode.MTextController) EdgeController(org.freeplane.features.edge.EdgeController) MMapController(org.freeplane.features.map.mindmapmode.MMapController) MAttributeController(org.freeplane.features.attribute.mindmapmode.MAttributeController) FilterController(org.freeplane.features.filter.FilterController) MapController(org.freeplane.features.map.MapController) MIconController(org.freeplane.features.icon.mindmapmode.MIconController) IconController(org.freeplane.features.icon.IconController) Controller(org.freeplane.features.mode.Controller) MMapViewController(org.freeplane.view.swing.map.mindmapmode.MMapViewController) TextController(org.freeplane.features.text.TextController) MLinkController(org.freeplane.features.link.mindmapmode.MLinkController) ModelessAttributeController(org.freeplane.features.attribute.ModelessAttributeController) NodeStyleController(org.freeplane.features.nodestyle.NodeStyleController) SpellCheckerController(org.freeplane.features.spellchecker.mindmapmode.SpellCheckerController) MEdgeController(org.freeplane.features.edge.mindmapmode.MEdgeController) NoteController(org.freeplane.features.note.NoteController) FormatController(org.freeplane.features.format.FormatController) LogicalStyleController(org.freeplane.features.styles.LogicalStyleController) MapViewController(org.freeplane.view.swing.map.MapViewController) ResourceController(org.freeplane.core.resources.ResourceController) ViewController(org.freeplane.features.ui.ViewController) CloudController(org.freeplane.features.cloud.CloudController) LinkController(org.freeplane.features.link.LinkController) MCloudController(org.freeplane.features.cloud.mindmapmode.MCloudController) HighlightController(org.freeplane.features.highlight.HighlightController) LocationController(org.freeplane.features.nodelocation.LocationController) ModeController(org.freeplane.features.mode.ModeController) MLocationController(org.freeplane.features.nodelocation.mindmapmode.MLocationController) MNodeStyleController(org.freeplane.features.nodestyle.mindmapmode.MNodeStyleController) ScannerController(org.freeplane.features.format.ScannerController) ScannerController(org.freeplane.features.format.ScannerController) JPopupMenu(javax.swing.JPopupMenu) MMapController(org.freeplane.features.map.mindmapmode.MMapController) MapController(org.freeplane.features.map.MapController) ToggleToolbarAction(org.freeplane.features.ui.ToggleToolbarAction) MNodeStyleController(org.freeplane.features.nodestyle.mindmapmode.MNodeStyleController) INodeChangeListener(org.freeplane.features.map.INodeChangeListener) MTextController(org.freeplane.features.text.mindmapmode.MTextController) ShowSelectionAsRectangleAction(org.freeplane.core.ui.ShowSelectionAsRectangleAction)

Example 2 with ShowSelectionAsRectangleAction

use of org.freeplane.core.ui.ShowSelectionAsRectangleAction in project freeplane by freeplane.

the class FreeplaneGUIStarter method createController.

@SuppressWarnings("serial")
public Controller createController() {
    try {
        Controller controller = new Controller(applicationResourceController);
        Controller.setCurrentController(controller);
        Compat.macAppChanges();
        controller.addAction(new QuitAction());
        applicationResourceController.init();
        LogUtils.createLogger();
        FreeplaneGUIStarter.showSysInfo();
        final String lookandfeel = System.getProperty("lookandfeel", applicationResourceController.getProperty("lookandfeel"));
        final boolean supportHidpi = Boolean.valueOf(System.getProperty("lookandfeel.scaleuifonts", applicationResourceController.getProperty("lookandfeel.scaleuifonts")));
        FrameController.setLookAndFeel(lookandfeel, supportHidpi);
        final JFrame frame;
        frame = new JFrame("Freeplane");
        frame.setContentPane(new JPanel() {

            @Override
            protected boolean processKeyBinding(KeyStroke ks, KeyEvent e, int condition, boolean pressed) {
                return super.processKeyBinding(ks, e, condition, pressed) || MenuKeyProcessor.INSTANCE.processKeyBinding(ks, e, condition, pressed);
            }
        });
        frame.setName(UITools.MAIN_FREEPLANE_FRAME);
        final MMapViewController mapViewController = new MMapViewController(controller);
        viewController = new ApplicationViewController(controller, mapViewController, frame);
        splash = new FreeplaneSplashModern(frame);
        if (!System.getProperty("org.freeplane.nosplash", "false").equals("true")) {
            SwingUtilities.invokeAndWait(new Runnable() {

                @Override
                public void run() {
                    splash.setVisible(true);
                }
            });
        }
        mapViewController.addMapViewChangeListener(applicationResourceController.getLastOpenedList());
        controller.addExtension(HighlightController.class, new HighlightController());
        FilterController.install();
        PrintController.install();
        FormatController.install(new FormatController());
        final ScannerController scannerController = new ScannerController();
        ScannerController.install(scannerController);
        scannerController.addParsersForStandardFormats();
        ModelessAttributeController.install();
        TextController.install();
        TimeController.install();
        LinkController.install();
        IconController.installConditionControllers();
        HelpController.install();
        controller.addAction(new NextNodeAction(Direction.FORWARD));
        controller.addAction(new NextNodeAction(Direction.BACK));
        controller.addAction(new NextNodeAction(Direction.FORWARD_N_FOLD));
        controller.addAction(new NextNodeAction(Direction.BACK_N_FOLD));
        controller.addAction(NextPresentationItemAction.createFoldingAction());
        controller.addAction(NextPresentationItemAction.createNotFoldingAction());
        controller.addAction(new ShowSelectionAsRectangleAction());
        controller.addAction(new ViewLayoutTypeAction(MapViewLayout.OUTLINE));
        FilterController.getCurrentFilterController().getConditionFactory().addConditionController(70, new LogicalStyleFilterController());
        MapController.install();
        NodeHistory.install(controller);
        final FreeplaneSurveyProperties freeplaneSurveyProperties = new FreeplaneSurveyProperties();
        if (freeplaneSurveyProperties.mayAskUserToFillSurveys()) {
            controller.addApplicationLifecycleListener(new SurveyStarter(freeplaneSurveyProperties, new SurveyRunner(freeplaneSurveyProperties), Math.random()));
        }
        return controller;
    } catch (final Exception e) {
        LogUtils.severe(e);
        throw new RuntimeException(e);
    }
}
Also used : JPanel(javax.swing.JPanel) QuitAction(org.freeplane.features.mode.QuitAction) LogicalStyleFilterController(org.freeplane.features.styles.LogicalStyleFilterController) FormatController(org.freeplane.features.format.FormatController) KeyEvent(java.awt.event.KeyEvent) SurveyRunner(org.freeplane.main.application.survey.SurveyRunner) JFrame(javax.swing.JFrame) SurveyStarter(org.freeplane.main.application.survey.SurveyStarter) NextNodeAction(org.freeplane.features.filter.NextNodeAction) MMapViewController(org.freeplane.view.swing.map.mindmapmode.MMapViewController) FreeplaneSurveyProperties(org.freeplane.main.application.survey.FreeplaneSurveyProperties) HighlightController(org.freeplane.features.highlight.HighlightController) FModeController(org.freeplane.features.mode.filemode.FModeController) MMapController(org.freeplane.features.map.mindmapmode.MMapController) TimeController(org.freeplane.features.time.TimeController) FilterController(org.freeplane.features.filter.FilterController) HelpController(org.freeplane.features.help.HelpController) MapController(org.freeplane.features.map.MapController) LogicalStyleFilterController(org.freeplane.features.styles.LogicalStyleFilterController) IconController(org.freeplane.features.icon.IconController) Controller(org.freeplane.features.mode.Controller) MMapViewController(org.freeplane.view.swing.map.mindmapmode.MMapViewController) TextController(org.freeplane.features.text.TextController) ModelessAttributeController(org.freeplane.features.attribute.ModelessAttributeController) PrintController(org.freeplane.features.print.PrintController) FormatController(org.freeplane.features.format.FormatController) AddOnsController(org.freeplane.main.addons.AddOnsController) ResourceController(org.freeplane.core.resources.ResourceController) LinkController(org.freeplane.features.link.LinkController) HighlightController(org.freeplane.features.highlight.HighlightController) FrameController(org.freeplane.features.ui.FrameController) ModeController(org.freeplane.features.mode.ModeController) MModeController(org.freeplane.features.mode.mindmapmode.MModeController) ScannerController(org.freeplane.features.format.ScannerController) ScannerController(org.freeplane.features.format.ScannerController) InvocationTargetException(java.lang.reflect.InvocationTargetException) IOException(java.io.IOException) ViewLayoutTypeAction(org.freeplane.view.swing.map.ViewLayoutTypeAction) KeyStroke(javax.swing.KeyStroke) ShowSelectionAsRectangleAction(org.freeplane.core.ui.ShowSelectionAsRectangleAction)

Example 3 with ShowSelectionAsRectangleAction

use of org.freeplane.core.ui.ShowSelectionAsRectangleAction in project freeplane by freeplane.

the class FreeplaneApplet method init.

@SuppressWarnings("serial")
@Override
public void init() {
    configureFrame();
    new Thread(new Runnable() {

        @Override
        public void run() {
            try {
                appletLock.lock();
                AppletResourceController appletResourceController = new AppletResourceController(FreeplaneApplet.this);
                new ParserDelegator() {

                    {
                        setDefaultDTD();
                    }
                };
                controller = new Controller(appletResourceController);
                updateLookAndFeel(appletResourceController);
                Controller.setCurrentController(controller);
                final Container contentPane = getContentPane();
                contentPane.setLayout(new BorderLayout());
                MapViewController mapViewController = new MapViewController(controller);
                appletViewController = new AppletViewController(FreeplaneApplet.this, controller, mapViewController);
                controller.addAction(new ViewLayoutTypeAction(MapViewLayout.OUTLINE));
                controller.addExtension(HighlightController.class, new HighlightController());
                FilterController.install();
                PrintController.install();
                HelpController.install();
                NodeHistory.install(controller);
                FormatController.install(new FormatController());
                ModelessAttributeController.install();
                TextController.install();
                MapController.install();
                TimeController.install();
                LinkController.install();
                IconController.installConditionControllers();
                FilterController.getCurrentFilterController().getConditionFactory().addConditionController(70, new LogicalStyleFilterController());
                final BModeController browseController = BModeControllerFactory.createModeController();
                final Set<String> emptySet = Collections.emptySet();
                FilterController.getController(controller).loadDefaultConditions();
                controller.addAction(new ShowSelectionAsRectangleAction());
                controller.addAction(new NextNodeAction(Direction.FORWARD));
                controller.addAction(new NextNodeAction(Direction.BACK));
                controller.addAction(new NextNodeAction(Direction.FORWARD_N_FOLD));
                controller.addAction(new NextNodeAction(Direction.BACK_N_FOLD));
                controller.addAction(NextPresentationItemAction.createFoldingAction());
                controller.addAction(NextPresentationItemAction.createNotFoldingAction());
                browseController.updateMenus("/xml/appletmenu.xml", emptySet);
                appletResourceController.getAcceleratorManager().loadAcceleratorPresets();
                controller.selectMode(browseController);
                setPropertyByParameter(appletResourceController, "browsemode_initial_map");
                isLaunchedByJavaWebStart = isParameterTrue("launched_by_java_web_start");
                if (isLaunchedByJavaWebStart) {
                    if (instanceInitialized)
                        throw new RuntimeException("singleAppletInstance allowed");
                    else
                        instanceInitialized = true;
                } else
                    addGlassPane();
                controller.getViewController().setMenubarVisible(false);
                SwingUtilities.invokeLater(new Runnable() {

                    @Override
                    public void run() {
                        appletViewController.init(controller);
                    }
                });
            } catch (RuntimeException e) {
                e.printStackTrace();
                throw e;
            } finally {
                appletLock.unlock();
            }
        }
    }, "Freeplane applet initialization").start();
}
Also used : ParserDelegator(javax.swing.text.html.parser.ParserDelegator) LogicalStyleFilterController(org.freeplane.features.styles.LogicalStyleFilterController) FormatController(org.freeplane.features.format.FormatController) HighlightController(org.freeplane.features.highlight.HighlightController) PrintController(org.freeplane.features.print.PrintController) FormatController(org.freeplane.features.format.FormatController) MapViewController(org.freeplane.view.swing.map.MapViewController) ResourceController(org.freeplane.core.resources.ResourceController) LinkController(org.freeplane.features.link.LinkController) TimeController(org.freeplane.features.time.TimeController) FilterController(org.freeplane.features.filter.FilterController) HelpController(org.freeplane.features.help.HelpController) HighlightController(org.freeplane.features.highlight.HighlightController) MapController(org.freeplane.features.map.MapController) LogicalStyleFilterController(org.freeplane.features.styles.LogicalStyleFilterController) FrameController(org.freeplane.features.ui.FrameController) IconController(org.freeplane.features.icon.IconController) Controller(org.freeplane.features.mode.Controller) TextController(org.freeplane.features.text.TextController) ModelessAttributeController(org.freeplane.features.attribute.ModelessAttributeController) MapViewController(org.freeplane.view.swing.map.MapViewController) Container(java.awt.Container) BorderLayout(java.awt.BorderLayout) ViewLayoutTypeAction(org.freeplane.view.swing.map.ViewLayoutTypeAction) NextNodeAction(org.freeplane.features.filter.NextNodeAction) ShowSelectionAsRectangleAction(org.freeplane.core.ui.ShowSelectionAsRectangleAction)

Aggregations

ResourceController (org.freeplane.core.resources.ResourceController)3 ShowSelectionAsRectangleAction (org.freeplane.core.ui.ShowSelectionAsRectangleAction)3 ModelessAttributeController (org.freeplane.features.attribute.ModelessAttributeController)3 FilterController (org.freeplane.features.filter.FilterController)3 FormatController (org.freeplane.features.format.FormatController)3 HighlightController (org.freeplane.features.highlight.HighlightController)3 IconController (org.freeplane.features.icon.IconController)3 LinkController (org.freeplane.features.link.LinkController)3 MapController (org.freeplane.features.map.MapController)3 Controller (org.freeplane.features.mode.Controller)3 NextNodeAction (org.freeplane.features.filter.NextNodeAction)2 ScannerController (org.freeplane.features.format.ScannerController)2 HelpController (org.freeplane.features.help.HelpController)2 MMapController (org.freeplane.features.map.mindmapmode.MMapController)2 ModeController (org.freeplane.features.mode.ModeController)2 PrintController (org.freeplane.features.print.PrintController)2 LogicalStyleFilterController (org.freeplane.features.styles.LogicalStyleFilterController)2 TextController (org.freeplane.features.text.TextController)2 TimeController (org.freeplane.features.time.TimeController)2 FrameController (org.freeplane.features.ui.FrameController)2