casa
5.7.0-16
|
DisplayData which provides interactive drawing capabilities. More...
#include <DrawingDisplayData.h>
Public Member Functions | |
DrawingDisplayData (const Display::KeySym keysym=Display::K_Pointer_Button1) | |
Constructor. More... | |
virtual | ~DrawingDisplayData () |
Destructor. More... | |
virtual void | setDefaultOptions () |
Install the default options for this DisplayData. More... | |
virtual casacore::Bool | setOptions (casacore::Record &rec, casacore::Record &recOut) |
Apply options stored in rec to the DisplayData. More... | |
virtual casacore::Record | getOptions (bool scrub=false) const |
Retrieve the current and default options and parameter types. More... | |
virtual Display::DisplayDataType | classType () |
Return the type of this DisplayData. More... | |
virtual CachingDisplayMethod * | newDisplayMethod (WorldCanvas *worldCanvas, AttributeBuffer *wchAttributes, AttributeBuffer *ddAttributes, CachingDisplayData *dd) |
Create a new AxesDisplayMethod for drawing on the given WorldCanvas when the AttributeBuffers are suitably matched to the current state of this DisplayData and of the WorldCanvas/Holder. More... | |
virtual AttributeBuffer | optionsAsAttributes () |
Return the current options of this DisplayData as an AttributeBuffer. More... | |
virtual void | refreshEH (const WCRefreshEvent &ev) |
Negotiatiate WorldCanvas linear coordinate system when asked to do so by the WorldCanvasHolder. More... | |
virtual void | addObject (const casacore::Record &description) |
Add an object to the drawing as described in the given Record. More... | |
virtual casacore::Record | description (const casacore::Int objectID) |
Get the description of the object with the given id. More... | |
virtual void | setDescription (const casacore::Int objectID, const casacore::Record &rec) |
Set the description of the object with the given id. More... | |
virtual void | removeObject (const casacore::Int objectID) |
Remove the object with the given id. More... | |
virtual void | setHandleState (DDDObject *item, const casacore::Bool state) |
Set the handle state of the particular item. More... | |
virtual casacore::String | labelPosition () |
Return the current setting of the labelposition option. More... | |
virtual void | setKey (const Display::KeySym &keysym) |
Set/get which key to catch. More... | |
virtual Display::KeySym | key () const |
virtual Display::KeyModifier | keyModifier () const |
virtual casacore::Double | doubleClickInterval () const |
casacore::Double click interval. More... | |
virtual void | doubleClick (const casacore::Int objectID) |
Called when a double click occurred for the identified object. More... | |
Public Member Functions inherited from casa::PassiveCachingDD | |
PassiveCachingDD () | |
Constructor. More... | |
virtual | ~PassiveCachingDD () |
Destructor. More... | |
virtual casacore::Bool | linToWorld (casacore::Vector< casacore::Double > &world, const casacore::Vector< casacore::Double > &lin) |
casacore::Coordinate transformation handlers, called by WorldCanvasHolder. More... | |
virtual casacore::Bool | worldToLin (casacore::Vector< casacore::Double > &lin, const casacore::Vector< casacore::Double > &world) |
virtual casacore::String | showPosition (const casacore::Vector< casacore::Double > &world, const casacore::Bool &displayAxesOnly=false) |
casacore::Format a string containing coordinate or value information at the given world coordinate. More... | |
virtual casacore::String | showValue (const casacore::Vector< casacore::Double > &world) |
casacore::Format a string containing value information at the given world coordinate More... | |
virtual casacore::Vector < casacore::String > | worldAxisNames () const |
World axis information suppliers. More... | |
virtual casacore::Vector < casacore::String > | worldAxisUnits () const |
const casacore::Unit | dataUnit () const |
const casacore::IPosition | dataShape () const |
casacore::uInt | dataDim () const |
std::vector< int > | displayAxes () const |
virtual casacore::uInt | nelements (const WorldCanvasHolder &wcHolder) const |
Return the number of display elements (ie. More... | |
virtual casacore::uInt | nelements () const |
and non-specific More... | |
virtual casacore::Bool | sizeControl (WorldCanvasHolder &, AttributeBuffer &) |
Set (coordinate) state of WCH's WC. More... | |
virtual void | cleanup () |
Tidy up the elements of this DisplayData. More... | |
Public Member Functions inherited from casa::CachingDisplayData | |
CachingDisplayData () | |
Constructor. More... | |
virtual | ~CachingDisplayData () |
Destructor. More... | |
virtual void | notifyRegister (WorldCanvasHolder *wcHolder) |
virtual void | notifyUnregister (WorldCanvasHolder &wcHolder, casacore::Bool ignoreRefresh=false) |
ignoreRefresh tells the DD not to refresh just to clean up DMs More... | |
virtual void | setColormap (Colormap *cmap, casacore::Float weight) |
Purges cache, to avoid reusing images with the wrong colormap, then calls base class version. More... | |
virtual void | purgeCache () |
Empty cache completely. More... | |
virtual void | purgeCache (const WorldCanvasHolder &wch) |
Empty cache of all DMs for a given WCH. More... | |
Public Member Functions inherited from casa::DisplayData | |
DisplayData () | |
(Required) default constructor. More... | |
virtual | ~DisplayData () |
required destructor More... | |
virtual std::string | errorMessage () const =0 |
virtual void | setDisplayState (DisplayState s) |
virtual DisplayState | getDisplayState () const |
virtual bool | isDisplayable () const |
virtual void | addRestrictions (AttributeBuffer &otherBuf) |
Add general restrictions or a restriction for item itemNum of this DisplayData. More... | |
virtual void | addRestriction (Attribute &newRestriction, casacore::Bool permanent) |
virtual void | addElementRestrictions (const casacore::uInt itemNum, AttributeBuffer &other) |
virtual void | addElementRestriction (const casacore::uInt itemNum, Attribute &newRestriction, casacore::Bool permanent) |
virtual void | setRestrictions (AttributeBuffer &otherBuf) |
Set general restrictions or a restriction for item itemNum of this DisplayData. More... | |
virtual void | setRestriction (Attribute &newRestriction) |
virtual void | setElementRestrictions (const casacore::uInt itemNum, AttributeBuffer &other) |
virtual void | setElementRestriction (const casacore::uInt itemNum, Attribute &newRestriction) |
virtual void | removeRestriction (const casacore::String &name) |
Remove a general restriction or a restriction from item itemNum More... | |
virtual void | removeElementRestriction (const casacore::uInt itemNum, const casacore::String &name) |
virtual void | clearRestrictions () |
Clear all general restrictions or all restrictions of item itemNum (except the ones that are permanent of course...) More... | |
virtual void | clearElementRestrictions (const casacore::uInt itemNum) |
virtual casacore::Bool | existRestriction (const casacore::String &name) |
Check if a general restriction or a restriction for item itemNum with name name exists. More... | |
virtual casacore::Bool | existElementRestriction (const casacore::uInt itemNum, const casacore::String &name) |
virtual AttributeBuffer * | restrictionBuffer () |
Get a handle to the buffer of general restrictions or of the buffer of restrictions for item itemNum More... | |
virtual AttributeBuffer * | elementRestrictionBuffer (const casacore::uInt itemNum) |
virtual casacore::Bool | conformsTo (const WorldCanvas *wCanvas) |
Check whether the DD is is compatible with all WC[H] state, including its coordinate state, restrictions, and zIndex (if any). More... | |
virtual casacore::Bool | conformsTo (const WorldCanvas &wc) |
virtual casacore::Bool | conformsToRstrs (const WorldCanvas &wc) |
Determine whether DD restrictions are in conformance with restrictions on the given WCH. More... | |
virtual casacore::Bool | conformsToCS (const WorldCanvas &) |
Determine whether DD is compatible with the WC[H]'s current world coordinates. More... | |
virtual casacore::Bool | conformsToZIndex (const WorldCanvas &wc) |
Determine whether DD is compatible with the current canvas animation (zIndex) position. More... | |
virtual casacore::Int | activeZIndex (const WorldCanvas *wc=0) |
Retrieve 'Active' zIndex. More... | |
virtual casacore::Bool | getFirstZIndex (int &firstZIndex, casacore::Int axZrng=-1) const |
Set firstZIndex to minimum zIndex setting from all canvases where this DD is registered. More... | |
virtual void | addPositionEventHandler (WCPositionEH *positionHandler) |
Add event handlers on the DisplayData. More... | |
virtual void | addMotionEventHandler (WCMotionEH *motionHandler) |
virtual void | addRefreshEventHandler (WCRefreshEH *refreshHandler) |
virtual void | addDisplayEventHandler (DisplayEH *displayHandler) |
virtual void | removePositionEventHandler (WCPositionEH &positionHandler) |
Remove eventhandlers. More... | |
virtual void | removeMotionEventHandler (WCMotionEH &motionHandler) |
virtual void | removeRefreshEventHandler (WCRefreshEH &refreshHandler) |
virtual void | removeDisplayEventHandler (DisplayEH &displayHandler) |
virtual void | removeColormap () |
virtual Colormap * | colormap () const |
void | setAttribute (Attribute &at) |
set an Attribute or Attributes More... | |
void | setAttributes (AttributeBuffer &at) |
casacore::Bool | getAttributeValue (const casacore::String &name, casacore::uInt &newValue) |
User interface to get value from the attribute buffer. More... | |
casacore::Bool | getAttributeValue (const casacore::String &name, casacore::Int &newValue) |
casacore::Bool | getAttributeValue (const casacore::String &name, casacore::Float &newValue) |
casacore::Bool | getAttributeValue (const casacore::String &name, casacore::Double &newValue) |
casacore::Bool | getAttributeValue (const casacore::String &name, casacore::Bool &newValue) |
casacore::Bool | getAttributeValue (const casacore::String &name, casacore::String &newValue) |
casacore::Bool | getAttributeValue (const casacore::String &name, casacore::Vector< casacore::uInt > &newValue) |
casacore::Bool | getAttributeValue (const casacore::String &name, casacore::Vector< casacore::Int > &newValue) |
casacore::Bool | getAttributeValue (const casacore::String &name, casacore::Vector< casacore::Float > &newValue) |
casacore::Bool | getAttributeValue (const casacore::String &name, casacore::Vector< casacore::Double > &newValue) |
casacore::Bool | getAttributeValue (const casacore::String &name, casacore::Vector< casacore::Bool > &newValue) |
casacore::Bool | getAttributeValue (const casacore::String &name, casacore::Vector< casacore::String > &newValue) |
casacore::Bool | existsAttribute (casacore::String &name) |
Check if a certain Attribute exists. More... | |
void | removeAttribute (casacore::String &name) |
Remove an Attribute. More... | |
AttValue::ValueType | attributeType (casacore::String &name) |
Get the type of the Attribute. More... | |
void | setAttributeOnPrimaryWCHs (Attribute &at) |
Set an attribute on any WorldCanvas for which this DD is CS master. More... | |
virtual void | removeFromAllWCHs () |
remove this DD everywhere–will stop any more refresh handling by the DD. More... | |
virtual void | refresh (casacore::Bool clean=false) |
an explicit refresh: should be called if the DisplayData is changed such that drawing is required. More... | |
virtual casacore::Bool | labelAxes (const WCRefreshEvent &ev) |
an explicit request to draw the axes and/or labels. More... | |
virtual casacore::Bool | canLabelAxes () const |
virtual casacore::String | className () const |
Return the class name of this DisplayData; useful mostly for debugging purposes, and perhaps future use in the glish widget interface. More... | |
virtual casacore::String | description () const |
virtual casacore::String | dataType () const =0 |
virtual ImageAnalysis * | imageanalysis () const |
Get image analyis about images... More... | |
virtual std::shared_ptr < casacore::ImageInterface < casacore::Float > > | imageinterface () |
Returns a pointer that should not be deleted... More... | |
virtual void | setSubstituteTitleText (const casacore::String) |
const WorldCanvasHolder * | findHolder (const WorldCanvas *wCanvas) const |
Identify the WorldCanvasHolder for the given WorldCanvas. More... | |
WorldCanvasHolder * | findHolder (const WorldCanvas *wCanvas) |
virtual casacore::Block < casacore::Int > | allZIndices (casacore::Int axZrng=-1) const |
Return a sorted casacore::Block of all animation frame numbers currently set onto all WCHs where this DD is registered. More... | |
virtual casacore::Bool | zIndexHint (casacore::Int &) const |
Will be called just before registering the [GTk]DD on a [GTk]PanelDisplay which has none registered on it yet. More... | |
virtual void | handleEvent (DisplayEvent &ev) |
Overide DisplayEH::handleEvent. More... | |
virtual casacore::Bool | isCSmaster (const WorldCanvasHolder *wch=0) const |
Is this DD the CS master of the passed WCH? Defaulting wch to 0 asks whether this DD is CS master of some WCH on which it is registered. More... | |
virtual casacore::Int | uiBase () const |
DD 'Absolute Pixel Coordinates', e.g. More... | |
virtual void | setUIBase (casacore::Int uibase) |
virtual casacore::Bool | getDelTmpData () |
Get and set method for the flag. More... | |
virtual void | setDelTmpData (casacore::Bool delTmpData) |
virtual void | setDisplayDataRed (DisplayData *) |
virtual void | setDisplayDataBlue (DisplayData *) |
virtual void | setDisplayDataGreen (DisplayData *) |
Public Member Functions inherited from casa::DisplayOptions | |
DisplayOptions () | |
Constructor. More... | |
virtual | ~DisplayOptions () |
Destructor. More... | |
template<class T > | |
casacore::Bool | readOptionRecord (casacore::Vector< T > &target, casacore::Bool &error, const casacore::Record &rec, const casacore::String &fieldname) const |
Find the field fieldname in casacore::Record rec , containing the requested type (casacore::Bool, casacore::String, casacore::Float, casacore::Int) in itself or its "value" sub-field, and return the value in target . More... | |
template<class T > | |
casacore::Bool | readOptionRecord (T &target, casacore::Bool &error, const casacore::Record &rec, const casacore::String &fieldname) const |
virtual casacore::Bool | readOptionRecord (casacore::String &target, casacore::Bool &unsetTarget, casacore::Bool &error, const casacore::Record &rec, const casacore::String &fieldname) const |
Find the field fieldname in casacore::Record rec , containing the requested type (casacore::String) in itself or its "value" sub-field, and return the value in target . More... | |
casacore::Record | unset () const |
Return a casacore::Record which is an "unset" casacore::Record, ie. More... | |
casacore::Bool | isUnset (const casacore::Record &rec) const |
Return true or false indicating if the provided casacore::Record is equal to an "unset" Record. More... | |
Public Member Functions inherited from casa::DisplayEH | |
virtual | ~DisplayEH () |
Public Member Functions inherited from casa::DlTarget | |
DlTarget () | |
DlTarget (const DlTarget &) | |
virtual | ~DlTarget () |
void | reg (DlHandleBase *p) |
void | unreg (DlHandleBase *p) |
Protected Member Functions | |
DrawingDisplayData (const DrawingDisplayData &other) | |
(Required) copy constructor. More... | |
void | operator= (const DrawingDisplayData &other) |
(Required) copy assignment. More... | |
Protected Member Functions inherited from casa::PassiveCachingDD | |
PassiveCachingDD (const PassiveCachingDD &other) | |
(Required) copy constructor. More... | |
void | operator= (const PassiveCachingDD &other) |
(Required) copy assignment. More... | |
Protected Member Functions inherited from casa::CachingDisplayData | |
virtual void | setCaching (const casacore::Bool caching) |
Return any additional Attributes to consider when searching the cache. More... | |
CachingDisplayData (const CachingDisplayData &other) | |
(Required) copy constructor. More... | |
void | operator= (const CachingDisplayData &other) |
(Required) copy assignment. More... | |
Protected Member Functions inherited from casa::DisplayData | |
virtual casacore::Bool | setActiveZIndex_ (casacore::Int zindex) |
DDs may override to adjust the internal stored current animation index (activeZIndex_) if necessary, and to set return value false iff the passed zindex won't work for the DD. More... | |
casacore::Bool | conformed () |
Returns result of last call to conformsTo(WCH&). More... | |
casacore::Bool | isCsAndZIndexConformed () |
Added so that when two images are loaded with no velocity alignment, they can still show their position coordinates without having to be rstrsConformed. More... | |
virtual void | delTmpData (casacore::String &tmpData) |
Delete temporary data. More... | |
virtual const std::list < WCPositionEH * > * | positionEventHandlerList () |
Retrieve position, motion, refresh and display event handler lists. More... | |
virtual const std::list < WCMotionEH * > * | motionEventHandlerList () |
virtual const std::list < WCRefreshEH * > * | refreshEventHandlerList () |
virtual const std::list < DisplayEH * > * | displayEventHandlerList () |
virtual void | positionEH (const WCPositionEvent &ev) |
Position, motion and refresh event handlers that will generally be called by a WorldCanvasHolder. More... | |
virtual void | motionEH (const WCMotionEvent &ev) |
DisplayData (const DisplayData &other) | |
(Required) copy constructor. More... | |
void | operator= (const DisplayData &other) |
(Required) copy assignment. More... | |
Protected Member Functions inherited from casa::DisplayOptions | |
DisplayOptions (const DisplayOptions &other) | |
(Required) copy constructor. More... | |
void | operator= (const DisplayOptions &other) |
(Required) copy assignment. More... | |
Private Member Functions | |
void | installDefaultOptions () |
Install the default options for this DisplayData. More... | |
Private Attributes | |
Display::KeySym | itsKeySym |
The key to handle. More... | |
Display::KeyModifier | itsKeyModifier |
The modifier mask for the key. More... | |
casacore::Double | itsDoubleClickInterval |
casacore::Double click interval (seconds) More... | |
std::list< void * > | itsDDDOList |
casacore::List containing the DDDObjects for this DrawingDisplayData. More... | |
DDDObject * | itsObjectWhichIsShowingHandles |
Obvious! More... | |
casacore::String | itsOptionsLabelPosition |
Option: position for labels. More... | |
Friends | |
class | DrawingDisplayMethod |
Additional Inherited Members | |
Public Types inherited from casa::DisplayData | |
enum | DisplayState { DISPLAYED, UNDISPLAYED, LIMBO } |
Static Public Attributes inherited from casa::DisplayData | |
static const casacore::String | DATA_MIN |
static const casacore::String | DATA_MAX |
Protected Attributes inherited from casa::CachingDisplayData | |
casacore::Bool | restorePCColormap_ |
The default is false. More... | |
Protected Attributes inherited from casa::DisplayData | |
AttributeBuffer | restrictions |
The Book says that we should not put data members in class that is supposed to only define an interface, but by putting these here, we can implement some of the restriction & eventhandling stuff so that people do not have to repeat it. More... | |
AttributeBuffer | attributes |
buffer for storing Attributes More... | |
casacore::PtrBlock< void * > | DDelement |
list of DisplayDataElements, which are of type DisplayMethod or derived More... | |
casacore::Int | activeZIndex_ |
Indicates the 'current' animation frame, i.e. More... | |
casacore::Bool | delTmpData_ |
Flag indicating that temporary data should be removed when deleting the object. More... | |
casacore::Bool | rstrsConformed_ |
Somewhat limited-use state, saved here for 'efficiency'. More... | |
casacore::Bool | csConformed_ |
casacore::Bool | zIndexConformed_ |
DisplayData which provides interactive drawing capabilities.
This class provides an implementation of a PassiveCachingDD which provides the ability for the programmer to add various objects to the display (eg. rectangles), and then modify them, or allow the user to interactively modify the objects.
Definition at line 55 of file DrawingDisplayData.h.
casa::DrawingDisplayData::DrawingDisplayData | ( | const Display::KeySym | keysym = Display::K_Pointer_Button1 | ) |
Constructor.
|
virtual |
Destructor.
|
protected |
(Required) copy constructor.
|
virtual |
Add an object to the drawing as described in the given Record.
|
inlinevirtual |
Return the type of this DisplayData.
Implements casa::DisplayData.
Definition at line 79 of file DrawingDisplayData.h.
References casa::Display::CanvasAnnotation.
|
virtual |
Get the description of the object with the given id.
|
virtual |
Called when a double click occurred for the identified object.
Null implementation in this class, derived classes can over-ride.
|
inlinevirtual |
casacore::Double click interval.
Definition at line 131 of file DrawingDisplayData.h.
References itsDoubleClickInterval.
|
virtual |
Retrieve the current and default options and parameter types.
Reimplemented from casa::PassiveCachingDD.
|
private |
Install the default options for this DisplayData.
|
inlinevirtual |
Definition at line 122 of file DrawingDisplayData.h.
References itsKeySym.
|
inlinevirtual |
Definition at line 125 of file DrawingDisplayData.h.
References itsKeyModifier.
|
inlinevirtual |
Return the current setting of the labelposition option.
Definition at line 115 of file DrawingDisplayData.h.
References itsOptionsLabelPosition.
|
virtual |
Create a new AxesDisplayMethod for drawing on the given WorldCanvas when the AttributeBuffers are suitably matched to the current state of this DisplayData and of the WorldCanvas/Holder.
The tag is a unique number used to identify the age of the newly constructed CachingDisplayMethod.
Implements casa::CachingDisplayData.
|
protected |
(Required) copy assignment.
|
virtual |
Return the current options of this DisplayData as an AttributeBuffer.
Reimplemented from casa::PassiveCachingDD.
|
virtual |
Negotiatiate WorldCanvas linear coordinate system when asked to do so by the WorldCanvasHolder.
In this implementation, simply return false to indicate that this DisplayData will not negotiate coordinates: it is a passive DisplayData.
Reimplemented from casa::PassiveCachingDD.
|
virtual |
Remove the object with the given id.
|
virtual |
Install the default options for this DisplayData.
Reimplemented from casa::PassiveCachingDD.
|
virtual |
Set the description of the object with the given id.
|
virtual |
Set the handle state of the particular item.
|
virtual |
Set/get which key to catch.
|
virtual |
Apply options stored in rec
to the DisplayData.
A return value of true
means a refresh is needed. recOut
contains any fields which were implicitly changed as a result of the call to this function.
Reimplemented from casa::PassiveCachingDD.
|
friend |
Definition at line 149 of file DrawingDisplayData.h.
|
private |
casacore::List containing the DDDObjects for this DrawingDisplayData.
Definition at line 161 of file DrawingDisplayData.h.
|
private |
casacore::Double click interval (seconds)
Definition at line 158 of file DrawingDisplayData.h.
Referenced by doubleClickInterval().
|
private |
The modifier mask for the key.
Definition at line 155 of file DrawingDisplayData.h.
Referenced by keyModifier().
|
private |
|
private |
Obvious!
Definition at line 164 of file DrawingDisplayData.h.
|
private |
Option: position for labels.
Definition at line 170 of file DrawingDisplayData.h.
Referenced by labelPosition().