OpendTect  6.3
uiflatviewcontrol.h
Go to the documentation of this file.
1 #pragma once
2 /*+
3 ________________________________________________________________________
4 
5  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
6  Author: Bert
7  Date: Feb 2007
8 ________________________________________________________________________
9 
10 -*/
11 
12 #include "uiflatviewmod.h"
13 #include "uigroup.h"
14 #include "iopar.h"
15 #include "flatviewzoommgr.h"
16 
17 class uiFlatViewer;
18 class uiFlatViewPropDlg;
19 class uiTabStackDlg;
20 class MouseEventHandler;
21 namespace FlatView { class Viewer; }
22 
27 mExpClass(uiFlatView) uiFlatViewControl : public uiGroup
28 {
29 public:
30 
32 
33  void addViewer(uiFlatViewer&);
35  void removeViewer(uiFlatViewer&);
36 
37  TypeSet<uiWorldRect>getBoundingBoxes() const;
39  virtual void setNewView(Geom::Point2D<double> mousepos,
40  Geom::Size2D<double> newsize,
41  uiFlatViewer& vwr);
51  virtual void flip(bool hor);
53  virtual void doPropertiesDialog(int vieweridx=0);
54 
55  int getViewerIdx(const MouseEventHandler*,bool ofscene);
59 
60  Notifier<uiFlatViewControl> infoChanged; // CallBacker: CBCapsule<IOPar>
64 
65  static uiWorldRect getZoomOrPanRect(Geom::Point2D<double> mousepos,
67  const uiWorldRect& view,
68  const uiWorldRect& bbox);
76  const FlatView::ZoomMgr& zoomMgr() const { return zoommgr_; }
77  void reInitZooms();
78 
79 protected:
80 
82 
87 
89 
90  MouseEventHandler& mouseEventHandler(int vwridx,bool ofscene);
93 
94  virtual void finalPrepare() {}
95  virtual void onFinalise(CallBacker*);
96  virtual bool canReUseZoomSettings(const uiFlatViewer&) const;
98  virtual void updateZoomManager();
99 
100  virtual void dataChangeCB(CallBacker*);
101  virtual void rubBandCB(CallBacker*);
102  virtual void vwrAdded(CallBacker*) {}
103  virtual void handDragStarted(CallBacker*) {}
104  virtual void handDragging(CallBacker*) {}
105  virtual void handDragged(CallBacker*) {}
106  virtual void mouseMoveCB(CallBacker*);
107  virtual void keyPressCB(CallBacker*) {}
108  virtual void usrClickCB(CallBacker*);
109  virtual bool handleUserClick(int vwridx) { return false; }
110 
111  virtual void propDlgClosed(CallBacker*);
112  virtual void applyProperties(CallBacker* cb);
113  virtual void saveProperties(FlatView::Viewer&);
114 
115 };
Definition: uigroup.h:53
#define mExpClass(module)
Definition: commondefs.h:157
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
Notifier< uiFlatViewControl > zoomChanged
Definition: uiflatviewcontrol.h:62
uiFlatViewPropDlg * propdlg_
Definition: uiflatviewcontrol.h:88
virtual void vwrAdded(CallBacker *)
Definition: uiflatviewcontrol.h:102
Notifier< uiFlatViewControl > infoChanged
Definition: uiflatviewcontrol.h:60
virtual void handDragged(CallBacker *)
Definition: uiflatviewcontrol.h:105
ObjectSet< uiFlatViewer > vwrs_
Definition: uiflatviewcontrol.h:83
Notifier< uiFlatViewControl > viewerAdded
Definition: uiflatviewcontrol.h:61
Definition: uiparent.h:24
virtual void handDragging(CallBacker *)
Definition: uiflatviewcontrol.h:104
IOPar infopars_
Definition: uiflatviewcontrol.h:86
Flat Viewer using FlatView::Data and FlatView::Appearance.
Definition: flatview.h:330
Basic 2D sizes (width/height) class.
Definition: geometry.h:190
Set of (small) copyable elements.
Definition: commontypes.h:26
FlatView properties dialog box.
Definition: uiflatviewpropdlg.h:27
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
virtual void finalPrepare()
Definition: uiflatviewcontrol.h:94
virtual bool handleUserClick(int vwridx)
Definition: uiflatviewcontrol.h:109
FlatView::ZoomMgr zoommgr_
Definition: uiflatviewcontrol.h:84
bool haverubber_
Definition: uiflatviewcontrol.h:85
Definition: mouseevent.h:166
Tools to control uiFlatViewer(s).
Definition: uiflatviewcontrol.h:27
virtual void setViewToCustomZoomLevel(uiFlatViewer &)
Definition: uiflatviewcontrol.h:97
Notifier< uiFlatViewControl > rubberBandUsed
Definition: uiflatviewcontrol.h:63
Manages zoom factors. Will always provide a new zoom when forward() called, using fwdFac()...
Definition: flatviewzoommgr.h:24
virtual void handDragStarted(CallBacker *)
Definition: uiflatviewcontrol.h:103
virtual void keyPressCB(CallBacker *)
Definition: uiflatviewcontrol.h:107
Definition: uidlggroup.h:102
Definition: bitmap2rgb.h:15
Fulfills the FlatView::Viewer specifications using &#39;ui&#39; classes.
Definition: uiflatviewer.h:31
const FlatView::ZoomMgr & zoomMgr() const
Definition: uiflatviewcontrol.h:76

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