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

📄 abstracttool.java

📁 java绘图方面的源码 java绘图方面的源码
💻 JAVA
字号:
package com.sunking.tp.tool;import com.sunking.tp.framework.*;import java.awt.event.MouseEvent;import javax.swing.*;import java.beans.*;/** * <p>Title: </p> * <p>Description: 抽象工具</p> * <p>Copyright: Copyright (c) 2003</p> * <p>Company: </p> * @author <a href="mailto:sunkingxie@hotmail.com">SunKing</a> * @version 1.0 */public class AbstractTool implements Tool {	/**	*所属绘图桌面	*/    protected Desktop desk;	/**	*是否激活	*/    protected Boolean isEnabled = Boolean.TRUE;	/**	*是否选择	*/    protected Boolean isSelected = Boolean.FALSE;	/**	*图片	*/    protected Icon icon;	/**	*提示信息	*/    protected String tooltip;	/**	*显示文本	*/    protected String label;    public AbstractTool(Desktop desk) {        this.desk = desk;    }	/**	*取得图标	*/    public Icon getIcon(){        return this.icon;    }	/**	*设置图标	*/    public void setIcon(Icon icon){        Icon old = this.icon;        this.icon = icon;        firePropertyChange(ICON_PROPERTY,old,icon);    }	/**	*取得提示信息	*/    public String getToolTip(){        return tooltip;    }	/**	*设置提示信息	*/    public void setToolTip(String tooltip){        String old = this.tooltip;        this.tooltip = tooltip;        firePropertyChange(TOOLTIP_PROPERTY,old,tooltip);    }	/**	*取得显示文本	*/    public String getLabel(){        return label;    }	/**	*设置显示文本	*/    public void setLabel(String label){        String old = this.label;        this.label = label;        firePropertyChange(LABEL_PROPERTY,old,label);    }	/**	*启动工具	*/    public void enabledTool() {        setSelected(true);        desk.addMouseInputListener(this);    }	/**	*弃用工具	*/    public void disabledTool() {        setSelected(false);        desk.removeMouseInputListener(this);        desk.setCursor(java.awt.Cursor.getDefaultCursor());    }	/**	*设置工具激活状态	*/    public void setEnabled(boolean enabled){        Boolean old = isEnabled;        isEnabled = enabled ? Boolean.TRUE : Boolean.FALSE;        firePropertyChange(ENABLED_PROPERTY,old,isEnabled);    }	/**	*设置工具选取状态	*/    public void setSelected(boolean selected){        Boolean old = isSelected;        isSelected = selected ? Boolean.TRUE : Boolean.FALSE;        firePropertyChange(SELECT_PROPERTY,old,isSelected);    }	/**	*是否被选取	*/    public boolean isSelected(){        return isSelected.booleanValue();    }	/**	*是否激活	*/    public boolean isEnabled(){        return isEnabled.booleanValue();    }    public void mouseClicked(MouseEvent e) {    }    public void mousePressed(MouseEvent e) {    }    public void mouseReleased(MouseEvent e) {    }    public void mouseEntered(MouseEvent e) {    }    public void mouseExited(MouseEvent e) {    }    public void mouseDragged(MouseEvent e) {    }    public void mouseMoved(MouseEvent e) {    }    private PropertyChangeSupport changeSupport;	/**	*添加属性监听器	*/    public void addPropertyChangeListener(PropertyChangeListener listener) {        if (listener != null) {            synchronized (this) {                if (changeSupport == null) {                    changeSupport = new PropertyChangeSupport(this);                }                changeSupport.addPropertyChangeListener(listener);            }        }    }	/**	*移除属性监听器	*/    public void removePropertyChangeListener(PropertyChangeListener listener) {        if (listener != null) {            synchronized (this) {                if (changeSupport != null) {                    changeSupport.removePropertyChangeListener(listener);                }            }        }    }	/**	*取得所有属性监听者	*/    public synchronized PropertyChangeListener[] getPropertyChangeListeners() {        if (changeSupport == null) {            changeSupport = new PropertyChangeSupport(this);        }        return changeSupport.getPropertyChangeListeners();    }	/**	*激发属性改变事件	*/    protected void firePropertyChange(String propertyName, Object oldValue,                                      Object newValue) {        PropertyChangeSupport changeSupport = this.changeSupport;        if (changeSupport != null) {            changeSupport.firePropertyChange(propertyName, oldValue, newValue);        }    }}

⌨️ 快捷键说明

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