Gadget class. More...
#include <ilviews/gadmgr/gadmgr.h>
Public Member Functions | |
IlvGadgetManager (IlvDisplay *display, int layers=2, IlBoolean useacc=IlTrue, IlUShort maxInList=IlvMaxObjectsInList, IlUShort maxInNode=IlvMaxObjectsInList) | |
Initializes a new instance of the IlvGadgetManager class. More... | |
virtual void | addObject (const char *, IlvGraphic *, IlBoolean=IlTrue, int=-1) |
Adds a graphic object to a manager, and then names the object. More... | |
virtual void | addObject (IlvGraphic *, IlBoolean=IlTrue, int=-1) |
Adds an object to the manager. More... | |
virtual void | addView (IlvView *) |
Adds a view to the manager. More... | |
virtual IlBoolean | allowFocus (IlBoolean flag) |
Enable or disables keyboard focus handling. More... | |
void | applyResize (IlvView *view, IlBoolean redraw=IlTrue) |
Resolves attachment constraints when the view is resized. More... | |
virtual void | applyResize (IlvView *view, IlFloat sx, IlFloat sy, IlBoolean redraw=IlTrue) |
Resolves attachment constraints when the view is resized. More... | |
void | applyResize (IlvView *view, IlvGraphic *g, IlBoolean redraw=IlTrue) |
Resolves attachment constraints for an object when the view is resized. More... | |
virtual void | applyResize (IlvView *view, IlvGraphic *g, IlFloat sx, IlFloat sy, IlBoolean redraw=IlTrue) |
Resolves attachment constraints for an object when the view is resized. More... | |
IlBoolean | autoResize (IlBoolean a) |
Sets the auto resizing mechanism. More... | |
virtual IlBoolean | dispatchToObjects (IlvEvent &, IlvView *) |
Dispatches an event to the appropriate graphic objects. More... | |
virtual void | drawFocus (IlvPort *dst, const IlvTransformer *t=0, const IlvRegion *clip=0) const |
Draws the representation of the keyboard focus. More... | |
virtual IlvGraphic * | getFirstFocusGraphic () const |
Returns the first graphic object in the focus chain. More... | |
virtual IlvGraphic * | getFocus () const |
Returns the graphic object with the keyboard focus. More... | |
virtual IlvGraphic * | getGrab () const |
Returns the grabbing graphic object. More... | |
virtual IlvGraphic * | getLastFocusGraphic () const |
Returns the last graphic object in the focus chain. More... | |
IlvLookFeelHandler * | getLookFeelHandler () const |
Returns the look and feel handler associated with this gadget manager. More... | |
virtual IlvGraphic * | getNextFocusGraphic (IlvGraphic *object) const |
Returns the next graphic object in the focus chain. More... | |
virtual IlvGraphic * | getPreviousFocusGraphic (IlvGraphic *object) const |
Returns the previous graphic object in the focus chain. More... | |
IlBoolean | isAutoResizing () const |
Indicates whether the auto resizing mechanism is enabled. More... | |
virtual IlBoolean | isFocusAllowed () const |
Indicates if keyboard focus handling is enabled. More... | |
virtual void | moveFocusAfter (IlBoolean redraw=IlTrue) |
Moves the keyboard focus to the next graphic object in the focus chain. More... | |
virtual void | moveFocusBefore (IlBoolean redraw=IlTrue) |
Moves the keyboard focus to the previous graphic object in the focus chain. More... | |
virtual void | removeGrab () |
Removes any grab that has been set in this manager. More... | |
virtual IlBoolean | removeView (IlvView *) |
Removes a view from the manager view list. More... | |
virtual void | setBackground (IlvView *view, IlvColor *color, IlvBitmap *bitmap=0) |
Sets the background of a manager view. More... | |
virtual void | setFocus (IlvGraphic *graphic=0, IlBoolean redraw=IlTrue) |
Sets the keyboard focus on a graphic object. More... | |
virtual void | setGrab (IlvGraphic *object) |
Sets a graphic object to grab events. More... | |
void | setLookFeelHandler (IlvLookFeelHandler *lfh) |
Sets the look and feel handler of this gadget manager. More... | |
virtual void | setSelected (IlvGraphic *, IlBoolean=IlTrue, IlBoolean=IlTrue) |
Selects or deselects a graphic object. More... | |
Public Member Functions inherited from IlvManager | |
IlvManager (IlvDisplay *display, int layers=2, IlBoolean useacc=IlTrue, IlUShort maxInList=IlvMaxObjectsInList, IlUShort maxInNode=IlvMaxObjectsInList) | |
Initializes a new instance of IlvManager . More... | |
virtual | ~IlvManager () |
Destructor. More... | |
IlvMgrView * | getView (const IlvView *v) const |
Returns the IlvMrgView of a manager view. More... | |
void | applyInside (int layer, IlvApplyObject func, IlAny arg, const IlvRect &rect, const IlvTransformer *t=0, IlBoolean redraw=IlTrue) |
Applies a user function to objects of a layer located in a rectangle. More... | |
void | applyIntersects (int layer, IlvApplyObject func, IlAny arg, const IlvRect &rect, const IlvTransformer *t=0, IlBoolean redraw=IlTrue) |
Applies a user function to objects of a layer intersecting a rectangle. More... | |
void | applyInside (IlvApplyObject func, IlAny arg, const IlvRect &rect, const IlvTransformer *t=0, IlBoolean redraw=IlTrue) |
Applies a user function to graphic objects located in a rectangle. More... | |
void | applyIntersects (IlvApplyObject func, IlAny arg, const IlvRect &rect, const IlvTransformer *t=0, IlBoolean redraw=IlTrue) |
Applies a user function to graphic objects intersecting a rectangle. More... | |
IlBoolean | isInApply () const |
Indicates if an applyTo...() method is being executed. More... | |
virtual void | applyToObjects (IlUInt count, IlvGraphic *const *objects, IlvApplyObject func, IlAny arg, IlBoolean redraw=IlTrue) |
Applies a user function to a set of graphic objects. More... | |
virtual void | applyToObjects (IlUInt count, IlvGraphic *const *objects, IlvApplyFunction func, IlAny arg, IlBoolean redraw=IlTrue) |
Applies a user function to a set of graphic objects. More... | |
virtual void | applyToObjects (int layer, IlvApplyObject func, IlAny arg, IlBoolean redraw=IlTrue) |
Applies a user function to all graphic objects of a manager layer. More... | |
virtual void | applyToObjects (int layer, IlvApplyFunction func, IlAny arg, IlBoolean redraw=IlTrue) |
Applies a user function to the graphic objects of a manager layer. More... | |
virtual void | applyToObject (IlvGraphic *object, IlvApplyObject func, IlAny arg, IlBoolean redraw=IlTrue) |
Applies a user function to a graphic object. More... | |
IlvManagerObjectInteractor * | getObjectInteractor (const IlvGraphic *object) const |
The object interactor associated with a graphic object. More... | |
IlBoolean | setObjectInteractor (IlvGraphic *object, IlvManagerObjectInteractor *i) |
Sets an object interactor on a graphic object. More... | |
void | setInteractor (IlvManagerViewInteractor *i, const IlvView *view=0) |
Sets a view interactor on a manager view. More... | |
void | removeInteractor (const IlvView *view) |
Removes the view interactor from a manager view. More... | |
IlvManagerViewInteractor * | getInteractor (const IlvView *view) const |
Returns the view interactor associated with a manager view. More... | |
void | registerCallback (const char *callbackName, IlvGraphicCallback callback) |
Registers a callback and its name. More... | |
void | unregisterCallback (const char *callbackName) |
Removes the callback function registered with the specified name from the callback list. More... | |
virtual char * | cut (IlUInt &count) |
Saves the selected graphic objects in a string and then deletes them. More... | |
virtual char * | copy (IlUInt &count) |
Saves all the selected graphic objects in a string. More... | |
virtual void | paste (const IlvView *view, const char *str, IlvPoint &location) |
Reads graphic objects from a string. More... | |
void | cutToClipboard () |
Saves the selected graphic objects in the clipboard and deletes them. More... | |
void | copyToClipboard () |
Saves the selected graphic objects in the clipboard. More... | |
void | pasteFromClipboard (const IlvView *view, IlvPoint &location) |
Reads graphic objects from the clipboard and adds them to the manager. More... | |
virtual IlvGraphicSet * | group (IlUInt count, IlvGraphic *const *objects) |
Groups several graphic objects. More... | |
virtual void | unGroup (IlvGraphic *object, IlBoolean undoCommand=IlTrue) |
Ungroups the graphic objects of a graphic set. More... | |
virtual void | eraseRegion (IlvView *view, const IlvRegion ®ion) const |
Erases a region of a manager view. More... | |
virtual void | draw (IlvView *view, IlBoolean erase, const IlvRegion *clip=0) const |
Draws the graphic objects of the manager in a manager view. More... | |
void | draw (IlvPort *dst, const IlvTransformer *t=0, const IlvRegion *region=0, const IlvRegion *clip=0) const |
Draws the contents of a manager in a destination port. More... | |
void | draw (int layer, IlvPort *dst, const IlvTransformer *t=0, const IlvRegion *region=0, const IlvRegion *clip=0) const |
Draws the contents of a manager layer in a destination port. More... | |
void | draw () const |
Draws the contents of the manager. More... | |
void | reDraw () const |
Erases all manager views and draws the contents of the manager. More... | |
void | reDraw (const IlvGraphic *object, IlBoolean erase=IlTrue) const |
Draws a graphic object in all manager views. More... | |
void | reDraw (IlUInt count, const IlvGraphic *const *objects, IlBoolean erase=IlTrue) const |
Draws a set of graphic objects in all manager views. More... | |
void | bufferedDraw (IlvView *view, const IlvRect &rect) const |
Redraws a rectangular area of a manager view by means of a temporary pixmap. More... | |
void | bufferedDraw (IlvView *view, const IlvRegion ®ion) const |
Redraws a region of a manager view by means of a temporary pixmap. More... | |
void | bufferedDraw (IlvView *view, const IlvGraphic *object) const |
Draws a graphic object in a manager view by means of a temporary pixmap. More... | |
const char * | getName () const |
Returns the name of the manager. More... | |
virtual void | setName (const char *name) |
Sets the name of the manager. More... | |
IlvDisplay * | getDisplay () const |
Returns the display. More... | |
IlvPalette * | getPalette () const |
Returns the manager palette. More... | |
IlBoolean | isModified () const |
Indicates whether the manager contents have been modified. More... | |
void | setModified (IlBoolean value) |
Sets the modification status of the manager. More... | |
IlUInt | getCardinal () const |
Returns the number of graphic objects. More... | |
virtual IlvGraphic *const * | getObjects (IlUInt &count) const |
Returns the graphic objects stored in the manager. More... | |
virtual IlvGraphic *const * | getObjects (int layer, IlUInt &count) const |
Returns the graphic objects stored in a manager layer. More... | |
virtual IlvGraphic * | lastContains (const IlvPoint &p, const IlvView *view) const |
Returns the graphic object containing a given point. More... | |
IlvGraphic * | lastContains (int layer, const IlvPoint &p, const IlvView *view) const |
Returns the graphic object containing a given point in a layer. More... | |
IlvGraphic * | filteredLastContains (const IlvPoint &p, const IlvView *view, const IlvGraphicFilter &f) const |
Returns the graphic object containing a given point. More... | |
IlvGraphic * | filteredLastContains (int layer, const IlvPoint &p, const IlvView *view, const IlvGraphicFilter &f) const |
Returns the graphic object containing a given point in a layer. More... | |
IlvGraphic *const * | allContains (const IlvPoint &p, const IlvView *view, IlUInt &count) const |
Returns all graphic objects containing a given point. More... | |
IlvGraphic *const * | allContains (int layer, const IlvPoint &p, const IlvView *view, IlUInt &count) const |
Returns all graphic objects containing a given point in a layer. More... | |
IlvGraphic * | firstIntersects (const IlvRegion &tr, const IlvTransformer *t) const |
Returns the first object intersecting a region. More... | |
IlvGraphic * | firstIntersects (int layer, const IlvRegion &tr, const IlvTransformer *t) const |
Returns the first object of a layer intersecting a region. More... | |
IlvGraphic *const * | allInside (IlUInt &count, const IlvRect &rect, const IlvTransformer *t=0) const |
Returns all graphic objects located in a rectangle. More... | |
IlvGraphic *const * | allIntersects (IlUInt &count, const IlvRect &rect, const IlvTransformer *t=0) const |
Returns all graphic objects intersecting a rectangle. More... | |
IlvGraphic *const * | allIntersects (int layer, IlUInt &count, const IlvRect &rect, const IlvTransformer *t=0) const |
Returns all graphic objects of a layer intersecting a rectangle. More... | |
IlvGraphic *const * | allInside (int layer, IlUInt &count, const IlvRect &rect, const IlvTransformer *t=0) const |
Returns all graphic objects of a layer located in a rectangle. More... | |
IlUInt | getCardinal (int layer) const |
Returns the number of graphic objects in a layer. More... | |
virtual void | contentsChanged () |
Called automatically by the manager each time objects are created, removed, moved, or resized in the manager. More... | |
void | setCleanFunction (IlvApplyObject func) |
Sets a function to be called when an object is removed from the manager. More... | |
void | computeBBox (IlvRect &bbox, const IlvTransformer *t=0) const |
Computes the bounding box of all the objects stored in all the visible layers. More... | |
void | computeBBox (IlvRect &bbox, const IlvView *view) const |
Computes the bounding box of all the objects. More... | |
IlvManagerGrid * | getGrid (const IlvView *view) const |
Returns the manager grid associated with a manager view. More... | |
void | setGrid (IlvView *const view, IlvManagerGrid *grid) |
Sets a manager grid on a manager view. More... | |
void | snapToGrid (const IlvView *view, IlvPoint &p) const |
Moves a given point to the closest grid point on a manager view. More... | |
IlBoolean | transformThroughGrid (const IlvView *view, IlvPoint &p) const |
Transforms and moves a given point on a manager view to the closest grid point in the manager coordinate system. More... | |
virtual IlvManagerInputFile * | createInputFile (std::istream &stream) |
Creates an IlvManagerInputFile from an input stream. More... | |
virtual IlvManagerOutputFile * | createOutputFile (std::ostream &stream) const |
Creates an IlvManagerOutputFile from an output stream. More... | |
virtual void | save (std::ostream &stream) const |
Saves all the graphic objects in an output stream. More... | |
virtual void | read (std::istream &stream) |
Reads a set of graphic objects from the specified input stream. More... | |
virtual void | read (const char *filename) |
Loads a Rogue Wave Views data file. More... | |
IlBoolean | installEventHook (const IlvManagerEventHook *hook) |
Installs an event hook on the manager. More... | |
IlvManagerEventHook * | removeEventHook (const IlvManagerEventHook *hook) |
Removes and returns an event hook installed on the manager. More... | |
virtual IlBoolean | shortCut (IlvEvent &event, IlvView *view) |
Dispatches an incoming event to manager accelerators. More... | |
void | addAccelerator (IlvManagerAcceleratorAction f, IlvEventType type, IlUShort buttonOrKey=0, IlUShort modifiers=0, IlAny userArg=0, IlUShort optModifiers=0) |
Adds an accelerator to the manager. More... | |
void | removeAccelerator (IlvEventType type, IlUShort buttonOrKey=0, IlUShort modifiers=0) |
Removes the accelerator matching the event description. More... | |
IlBoolean | getAccelerator (IlvManagerAcceleratorAction *f, IlAny *userArg, IlvEventType type, IlUShort buttonOrKey=0, IlUShort modifiers=0) |
Gets an accelerator action matching an event description. More... | |
void | removeAccelerators () |
Removes all accelerators. More... | |
IlBoolean | setDoubleBuffering (const IlvView *view, IlBoolean useDblBuffering) |
Enables or disables double buffering for a manager view. More... | |
IlBoolean | isDoubleBuffering (const IlvView *view) const |
Indicates whether double buffering is used for a manager view. More... | |
IlBoolean | isVisible (int layer) const |
Indicates whether a layer is considered visible by the manager. More... | |
void | setVisible (int layer, IlBoolean visible) |
Sets the visibility of a layer for the manager. More... | |
IlBoolean | isVisible (const IlvView *view, int layer) const |
Indicates the visibility of a layer in a manager view. More... | |
void | setVisible (const IlvView *view, int layer, IlBoolean visible) |
Sets the visibility of a layer for a manager view. More... | |
IlBoolean | isSelectable (int layer) const |
Indicates if a manager layer allows the selection of its graphic objects. More... | |
void | setSelectable (int layer, IlBoolean selectable) |
Enables or disables the selection of graphic objects in a manager layer. More... | |
virtual void | pop (IlvGraphic *object, IlBoolean redraw=IlTrue) |
Moves a graphic object higher in the drawing stacking order. More... | |
virtual void | push (IlvGraphic *object, IlBoolean redraw=IlTrue) |
Moves a graphic object lower in the drawing stacking order. More... | |
IlvManagerLayer * | getManagerLayer (const IlvGraphic *object) const |
Returns the IlvManagerLayer instance of a graphic object. More... | |
int | getLayer (const IlvGraphic *object) const |
Returns the manager layer containing a given graphic object. More... | |
void | setLayer (IlvGraphic *object, int layer, IlBoolean redraw=IlTrue) |
Moves a graphic object to a given manager layer. More... | |
int | getNumLayers () const |
Returns the number of manager layers. More... | |
void | setNumLayers (int numLayers) |
Sets the number of manager layers. More... | |
void | swapLayers (int layer1, int layer2, IlBoolean redraw=IlTrue) |
Swaps the contents of two manager layers. More... | |
void | addLayer (int position=-1, IlUShort maxInList=IlvMaxObjectsInList, IlUShort maxInNode=IlvMaxObjectsInList) |
Adds a layer to the manager. More... | |
void | removeLayer (int layer=-1) |
Removes a layer from the manager. More... | |
int | addLayer (IlvManagerLayer *layer, int position=-1) |
Adds a layer to the manager. More... | |
IlvManagerLayer * | getManagerLayer (int index) const |
Returns the IlvManagerLayer instance from its index. More... | |
int | getLayerIndex (const IlvManagerLayer *layer) const |
Returns the index of a manager layer instance. More... | |
IlvMakeSelection | setMakeSelection (IlvMakeSelection func) |
Sets the function that creates a selection object for a graphic object. More... | |
IlBoolean | installSelectionHook (const IlvManagerSelectionHook *hook) |
Sets a selection hook on the manager. More... | |
IlvManagerSelectionHook * | removeSelectionHook (const IlvManagerSelectionHook *hook) |
Removes the selection hook from the manager, if it is installed. More... | |
void | applyToSelections (IlvApplyObject func, IlAny arg, IlBoolean redraw=IlTrue) |
Applies a user function to the selected graphic objects. More... | |
IlUInt | numberOfSelections () const |
Returns the number of selected graphic objects. More... | |
virtual void | deSelectAll (IlBoolean redraw=IlTrue) |
Deselects the selected graphic objects. More... | |
virtual void | selectAll (IlBoolean redraw=IlTrue) |
Selects all the objects of the manager. More... | |
IlvGraphic *const * | getSelections (IlUInt &count) const |
Returns the selected graphic objects. More... | |
IlvDrawSelection * | getSelection (const IlvGraphic *object) const |
Returns the selection object of a graphic object. More... | |
IlvGraphic *const * | sortObjects (IlvGraphic *const *objs, IlUInt count) const |
Sorts a set of object. More... | |
IlBoolean | isSelected (const IlvGraphic *obj) const |
Indicates if a graphic object is selected. More... | |
virtual void | duplicate (IlvPos dx=0, IlvPos dy=0) |
Duplicates the selected graphic objects. More... | |
virtual void | deleteSelections (IlBoolean redraw=IlTrue) |
Removes the selected objects from the manager and deletes them if undo is disabled. More... | |
IlvSmartSet * | getSmartSet (const char *name) const |
Gets a smartset by its name. More... | |
virtual IlBoolean | addSmartSet (IlvSmartSet *set, IlBoolean redraw=IlTrue) |
Adds a smartset to the manager. More... | |
virtual IlBoolean | removeSmartSet (IlvSmartSet *set) |
Removes a smartset from the manager. More... | |
virtual IlvSmartSet * | duplicateSmartSet (IlvSmartSet *set, IlvPos dx=0, IlvPos dy=0) |
Makes a copy of a smartset. More... | |
IlBoolean | isUndoEnabled () const |
Indicates whether the manager lets you undo commands. More... | |
void | setUndoEnabled (IlBoolean enable) |
Enables or disables the possibility of undoing commands in the manager. More... | |
void | forgetUndo () |
Resets the undo command queue. More... | |
virtual void | repeat () |
Executes again the last command. | |
virtual void | reDo (IlBoolean unused) |
Executes again the last canceled command. More... | |
virtual void | unDo () |
Cancels the most recent command, leaving manager objects as they were before the previous command was applied. | |
virtual void | addCommand (IlvCommand *command) |
Appends a new command to the command queue. More... | |
IlvCommandHistory * | getCommandHistory () const |
Returns the object which handles the stack of commands. More... | |
void | installViewHook (const IlvManagerViewHook *hook) |
Adds a view hook to the manager. More... | |
void | removeViewHook (const IlvManagerViewHook *hook) |
Removes a view hook from the manager. More... | |
IlvManagerViewHook *const * | getViewHooks (const IlvView *view, IlUInt &count) const |
Gets the view hooks of a manager view. More... | |
virtual void | translateObject (IlvGraphic *object, IlvPos dx, IlvPos dy, IlBoolean redraw=IlTrue) |
Translates a graphic object. More... | |
void | moveObject (IlvGraphic *object, IlvPos x, IlvPos y, IlBoolean redraw=IlTrue) |
Moves a graphic object. More... | |
virtual void | reshapeObject (IlvGraphic *object, const IlvRect &bbox, IlBoolean redraw=IlTrue) |
Resizes a graphic object to fit in a rectangle. More... | |
virtual void | align (IlvPosition alignment, IlBoolean redraw=IlTrue) |
Aligns the selected objects. More... | |
virtual void | makeColumn (IlvDim spacing=0, IlBoolean redraw=IlTrue) |
Arranges the selected graphic objects in a column. More... | |
virtual void | makeRow (IlvDim spacing=0, IlBoolean redraw=IlTrue) |
Arranges the selected graphic objects in a row. More... | |
virtual void | sameWidth (IlBoolean redraw=IlTrue) |
Resizes the selected graphic objects to the same width. More... | |
virtual void | sameHeight (IlBoolean redraw=IlTrue) |
Resizes the selected graphic objects to the same height. More... | |
IlvPalette * | getCreatorPalette () const |
Gets the default palette used to create graphic objects interactively. More... | |
void | setCreatorPalette (IlvPalette *palette) |
Sets the default palette used to create new graphic objects interactively. More... | |
int | getInsertionLayer () const |
Gets the default layer used to store the graphic objects created interactively. More... | |
void | setInsertionLayer (int layer=-1) |
Sets the layer where new objects created interactively using the predefined interactors will be stored. More... | |
void | initReDraws () |
Initializes the manager so that calls to invalidateRegion() can begin. More... | |
void | invalidateRegion (const IlvGraphic *object) |
Invalidates the bounding box of a graphic object. More... | |
void | invalidateRegion (const IlvRect &rect) |
Invalidates a rectangle. More... | |
void | invalidateRegion (const IlvView *view, const IlvRect &rect) |
Invalidates a rectangle in a manager view. More... | |
void | invalidateRegion (const IlvRegionUpdater &updater, const IlvGraphic *g=0) |
Updates the invalidated region. More... | |
void | reDrawViews (IlBoolean erase=IlTrue) |
Draws the invalidated regions. More... | |
void | abortReDraws () |
Resets the invalidated regions. More... | |
virtual void | flushRedraw () |
Performs the actual redraw of invalid regions. More... | |
void | disableRedrawTask () |
Deactivates the lazy redraw mechanism. More... | |
IlvReDrawMode | getReDrawMode () const |
Returns the redraw mode of the manager. More... | |
void | setReDrawMode (IlvReDrawMode reDrawMode) |
Sets the redraw mode of the manager. More... | |
IlBoolean | isInvalidating () const |
Indicates whether the manager is in a phase of invalidating regions. More... | |
IlvGraphic *const * | getTaggedObjects (const IlSymbol *tag, IlUInt &count) const |
Returns the graphic objects associated with a given tag. More... | |
void | setTaggedObjectsSelected (const IlSymbol *tag, IlBoolean selected=IlTrue, IlBoolean redraw=IlTrue) |
Selects or deselects the graphic objects associated with a given tag. More... | |
void | removeTaggedObjects (const IlSymbol *tag, IlBoolean redraw=IlTrue) |
Removes graphic objects associated with a given tag. More... | |
void | applyToTaggedObjects (const IlSymbol *tag, IlvApplyObject func, IlAny arg, IlBoolean redraw=IlTrue) |
Applies a user function to all graphic objects associated with a given tag. More... | |
IlvView ** | getViews (IlUInt &count) const |
Returns the array of views associated with the manager. More... | |
IlvView * | getFirstView () const |
Returns the first view associated with the manager. More... | |
IlvTransformer * | getTransformer (const IlvView *view) const |
Returns the transformer associated with a manager view. More... | |
virtual void | setTransformer (const IlvView *view, IlvTransformer *t=0) |
Sets a transformer to a manager view. More... | |
virtual void | addTransformer (const IlvView *view, IlvTransformer *t=0) |
Composes a manager view transformer with another transformer. More... | |
void | translateView (const IlvView *view, IlvPos dx, IlvPos dy, IlBoolean redraw=IlTrue) |
Scroll the contents of a manager. More... | |
void | zoomView (const IlvView *view, const IlvPoint &point, IlFloat scalex, IlFloat scaley, IlBoolean redraw=IlTrue) |
Zoom the contents of a manager view. More... | |
void | rotateView (const IlvView *view, const IlvPoint &point, IlFloat angle, IlBoolean redraw=IlTrue) |
Rotates the contents of a manager view. More... | |
void | fitTransformerToContents (const IlvView *view, IlBoolean redraw=IlTrue, IlBoolean ratio=IlFalse) |
Rescales the contents of a manager view to fit in the view. More... | |
void | fitToContents (IlvView *view) |
Resizes a manager view to fit the bounding box of the graphic objects. More... | |
IlBoolean | isKeepingAspectRatio (const IlvView *view) const |
Indicates whether a manager view preserves the x/y ratio. More... | |
void | setKeepingAspectRatio (const IlvView *view, IlBoolean ratio=IlTrue, IlBoolean redraw=IlTrue) const |
Sets or unsets the automatic preservation of the x/y ratio in a manager view. More... | |
void | ensureVisible (IlvView *view, const IlvPoint &point) |
Translates the contents of a manager view in order to make a given location visible. More... | |
void | ensureVisible (IlvView *view, const IlvRect &rect) |
Translates the contents of a manager view in order to make a given rectangle visible. More... | |
virtual IlBoolean | removeObject (IlvGraphic *object, IlBoolean redraw=IlTrue, IlBoolean destroyIt=IlTrue) |
Removes a graphic object from the manager set. More... | |
IlvDrawSelection * | whichSelection (const IlvPoint &p, const IlvView *view) const |
Returns the selection object located at the given location. More... | |
IlBoolean | isVisible (const IlvGraphic *object) const |
Indicates whether a graphic object is visible. More... | |
IlBoolean | isVisible (const IlvGraphic *graphic, IlvView *view) const |
Indicates whether a graphic object is visible in a manager view. More... | |
void | setVisible (IlvGraphic *object, IlBoolean visible, IlBoolean redraw=IlFalse) |
Sets the visibility of a graphic object in the manager to visible. More... | |
const char * | getObjectName (const IlvGraphic *object) const |
Returns the name of a graphic object. More... | |
virtual IlBoolean | setObjectName (IlvGraphic *object, const char *name) |
Sets the name of a graphic object in the manager. More... | |
IlvGraphic * | getObject (const char *name) const |
Gets a graphic object by its name. More... | |
virtual IlBoolean | isSelectable (const IlvGraphic *obj) const |
Indicates if a graphic object can be selected. More... | |
virtual void | setSelectable (IlvGraphic *object, IlBoolean selectable) |
Sets a graphic object as selectable or not selectable. More... | |
IlBoolean | isMoveable (const IlvGraphic *object) const |
Indicates if a graphic object can be moved. More... | |
void | setMoveable (IlvGraphic *object, IlBoolean moveable) |
Sets the moveability of a graphic object. More... | |
IlBoolean | isResizeable (const IlvGraphic *object) const |
Indicates if a graphic object can be resized. More... | |
void | setResizeable (IlvGraphic *object, IlBoolean resizable) |
Sets a graphic object as resizable or not resizable. More... | |
IlBoolean | isEditable (const IlvGraphic *object) const |
Indicates whether a graphic object can be edited. More... | |
void | setEditable (IlvGraphic *object, IlBoolean editable) |
Indicates whether a graphic object can be edited. More... | |
IlBoolean | isManaged (const IlvGraphic *object) const |
Indicates whether a graphic object is stored by the manager. More... | |
IlBoolean | isASelection (const IlvGraphic *object) const |
Indicates if a graphic object is a selection object. More... | |
virtual void | deleteAll (IlBoolean destroy, IlBoolean redraw) |
Removes all the graphic objects from the manager. More... | |
virtual void | deleteAll (int layer, IlBoolean destroy, IlBoolean redraw) |
Removes all the objects stored in a specified layer of the manager. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from IlvManager | |
static IlvManager * | Get (const IlvView *view) |
Returns the manager connected to the specified view, if any. More... | |
static IlvManager * | getManager (const IlvGraphic *object) |
Gets the manager holding a given graphic object. More... | |
Gadget class.
Library: ilvgadmgr
The IlvGadgetManager
class creates a manager that is specifically designed to handle gadgets. It has special member functions handling the input focus and the grabbing of an object (so that the object interactor attached to the grabbing object receives every event). This class also manages the attachments of objects to the view in which they are located.
The input focus determines which gadget must receive keyboard events when a view gets the focus. The IlvGadgetManager
has a keyboard navigation mechanism allowing the end user to give the input focus to any gadget by cycling through the list of objects using the Tab
key (and sometimes the arrow keys). The IlvGadgetManager
must decide which gadget will be the next to get the input focus at each step of keyboard navigation; the default algorithm is based on the geometry of the gadgets (from left to right and from top to bottom). The programmer can force the use of a given order in keyboard navigation, that is, define its own focus chain.
Although the IlvManager
class allows you, if your display device has touch-screen capability, to use it to pan, zoom or rotate the associated views using regular multi-touch gestures, the IlvGadgetManager
does not: you usually do not want gadget managers to change their view IlvTransformer
s.
If you do want this, you can set the environment variable ILVTOUCHSCREENNAVIGATION
or the display resource touchScreenNavigation
to true
. This will force this behavior for every window of your application, and therefore on all manager views.
You can also set the display resource touchScreenNavigation
specifically for your views class or identifier, and/or your manager class or name.
IlvGraphic
("Gadget Properties" and "Focus Chain
Management" member functions). IlvGadgetManager::IlvGadgetManager | ( | IlvDisplay * | display, |
int | layers = 2 , |
||
IlBoolean | useacc = IlTrue , |
||
IlUShort | maxInList = IlvMaxObjectsInList , |
||
IlUShort | maxInNode = IlvMaxObjectsInList |
||
) |
Initializes a new instance of the IlvGadgetManager
class.
The initialization parameters are the same as those described for the IlvManager
class.
IlvManager::IlvManager()
.
|
virtual |
Adds a graphic object to a manager, and then names the object.
This function is equivalent to
If the object has a name that is already in use in the manager, the name is removed from the object. For more information, see the description of the addObject()
member function.
name | Specifies the name to set on the object. |
object | The graphic object. |
redraw | Indicates whether the manager must immediately display the object. |
layer | Specifies the layer index where the object must be inserted. The default value -1 indicates that the object is stored in the last (topmost) layer. |
addObject()
member function. Reimplemented from IlvManager.
|
virtual |
Adds an object to the manager.
If an object is inserted in a non-existent layer, the layer, as well as any intermediate ones, are automatically created. For example, by default, a manager is created with three layers (0
, 1
and 2
); the code
creates layers 3
, 4
, and 5
.
An object cannot be added to a manager more than once.
object | The graphic object. |
redraw | Indicates whether the manager must immediately display the object. |
layer | Specifies the layer index where the object must be inserted. The default value -1 indicates that the object is stored in the last (topmost) layer. |
addObject()
or removeObject()
, tests ensure that the data structure remains consistent. These tests ensure that an object is not stored twice, or remove an object that is not stored in this manager. You can bypass these tests and accelerate the process of storing and removing objects in a manager. See the global functions IlvGetOptimizeMode()
and IlvSetOptimizeMode()
. Reimplemented from IlvManager.
|
virtual |
Adds a view to the manager.
Attaches a new view to the manager. All events are then handled by the hierarchy of interactors located in the manager.
view | The view. |
Reimplemented from IlvManager.
Enable or disables keyboard focus handling.
flag | IlTrue to enable keyboard focus handling and IlFalse to disable it. |
Reimplemented from IlvManager.
Resolves attachment constraints when the view is resized.
Recomputes the positions of all objects depending on their relative attachments. It corresponds to a call to the first member function applyResize()
, where the scaling factors are set.
view | The manager view. |
redraw | Specifies whether to redraw the view contents. |
|
virtual |
Resolves attachment constraints when the view is resized.
Applies geometric rules to satisfy all constraint attachments when the specified view is scaled by the specified factors. If this manager is not in autoResize mode, this member function does nothing (see the member function autoResize()
).
view | The manager view. |
sx | Horizontal scaling factor. |
sy | Vertical scaling factor. |
redraw | Specifies whether to redraw the view contents. |
void IlvGadgetManager::applyResize | ( | IlvView * | view, |
IlvGraphic * | g, | ||
IlBoolean | redraw = IlTrue |
||
) |
Resolves attachment constraints for an object when the view is resized.
Recomputes the position of a graphic object depending on its attachments settings. It corresponds to a call to the second member function applyResize()
, where the scaling factors are set.
view | The manager view. |
g | The graphic object. |
redraw | Specifies whether to redraw the view contents. |
|
virtual |
Resolves attachment constraints for an object when the view is resized.
Does the same as the first applyResize()
member function for the particular graphic object.
view | The manager view. |
g | The graphic object. |
sx | Horizontal scaling factor. |
sy | Vertical scaling factor. |
redraw | Specifies whether to redraw the view contents. |
Sets the auto resizing mechanism.
Sets or unsets the mechanism for managing attachments.
a | IlTrue to enable auto resizing and IlFalse to disable it. |
Dispatches an event to the appropriate graphic objects.
Called by the manager event handler for every incoming user event when no view interactor was set in the view where the event occurred. It checks whether there is an object under the cursor. If there is one and if it is associated with an interactor, the event handler propagates the event to the interactor.
IlTrue
if the object interactor handled the event. If there is no object under the pointer or if its object interactor cannot handle the event, the returned value is IlFalse
. Reimplemented from IlvManager.
|
virtual |
Draws the representation of the keyboard focus.
Draws the graphic representation of the keyboard focus on the focus object.
dst | The destination port. |
t | The transformer to apply. |
clip | The clipping region. |
Reimplemented from IlvManager.
|
virtual |
Returns the first graphic object in the focus chain.
|
virtual |
Returns the graphic object with the keyboard focus.
0
if there is none. Reimplemented from IlvManager.
|
virtual |
Returns the grabbing graphic object.
0
if there is no grabbing object in this manager. Reimplemented from IlvManager.
|
virtual |
Returns the last graphic object in the focus chain.
getFirstFocusGraphic()
and getLastFocusGraphic()
are only used by getNextFocusGraphic()
and getPreviousFocusGraphic()
to make the focus chain circular. These four member functions implement the linking of objects using their names. Redefining them would break this mechanism. IlvLookFeelHandler* IlvGadgetManager::getLookFeelHandler | ( | ) | const |
Returns the look and feel handler associated with this gadget manager.
|
virtual |
Returns the next graphic object in the focus chain.
The default focus chain orders the objects according to their position, from left to right and from top to bottom. The method looks for an object that would fulfill the following conditions:
IlvManager::isVisible()
) IlvGraphic::isSensitive()
) The search is performed down the focus chain, starting after object.
object | The graphic object. |
getFirstFocusGraphic()
when object is 0
. If no valid object is found, the method returns 0
.
|
virtual |
Returns the previous graphic object in the focus chain.
object | The graphic object. |
getLastFocusGraphic()
when object is 0
.getNextFocusGraphic()
, except that the search is performed up the focus chain, starting before object. IlBoolean IlvGadgetManager::isAutoResizing | ( | ) | const |
Indicates whether the auto resizing mechanism is enabled.
IlTrue
if this gadget manager allows the automatic resizing of the objects it stores, depending on their relative graphic attachments. It returns IlFalse
if this manager does not handle the attachments.
|
virtual |
Indicates if keyboard focus handling is enabled.
IlTrue
if this gadget manager allows the manipulation of the keyboard focus on the objects it stores. Otherwise it returns IlFalse
. Reimplemented from IlvManager.
Moves the keyboard focus to the next graphic object in the focus chain.
Calls getNextFocusGraphic()
with the object that currently has the focus to get the next valid object in the focus chain, and then calls setFocus()
on it. If getNextFocusGraphic()
returns 0
, the result of getFirstFocusGraphic()
is used instead.
redraw | Specifies whether to redraw the graphic objects. |
Reimplemented from IlvManager.
Moves the keyboard focus to the previous graphic object in the focus chain.
Calls getPreviousFocusGraphic()
with the object that currently has the focus to get the previous valid object in the focus chain, and then calls setFocus()
on it. If getPreviousFocusGraphic()
returns 0
, the result of getLastFocusGraphic()
is used instead.
redraw | Specifies whether to redraw the graphic objects. |
Reimplemented from IlvManager.
|
virtual |
Removes any grab that has been set in this manager.
Removes any grab that has been set in this manager.
Reimplemented from IlvManager.
Removes a view from the manager view list.
The view is no longer handled by the manager.
view | The manager view. |
IlTrue
on success, and IlFalse
on error (the view could not be detached). Reimplemented from IlvManager.
|
virtual |
Sets the background of a manager view.
Sets the color used to erase the double buffering bitmap for the view. When the view is set to double buffering mode, the color is initially updated to the background color of the view. If you change the view background color and want to set the double buffering color accordingly, call this member function with this color. If a bitmap is specified, it will be used as the background for the view; this means that it will not remain as a single image but will be tiled to the size of the manager view. To remove properly a background bitmap that was previously set, you must do the following:
view | The manager view. |
color | The background color. |
bitmap | The background bitmap. |
Reimplemented from IlvManager.
|
virtual |
Sets the keyboard focus on a graphic object.
If the manager has disallowed the keyboard focus mechanism, this method has no effect.
graphic | The graphic object. |
redraw | Specifies whether to redraw the graphic object. |
Reimplemented from IlvManager.
|
virtual |
Sets a graphic object to grab events.
Sets the grab on the specified graphic object; every event is sent to this object. If this object has no object interactor, the events are lost.
object | The graphic object. |
Reimplemented from IlvManager.
void IlvGadgetManager::setLookFeelHandler | ( | IlvLookFeelHandler * | lfh | ) |
Sets the look and feel handler of this gadget manager.
lfh | The new look and feel handler. |
|
virtual |
Selects or deselects a graphic object.
Selects or deselects an object in the manager.
object | The graphic object. |
selected | IlTrue if the graphic object must be selected, IlFalse otherwise. |
redraw | Specifies whether the manager must redraw the invalidate region occupied by the selection object. |
Reimplemented from IlvManager.