kivio

kivio_birdeye_panel.h

00001 /*
00002  * Kivio - Visual Modelling and Flowcharting
00003  * Copyright (C) 2000-2001 theKompany.com & Dave Marotti
00004  * Copyright (C) 2005 Peter Simonsson <psn@linux.se>
00005  *
00006  * This program is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU General Public License
00008  * as published by the Free Software Foundation; either version 2
00009  * of the License, or (at your option) any later version.
00010  *
00011  * This program is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014  * GNU General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU General Public License
00017  * along with this program; if not, write to the Free Software
00018  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00019  */
00020 #ifndef KIVIOBIRDEYEPANEL_H
00021 #define KIVIOBIRDEYEPANEL_H
00022 #include "kivio_birdeye_panel_base.h"
00023 
00024 class QPixmap;
00025 
00026 class KivioView;
00027 class KivioCanvas;
00028 class KivioDoc;
00029 class KivioPage;
00030 class KAction;
00031 class KoZoomHandler;
00032 
00033 class KivioBirdEyePanel : public KivioBirdEyePanelBase
00034 { Q_OBJECT
00035 public:
00036   KivioBirdEyePanel(KivioView* view, QWidget* parent=0, const char* name=0);
00037   ~KivioBirdEyePanel();
00038 
00039   bool eventFilter(QObject*, QEvent*);
00040 
00041 public slots:
00042   void zoomMinus();
00043   void zoomPlus();
00044 
00045 protected slots:
00046   void updateView();
00047   void canvasZoomChanged(int zoom);
00048   void slotUpdateView(KivioPage*);
00049 
00050 protected:
00051   void handleMouseMove(QPoint);
00052   void handleMouseMoveAction(QPoint);
00053   void handleMousePress(QPoint);
00054 
00055 private:
00056   KivioView* m_pView;
00057   KivioCanvas* m_pCanvas;
00058   KivioDoc* m_pDoc;
00059 
00060   KAction* zoomIn;
00061   KAction* zoomOut;
00062   QPixmap* m_buffer;
00063 
00064   QRect varea;
00065   AlignmentFlags apos;
00066   bool handlePress;
00067   QPoint lastPos;
00068   KoZoomHandler* m_zoomHandler;
00069 };
00070 
00071 #endif
KDE Home | KDE Accessibility Home | Description of Access Keys