OpendTect  6.6
uimdiarea.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: Nanne Hemstra
8  Date: August 2008
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "uibasemod.h"
15 #include "uigroup.h"
16 #include "uiobj.h"
17 
18 class BufferStringSet;
19 class uiMdiArea;
20 class uiMdiAreaBody;
21 
22 mFDQtclass(QMdiArea)
23 mFDQtclass(QMdiSubWindow)
24 
25 
26 mExpClass(uiBase) uiMdiAreaWindow : public uiGroup
27 {
28 public:
29  uiMdiAreaWindow(uiMdiArea&,
31 
32  ~uiMdiAreaWindow() {}
33 
34  void setTitle(const uiString&);
35  const uiString& getTitle() const { return title_; }
36 
37  void setIcon(const char* img[]);
38  void setIcon(const char* icnnm);
39 
40  void show();
41  void close();
42  void showMinimized();
43  void showMaximized();
44  bool isMinimized() const;
45  bool isMaximized() const;
46 
47  uiMdiArea& getMdiArea() { return mdiarea_; }
48 
49  NotifierAccess& closed();
51  NotifierAccess& windowShown();
52  NotifierAccess& windowHidden();
53 
54 
55  mQtclass(QMdiSubWindow*) qWidget();
56  const mQtclass(QMdiSubWindow*) qWidget() const;
57 
58 
59 private:
60  uiString title_;
61  uiMdiArea& mdiarea_;
62  mQtclass(QMdiSubWindow*) qmdisubwindow_;
63 
64 };
65 
66 
67 mExpClass(uiBase) uiMdiArea : public uiObject
68 {
69 friend class uiMdiAreaBody;
70 friend class i_MdiAreaMessenger;
71 public:
72  uiMdiArea(uiParent*,const char* nm="uiMdiArea");
74 
76  void tileVertical();
77  void tile();
78  void cascade();
79  void closeAll();
80 
81  void addWindow(uiMdiAreaWindow*);
82  uiMdiAreaWindow* getWindow(const char*);
83  const uiMdiAreaWindow* getWindow(const char*) const;
84 
85  void setActiveWin(const char*);
86  void setActiveWin(uiMdiAreaWindow*);
87  const char* getActiveWin() const;
89 
91 
92 protected:
93 
94  uiMdiAreaBody& mkbody(uiParent*,const char*);
96 
98 
101 
102 public:
103  // Temporarily prevent some Qt feedback loop to change
104  // active window (solves problems when disabling data
105  // tree or when Scenes-menu overlaps workspace)
106  bool paralyse(bool yn);
107 };
108 
uiMdiArea::addWindow
void addWindow(uiMdiAreaWindow *)
uiMdiArea::getActiveWin
const char * getActiveWin() const
uiStringSet
Definition: uistringset.h:23
ObjectSet< uiMdiAreaWindow >
BufferStringSet
Set of BufferString objects.
Definition: bufstringset.h:26
uiMdiArea::getWindowNames
void getWindowNames(uiStringSet &) const
uiMdiArea::grps_
ObjectSet< uiMdiAreaWindow > grps_
Definition: uimdiarea.h:97
mFDQtclass
#define mFDQtclass(cls)
Definition: commondefs.h:233
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
CallBacker
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:185
uiMdiArea::setActiveWin
void setActiveWin(const char *)
uiMdiArea::tile
void tile()
uigroup.h
uiMdiArea::closeAll
void closeAll()
uiMdiArea::getWindow
const uiMdiAreaWindow * getWindow(const char *) const
uiMdiArea
Definition: uimdiarea.h:68
title
uiParent const uiString & title
pops a selector box to select a new font
Definition: uifont.h:26
uiGroup
Definition: uigroup.h:54
NotifierAccess
Interface class for Notifier. See comments there.
Definition: notify.h:22
uiMdiArea::tileVertical
void tileVertical()
Notifier
Class to help setup a callback handling.
Definition: notify.h:126
uiMdiArea::getWindow
uiMdiAreaWindow * getWindow(const char *)
i_MdiAreaMessenger
Helper class for uiMdiArea to relay Qt's messages.
Definition: i_qmdiarea.h:29
i_MdiAreaMessenger::uiMdiAreaBody
friend class uiMdiAreaBody
Definition: i_qmdiarea.h:31
uiMdiArea::body_
uiMdiAreaBody * body_
Definition: uimdiarea.h:95
uiMdiArea::uiMdiArea
uiMdiArea(uiParent *, const char *nm="uiMdiArea")
uiMdiArea::grpClosed
void grpClosed(CallBacker *)
mQtclass
#define mQtclass(cls)
Definition: commondefs.h:234
uiObject
The base class for most UI elements.
Definition: uiobj.h:38
uiMdiArea::tileHorizontal
void tileHorizontal()
uiString
String that is able to hold international (UTF-8) strings for the user interface.
Definition: uistring.h:121
uiString::emptyString
static const uiString & emptyString()
Definition: uistring.h:300
uiMdiArea::mkbody
uiMdiAreaBody & mkbody(uiParent *, const char *)
uiMdiArea::paralyse
bool paralyse(bool yn)
uiParent
Definition: uiparent.h:26
uiMdiArea::cascade
void cascade()
uiMdiArea::grpChanged
void grpChanged(CallBacker *)
uiMdiArea::windowActivated
Notifier< uiMdiArea > windowActivated
Definition: uimdiarea.h:90
uiMdiArea::~uiMdiArea
~uiMdiArea()
uiobj.h
uiMdiArea::setActiveWin
void setActiveWin(uiMdiAreaWindow *)

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