OpendTect  6.3
uitoolbar.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 
6  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
7  Author: A.H. Lammertink
8  Date: 30/05/2001
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "uibasemod.h"
14 
15 #include "uiaction.h"
16 #include "uiparent.h"
17 #include "uitoolbutton.h"
18 
19 mFDQtclass(QAction)
20 mFDQtclass(QToolBar)
21 
22 class MenuItem;
23 class uiButton;
24 class uiIcon;
25 class uiObject;
26 class uiMainWinBody;
27 class i_ToolBarMessenger;
28 
29 
31 {
32 friend class i_ToolBarMessenger;
33 public:
35  /*
36  Toolbars can be created on docks,
37  */
39  {
40  Left=0x1,
41  Right=0x2,
42  Top=0x4,
43  Bottom=0x8,
44  None=0,
45  All=0xf
46  };
47 
48  uiToolBar(uiParent*,const uiString& nm,
49  ToolBarArea d=Top,bool newline=false);
50  ~uiToolBar();
51 
52  uiParent* parent() { return parent_; }
53 
54  int addButton(const uiToolButtonSetup&);
55  int addButton(const char* fnm,const uiString& tooltip,
56  const CallBack& =CallBack(),
57  bool toggle=false,int id=-1);
58  int addButton(const MenuItem&);
59  void addObject(uiObject*);
60 
61  void setLabel(const uiString&);
62 
63  void setToggle(int id, bool);
64  void setIcon(int id,const char*);
65  void setIcon(int id,const uiIcon&);
66  void setToolTip(int id,const uiString&);
67  void setShortcut(int id,const char*);
68  void turnOn(int id,bool yn);
70  bool isOn(int id) const;
72  void setSensitive(int id,bool yn);
74  void setSensitive(bool yn);
76  bool isSensitive() const;
77  OD::Orientation getOrientation() const;
78 
79  void setButtonMenu(int,uiMenu*,
82 
83  virtual void display(bool yn=true,bool s=false,bool m=false);
87  void setToolBarMenuAction(uiAction*);
91  void translateText();
92 
93  bool isHidden() const;
94  bool isVisible() const;
95 
96  void addSeparator() { insertSeparator(); }
97 
98  void clear();
99 
101  ToolBarArea prefArea() const { return tbarea_; }
102  int getNrWidgets() const { return 1; }
103  mQtclass(QWidget)* getWidget(int);
104  mQtclass(QToolBar)* getQToolbar() { return qtoolbar_; }
105 
106  static ObjectSet<uiToolBar>& toolBars();
107 
110 
111 protected:
112 
113  void doInsertMenu(mQtclass(QMenu)*,
114  mQtclass(QAction)* before);
115  void doInsertAction(mQtclass(QAction)*,
116  mQtclass(QAction)* before);
117  void doInsertSeparator(mQtclass(QAction)* before);
118  void doRemoveAction(mQtclass(QAction)*);
119  void doClear();
120  void handleFinalise(bool pre);
121 
123 
124  mQtclass(QToolBar*) qtoolbar_;
125  i_ToolBarMessenger* msgr_;
126 
127  ToolBarArea tbarea_;
128  ObjectSet<uiObject> addedobjects_;
129 
130  uiString label_;
131  int getButtonID(mQtclass(QAction*));
132 
133  uiParent* parent_;
134  friend class uiMainWinBody;
135 
136 public:
137  void getEntityList(ObjectSet<const CallBacker>&) const;
139 };
Definition: uitoolbar.h:30
#define mExpClass(module)
Definition: commondefs.h:157
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
void turnOn(int flag)
Overrides the envirnonment variable.
PopupMode
Definition: uitoolbutton.h:26
#define mQtclass(cls)
Definition: commondefs.h:232
ToolBarArea
ToolBar Dock Identifier.
Definition: uitoolbar.h:38
To the right of the central uiGroup.
Definition: uitoolbar.h:41
Helper class for uiToolBar to relay Qt&#39;s messages.
Definition: i_qtoolbar.h:25
uiParent * parent()
Definition: uitoolbar.h:52
ToolBarArea prefArea() const
Definition: uitoolbar.h:101
bool isHidden(const char *)
Definition: uitoolbutton.h:26
void clear(std::ios &)
The base class for most UI elements.
Definition: uiobj.h:35
Definition: uistring.h:88
Definition: uiparent.h:24
Notifier< uiToolBar > orientationChanged
Definition: uitoolbar.h:109
void addSeparator()
Definition: uitoolbar.h:96
FixedString None()
Definition: keystrs.h:90
Definition: uitoolbutton.h:74
Definition: menuhandler.h:74
bool isOn(int flag=0xffff)
mQtclass(QToolBar)*getQToolbar()
Definition: uitoolbar.h:104
mFDQtclass(QAction) mFDQtclass(QToolBar) class MenuItem
FixedString All()
Definition: keystrs.h:34
Definition: uimenu.h:64
uiAction * toolbarmenuaction_
Definition: uitoolbar.h:122
int getNrWidgets() const
Definition: uitoolbar.h:102
CNotifier< uiToolBar, int > buttonClicked
Definition: uitoolbar.h:108
CallBacks object-oriented (object + method).
Definition: callback.h:62
friend class uiToolBar
Definition: i_qtoolbar.h:28
static ToolBarArea pluginArea()
Definition: uitoolbar.h:100
Definition: uiaction.h:150
Orientation
Fundamental orientation in 2D UIs.
Definition: oduicommon.h:21

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B. V. 2017