OpendTect-6_4
6.4
|
Editor for FlatView::AuxData. Allows the end-user to click-drag-release the points in data. Users of the class have the choice if the editor should do the changes for them, or if they want to do changes themself, driven by the callback. More...
Public Member Functions | |
AuxDataEditor (Viewer &, MouseEventHandler &) | |
virtual | ~AuxDataEditor () |
int | addAuxData (FlatView::AuxData *, bool doedit) |
void | removeAuxData (int id) |
void | enableEdit (int id, bool allowadd, bool allowmove, bool allowdelete) |
void | enablePolySel (int id, bool allowsel) |
void | setAddAuxData (int id) |
Added points will be added to this set. More... | |
int | getAddAuxData () const |
void | setView (const Rect &wv, const Geom::Rectangle< int > &mouserect) |
const Geom::PixRectangle< int > & | getMouseArea () const |
Rect | getWorldRect (int dataid) const |
void | limitMovement (const Rect *) |
bool | isDragging () const |
int | getSelPtDataID () const |
const TypeSet< int > & | getSelPtIdx () const |
const Point & | getSelPtPos () const |
void | setSelectionPolygonRectangle (bool) |
If not rectangle, it's a polygon. More... | |
bool | getSelectionPolygonRectangle () const |
If not rectangle, it's a polygon. More... | |
const OD::LineStyle & | getSelectionPolygonLineStyle () const |
void | setSelectionPolygonLineStyle (const OD::LineStyle &) |
void | getPointSelections (TypeSet< int > &ids, TypeSet< int > &idxs) const |
const Viewer & | viewer () const |
Viewer & | viewer () |
Sower & | sower () |
void | setSelActive (bool yn) |
bool | isSelActive () const |
const TypeSet< int > & | getIds () const |
const ObjectSet< AuxData > & | getAuxData () const |
void | removePolygonSelected (int dataid) |
If dataid ==-1, all pts inside polygon is removed. More... | |
void | setMenuHandler (MenuHandler *) |
MenuHandler * | getMenuHandler () |
MouseEventHandler & | mouseEventHandler () |
const Point * | markerPosAt (const Geom::Point2D< int > &mousepos) const |
void | setSelectionPolygonVisible (bool) |
Public Member Functions inherited from CallBacker | |
CallBacker () | |
CallBacker (const CallBacker &) | |
virtual | ~CallBacker () |
bool | attachCB (NotifierAccess &, const CallBack &, bool onlyifnew=false) |
bool | attachCB (NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false) |
void | detachCB (NotifierAccess &, const CallBack &) |
void | detachCB (NotifierAccess *notif, const CallBack &cb) |
bool | isNotifierAttached (NotifierAccess *) const |
Only for debugging purposes, don't use. More... | |
Public Attributes | |
Notifier< AuxDataEditor > | addAuxDataChange |
Notifier< AuxDataEditor > | movementStarted |
Notifier< AuxDataEditor > | movementFinished |
CNotifier< AuxDataEditor, bool > | removeSelected |
Notifier< AuxDataEditor > | releaseSelection |
Protected Member Functions | |
void | getPointSelections (const ObjectSet< AuxData > &polygon, TypeSet< int > &ids, TypeSet< int > &idxs) const |
bool | removeSelectionPolygon () |
Returns true if viewer must be notified. More... | |
void | mousePressCB (CallBacker *) |
void | mouseReleaseCB (CallBacker *) |
void | mouseMoveCB (CallBacker *) |
void | findSelection (const Geom::Point2D< int > &, int &seldatasetidx, TypeSet< int > *selptidxlist) const |
bool | updateSelection (const Geom::Point2D< int > &) |
int | dataSetIdxAt (const Geom::Point2D< int > &) const |
Protected Member Functions inherited from CallBacker | |
void | detachAllNotifiers () |
Call from the destructor of your inherited object. More... | |
Protected Attributes | |
Viewer & | viewer_ |
Sower * | sower_ |
ObjectSet< AuxData > | auxdata_ |
TypeSet< int > | ids_ |
BoolTypeSet | allowadd_ |
BoolTypeSet | allowmove_ |
BoolTypeSet | allowremove_ |
BoolTypeSet | allowpolysel_ |
BoolTypeSet | doedit_ |
int | addauxdataid_ |
ObjectSet< AuxData > | polygonsel_ |
OD::LineStyle | polygonsellst_ |
bool | polygonselrect_ |
bool | isselactive_ |
AuxData * | feedback_ |
Geom::Point2D< int > | prevpt_ |
Geom::PixRectangle< int > | mousearea_ |
Rect | curview_ |
MouseEventHandler & | mousehandler_ |
bool | mousedown_ |
bool | hasmoved_ |
int | seldatasetidx_ |
TypeSet< int > | selptidx_ |
Point | selptcoord_ |
Rect * | movementlimit_ |
MenuHandler * | menuhandler_ |
Friends | |
class | Sower |
Editor for FlatView::AuxData. Allows the end-user to click-drag-release the points in data. Users of the class have the choice if the editor should do the changes for them, or if they want to do changes themself, driven by the callback.
FlatView::AuxDataEditor::AuxDataEditor | ( | Viewer & | , |
MouseEventHandler & | |||
) |
|
virtual |
int FlatView::AuxDataEditor::addAuxData | ( | FlatView::AuxData * | , |
bool | doedit | ||
) |
doedit | says whether this object should change the auxdata, or if the user of the objects should do it. |
|
protected |
void FlatView::AuxDataEditor::enableEdit | ( | int | id, |
bool | allowadd, | ||
bool | allowmove, | ||
bool | allowdelete | ||
) |
void FlatView::AuxDataEditor::enablePolySel | ( | int | id, |
bool | allowsel | ||
) |
|
protected |
int FlatView::AuxDataEditor::getAddAuxData | ( | ) | const |
const TypeSet<int>& FlatView::AuxDataEditor::getIds | ( | ) | const |
MenuHandler* FlatView::AuxDataEditor::getMenuHandler | ( | ) |
|
inline |
void FlatView::AuxDataEditor::getPointSelections | ( | TypeSet< int > & | ids, |
TypeSet< int > & | idxs | ||
) | const |
Each point within the limits of the polygons will be put in the typesets.
|
protected |
Each point within the limits of the polygons will be put in the typesets.
const OD::LineStyle& FlatView::AuxDataEditor::getSelectionPolygonLineStyle | ( | ) | const |
bool FlatView::AuxDataEditor::getSelectionPolygonRectangle | ( | ) | const |
If not rectangle, it's a polygon.
int FlatView::AuxDataEditor::getSelPtDataID | ( | ) | const |
const TypeSet<int>& FlatView::AuxDataEditor::getSelPtIdx | ( | ) | const |
const Point& FlatView::AuxDataEditor::getSelPtPos | ( | ) | const |
Rect FlatView::AuxDataEditor::getWorldRect | ( | int | dataid | ) | const |
|
inline |
|
inline |
void FlatView::AuxDataEditor::limitMovement | ( | const Rect * | ) |
When movement starts, the movement is unlimited. Movement can be limited once the movement started by calling limitMovement.
const Point* FlatView::AuxDataEditor::markerPosAt | ( | const Geom::Point2D< int > & | mousepos | ) | const |
|
inline |
|
protected |
|
protected |
|
protected |
void FlatView::AuxDataEditor::removeAuxData | ( | int | id | ) |
void FlatView::AuxDataEditor::removePolygonSelected | ( | int | dataid | ) |
If dataid ==-1, all pts inside polygon is removed.
|
protected |
Returns true if viewer must be notified.
void FlatView::AuxDataEditor::setAddAuxData | ( | int | id | ) |
Added points will be added to this set.
void FlatView::AuxDataEditor::setMenuHandler | ( | MenuHandler * | ) |
void FlatView::AuxDataEditor::setSelActive | ( | bool | yn | ) |
void FlatView::AuxDataEditor::setSelectionPolygonLineStyle | ( | const OD::LineStyle & | ) |
void FlatView::AuxDataEditor::setSelectionPolygonRectangle | ( | bool | ) |
If not rectangle, it's a polygon.
void FlatView::AuxDataEditor::setSelectionPolygonVisible | ( | bool | ) |
void FlatView::AuxDataEditor::setView | ( | const Rect & | wv, |
const Geom::Rectangle< int > & | mouserect | ||
) |
User of the class must ensure that both the wv and the mouserect are up to date at all times.
|
inline |
|
protected |
|
inline |
|
inline |
|
friend |
Notifier<AuxDataEditor> FlatView::AuxDataEditor::addAuxDataChange |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Notifier<AuxDataEditor> FlatView::AuxDataEditor::movementFinished |
|
protected |
Notifier<AuxDataEditor> FlatView::AuxDataEditor::movementStarted |
|
protected |
|
protected |
|
protected |
Notifier<AuxDataEditor> FlatView::AuxDataEditor::releaseSelection |
CNotifier<AuxDataEditor,bool> FlatView::AuxDataEditor::removeSelected |
if getSelPtDataID==-1 selection polygon changed else If selPtIdx()==-1, position should be added, else point moved. Boolean is true if this is the end of user interaction
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B. V. 2019