|
ubit
|
Image. More...
#include <uima.hpp>
Public Member Functions | |
| UIma (int width, int height) | |
| creates an empty image. | |
| UIma (const char *filename=null, bool load_now=false) | |
| creates a new image from an image file. More... | |
| UIma (const UStr &filename, bool load_now=false) | |
| creates a new image from an image file. More... | |
| UIma (const char **xpm_data, bool load_now=false) | |
| creates a new image from XPM data (beware that XPM data is NOT duplicated!). More... | |
| UIma (const char **xpm_data, UConst) | |
| UIma & | operator= (const UIma &ima2) |
| copies the content of ima2 to this image. More... | |
| void | resize (int width, int height) |
| resizes the image data to the specified size. More... | |
| void | resize (int max_width, int max_height, bool preserve_ratio, bool dont_magnify) |
| resizes this image data according to the specified constraints. More... | |
| bool | rescale (float scale) |
| rescales this image. | |
| bool | rescale (float xscale, float yscale) |
| rescales this image. | |
| virtual int | read (const UStr &filename, int max_width=0, int max_height=0) |
| loads an image file. More... | |
| virtual int | read (const char *filename, int max_width=0, int max_height=0) |
| loads an image file. More... | |
| virtual int | loadFromData (const char **xpm_data) |
| loads XPM data. More... | |
| virtual int | loadNow () |
| loads the image file that was specified by set() or by the constructor. More... | |
| bool | isLoaded () const |
| returns true if the image has been loaded. More... | |
| virtual void | set (const UStr &filename) |
| virtual void | set (const char *filename) |
| virtual void | set (const char **xpm_data) |
| specifies the file name. More... | |
| int | getWidth () const |
| returns the image width (0 if the image is not loaded). | |
| int | getHeight () const |
| returns the image height (0 if the image is not loaded). | |
| int | getBpp () const |
| returns the number of bits per pixel (0 if the image is not loaded). | |
| int | getTransparency () const |
| 0 (opaque), 1(bitmask) or >1(alpha channel). | |
| int | getStatus () const |
| returns the loading status of this image (see UFilestat) | |
| virtual bool | isPix () const |
| returns true if this UIma is in fact a UPix (that derives from UIma). | |
| virtual void | update () |
| update parents' views. | |
| int | realize (int max_w=0, int max_h=0, UDisp *disp=null, bool force_reload=true) const |
| [impl] allocates physical resources and loads the image in memory. More... | |
| bool | isRealized () const |
| [impl] returns true if the image has been sucesfully loaded and initialized. | |
| std::list< UHardIma * > & | getNatImas () const |
| [impl] returns internal implementation. | |
| virtual void | setImpl (const char *fname) |
| virtual void | setImpl (const char **xpm_data) |
| virtual void | setImpl (int width, int height) |
| virtual void | cleanCache () |
| virtual void | getSize (UUpdateContext &, UDimension &) const |
| virtual void | paint (UGraph &, UUpdateContext &, const URect &) const |
| UHardIma * | getOrCreateIma (UDisp *, float xyscale) const |
| UHardIma * | findImaInCache (UDisp *, float xyscale) const |
| UHardIma * | addImaInCache (UDisp *, float xyscale) const |
Public Member Functions inherited from ubit::UData | |
| UABSTRACT_CLASS (UData) | |
| UData (UConst) | |
| virtual int | getDisplayType () const |
| virtual UData * | toData () |
| dynamic cast: returns this object if it derives from UData and null otherwise. | |
| virtual const UData * | toData () const |
| dynamic cast: returns this object if it derives from UData and null otherwise. | |
| virtual UData & | onChange (UCall &) |
| adds a callback that is fired when the value is modified. More... | |
| virtual void | changed (bool update=true) |
| [impl] called when object's content is changed. More... | |
Public Member Functions inherited from ubit::UNode | |
| virtual int | getNodeType () const |
| returns the XML node type. | |
| virtual const UStr & | getNodeName () const |
| return the XML node name. | |
| virtual UStr | getNodeValue () const |
| return the XML node value. | |
| virtual int | isDisplayable () const |
| virtual UNode * | toNode () |
| dynamic cast: returns this object if it derives from UNode and null otherwise. | |
| virtual const UNode * | toNode () const |
| dynamic cast: returns this object if it derives from UNode and null otherwise. | |
| virtual bool | isChildOf (const UElem &parent, bool indirect=true) const |
| returns true if this object a child of 'parent'. More... | |
| UParentIter | pbegin () const |
| returns an iterator to the beginning of the list of direct parents. More... | |
| UParentIter | pend () const |
| returns an iterator to the end of the parent list ( More... | |
| virtual UParents & | parents () const |
| returns the list of direct parents ( More... | |
| virtual UElem * | getParent (int pos=0) const |
| returns the Nth direct parent. More... | |
| virtual bool | hasSceneGraphParent () const |
| template<class CC > | |
| CC * | findParent () const |
| < this object has at least one parent in the scene graph. More... | |
| virtual int | getBoxParents (std::vector< UBox *> &parvect) const |
| retrieves direct and indirect parents that are boxes. | |
| virtual UBox * | getParent (const UView *) const |
| returns the direct or indirect parent that contains this view. More... | |
| virtual UView * | getParentView (const UView *) const |
| returns the direct or indirect parent's view that contains this view. More... | |
| virtual UBox * | getParent (const UInputEvent &) const |
| virtual UView * | getParentView (const UInputEvent &) const |
| virtual void | removeFromParents (bool update_parents=true) |
| [impl] removes this object from all direct parents. More... | |
| virtual bool | fire (UEvent &) const |
| fires callback functions that match this event. | |
| virtual UNode & | removeAllAttrs (bool autodel=true) |
| removes all attributes (if any, redefined by subclasses). | |
| bool | isAutoUpdate () const |
| return current update policy: see setAutoUpdate(). | |
| UNode & | setAutoUpdate (bool state=true) |
| changes the update policy of this object when its is modified. More... | |
| void | fireParents (const UCond &c, UNode *n) const |
| void | updateAutoParents (const UUpdate &m) |
| virtual void | addChangeCall (UCall &) |
| virtual UElem * | getSubGroup () const |
| void | _addAttr (const UChild &attribute) |
| [impl] to be removed @. | |
| UChildIter | _abegin () const |
| [impl] to be removed @. | |
| UChildIter | _aend () const |
| [impl] to be removed @. | |
Public Member Functions inherited from ubit::UObject | |
| UObject (const UObject &) | |
| UObject & | operator= (const UObject &) |
| virtual const UClass & | getClass () const |
| instance method that returns the metaclass of this object. More... | |
| const UStr & | getClassName () const |
| returns getClass().getName(). | |
| virtual void | error (const char *function_name, const char *format,...) const |
| prints out an error message. More... | |
| virtual void | warning (const char *function_name, const char *format,...) const |
| prints out a warning message: More... | |
| bool | isDeletable () const |
| checks if this object can be destroyed by 'delete'. More... | |
| bool | isConst () const |
| checks whether the content of this object can be modified ( More... | |
| UObject & | setConst () |
| specifies that the content of this object cannot be modified. More... | |
| bool | isAutoUpdate () const |
| return current update policy: More... | |
| UObject & | setAutoUpdate (bool state=true) |
| changes the update policy of this object when its is modified. More... | |
| bool | isIgnoringChangeCallbacks () const |
| return true if change callbacks are fired. | |
| UObject & | ignoreChangeCallbacks (bool state) |
| change callbacks are not fired if argument is true. | |
| virtual UAttr * | toAttr () |
| dynamic cast: returns this object if it derives from UAttr and null otherwise. | |
| virtual const UAttr * | toAttr () const |
| dynamic cast: returns this object if it derives from UAttr and null otherwise. | |
| virtual UElem * | toElem () |
| dynamic cast: returns this object if it derives from UElem and null otherwise. | |
| virtual const UElem * | toElem () const |
| dynamic cast: returns this object if it derives from UElem and null otherwise. | |
| virtual UStr * | toStr () |
| dynamic cast: returns this object if it derives from UStr and null otherwise. | |
| virtual const UStr * | toStr () const |
| dynamic cast: returns this object if it derives from UStr and null otherwise. | |
| virtual UCall * | toCall () |
| dynamic cast: returns this object if it derives from UCall and null otherwise. | |
| virtual const UCall * | toCall () const |
| dynamic cast: returns this object if it derives from UCall and null otherwise. | |
| virtual UBox * | toBox () |
| dynamic cast: returns this object if it derives from UBox and null otherwise. | |
| virtual const UBox * | toBox () const |
| dynamic cast: returns this object if it derives from UBox and null otherwise. | |
| virtual UWin * | toWin () |
| dynamic cast: returns this object if it derives from UWin and null otherwise. | |
| virtual const UWin * | toWin () const |
| dynamic cast: returns this object if it derives from UWin and null otherwise. | |
| virtual UMenu * | toMenu () |
| dynamic cast: returns this object if it derives from UMenu and null otherwise. | |
| virtual const UMenu * | toMenu () const |
| dynamic cast: returns this object if it derives from UMenu and null otherwise. | |
| State | getState () const |
| returns the current object state. | |
| void | setState (State s) |
| changes the object state. | |
| PtrCount | getPtrCount () const |
| [impl] returns the number of uptr<> smart pointers that are pointing to this object. | |
| bool | checkConst () const |
| [impl] produces an error if this object is logically constant ( More... | |
| bool | isDestructed () const |
| [impl] this object has been destructed (but memory has not been freed yet). | |
| bool | isDestructing () const |
| [impl] this object is being destructed (one of its destructors has been called). | |
| void * | operator new (size_t) |
| < [impl] returns true if there is at least one scene graph parent (redefined by UNode). More... | |
| void | operator delete (void *) |
| delete operator is forbidden on instances that derive from UObject. | |
| void | addPtr () const |
| [Impl] a uptr is added to this object. | |
| void | removePtr () const |
| [Impl] a uptr is removed from this object. | |
Static Public Member Functions | |
| static void | getFullPath (UStr &fullpath, const char *filename) |
| gets the full image pathname. More... | |
Static Public Member Functions inherited from ubit::UObject | |
| static const char * | getVersion () |
| returns the version of the Ubit package. | |
| static const UClass & | Class () |
| class method that returns the metaclass of this class. More... | |
| static UStyle * | createStyle () |
Protected Types | |
| enum | Mode { EMPTY, CREATE, READ_FROM_FILE, READ_FROM_DATA } |
Protected Attributes | |
| std::list< UHardIma * > | natimas |
| char * | name |
| const char ** | data |
| signed char | stat |
| char | mode |
| bool | show_unknown_ima |
Protected Attributes inherited from ubit::UNode | |
| UParents | _parents |
| UChildren | _attributes |
Protected Attributes inherited from ubit::UObject | |
| PtrCount | ptr_count |
| Modes | omodes |
| State | ostate |
Friends | |
| class | UBox |
| class | UHardIma |
| class | UPix |
Additional Inherited Members | |
Public Types inherited from ubit::UNode | |
| enum | NodeType { ELEMENT_NODE = 1, ATTRIBUTE_NODE = 2, TEXT_NODE = 3, CDATA_SECTION_NODE = 4, ENTITY_REFERENCE_NODE = 5, ENTITY_NODE = 6, PROCESSING_INSTRUCTION_NODE = 7, COMMENT_NODE = 8, DOCUMENT_NODE = 9, DOCUMENT_TYPE_NODE = 10, DOCUMENT_FRAGMENT_NODE = 11, NOTATION_NODE = 12 } |
| redefines Class() and getClass() methods ( More... | |
| enum | DisplayType { WINLIST =-1, UNDISPLAYBLE =0, ATTRIBUTE, DATA, INLINE, BLOCK, BORDER, HARDWIN, SOFTWIN } |
| Ubit display types. | |
Public Types inherited from ubit::UObject | |
| typedef unsigned char | State |
| typedef short | PtrCount |
Static Public Attributes inherited from ubit::UObject | |
| static UConst | UCONST |
| UCONST can be given as an argument to some constructors to make the object constant. More... | |
Protected Member Functions inherited from ubit::UNode | |
| UNode () | |
| constructor, can anly be called by subclasses because UNode is abstract. | |
| virtual | ~UNode () |
| destructor, note that children are recursively destroyed except if pointed elsewhere ( More... | |
| virtual void | addingTo (UChild &, UElem &parent) |
| called when this object is added to a parent. | |
| virtual void | removingFrom (UChild &, UElem &parent) |
| called when this object is removed from a parent (SEE DETAILS IF YOU REDEFINE THIS METHOD). More... | |
| virtual void | destructs () |
| unlinks the object from its parents and destroys its children. | |
Image.
Depending on the constructor, one can create: an empty image, an image that is loaded from a JPEG, GIF or XPM file (see below) or an image that uses XPM data compiled in the program code.
Loading a file image. By default, the constructor does not load the file immediately but first time the UIma is displayed on the screen (but an optional arg changes this behavior). The load() and read() functions can also be used to (re)load a file.
Filename and formats:
Loading compiled XPM data XPM data is compiled in the program code. It is not duplicated and must not be freed. As for files, the data is loaded when the image appers for the fisrt time.
Alpha channel and Background Transparency
| ubit::UIma::UIma | ( | const char * | filename = null, |
| bool | load_now = false |
||
| ) |
| ubit::UIma::UIma | ( | const UStr & | filename, |
| bool | load_now = false |
||
| ) |
| ubit::UIma::UIma | ( | const char ** | xpm_data, |
| bool | load_now = false |
||
| ) |
creates a new image from XPM data (beware that XPM data is NOT duplicated!).
By default, the data is NOT loaded immediately but the first time the UIma is displayed on the screen. 'load_now' = true, forces the data to be loaded immediately
!NOTE that the XPM data is not duplicated and should NEVER be freed!
|
static |
gets the full image pathname.
UAppli::getImaPath() (the default image pathname) is prefixed to image filenames that don't start with / or .
|
inline |
|
virtual |
loads XPM data.
the XPM data is not duplicated and should not be destroyed. note: use UIma::set() instead of read() to postone loading.
|
virtual |
loads the image file that was specified by set() or by the constructor.
returns the reading status (
copies the content of ima2 to this image.
bewaee that no action is performed if ima2 has not yet been loaded (
|
virtual |
loads an image file.
calls resize(max_width,max_height,true,true) if max_width and max_height are >0. returns the reading status (
|
virtual |
loads an image file.
calls resize(max_width,max_height,true,true) if max_width and max_height are >0. returns the reading status (
| int ubit::UIma::realize | ( | int | max_w = 0, |
| int | max_h = 0, |
||
| UDisp * | disp = null, |
||
| bool | force_reload = true |
||
| ) | const |
[impl] allocates physical resources and loads the image in memory.
this function is automatically called when this image is displayed for the first time: there no need to call it in client code. details:
|
inline |
resizes the image data to the specified size.
| void ubit::UIma::resize | ( | int | max_width, |
| int | max_height, | ||
| bool | preserve_ratio, | ||
| bool | dont_magnify | ||
| ) |
resizes this image data according to the specified constraints.
the new size will be inferior or egal to the one specified according to:
|
virtual |
specifies the file name.
the file is not loaded immediately but when the image appears for the first time. Call load() to load the file immediately.
|
virtual |
!att: NOT copied!
1.8.12