OpendTect  6.6
uibasemap.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: Raman K Singh
8  Date: Jul 2010
9 ________________________________________________________________________
10 
11 -*/
12 
13 
14 #include "uitoolsmod.h"
15 #include "basemap.h"
16 #include "uigroup.h"
17 
18 
19 class uiGraphicsItem;
20 class uiGraphicsScene;
21 class uiGraphicsView;
22 class uiWorld2Ui;
23 
25 {
26 public:
28  virtual ~uiBaseMapObject();
29 
31 
32  bool hasChanged() const { return changed_; }
33  void resetChangeFlag() { changed_ = false; }
34  void setTransform(const uiWorld2Ui*);
35  const char* name() const;
36  virtual void show(bool yn);
37  virtual bool isShown() const;
38 
39  uiGraphicsItem& graphItem() { return graphitem_; }
40  const uiGraphicsItem& graphItem() const { return graphitem_; }
41  uiGraphicsItem& labelItem() { return labelitem_; }
42  const uiGraphicsItem& labelItem() const { return labelitem_; }
43  void showLabels(bool yn);
44  bool labelsShown() const { return showlabels_; }
45 
46  virtual void update();
47  virtual void updateStyle();
48 
49  virtual void getMousePosInfo(Coord3&,TrcKey&,float& val,
50  BufferString& info) const;
51 protected:
52  friend class uiBaseMap;
53 
59  void addToGraphItem(uiGraphicsItem&);
60 
61  uiGraphicsItem& graphitem_;
62  uiGraphicsItem& labelitem_;
65 
66  bool changed_;
68 
69 private:
70  void addLabel(uiGraphicsItem&);
71 };
72 
73 
74 mExpClass(uiTools) uiBaseMap : public BaseMap, public uiGroup
75 {
76 public:
78  virtual ~uiBaseMap();
79 
80  void setView(const uiWorldRect&);
81 
82  virtual void addObject(BaseMapObject*);
85 
87 
88  bool hasChanged();
89  inline void setChangeFlag() { changed_ = true; }
93  void show(const BaseMapObject&,bool yn);
94 
95  void showLabels(bool yn);
96  bool labelsShown() const;
97 
99 
101  const char* nameOfItemAt(const Geom::Point2D<float>&) const;
103  TrcKey&,float& val,
104  BufferString& info) const;
105 
106  uiGraphicsItem& worldItem() { return worlditem_;}
107  void centerWorldItem(bool);
108  inline uiGraphicsView& view() { return view_; }
110  inline const uiWorld2Ui& getWorld2Ui() const { return w2ui_; }
111 
114 
115 protected:
116 
117  int indexOf(const BaseMapObject*) const;
118 
120  uiGraphicsItem& worlditem_;
122  bool changed_;
124 
126 
128  virtual void reDraw(bool deep=true);
130 
131 private:
133 };
134 
uiBaseMap::addObject
void addObject(uiBaseMapObject *)
uiBaseMap
Definition: uibasemap.h:75
Coord3
A cartesian coordinate in 3D space.
Definition: coord.h:72
uiBaseMap::getUiObject
uiBaseMapObject * getUiObject(int id)
uiBaseMapObject::graphItem
const uiGraphicsItem & graphItem() const
Definition: uibasemap.h:40
uiBaseMapObject::transform_
const uiWorld2Ui * transform_
Definition: uibasemap.h:64
uiBaseMapObject::labelsShown
bool labelsShown() const
Definition: uibasemap.h:44
uiBaseMapObject::setTransform
void setTransform(const uiWorld2Ui *)
uiBaseMapObject::leftClickCB
void leftClickCB(CallBacker *)
uiBaseMapObject::changedStyleCB
void changedStyleCB(CallBacker *)
ObjectSet< uiBaseMapObject >
uiBaseMapObject::addToGraphItem
void addToGraphItem(uiGraphicsItem &)
uiBaseMap::centerWorldItem
void centerWorldItem(bool)
uiBaseMap::indexOf
int indexOf(const BaseMapObject *) const
uiBaseMapObject::changed_
bool changed_
Definition: uibasemap.h:66
uiBaseMap::resetChangeFlag
void resetChangeFlag()
BaseMapObject
Definition: basemap.h:30
uiBaseMapObject::graphItem
uiGraphicsItem & graphItem()
Definition: uibasemap.h:39
uiBaseMap::uiObjectAt
const uiBaseMapObject * uiObjectAt(const Geom::Point2D< float > &) const
uiBaseMap::view
uiGraphicsView & view()
Definition: uibasemap.h:108
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
uiBaseMapObject::changedCB
void changedCB(CallBacker *)
uiBaseMapObject::labelitem_
uiGraphicsItem & labelitem_
Definition: uibasemap.h:62
uiBaseMapObject::resetChangeFlag
void resetChangeFlag()
Definition: uibasemap.h:33
uiGraphicsView
Definition: uigraphicsview.h:51
uiBaseMap::showLabels
void showLabels(bool yn)
uiBaseMap::nameOfItemAt
const char * nameOfItemAt(const Geom::Point2D< float > &) const
uiBaseMapObject::show
virtual void show(bool yn)
BaseMap
Definition: basemap.h:119
CallBacker
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:185
uiBaseMapObject::name
const char * name() const
uiBaseMapObject::labelItem
const uiGraphicsItem & labelItem() const
Definition: uibasemap.h:42
uiBaseMap::hasChanged
bool hasChanged()
uiBaseMap::view_
uiGraphicsView & view_
Definition: uibasemap.h:119
uiBaseMap::~uiBaseMap
virtual ~uiBaseMap()
uigroup.h
uiBaseMap::uiBaseMap
uiBaseMap(uiParent *)
uiBaseMap::show
void show(const BaseMapObject &, bool yn)
uiBaseMapObject::getObject
BaseMapObject * getObject()
uiBaseMapObject::updateStyle
virtual void updateStyle()
uiBaseMap::getObject
BaseMapObject * getObject(int id)
uiBaseMapObject::labelItem
uiGraphicsItem & labelItem()
Definition: uibasemap.h:41
uiBaseMap::updateTransform
void updateTransform()
uiGroup
Definition: uigroup.h:54
uiBaseMapObject::changedZValueCB
void changedZValueCB(CallBacker *)
Geom::PosRectangle< double >
uiBaseMapObject::hasChanged
bool hasChanged() const
Definition: uibasemap.h:32
uiBaseMap::reDraw
virtual void reDraw(bool deep=true)
uiBaseMapObject::~uiBaseMapObject
virtual ~uiBaseMapObject()
uiBaseMap::getMousePosInfo
void getMousePosInfo(BufferString &name, Coord3 &, TrcKey &, float &val, BufferString &info) const
basemap.h
uiBaseMap::setChangeFlag
void setChangeFlag()
Definition: uibasemap.h:89
uiBaseMap::labelsShown
bool labelsShown() const
uiBaseMap::w2ui_
uiWorld2Ui & w2ui_
Definition: uibasemap.h:132
uiWorld2Ui
Class to provide coordinate conversion between a cartesian coordinate system (or any other transforme...
Definition: uiworld2ui.h:55
uiBaseMap::objects_
ObjectSet< uiBaseMapObject > objects_
Definition: uibasemap.h:121
uiBaseMap::getObjects
ObjectSet< uiBaseMapObject > & getObjects()
Definition: uibasemap.h:86
uiBaseMapObject::getMousePosInfo
virtual void getMousePosInfo(Coord3 &, TrcKey &, float &val, BufferString &info) const
uiBaseMap::scene
uiGraphicsScene & scene()
uiBaseMap::reSizeCB
void reSizeCB(CallBacker *)
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
TrcKey
Represents a unique trace position in one of the surveys that OpendTect is managing.
Definition: trckey.h:28
uiBaseMap::setView
void setView(const uiWorldRect &)
uiBaseMapObject::update
virtual void update()
uiBaseMap::objectAdded
CNotifier< uiBaseMap, int > objectAdded
Definition: uibasemap.h:112
Geom::Point2D< float >
uiBaseMap::objectRemoved
CNotifier< uiBaseMap, int > objectRemoved
Definition: uibasemap.h:113
uiBaseMap::centerworlditem_
bool centerworlditem_
Definition: uibasemap.h:123
uiBaseMap::worldItem
uiGraphicsItem & worldItem()
Definition: uibasemap.h:106
uiBaseMapObject
Definition: uibasemap.h:25
uiBaseMapObject::graphitem_
uiGraphicsItem & graphitem_
Definition: uibasemap.h:61
uiBaseMapObject::uiBaseMapObject
uiBaseMapObject(BaseMapObject *)
uiGraphicsScene
Definition: uigraphicsscene.h:39
uiBaseMap::worlditem_
uiGraphicsItem & worlditem_
Definition: uibasemap.h:120
uiParent
Definition: uiparent.h:26
uiBaseMap::changed_
bool changed_
Definition: uibasemap.h:122
uiBaseMap::getWorld2Ui
const uiWorld2Ui & getWorld2Ui() const
Definition: uibasemap.h:110
uiBaseMapObject::addLabel
void addLabel(uiGraphicsItem &)
uiBaseMapObject::showlabels_
bool showlabels_
Definition: uibasemap.h:63
uiBaseMap::removeObject
void removeObject(const BaseMapObject *)
Owned by caller.
uiBaseMap::wr_
uiWorldRect wr_
Definition: uibasemap.h:125
CNotifier< uiBaseMap, int >
uiBaseMapObject::bmobject_
BaseMapObject * bmobject_
Definition: uibasemap.h:67
uiBaseMapObject::isShown
virtual bool isShown() const
uiBaseMapObject::showLabels
void showLabels(bool yn)
uiBaseMapObject::rightClickCB
void rightClickCB(CallBacker *)
uiBaseMap::addObject
virtual void addObject(BaseMapObject *)

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