⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 svgselection.java~1~

📁 完全基于java开发的svg矢量绘图工具
💻 JAVA~1~
📖 第 1 页 / 共 3 页
字号:
                getSVGEditor().cancelActions(true);                                if(e.getSource() instanceof JToggleButton){                                        regularModeTool.setSelected(true);                }            }        };                regularModeTool.addActionListener(regularModeToolListener);        selectAllListener=new ActionListener(){            public void actionPerformed(ActionEvent e) {                if(! isActing()){                                        getSVGEditor().getFrameManager().getCurrentFrame().getScrollPane().getSVGCanvas().displayWaitCursor();                    getSVGEditor().cancelActions(true);                    selectAll(getSVGEditor().getFrameManager().getCurrentFrame(), true);                    getSVGEditor().getFrameManager().getCurrentFrame().getScrollPane().getSVGCanvas().returnToLastCursor();                }            }        };                selectAll.addActionListener(selectAllListener);                deselectAllListener=new ActionListener(){            public void actionPerformed(ActionEvent e) {                if(! isActing()){                                        getSVGEditor().getFrameManager().getCurrentFrame().getScrollPane().getSVGCanvas().displayWaitCursor();                    getSVGEditor().cancelActions(true);                    deselectAll(getSVGEditor().getFrameManager().getCurrentFrame(), true, false);                    getSVGEditor().getFrameManager().getCurrentFrame().getScrollPane().getSVGCanvas().returnToLastCursor();                }            }        };                deselectAll.addActionListener(deselectAllListener);        lockListener=new ActionListener(){            public void actionPerformed(ActionEvent e) {                if(! isActing()){                                        getSVGEditor().getFrameManager().getCurrentFrame().getScrollPane().getSVGCanvas().displayWaitCursor();                    getSVGEditor().cancelActions(true);                    lock(getSVGEditor().getFrameManager().getCurrentFrame());                    getSVGEditor().getFrameManager().getCurrentFrame().getScrollPane().getSVGCanvas().returnToLastCursor();                }            }        };                lock.addActionListener(lockListener);        unlockListener=new ActionListener(){            public void actionPerformed(ActionEvent e) {                if(! isActing()){                                        getSVGEditor().getFrameManager().getCurrentFrame().getScrollPane().getSVGCanvas().displayWaitCursor();                    getSVGEditor().cancelActions(true);                    unlock(getSVGEditor().getFrameManager().getCurrentFrame());                    getSVGEditor().getFrameManager().getCurrentFrame().getScrollPane().getSVGCanvas().returnToLastCursor();                }            }        };                unlock.addActionListener(unlockListener);                groupEnterListener=new ActionListener(){            public void actionPerformed(ActionEvent e) {                if(! isActing()){                                        getSVGEditor().getFrameManager().getCurrentFrame().getScrollPane().getSVGCanvas().displayWaitCursor();                    getSVGEditor().cancelActions(true);                    enterGroup(getSVGEditor().getFrameManager().getCurrentFrame());                    getSVGEditor().getFrameManager().getCurrentFrame().getScrollPane().getSVGCanvas().returnToLastCursor();                }            }        };                groupEnter.addActionListener(groupEnterListener);                groupExitListener=new ActionListener(){            public void actionPerformed(ActionEvent e) {                if(! isActing()){                                        getSVGEditor().getFrameManager().getCurrentFrame().getScrollPane().getSVGCanvas().displayWaitCursor();                    getSVGEditor().cancelActions(true);                    exitGroup(getSVGEditor().getFrameManager().getCurrentFrame());                    getSVGEditor().getFrameManager().getCurrentFrame().getScrollPane().getSVGCanvas().returnToLastCursor();                }            }        };                groupExit.addActionListener(groupExitListener);    }    /**     * @return a map associating a menu item id to its menu item object     */    public Hashtable getMenuItems(){        Hashtable menuItems=new Hashtable();        menuItems.put(idselectall,selectAll);        menuItems.put(iddeselectall,deselectAll);        menuItems.put(idlock,lock);        menuItems.put(idunlock, unlock);        menuItems.put(idgroupmenu, groupMenu);        return menuItems;    }    /**     * @return a map associating a tool item id to its tool item object     */    public Hashtable getToolItems(){        Hashtable toolItems=new Hashtable();        toolItems.put(idregularmode, regularModeTool);        return toolItems;    }    	/**	 * Returns the collection of the popup items	 * @return the collection of the popup items	 */	public Collection getPopupItems(){				LinkedList popupItems=new LinkedList();				SVGPopupSubMenu subMenu=new SVGPopupSubMenu(getSVGEditor(), idgroupmenu, labelgroup, "");				popupItems.add(subMenu);				//creating the group enter popup item		SVGPopupItem groupEnterItem=new SVGPopupItem(getSVGEditor(), idgroupenter, labelgroupenter, "GroupEnter"){					public JMenuItem getPopupItem(LinkedList nodes) {								menuItem.setEnabled(false);				menuItem.setAccelerator(KeyStroke.getKeyStroke("shift ctrl E"));								if(nodes!=null && nodes.size()==1){					Node current=(Node)nodes.iterator().next();                                        if(current!=null && current.getNodeName().equals("g")){                                            	menuItem.setEnabled(true);                    }										//adds the action listeners					if(menuItem.isEnabled()){												menuItem.addActionListener(groupEnterListener);					}				}								return super.getPopupItem(nodes);			}		};				//creating the group exit popup item		SVGPopupItem groupExitItem=new SVGPopupItem(getSVGEditor(), idgroupexit, labelgroupexit, "GroupExit"){					public JMenuItem getPopupItem(LinkedList nodes){								menuItem.setEnabled(false);				menuItem.setAccelerator(KeyStroke.getKeyStroke("shift ctrl X"));					                SVGFrame currentFrame=getSVGEditor().getFrameManager().getCurrentFrame();                                //getting the current parent node for the current frame                Element parent=getCurrentParentElement(currentFrame);                                //handling the enablement of the groupExit menuItem                if(parent!=null && parent.getNodeName().equals("g")){                                    	menuItem.setEnabled(true);                }								//adds the action listeners				if(menuItem.isEnabled()){										menuItem.addActionListener(groupExitListener);				}				return super.getPopupItem(nodes);			}		};				//adding the popup items to the sub menu		subMenu.addPopupItem(groupEnterItem);		subMenu.addPopupItem(groupExitItem);				//creating the select all popup item		/*SVGPopupItem selectAllItem=new SVGPopupItem(getSVGEditor(), idselectall, labelselectall, "SelectAll"){					public JMenuItem getPopupItem(LinkedList nodes){				if(getSVGEditor().getFrameManager().getFrameNumber()>0){						                menuItem.setEnabled(true);					//adds the action listeners					menuItem.addActionListener(selectAllListener);									}else{										menuItem.setEnabled(false);				}								return super.getPopupItem(nodes);			}		};				popupItems.add(selectAllItem);				//creating the deselect all popup item		SVGPopupItem deselectAllItem=new SVGPopupItem(getSVGEditor(), iddeselectall, labeldeselectall, "DeselectAll"){					public JMenuItem getPopupItem(LinkedList nodes){				if(nodes!=null && nodes.size()>0){						                menuItem.setEnabled(true);					//adds the action listeners					menuItem.addActionListener(deselectAllListener);									}else{										menuItem.setEnabled(false);				}								return super.getPopupItem(nodes);			}		};				popupItems.add(deselectAllItem);				//creating the lock popup item		SVGPopupItem lockItem=new SVGPopupItem(getSVGEditor(), idlock, labellock, "Lock"){				public JMenuItem getPopupItem(LinkedList nodes){                SVGFrame currentFrame=getSVGEditor().getFrameManager().getCurrentFrame();                                //gets the currently selected nodes list                Map selectedNodes=getSelectionMap(currentFrame);				if(selectedNodes!=null && selectedNodes.size()>0){					                    menuItem.setEnabled(true);                    //if the node is already locked                    if(selectedNodes.size()==1){                        Node current=(Node)selectedNodes.keySet().iterator().next();                                                if(current!=null){                        	                            String type=(String)selectedNodes.get(current);                                                        if(type!=null && type.equals("lock")){                                                                menuItem.setEnabled(false);                            }                        }                    }					//adds the action listeners					if(menuItem.isEnabled()){												menuItem.addActionListener(lockListener);					}									}else{										menuItem.setEnabled(false);				}								return super.getPopupItem(nodes);			}		};				popupItems.add(lockItem);				//creating the unlock popup item		SVGPopupItem unlockItem=new SVGPopupItem(getSVGEditor(), idunlock, labelunlock, "Unlock"){				public JMenuItem getPopupItem(LinkedList nodes){				                SVGFrame currentFrame=getSVGEditor().getFrameManager().getCurrentFrame();				                //gets the currently selected nodes list                Map selectedNodes=new HashMap(getSelectionMap(currentFrame));								if(selectedNodes!=null && selectedNodes.size()>0){					                    menuItem.setEnabled(false);	                Node current=null;	                String type="";                    for(Iterator it=selectedNodes.keySet().iterator(); it.hasNext();){                        try{current=(Node)it.next();}catch (Exception ex){current=null;}                        if(current!=null){                            type=(String)selectedNodes.get(current);                            if(type!=null && type.equals("lock")){                                menuItem.setEnabled(true);                                break;                            }                        }                    }					//adds the action listeners					if(menuItem.isEnabled()){												menuItem.addActionListener(unlockListener);					}									}else{										menuItem.setEnabled(false);				}								return super.getPopupItem(nodes);			}		};				popupItems.add(unlockItem);*/				return popupItems;	}    /**     * @return the editor     */    public SVGEditor getSVGEditor(){        return editor;    }    /**     * adds a listener listening to a selection change     * @param listener a listener listening to a selection change     */    public void addSelectionListener(ActionListener listener){            	if(! selectionListeners.contains(listener)){    		            selectionListeners.add(listener);    	}    }    /**     * removes a listener listening to a selection change     * @param listener a listener listening to a selection change     */    public void removeSelectionListener(ActionListener listener){                selectionListeners.remove(listener);    }    /**     * notifies the listeners that the selection has changed     * @param forceToRefresh whether the selection should be refreshed immediatly or not     */    public synchronized void selectionChanged(boolean forceToRefresh){		//gets the currently selected nodes list         LinkedList list=getCurrentSelection(getSVGEditor().getFrameManager().getCurrentFrame());				if(! lastSelectedNodes.equals(list) || forceToRefresh){

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -