📄 svgpropertiesidmodifierwidget.java
字号:
/* * Created on 19 janv. 2005 * ============================================= GNU LESSER GENERAL PUBLIC LICENSE Version 2.1 =============================================GLIPS Graffiti Editor, a SVG EditorCopyright (C) 2004 Jordi SUC, Philippe Gil, SARL ITRISThis library is free software; you can redistribute it and/ormodify it under the terms of the GNU Lesser General PublicLicense as published by the Free Software Foundation; eitherversion 2.1 of the License, or (at your option) any later version.This library is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNULesser General Public License for more details.You should have received a copy of the GNU Lesser General PublicLicense along with this library; if not, write to the Free SoftwareFoundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USAContact : jordi.suc@itris.fr; philippe.gil@itris.fr ============================================= */package fr.itris.glips.svgeditor.properties;import java.awt.*;import java.awt.event.*;import java.util.*;import javax.swing.*;import fr.itris.glips.svgeditor.*;import fr.itris.glips.svgeditor.canvas.*;/** * @author Jordi SUC */public class SVGPropertiesIdModifierWidget extends SVGPropertiesWidget{ /** * the constructor of the class * @param propertyItem a property item */ public SVGPropertiesIdModifierWidget(SVGPropertyItem propertyItem) { super(propertyItem); buildComponent(); } /** * builds the component that will be displayed */ protected void buildComponent(){ final SVGEditor editor=propertyItem.getProperties().getSVGEditor(); final ResourceBundle bundle=SVGEditor.getBundle(); final SVGFrame frame=editor.getFrameManager().getCurrentFrame(); //the text field in which the value will be entered final JTextField textField=new JTextField(propertyItem.getGeneralPropertyValue(), 10); textField.setFont(theFont); textField.moveCaretPosition(0); final JButton okButton=new JButton(); okButton.setFont(smallFont); Insets buttonInsets=new Insets(1, 1, 1, 1); okButton.setMargin(buttonInsets); String errorTitle="", errorIdMessage=""; if(bundle!=null){ try{ okButton.setText(bundle.getString("labelok")); errorTitle=bundle.getString("property_errortitle"); errorIdMessage=bundle.getString("property_erroridmessage"); }catch(Exception ex){} } final String ferrorTitle=errorTitle; final String ferrorIdMessage=errorIdMessage; final ActionListener listener=new ActionListener(){ public void actionPerformed(ActionEvent arg0) { String value=textField.getText(); if(frame.checkId(value)){ //modifies the widgetValue of the property item propertyItem.changePropertyValue(value); }else if( propertyItem.getGeneralPropertyValue()!=null && ! propertyItem.getGeneralPropertyValue().equals(value)){ JOptionPane.showMessageDialog(editor.getParent(), ferrorIdMessage, ferrorTitle, JOptionPane.WARNING_MESSAGE); } } }; //adds a listener to the button okButton.addActionListener(listener); //creates the component that will be returned JPanel validatedPanel=new JPanel(); validatedPanel.setLayout(new BorderLayout()); validatedPanel.add(textField, BorderLayout.CENTER); validatedPanel.add(okButton, BorderLayout.EAST); component=validatedPanel; //creates the disposer disposer=new Runnable(){ public void run() { okButton.removeActionListener(listener); } }; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -