toolbarstatearrow.h
00001 /*************************************************************************** 00002 * * 00003 * This program is free software; you can redistribute it and/or modify * 00004 * it under the terms of the GNU General Public License as published by * 00005 * the Free Software Foundation; either version 2 of the License, or * 00006 * (at your option) any later version. * 00007 * * 00008 * copyright (C) 2004-2006 * 00009 * Umbrello UML Modeller Authors <uml-devel@uml.sf.net> * 00010 ***************************************************************************/ 00011 00012 #ifndef TOOLBARSTATEARROW_H 00013 #define TOOLBARSTATEARROW_H 00014 00015 00016 #include "toolbarstate.h" 00017 00018 #include "worktoolbar.h" 00019 00020 class QMouseEvent; 00021 class UMLView; 00022 00023 class QCanvasLine; 00024 00034 class ToolBarStateArrow : public ToolBarState { 00035 Q_OBJECT 00036 public: 00037 00043 ToolBarStateArrow(UMLView *umlView); 00044 00048 virtual ~ToolBarStateArrow(); 00049 00053 virtual void init(); 00054 00055 protected: 00056 00061 virtual void mousePressAssociation(); 00062 00067 virtual void mousePressWidget(); 00068 00074 virtual void mousePressEmpty(); 00075 00080 virtual void mouseReleaseAssociation(); 00081 00086 virtual void mouseReleaseWidget(); 00087 00093 virtual void mouseReleaseEmpty(); 00094 00099 virtual void mouseDoubleClickAssociation(); 00100 00105 virtual void mouseDoubleClickWidget(); 00106 00112 virtual void mouseMoveAssociation(); 00113 00119 virtual void mouseMoveWidget(); 00120 00129 virtual void mouseMoveEmpty(); 00130 00139 virtual void setCurrentWidget(UMLWidget* currentWidget); 00140 00144 virtual void changeTool(); 00145 00149 QPtrList<QCanvasLine> m_selectionRect; 00150 00154 QPoint m_startPosition; 00155 00156 }; 00157 00158 #endif //TOOLBARSTATEARROW_H
