• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

kig

  • sources
  • kde-4.12
  • kdeedu
  • kig
  • modes
  • popup
popup.h
Go to the documentation of this file.
1 
21 #ifndef KIG_MODES_POPUP_H
22 #define KIG_MODES_POPUP_H
23 
24 #include <kmenu.h>
25 
26 #include <vector>
27 
28 class QAction;
29 class KigPart;
30 class KigWidget;
31 class NormalMode;
32 class PopupActionProvider;
33 class ObjectHolder;
34 
46 class NormalModePopupObjects
47  : public KMenu
48 {
49  Q_OBJECT
50 
51 public:
52  NormalModePopupObjects( KigPart& part, KigWidget& view,
53  NormalMode& mode,
54  const std::vector<ObjectHolder*>& objs, const QPoint& p );
55  ~NormalModePopupObjects();
56 
57  // the different "menu's", the toplevel is considered as just
58  // another menu..
59  enum { TransformMenu = 0, TestMenu, ConstructMenu, StartMenu, ShowMenu,
60  SetColorMenu, SetSizeMenu, SetStyleMenu, ToplevelMenu,
61  SetCoordinateSystemMenu, NumberOfMenus };
62 
63  // used by the PopupActionProvider's to add actions to us..
64  QAction* addInternalAction( int menu, const QString& name, int id );
65  QAction* addInternalAction( int menu, const QIcon& icon, const QString& name, int id );
66  QAction* addInternalAction( int menu, const QIcon& pix, int id );
67  QAction* addInternalAction( int menu, QAction* act );
68 
69  std::vector<ObjectHolder*> objects() const { return mobjs; }
70  KigPart& part() { return mpart; }
71  KigWidget& widget() { return mview; }
72  QPoint plc() { return mplc; }
73 
74  bool onlyLabels() const { return monlylabels; }
75 
76 protected:
77  void activateAction( int menu, int action );
78 
79 private slots:
80  void toplevelMenuSlot( QAction* );
81 
82 protected:
83  QPoint mplc;
84  KigPart& mpart;
85  KigWidget& mview;
86  std::vector<ObjectHolder*> mobjs;
87  NormalMode& mmode;
88 
89  std::vector<PopupActionProvider*> mproviders;
90 
91  QMenu* mmenus[NumberOfMenus];
92  QMenu* mmenuslast[NumberOfMenus];
93  /* mp: usually mmenus[i] = mmenuslast[i], however, if there are too many entries
94  * in the submenu, new subsubmenus are added and mmenuslast[i] points to
95  * the last of these (where new actions can be inserted)
96  * presently this happens only in the "start" menu for a point
97  */
98 
99 private:
100  bool monlylabels;
101 };
102 
103 #endif
NormalModePopupObjects::widget
KigWidget & widget()
Definition: popup.h:71
NormalModePopupObjects::part
KigPart & part()
Definition: popup.h:70
NormalModePopupObjects::mview
KigWidget & mview
Definition: popup.h:85
NormalModePopupObjects::addInternalAction
QAction * addInternalAction(int menu, const QString &name, int id)
Definition: popup.cc:276
NormalModePopupObjects::SetSizeMenu
Definition: popup.h:60
KMenu
NormalModePopupObjects::ToplevelMenu
Definition: popup.h:60
NormalModePopupObjects::StartMenu
Definition: popup.h:59
NormalModePopupObjects::mplc
QPoint mplc
Definition: popup.h:83
NormalModePopupObjects::TransformMenu
Definition: popup.h:59
NormalModePopupObjects::SetStyleMenu
Definition: popup.h:60
NormalModePopupObjects::activateAction
void activateAction(int menu, int action)
Definition: popup.cc:226
NormalModePopupObjects::ShowMenu
Definition: popup.h:59
NormalModePopupObjects::mpart
KigPart & mpart
Definition: popup.h:84
NormalModePopupObjects
This is the popup menu that appears when you click on selected objects in NormalMode.
Definition: popup.h:46
ObjectHolder
An ObjectHolder represents an object as it is known to the document.
Definition: object_holder.h:40
NormalModePopupObjects::NumberOfMenus
Definition: popup.h:61
NormalModePopupObjects::plc
QPoint plc()
Definition: popup.h:72
NormalModePopupObjects::mmenus
QMenu * mmenus[NumberOfMenus]
Definition: popup.h:91
KigWidget
This class is the real widget showing the document.
Definition: kig_view.h:50
PopupActionProvider
This class is an abstract class.
Definition: popupactionprovider.h:35
NormalModePopupObjects::TestMenu
Definition: popup.h:59
NormalModePopupObjects::objects
std::vector< ObjectHolder * > objects() const
Definition: popup.h:69
NormalModePopupObjects::mmenuslast
QMenu * mmenuslast[NumberOfMenus]
Definition: popup.h:92
NormalModePopupObjects::onlyLabels
bool onlyLabels() const
Definition: popup.h:74
NormalModePopupObjects::mproviders
std::vector< PopupActionProvider * > mproviders
Definition: popup.h:89
NormalModePopupObjects::~NormalModePopupObjects
~NormalModePopupObjects()
Definition: popup.cc:237
NormalModePopupObjects::mmode
NormalMode & mmode
Definition: popup.h:87
NormalModePopupObjects::ConstructMenu
Definition: popup.h:59
NormalModePopupObjects::mobjs
std::vector< ObjectHolder * > mobjs
Definition: popup.h:86
NormalModePopupObjects::SetCoordinateSystemMenu
Definition: popup.h:61
KigPart
This is a "Part".
Definition: kig_part.h:68
NormalModePopupObjects::NormalModePopupObjects
NormalModePopupObjects(KigPart &part, KigWidget &view, NormalMode &mode, const std::vector< ObjectHolder * > &objs, const QPoint &p)
Definition: popup.cc:85
NormalModePopupObjects::SetColorMenu
Definition: popup.h:60
NormalMode
Definition: normal.h:26
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:35:39 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kig

Skip menu "kig"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal