OpendTect  6.6
uiflatviewstdcontrol.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: Mar 2007
8  RCS: $Id$
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "uiflatviewmod.h"
14 #include "uiflatviewcontrol.h"
15 #include "uidialog.h"
16 #include "menuhandler.h"
17 #include "helpview.h"
18 
19 class uiCheckBox;
20 class uiMenuHandler;
21 class uiToolButton;
22 class uiFlatViewColTabEd;
23 class uiGenInput;
24 class uiToolBar;
25 
26 
29 public:
30  uiFlatViewZoomLevelDlg(uiParent*,float& x1pospercm,
31  float& x2pospercm,bool isvertical);
33 
34 protected:
35 
36  float& x1pospercm_;
37  float& x2pospercm_;
38 
40  uiGenInput* x2fld_ = nullptr;
43 
47 };
48 
49 
56 public:
57 
58  struct Setup
59  {
60  Setup( uiParent* p=0 )
61  : parent_(p)
62  , withcoltabed_(true)
63  , withedit_(false)
64  , withhanddrag_(true)
65  , withflip_(true)
66  , withsnapshot_(true)
67  , withrubber_(true)
68  , withhomebutton_(false)
69  , withzoombut_(true)
70  , isvertical_(false)
71  , withfixedaspectratio_(false)
72  , managecoltab_(true)
73  , withcoltabinview_(true)
74  , initialx1pospercm_(mUdf(float))
75  , initialx2pospercm_(mUdf(float))
76  , withscalebarbut_(false)
77  , initialcentre_(uiWorldPoint::udf())
78  , tba_(-1)
79  {}
80 
82  mDefSetupMemb(bool,withcoltabed)
83  mDefSetupMemb(bool,withedit)
84  mDefSetupMemb(bool,withhanddrag)
86  mDefSetupMemb(bool,withflip)
87  mDefSetupMemb(bool,withsnapshot)
88  mDefSetupMemb(bool,withrubber)
89  mDefSetupMemb(bool,withhomebutton)
90  mDefSetupMemb(bool,withzoombut)
91  mDefSetupMemb(bool,isvertical)
92  mDefSetupMemb(bool,withfixedaspectratio)
93  mDefSetupMemb(bool,managecoltab)
94  mDefSetupMemb(bool,withcoltabinview)
95  mDefSetupMemb(float,initialx1pospercm)
96  mDefSetupMemb(float,initialx2pospercm)
97  mDefSetupMemb(bool,withscalebarbut)
98  mDefSetupMemb(uiWorldPoint,initialcentre);
99  mDefSetupMemb(int,tba)
100  };
101 
104  virtual uiToolBar* toolBar() { return tb_; }
105  uiToolBar* editToolBar() { return edittb_; }
106  virtual uiFlatViewColTabEd* colTabEd() { return ctabed_; }
107  void setEditMode(bool yn);
108  float getCurrentPosPerCM(bool forx1) const;
109 
110  static void setGlobalZoomLevel(float x1pospercm, float x2pospercm,
111  bool isvertical);
112  static void getGlobalZoomLevel(float& x1pospercm, float& x2pospercm,
113  bool isvertical);
114  bool isEditModeOn() const;
115  bool isRubberBandOn() const;
117 
118 protected:
119 
122 
125 
141 
144 
145  const Setup setup_;
146 
147  virtual void finalPrepare();
148  void clearToolBar();
150  void updateZoomLevel(float x1pospercm,float x2pospercm);
151  void doZoom(bool zoomin,bool onlyvertzoom,uiFlatViewer&);
153 
154  virtual void coltabChg(CallBacker*);
155  virtual void dispChgCB(CallBacker*);
156  virtual void zoomChgCB(CallBacker*);
157  virtual void rubBandUsedCB(CallBacker*);
158  virtual void dragModeCB(CallBacker*);
171  virtual void parsCB(CallBacker*);
172  virtual void vwrAdded(CallBacker*) {}
173  virtual void wheelMoveCB(CallBacker*);
174  virtual void zoomCB(CallBacker*);
175  virtual void pinchZoomCB(CallBacker*);
176  virtual void cancelZoomCB(CallBacker*);
177  virtual void gotoHomeZoomCB(CallBacker*);
178 
179  virtual bool handleUserClick(int vwridx);
180 
185 
187 
189 };
190 
uiFlatViewStdControl::scalebarbut_
uiToolButton * scalebarbut_
Definition: uiflatviewstdcontrol.h:136
uiFlatViewStdControl::handDragStarted
void handDragStarted(CallBacker *)
uiFlatViewStdControl::handDragged
void handDragged(CallBacker *)
uiFlatViewStdControl::handleMenuCB
void handleMenuCB(CallBacker *)
menuhandler.h
uiFlatViewStdControl
The standard tools to control uiFlatViewer(s).
Definition: uiflatviewstdcontrol.h:55
uiFlatViewStdControl::vwrAdded
virtual void vwrAdded(CallBacker *)
Definition: uiflatviewstdcontrol.h:172
uiFlatViewStdControl::updatePosButtonStates
void updatePosButtonStates()
uiFlatViewStdControl::clearToolBar
void clearToolBar()
uiFlatViewZoomLevelDlg::x1fld_
uiGenInput * x1fld_
Definition: uiflatviewstdcontrol.h:39
uiFlatViewStdControl::createMenuCB
void createMenuCB(CallBacker *)
uiFlatViewStdControl::isRubberBandOn
bool isRubberBandOn() const
uiToolBar
Definition: uitoolbar.h:31
HelpKey
Definition: helpview.h:50
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
uiFlatViewStdControl::displayScaleBarCB
void displayScaleBarCB(CallBacker *)
uiCheckBox
Definition: uibutton.h:167
uiFlatViewStdControl::cancelzoombut_
uiToolButton * cancelzoombut_
Definition: uiflatviewstdcontrol.h:133
uiFlatViewStdControl::zoomCB
virtual void zoomCB(CallBacker *)
Setup::mDefSetupMemb
mDefSetupMemb(int, method)
MenuItem
Definition: menuhandler.h:76
uiFlatViewStdControl::editToolBar
uiToolBar * editToolBar()
Definition: uiflatviewstdcontrol.h:105
uiFlatViewStdControl::rubBandUsedCB
virtual void rubBandUsedCB(CallBacker *)
uiFlatViewZoomLevelDlg::saveglobalfld_
uiCheckBox * saveglobalfld_
Definition: uiflatviewstdcontrol.h:42
uiFlatViewControl
Tools to control uiFlatViewer(s).
Definition: uiflatviewcontrol.h:29
uiFlatViewStdControl::defx2pospercm_
float defx2pospercm_
Definition: uiflatviewstdcontrol.h:124
uiFlatViewStdControl::updateZoomLevel
void updateZoomLevel(float x1pospercm, float x2pospercm)
uiFlatViewStdControl::editPushed
NotifierAccess * editPushed()
CallBacker
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:185
uiFlatViewStdControl::gotohomezoombut_
uiToolButton * gotohomezoombut_
Definition: uiflatviewstdcontrol.h:135
uiFlatViewZoomLevelDlg::finalizeDoneCB
void finalizeDoneCB(CallBacker *)
uiFlatViewStdControl::gotoHomeZoomCB
virtual void gotoHomeZoomCB(CallBacker *)
uiFlatViewStdControl::coltabbut_
uiToolButton * coltabbut_
Definition: uiflatviewstdcontrol.h:137
uiFlatViewZoomLevelDlg::~uiFlatViewZoomLevelDlg
mODTextTranslationClass(uiFlatViewZoomLevelDlg) public ~uiFlatViewZoomLevelDlg()
uiFlatViewStdControl::setEditMode
void setEditMode(bool yn)
mODTextTranslationClass
#define mODTextTranslationClass(clss)
Definition: uistring.h:40
uiFlatViewStdControl::aspectRatioCB
void aspectRatioCB(CallBacker *)
uiFlatViewStdControl::mousepressed_
bool mousepressed_
Definition: uiflatviewstdcontrol.h:120
uiFlatViewStdControl::editModeCB
void editModeCB(CallBacker *)
uiGenInput
General Input Element.
Definition: uigeninput.h:59
uiFlatViewZoomLevelDlg::acceptOK
bool acceptOK(CallBacker *)
confirm accept
uiFlatViewZoomLevelDlg::x2pospercm_
float & x2pospercm_
Definition: uiflatviewstdcontrol.h:37
uiFlatViewZoomLevelDlg
Definition: uiflatviewstdcontrol.h:28
uiFlatViewStdControl::flipCB
void flipCB(CallBacker *)
uiFlatViewStdControl::keyPressCB
void keyPressCB(CallBacker *)
uiFlatViewStdControl::dragModeCB
virtual void dragModeCB(CallBacker *)
uiFlatViewStdControl::setGlobalZoomLevel
static void setGlobalZoomLevel(float x1pospercm, float x2pospercm, bool isvertical)
uiFlatViewStdControl::helpCB
void helpCB(CallBacker *)
uiFlatViewStdControl::ctabed_
uiFlatViewColTabEd * ctabed_
Definition: uiflatviewstdcontrol.h:143
uiFlatViewStdControl::setVwrCursor
void setVwrCursor(uiFlatViewer &, const MouseCursor &)
uiFlatViewStdControl::colTabEd
virtual uiFlatViewColTabEd * colTabEd()
Definition: uiflatviewstdcontrol.h:106
uiFlatViewZoomLevelDlg::x1pospercm_
float & x1pospercm_
Definition: uiflatviewstdcontrol.h:36
uiFlatViewStdControl::rubbandzoombut_
uiToolButton * rubbandzoombut_
Definition: uiflatviewstdcontrol.h:128
uiFlatViewStdControl::zoomoutbut_
uiToolButton * zoomoutbut_
Definition: uiflatviewstdcontrol.h:130
NotifierAccess
Interface class for Notifier. See comments there.
Definition: notify.h:22
uiFlatViewStdControl::menu_
uiMenuHandler & menu_
Definition: uiflatviewstdcontrol.h:181
uiFlatViewStdControl::coltabChg
virtual void coltabChg(CallBacker *)
uiFlatViewStdControl::mousedownpt_
uiPoint mousedownpt_
Definition: uiflatviewstdcontrol.h:121
uidialog.h
uiFlatViewStdControl::finalPrepare
virtual void finalPrepare()
uiFlatViewZoomLevelDlg::unitChgCB
void unitChgCB(CallBacker *)
uiFlatViewStdControl::wheelMoveCB
virtual void wheelMoveCB(CallBacker *)
uiFlatViewStdControl::defx1pospercm_
float defx1pospercm_
Definition: uiflatviewstdcontrol.h:123
uiFlatViewStdControl::handDragging
void handDragging(CallBacker *)
uiFlatViewStdControl::vertzoomoutbut_
uiToolButton * vertzoomoutbut_
Definition: uiflatviewstdcontrol.h:132
uiFlatViewStdControl::editbut_
uiToolButton * editbut_
Definition: uiflatviewstdcontrol.h:140
uiFlatViewStdControl::helpkey_
HelpKey helpkey_
Definition: uiflatviewstdcontrol.h:186
uiFlatViewStdControl::dispChgCB
virtual void dispChgCB(CallBacker *)
uiFlatViewStdControl::propertiesmnuitem_
MenuItem propertiesmnuitem_
Definition: uiflatviewstdcontrol.h:182
uiFlatViewStdControl::displayColTabCB
void displayColTabCB(CallBacker *)
uiFlatViewStdControl::vwr_
uiFlatViewer & vwr_
Definition: uiflatviewstdcontrol.h:142
Geom::Point2D< double >
uiFlatViewStdControl::handleUserClick
virtual bool handleUserClick(int vwridx)
uiFlatViewStdControl::parsbut_
uiToolButton * parsbut_
Definition: uiflatviewstdcontrol.h:139
uiFlatViewStdControl::zoominbut_
uiToolButton * zoominbut_
Definition: uiflatviewstdcontrol.h:129
uiFlatViewStdControl::Setup::mDefSetupMemb
mDefSetupMemb(uiParent *, parent) mDefSetupMemb(bool
uiFlatViewStdControl::getGlobalZoomLevel
static void getGlobalZoomLevel(float &x1pospercm, float &x2pospercm, bool isvertical)
uiFlatViewStdControl::parsCB
virtual void parsCB(CallBacker *)
uiFlatViewStdControl::setViewToCustomZoomLevel
void setViewToCustomZoomLevel(uiFlatViewer &)
uiFlatViewStdControl::vertzoominbut_
uiToolButton * vertzoominbut_
Definition: uiflatviewstdcontrol.h:131
uiFlatViewStdControl::isEditModeOn
bool isEditModeOn() const
uiFlatViewStdControl::setup_
const Setup setup_
Definition: uiflatviewstdcontrol.h:145
MouseCursor
Definition of a mouse cursor, can be either a predefined shape (from the enum, or a file....
Definition: mousecursor.h:26
uiFlatViewStdControl::mODTextTranslationClass
mODTextTranslationClass(uiFlatViewStdControl)
uiFlatViewColTabEd
FlatView color table editor.
Definition: uiflatviewcoltabed.h:26
mUdf
#define mUdf(type)
Use this macro to get the undefined for simple types.
Definition: undefval.h:274
uiFlatViewStdControl::fittoscrnbut_
uiToolButton * fittoscrnbut_
Definition: uiflatviewstdcontrol.h:138
uiFlatViewStdControl::Setup
Definition: uiflatviewstdcontrol.h:59
uiFlatViewZoomLevelDlg::unitflds_
uiGenInput * unitflds_
Definition: uiflatviewstdcontrol.h:41
uiParent
Definition: uiparent.h:26
uiMenuHandler
Definition: uimenuhandler.h:27
uiFlatViewer
Fulfills the FlatView::Viewer specifications using 'ui' classes.
Definition: uiflatviewer.h:34
uiDialog
Definition: uidialog.h:42
uiFlatViewStdControl::doZoom
void doZoom(bool zoomin, bool onlyvertzoom, uiFlatViewer &)
uiFlatViewStdControl::getCurrentPosPerCM
float getCurrentPosPerCM(bool forx1) const
uiFlatViewStdControl::pinchZoomCB
virtual void pinchZoomCB(CallBacker *)
uiFlatViewStdControl::zoomChgCB
virtual void zoomChgCB(CallBacker *)
uiFlatViewStdControl::Setup::Setup
Setup(uiParent *p=0)
Definition: uiflatviewstdcontrol.h:60
uiToolButton
Definition: uitoolbutton.h:22
uiflatviewcontrol.h
uiFlatViewStdControl::fitToScreenCB
void fitToScreenCB(CallBacker *)
helpview.h
uiFlatViewStdControl::homeZoomOptSelCB
void homeZoomOptSelCB(CallBacker *)
uiFlatViewStdControl::sethomezoombut_
uiToolButton * sethomezoombut_
Definition: uiflatviewstdcontrol.h:134
uiFlatViewStdControl::tb_
uiToolBar * tb_
Definition: uiflatviewstdcontrol.h:126
uiFlatViewStdControl::edittb_
uiToolBar * edittb_
Definition: uiflatviewstdcontrol.h:127
uiFlatViewStdControl::cancelZoomCB
virtual void cancelZoomCB(CallBacker *)

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