Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members

FX::FXFoldingList Class Reference

A Folding List Widget resembles a Tree list except that it supports a header control to provide each item with multiple columns of text. More...

#include <FXFoldingList.h>

Inheritance diagram for FX::FXFoldingList:
FX::FXScrollArea FX::FXComposite FX::FXWindow FX::FXDrawable FX::FXId FX::FXObject

Public Types

enum  { ID_LOOKUPTIMER =FXScrollArea::ID_LAST, ID_HEADER, ID_LAST }
 
- Public Types inherited from FX::FXScrollArea
enum  { ID_AUTOSCROLL =FXComposite::ID_LAST, ID_VSCROLLED, ID_HSCROLLED, ID_LAST }
 
- Public Types inherited from FX::FXWindow
enum  WindowClass {
  ClassNormal, ClassGraphic, ClassSpecial, ClassRoot,
  ClassShell, ClassPopup, ClassToolTip, ClassMain,
  ClassDialog, ClassToolBar, ClassSplash, ClassNotify,
  ClassPanel, ClassDesktop
}
 Window classes. More...
 
enum  {
  ID_NONE, ID_HIDE, ID_SHOW, ID_TOGGLESHOWN,
  ID_LOWER, ID_RAISE, ID_DELETE, ID_DISABLE,
  ID_ENABLE, ID_TOGGLEENABLED, ID_UNCHECK, ID_CHECK,
  ID_UNKNOWN, ID_UPDATE, ID_TIPTIMER, ID_SETVALUE,
  ID_SETINTVALUE, ID_SETLONGVALUE, ID_SETREALVALUE, ID_SETSTRINGVALUE,
  ID_SETICONVALUE, ID_SETINTRANGE, ID_SETREALRANGE, ID_GETINTVALUE,
  ID_GETLONGVALUE, ID_GETREALVALUE, ID_GETSTRINGVALUE, ID_GETICONVALUE,
  ID_GETINTRANGE, ID_GETREALRANGE, ID_SETHELPSTRING, ID_GETHELPSTRING,
  ID_SETTIPSTRING, ID_GETTIPSTRING, ID_QUERY_MENU, ID_HOTKEY,
  ID_ACCEL, ID_UNPOST, ID_POST, ID_MDI_TILEHORIZONTAL,
  ID_MDI_TILEVERTICAL, ID_MDI_CASCADE, ID_MDI_MAXIMIZE, ID_MDI_MINIMIZE,
  ID_MDI_RESTORE, ID_MDI_CLOSE, ID_MDI_WINDOW, ID_MDI_MENUWINDOW,
  ID_MDI_MENUMINIMIZE, ID_MDI_MENURESTORE, ID_MDI_MENUCLOSE, ID_MDI_NEXT,
  ID_MDI_PREV, ID_LAST
}
 

Public Member Functions

long onPaint (FXObject *, FXSelector, void *)
 
long onEnter (FXObject *, FXSelector, void *)
 
long onLeave (FXObject *, FXSelector, void *)
 
long onUngrabbed (FXObject *, FXSelector, void *)
 
long onMotion (FXObject *, FXSelector, void *)
 
long onKeyPress (FXObject *, FXSelector, void *)
 
long onKeyRelease (FXObject *, FXSelector, void *)
 
long onLeftBtnPress (FXObject *, FXSelector, void *)
 
long onLeftBtnRelease (FXObject *, FXSelector, void *)
 
long onRightBtnPress (FXObject *, FXSelector, void *)
 
long onRightBtnRelease (FXObject *, FXSelector, void *)
 
long onChgHeader (FXObject *, FXSelector, void *)
 
long onQueryTip (FXObject *, FXSelector, void *)
 
long onQueryHelp (FXObject *, FXSelector, void *)
 
long onTipTimer (FXObject *, FXSelector, void *)
 
long onFocusIn (FXObject *, FXSelector, void *)
 
long onFocusOut (FXObject *, FXSelector, void *)
 
long onAutoScroll (FXObject *, FXSelector, void *)
 
long onClicked (FXObject *, FXSelector, void *)
 
long onDoubleClicked (FXObject *, FXSelector, void *)
 
long onTripleClicked (FXObject *, FXSelector, void *)
 
long onCommand (FXObject *, FXSelector, void *)
 
long onLookupTimer (FXObject *, FXSelector, void *)
 
 FXFoldingList (FXComposite *p, FXObject *tgt=nullptr, FXSelector sel=0, FXuint opts=FOLDINGLIST_NORMAL, FXint x=0, FXint y=0, FXint w=0, FXint h=0)
 Construct a folding list; the folding list is initially empty.
 
virtual void create ()
 Create server-side resources.
 
virtual void detach ()
 Detach server-side resources.
 
virtual void layout ()
 Perform layout.
 
virtual FXint getDefaultWidth ()
 Return default width.
 
virtual FXint getDefaultHeight ()
 Return default height.
 
virtual FXint getVisibleY () const
 Return visible scroll-area y position.
 
virtual FXint getVisibleHeight () const
 Return visible scroll-area height.
 
virtual FXint getContentWidth ()
 Compute and return content width.
 
virtual FXint getContentHeight ()
 Return content height.
 
virtual void recalc ()
 Recalculate layout.
 
virtual FXbool canFocus () const
 Tree list can receive focus.
 
virtual void setFocus ()
 Move the focus to this window.
 
virtual void killFocus ()
 Remove the focus from this window.
 
FXHeadergetHeader () const
 Return header control.
 
void setHeaders (const FXchar *const *strings, FXint size=1)
 Set headers from array of strings.
 
void setHeaders (const FXString *strings, FXint size=1)
 Set headers from array of strings.
 
void setHeaders (const FXString &strings, FXint size=1)
 Set headers from newline separated strings.
 
void appendHeader (const FXString &text, FXIcon *icon=nullptr, FXint size=1)
 Append header with given text and optional icon.
 
void removeHeader (FXint index)
 Remove header at index.
 
void setHeaderText (FXint index, const FXString &text)
 Change text of header at index.
 
FXString getHeaderText (FXint index) const
 Return text of header at index.
 
void setHeaderIcon (FXint index, FXIcon *icon)
 Change icon of header at index.
 
FXIcongetHeaderIcon (FXint index) const
 Return icon of header at index.
 
void setHeaderSize (FXint index, FXint size)
 Change size of header at index.
 
FXint getHeaderSize (FXint index) const
 Return width of header at index.
 
FXint getNumHeaders () const
 Return number of headers.
 
FXint getNumItems () const
 Return number of items.
 
FXint getNumVisible () const
 Return number of visible items.
 
void setNumVisible (FXint nvis)
 Change number of visible items.
 
FXFoldingItemgetFirstItem () const
 Return first root item.
 
FXFoldingItemgetLastItem () const
 Return last root item.
 
FXint fillItems (FXFoldingItem *father, const FXchar *const *strings, FXIcon *oi=nullptr, FXIcon *ci=nullptr, FXptr ptr=nullptr, FXbool notify=false)
 Fill list by appending items from array of strings.
 
FXint fillItems (FXFoldingItem *father, const FXString *strings, FXIcon *oi=nullptr, FXIcon *ci=nullptr, FXptr ptr=nullptr, FXbool notify=false)
 Fill list by appending items from array of strings.
 
FXint fillItems (FXFoldingItem *father, const FXString &strings, FXIcon *oi=nullptr, FXIcon *ci=nullptr, FXptr ptr=nullptr, FXbool notify=false)
 Fill list by appending items from newline separated strings.
 
FXFoldingItemsetItem (FXFoldingItem *orig, FXFoldingItem *item, FXbool notify=false)
 Replace the original item orig with new [possibly subclassed] item.
 
FXFoldingIteminsertItem (FXFoldingItem *other, FXFoldingItem *father, FXFoldingItem *item, FXbool notify=false)
 Insert [possibly subclassed] item under father before other item.
 
FXFoldingIteminsertItem (FXFoldingItem *other, FXFoldingItem *father, const FXString &text, FXIcon *oi=nullptr, FXIcon *ci=nullptr, FXptr ptr=nullptr, FXbool notify=false)
 Insert item with given text and optional icons, and user-data pointer under father before other item.
 
FXFoldingItemappendItem (FXFoldingItem *father, FXFoldingItem *item, FXbool notify=false)
 Append [possibly subclassed] item as last child of father.
 
FXFoldingItemappendItem (FXFoldingItem *father, const FXString &text, FXIcon *oi=nullptr, FXIcon *ci=nullptr, FXptr ptr=nullptr, FXbool notify=false)
 Append item with given text and optional icons, and user-data pointer as last child of father.
 
FXFoldingItemprependItem (FXFoldingItem *father, FXFoldingItem *item, FXbool notify=false)
 Prepend [possibly subclassed] item as first child of father.
 
FXFoldingItemprependItem (FXFoldingItem *father, const FXString &text, FXIcon *oi=nullptr, FXIcon *ci=nullptr, FXptr ptr=nullptr, FXbool notify=false)
 Prepend item with given text and optional icons, and user-data pointer as first child of father.
 
FXFoldingItemmoveItem (FXFoldingItem *other, FXFoldingItem *father, FXFoldingItem *item)
 Move item under father before other item.
 
FXFoldingItemextractItem (FXFoldingItem *item, FXbool notify=false)
 Extract item.
 
void removeItem (FXFoldingItem *item, FXbool notify=false)
 Remove item.
 
void removeItems (FXFoldingItem *fm, FXFoldingItem *to, FXbool notify=false)
 Remove items in range [fm, to] inclusively.
 
void clearItems (FXbool notify=false)
 Remove all items from list.
 
FXint getItemWidth (const FXFoldingItem *item) const
 Return item width.
 
FXint getItemHeight (const FXFoldingItem *item) const
 Return item height.
 
virtual FXFoldingItemgetItemAt (FXint x, FXint y) const
 Get item at x,y, if any.
 
FXint hitItem (const FXFoldingItem *item, FXint x, FXint y) const
 Return item hit code: 0 outside, 1 icon, 2 text, 3 box.
 
virtual void makeItemVisible (FXFoldingItem *item)
 Scroll to make item visible.
 
FXFoldingItemfindItem (const FXString &string, FXFoldingItem *start=nullptr, FXuint flags=SEARCH_FORWARD|SEARCH_WRAP) const
 Search items by name, beginning from item start. More...
 
FXFoldingItemfindItemByData (FXptr ptr, FXFoldingItem *start=nullptr, FXuint flags=SEARCH_FORWARD|SEARCH_WRAP) const
 Search items by associated user data, beginning from item start. More...
 
void setItemText (FXFoldingItem *item, const FXString &text)
 Change item's text.
 
FXString getItemText (const FXFoldingItem *item) const
 Return item's text.
 
void setItemOpenIcon (FXFoldingItem *item, FXIcon *icon, FXbool owned=false)
 Change item's open icon, deleting old icon if it was owned.
 
FXIcongetItemOpenIcon (const FXFoldingItem *item) const
 Return item's open icon.
 
void setItemClosedIcon (FXFoldingItem *item, FXIcon *icon, FXbool owned=false)
 Chance item's closed icon, deleting old icon if it was owned.
 
FXIcongetItemClosedIcon (const FXFoldingItem *item) const
 Return item's closed icon.
 
void setItemData (FXFoldingItem *item, FXptr ptr) const
 Change item user-data pointer.
 
FXptr getItemData (const FXFoldingItem *item) const
 Return item user-data pointer.
 
FXbool isItemSelected (const FXFoldingItem *item) const
 Return true if item is selected.
 
FXbool isItemCurrent (const FXFoldingItem *item) const
 Return true if item is current.
 
FXbool isItemVisible (const FXFoldingItem *item) const
 Return true if item is visible.
 
FXbool isItemOpened (const FXFoldingItem *item) const
 Return true if item opened.
 
FXbool isItemExpanded (const FXFoldingItem *item) const
 Return true if item expanded.
 
FXbool isItemLeaf (const FXFoldingItem *item) const
 Return true if item is a leaf-item, i.e. has no children.
 
FXbool isItemEnabled (const FXFoldingItem *item) const
 Return true if item is enabled.
 
void updateItem (FXFoldingItem *item)
 Repaint item.
 
virtual FXbool enableItem (FXFoldingItem *item)
 Enable item.
 
virtual FXbool disableItem (FXFoldingItem *item)
 Disable item.
 
virtual FXbool selectItem (FXFoldingItem *item, FXbool notify=false)
 Select item.
 
virtual FXbool deselectItem (FXFoldingItem *item, FXbool notify=false)
 Deselect item.
 
virtual FXbool toggleItem (FXFoldingItem *item, FXbool notify=false)
 Toggle item selection.
 
virtual FXbool extendSelection (FXFoldingItem *item, FXbool notify=false)
 Extend selection from anchor item to item.
 
virtual FXbool selectAll (FXbool notify=false)
 Select all items.
 
virtual FXbool killSelection (FXbool notify=false)
 Deselect all items.
 
virtual FXbool openItem (FXFoldingItem *item, FXbool notify=false)
 Open item.
 
virtual FXbool closeItem (FXFoldingItem *item, FXbool notify=false)
 Close item.
 
virtual FXbool collapseTree (FXFoldingItem *tree, FXbool notify=false)
 Collapse tree.
 
virtual FXbool expandTree (FXFoldingItem *tree, FXbool notify=false)
 Expand tree.
 
virtual void setCurrentItem (FXFoldingItem *item, FXbool notify=false)
 Change current item.
 
FXFoldingItemgetCurrentItem () const
 Return current item, if any.
 
void setAnchorItem (FXFoldingItem *item)
 Change anchor item.
 
FXFoldingItemgetAnchorItem () const
 Return anchor item, if any.
 
void sortItems ()
 Sort all items recursively.
 
void sortRootItems ()
 Sort root items.
 
void sortChildItems (FXFoldingItem *item)
 Sort children of item.
 
FXFoldingListSortFunc getSortFunc () const
 Return sort function.
 
void setSortFunc (FXFoldingListSortFunc func)
 Change sort function.
 
void setFont (FXFont *fnt)
 Change text font.
 
FXFontgetFont () const
 Return text font.
 
void setIndent (FXint in)
 Change parent-child indent amount.
 
FXint getIndent () const
 Return parent-child indent amount.
 
FXColor getTextColor () const
 Return normal text color.
 
void setTextColor (FXColor clr)
 Change normal text color.
 
FXColor getSelBackColor () const
 Return selected text background.
 
void setSelBackColor (FXColor clr)
 Change selected text background.
 
FXColor getSelTextColor () const
 Return selected text color.
 
void setSelTextColor (FXColor clr)
 Change selected text color.
 
FXColor getLineColor () const
 Return line color.
 
void setLineColor (FXColor clr)
 Change line color.
 
FXuint getListStyle () const
 Return list style.
 
void setListStyle (FXuint style)
 Change list style.
 
void setHelpText (const FXString &text)
 Set the status line help text for this list.
 
const FXStringgetHelpText () const
 Get the status line help text for this list.
 
virtual void save (FXStream &store) const
 Save object to a stream.
 
virtual void load (FXStream &store)
 Load object from a stream.
 
virtual ~FXFoldingList ()
 Destructor.
 
- Public Member Functions inherited from FX::FXScrollArea
long onMouseWheel (FXObject *, FXSelector, void *)
 
long onHScrollerChanged (FXObject *, FXSelector, void *)
 
long onVScrollerChanged (FXObject *, FXSelector, void *)
 
long onHScrollerDragged (FXObject *, FXSelector, void *)
 
long onVScrollerDragged (FXObject *, FXSelector, void *)
 
long onAutoScroll (FXObject *, FXSelector, void *)
 
void setPosition (FXint x, FXint y)
 Set the current position.
 
void getPosition (FXint &x, FXint &y) const
 Get the current position.
 
FXint getContentX () const
 Return content area x position.
 
FXint getContentY () const
 Return content area y position.
 
virtual FXint getVisibleX () const
 Return visible scroll-area x position.
 
virtual FXint getVisibleWidth () const
 Return visible scroll-area width.
 
FXbool isHorizontalScrollable () const
 Return true if horizontally scrollable.
 
FXbool isVerticalScrollable () const
 Return true if vertically scrollable.
 
void setScrollStyle (FXuint style)
 Change scroll style.
 
FXuint getScrollStyle () const
 Return scroll style.
 
FXScrollBarhorizontalScrollBar () const
 Return a pointer to the horizontal scrollbar.
 
FXScrollBarverticalScrollBar () const
 Return a pointer to the vertical scrollbar.
 
virtual ~FXScrollArea ()
 Destructor.
 
- Public Member Functions inherited from FX::FXComposite
long onKeyPress (FXObject *, FXSelector, void *)
 
long onKeyRelease (FXObject *, FXSelector, void *)
 
long onFocusNext (FXObject *, FXSelector, void *)
 
long onFocusPrev (FXObject *, FXSelector, void *)
 
long onCmdUpdate (FXObject *, FXSelector, void *)
 
 FXComposite (FXComposite *p, FXuint opts=0, FXint x=0, FXint y=0, FXint w=0, FXint h=0)
 Constructor.
 
virtual void destroy ()
 Destroy server-side resources.
 
FXint maxChildWidth () const
 Return the width of the widest child window.
 
FXint maxChildHeight () const
 Return the height of the tallest child window.
 
virtual FXbool isComposite () const
 Overrides this virtual function to return true.
 
virtual ~FXComposite ()
 Destructor.
 
- Public Member Functions inherited from FX::FXWindow
long onPaint (FXObject *, FXSelector, void *)
 
long onMap (FXObject *, FXSelector, void *)
 
long onUnmap (FXObject *, FXSelector, void *)
 
long onConfigure (FXObject *, FXSelector, void *)
 
long onUpdate (FXObject *, FXSelector, void *)
 
long onMotion (FXObject *, FXSelector, void *)
 
long onMouseWheel (FXObject *, FXSelector, void *)
 
long onEnter (FXObject *, FXSelector, void *)
 
long onLeave (FXObject *, FXSelector, void *)
 
long onLeftBtnPress (FXObject *, FXSelector, void *)
 
long onLeftBtnRelease (FXObject *, FXSelector, void *)
 
long onMiddleBtnPress (FXObject *, FXSelector, void *)
 
long onMiddleBtnRelease (FXObject *, FXSelector, void *)
 
long onRightBtnPress (FXObject *, FXSelector, void *)
 
long onRightBtnRelease (FXObject *, FXSelector, void *)
 
long onSpaceBallMotion (FXObject *, FXSelector, void *)
 
long onSpaceBallButtonPress (FXObject *, FXSelector, void *)
 
long onSpaceBallButtonRelease (FXObject *, FXSelector, void *)
 
long onBeginDrag (FXObject *, FXSelector, void *)
 
long onEndDrag (FXObject *, FXSelector, void *)
 
long onDragged (FXObject *, FXSelector, void *)
 
long onKeyPress (FXObject *, FXSelector, void *)
 
long onKeyRelease (FXObject *, FXSelector, void *)
 
long onUngrabbed (FXObject *, FXSelector, void *)
 
long onDestroy (FXObject *, FXSelector, void *)
 
long onFocusSelf (FXObject *, FXSelector, void *)
 
long onFocusIn (FXObject *, FXSelector, void *)
 
long onFocusOut (FXObject *, FXSelector, void *)
 
long onSelectionLost (FXObject *, FXSelector, void *)
 
long onSelectionGained (FXObject *, FXSelector, void *)
 
long onSelectionRequest (FXObject *, FXSelector, void *)
 
long onClipboardLost (FXObject *, FXSelector, void *)
 
long onClipboardGained (FXObject *, FXSelector, void *)
 
long onClipboardRequest (FXObject *, FXSelector, void *)
 
long onDNDEnter (FXObject *, FXSelector, void *)
 
long onDNDLeave (FXObject *, FXSelector, void *)
 
long onDNDMotion (FXObject *, FXSelector, void *)
 
long onDNDDrop (FXObject *, FXSelector, void *)
 
long onDNDRequest (FXObject *, FXSelector, void *)
 
long onQueryHelp (FXObject *, FXSelector, void *)
 
long onQueryTip (FXObject *, FXSelector, void *)
 
long onCmdShow (FXObject *, FXSelector, void *)
 
long onCmdHide (FXObject *, FXSelector, void *)
 
long onUpdToggleShown (FXObject *, FXSelector, void *)
 
long onCmdToggleShown (FXObject *, FXSelector, void *)
 
long onCmdRaise (FXObject *, FXSelector, void *)
 
long onCmdLower (FXObject *, FXSelector, void *)
 
long onCmdEnable (FXObject *, FXSelector, void *)
 
long onCmdDisable (FXObject *, FXSelector, void *)
 
long onUpdToggleEnabled (FXObject *, FXSelector, void *)
 
long onCmdToggleEnabled (FXObject *, FXSelector, void *)
 
long onCmdUpdate (FXObject *, FXSelector, void *)
 
long onUpdYes (FXObject *, FXSelector, void *)
 
long onCmdDelete (FXObject *, FXSelector, void *)
 
 FXWindow (FXComposite *p, FXuint opts=0, FXint x=0, FXint y=0, FXint w=0, FXint h=0)
 Constructor.
 
FXWindowgetParent () const
 Return a pointer to the parent window.
 
FXWindowgetOwner () const
 Return a pointer to the owner window.
 
FXWindowgetNext () const
 Return a pointer to the next (sibling) window, if any.
 
FXWindowgetPrev () const
 Return a pointer to the previous (sibling) window , if any.
 
FXWindowgetFirst () const
 Return a pointer to this window's first child window , if any.
 
FXWindowgetLast () const
 Return a pointer to this window's last child window, if any.
 
FXWindowgetFocus () const
 Return a pointer to the currently focused child window.
 
FXWindowgetShell () const
 Return a pointer to the shell window.
 
FXWindowgetRoot () const
 Return a pointer to the root window.
 
virtual WindowClass getWindowClass () const
 Get window class.
 
void setKey (FXuint k)
 Change window key.
 
FXuint getKey () const
 Return window key.
 
FXWindowgetChildWithKey (FXuint k) const
 Return child window with given window key.
 
void setTarget (FXObject *t)
 Set the message target object for this window.
 
FXObjectgetTarget () const
 Get the message target object for this window, if any.
 
void setSelector (FXSelector sel)
 Set the message identifier for this window.
 
FXSelector getSelector () const
 Get the message identifier for this window.
 
FXint getX () const
 Get this window's x-coordinate, in the parent's coordinate system.
 
FXint getY () const
 Get this window's y-coordinate, in the parent's coordinate system.
 
virtual FXint getWidthForHeight (FXint givenheight)
 Return width for given height.
 
virtual FXint getHeightForWidth (FXint givenwidth)
 Return height for given width.
 
void setX (FXint x)
 Set this window's x-coordinate, in the parent's coordinate system.
 
void setY (FXint y)
 Set this window's y-coordinate, in the parent's coordinate system.
 
void setWidth (FXint w)
 Set the window width; and flag the widget as being in need of layout by its parent. More...
 
void setHeight (FXint h)
 Set the window height; and flag the widget as being in need of layout by its parent. More...
 
void setLayoutHints (FXuint lout)
 Set layout hints for this window.
 
FXuint getLayoutHints () const
 Get layout hints for this window.
 
FXAccelTablegetAccelTable () const
 Return a pointer to the accelerator table.
 
void setAccelTable (FXAccelTable *acceltable)
 Set the accelerator table.
 
void addHotKey (FXHotKey code)
 Add a hot key.
 
void remHotKey (FXHotKey code)
 Remove a hot key.
 
void setHelpTag (const FXString &text)
 Change help tag for this widget.
 
const FXStringgetHelpTag () const
 Get the help tag for this widget.
 
FXbool isShell () const
 Return true if window is a shell window.
 
FXbool isOwnerOf (const FXWindow *window) const
 Return true if specified window is owned by this window.
 
FXbool isChildOf (const FXWindow *window) const
 Return true if specified window is ancestor of this window.
 
FXbool containsChild (const FXWindow *child) const
 Return true if this window contains child in its subtree.
 
FXWindowgetChildAt (FXint x, FXint y) const
 Return the child window at specified coordinates.
 
FXint numChildren () const
 Return the number of child windows for this window.
 
FXint indexOfChild (const FXWindow *window) const
 Return the index (starting from zero) of the specified child window, or -1 if the window is not a child or NULL.
 
FXWindowchildAtIndex (FXint index) const
 Return the child window at specified index, or NULL if the index is negative or out of range.
 
FXComposeContextgetComposeContext () const
 Return compose context.
 
void createComposeContext ()
 Create compose context.
 
void destroyComposeContext ()
 Destroy compose context.
 
FXbool cursorShown () const
 Is cursor shown.
 
void showCursor (FXbool flag=true)
 Show or hide the cursor.
 
void setDefaultCursor (FXCursor *cur)
 Set the default cursor for this window.
 
FXCursorgetDefaultCursor () const
 Return the default cursor for this window.
 
void setDragCursor (FXCursor *cur)
 Set the drag cursor for this window.
 
FXCursorgetDragCursor () const
 Return the drag cursor for this window.
 
FXbool getCursorPosition (FXint &x, FXint &y, FXuint &buttons) const
 Return the cursor position and mouse button-state.
 
FXbool setCursorPosition (FXint x, FXint y)
 Warp the cursor to the new position.
 
FXbool isActive () const
 Return true if the window is active.
 
FXbool hasFocus () const
 Return true if this window has the focus.
 
FXbool inFocusChain () const
 Return true if this window is in focus chain.
 
FXbool isDefault () const
 Return true if this is the default window.
 
virtual void setDefault (FXuchar flag=true)
 This changes the default window which responds to the Return key in a dialog. More...
 
FXWindowfindDefault () const
 Find default window among this window's children.
 
FXbool isInitial () const
 Return true if this is the initial default window.
 
void setInitial (FXbool flag=true)
 Make this window the initial default window.
 
FXWindowfindInitial () const
 Find inital default window among this window's children.
 
FXbool isEnabled () const
 Return true if this window is able to receive mouse and keyboard events.
 
virtual void enable ()
 Enable the window to receive mouse and keyboard events.
 
virtual void disable ()
 Disable the window from receiving mouse and keyboard events.
 
virtual void attach (FXID w)
 Attach foreign window handle to this window.
 
virtual void setShape (const FXRegion &region)
 Set window shape by means of region.
 
virtual void setShape (FXBitmap *bitmap)
 Set window shape by means of bitmap.
 
virtual void setShape (FXIcon *icon)
 Set window shape by means of icon.
 
virtual void clearShape ()
 Clear window shape.
 
virtual void raise ()
 Raise this window to the top of the stacking order.
 
virtual void lower ()
 Lower this window to the bottom of the stacking order.
 
virtual void move (FXint x, FXint y)
 Move the window immediately, in the parent's coordinate system. More...
 
virtual void resize (FXint w, FXint h)
 Resize the window to the specified width and height immediately, updating the server representation as well, if the window was realized. More...
 
virtual void position (FXint x, FXint y, FXint w, FXint h)
 Move and resize the window immediately, in the parent's coordinate system. More...
 
void forceRefresh ()
 Generate a SEL_UPDATE message for the window and its children.
 
virtual void reparent (FXWindow *father, FXWindow *other=nullptr)
 Reparent this window under new father before other.
 
void scroll (FXint x, FXint y, FXint w, FXint h, FXint dx, FXint dy) const
 Scroll rectangle x,y,w,h by a shift of dx,dy.
 
void update (FXint x, FXint y, FXint w, FXint h) const
 Mark the specified rectangle to be repainted later.
 
void update () const
 Mark the entire window to be repainted later.
 
void repaint (FXint x, FXint y, FXint w, FXint h) const
 Process any outstanding repaint messages immediately, for the given rectangle.
 
void repaint () const
 Process any outstanding repaint messages immediately.
 
FXbool grabbed () const
 Return true if the window has been grabbed.
 
void grab ()
 Grab the mouse to this window; future mouse events will be reported to this window even while the cursor goes outside of this window.
 
void ungrab ()
 Release the mouse grab.
 
FXbool grabbedKeyboard () const
 Return true if active grab is in effect.
 
void grabKeyboard ()
 Grab keyboard device.
 
void ungrabKeyboard ()
 Ungrab keyboard device.
 
FXbool shown () const
 Return true if the window is shown.
 
virtual void show ()
 Show this window.
 
virtual void hide ()
 Hide this window.
 
FXbool underCursor () const
 Return true if the window is under the cursor.
 
FXbool hasSelection () const
 Return true if this window owns the primary selection.
 
FXbool acquireSelection (const FXDragType *types, FXuint numtypes)
 Try to acquire the primary selection, given a list of drag types.
 
FXbool releaseSelection ()
 Release the primary selection.
 
FXbool hasClipboard () const
 Return true if this window owns the clipboard.
 
FXbool acquireClipboard (const FXDragType *types, FXuint numtypes)
 Try to acquire the clipboard, given a list of drag types.
 
FXbool releaseClipboard ()
 Release the clipboard.
 
FXbool isDropEnabled () const
 Return true if this window is able to receive drops.
 
virtual void dropEnable ()
 Enable this window to receive drops.
 
virtual void dropDisable ()
 Disable this window from receiving drops.
 
FXbool isDragging () const
 Return true if a drag operaion has been initiated from this window.
 
FXbool beginDrag (const FXDragType *types, FXuint numtypes)
 Initiate a drag operation with a list of previously registered drag types.
 
FXbool handleDrag (FXint x, FXint y, FXDragAction action=DRAG_COPY)
 When dragging, inform the drop-target of the new position and the drag action.
 
FXDragAction endDrag (FXbool drop=true)
 Terminate the drag operation with or without actually dropping the data Returns the action performed by the target.
 
FXbool isDropTarget () const
 Return true if this window is the target of a drop.
 
void setDragRectangle (FXint x, FXint y, FXint w, FXint h, FXbool wantupdates=true) const
 When being dragged over, indicate that no further SEL_DND_MOTION messages are required while the cursor is inside the given rectangle.
 
void clearDragRectangle () const
 When being dragged over, indicate we want to receive SEL_DND_MOTION messages every time the cursor moves.
 
void acceptDrop (FXDragAction action=DRAG_ACCEPT) const
 When being dragged over, indicate acceptance or rejection of the dragged data.
 
FXDragAction didAccept () const
 The target accepted our drop.
 
void dropFinished (FXDragAction action=DRAG_REJECT) const
 Sent by the drop target in response to SEL_DND_DROP. More...
 
FXbool inquireDNDTypes (FXDNDOrigin origin, FXDragType *&types, FXuint &numtypes) const
 When being dragged over, inquire the drag types which are being offered.
 
FXbool offeredDNDType (FXDNDOrigin origin, FXDragType type) const
 When being dragged over, return true if we are offered the given drag type.
 
FXDragAction inquireDNDAction () const
 When being dragged over, return the drag action.
 
FXbool setDNDData (FXDNDOrigin origin, FXDragType type, FXuchar *data, FXuint size) const
 Set DND data; the array must be allocated with allocElms() and ownership is transferred to the system.
 
FXbool setDNDData (FXDNDOrigin origin, FXDragType type, const FXString &string) const
 Set DND data from string value.
 
FXbool getDNDData (FXDNDOrigin origin, FXDragType type, FXuchar *&data, FXuint &size) const
 Get DND data; the caller becomes the owner of the array and must free it with freeElms().
 
FXbool getDNDData (FXDNDOrigin origin, FXDragType type, FXString &string) const
 Get DND data into string value.
 
virtual FXbool contains (FXint parentx, FXint parenty) const
 Return true if window logically contains the given point.
 
void translateCoordinatesFrom (FXint &tox, FXint &toy, const FXWindow *fromwindow, FXint fromx, FXint fromy) const
 Translate coordinates from fromwindow's coordinate space to this window's coordinate space.
 
void translateCoordinatesTo (FXint &tox, FXint &toy, const FXWindow *towindow, FXint fromx, FXint fromy) const
 Translate coordinates from this window's coordinate space to towindow's coordinate space.
 
virtual void setBackColor (FXColor clr)
 Set window background color.
 
FXColor getBackColor () const
 Get background color.
 
virtual FXbool doesSaveUnder () const
 Does save-unders.
 
virtual const FXchar * tr (const FXchar *text, const FXchar *hint=nullptr, FXint count=-1) const FX_FORMAT(2)
 Translate message for localization; using the current FXTranslator, an attempt is made to translate the given message into the current language. More...
 
virtual ~FXWindow ()
 Destroy window.
 
- Public Member Functions inherited from FX::FXDrawable
FXVisualgetVisual () const
 Get the visual.
 
FXint getWidth () const
 Width of drawable.
 
FXint getHeight () const
 Height of drawable.
 
void setVisual (FXVisual *vis)
 Change visual.
 
virtual ~FXDrawable ()
 Cleanup.
 
- Public Member Functions inherited from FX::FXId
FXAppgetApp () const
 Get application.
 
FXID id () const
 Get XID handle.
 
void setUserData (FXptr ptr)
 Set user data pointer.
 
FXptr getUserData () const
 Get user data pointer.
 
virtual ~FXId ()
 Destructor.
 
- Public Member Functions inherited from FX::FXObject
const FXchar * getClassName () const
 Get class name of some object.
 
FXbool isMemberOf (const FXMetaClass *metaclass) const
 Check if object is member of metaclass.
 
virtual long tryHandle (FXObject *sender, FXSelector sel, void *ptr)
 Try handle message safely, catching certain exceptions.
 
virtual long onDefault (FXObject *, FXSelector, void *)
 Called for unhandled messages.
 
virtual ~FXObject ()
 Virtual destructor.
 

Static Public Member Functions

static FXint ascending (const FXFoldingItem *, const FXFoldingItem *)
 
static FXint descending (const FXFoldingItem *, const FXFoldingItem *)
 
static FXint ascendingCase (const FXFoldingItem *, const FXFoldingItem *)
 
static FXint descendingCase (const FXFoldingItem *, const FXFoldingItem *)
 
- Static Public Member Functions inherited from FX::FXWindow
static FXWindowcommonAncestor (FXWindow *a, FXWindow *b)
 Return the common ancestor of window a and window b.
 
static FXbool before (const FXWindow *a, const FXWindow *b)
 Return true if sibling a <= sibling b in list.
 
static FXbool after (const FXWindow *a, const FXWindow *b)
 Return true if sibling a >= sibling b in list.
 

Protected Member Functions

void recompute ()
 
void mergesort (FXFoldingItem *&list)
 
void sort (FXFoldingItem *&f1, FXFoldingItem *&t1, FXFoldingItem *&f2, FXFoldingItem *&t2, int n)
 
virtual void moveContents (FXint x, FXint y)
 
virtual FXFoldingItemcreateItem (const FXString &text, FXIcon *oi, FXIcon *ci, FXptr ptr)
 
- Protected Member Functions inherited from FX::FXScrollArea
 FXScrollArea (FXComposite *p, FXuint opts, FXint x, FXint y, FXint w, FXint h)
 
FXbool startAutoScroll (FXEvent *event, FXbool onlywheninside=false)
 
void stopAutoScroll ()
 
void placeScrollBars (FXint vw, FXint vh)
 
- Protected Member Functions inherited from FX::FXComposite
 FXComposite (FXApp *a, FXVisual *vis)
 
 FXComposite (FXApp *a, FXWindow *own, FXuint opts, FXint x, FXint y, FXint w, FXint h)
 
- Protected Member Functions inherited from FX::FXWindow
virtual FXbool doesOverrideRedirect () const
 
void addColormapWindows ()
 
void remColormapWindows ()
 
 FXWindow (FXApp *a, FXVisual *vis)
 
 FXWindow (FXApp *a, FXWindow *own, FXuint opts, FXint x, FXint y, FXint w, FXint h)
 
- Protected Member Functions inherited from FX::FXDrawable
 FXDrawable (FXApp *a, FXint w, FXint h)
 
- Protected Member Functions inherited from FX::FXId
 FXId (FXApp *a)
 

Static Protected Member Functions

static FXint compareSection (const FXchar *p, const FXchar *q, FXint s)
 
static FXint compareSectionCase (const FXchar *p, const FXchar *q, FXint s)
 

Protected Attributes

FXHeaderheader
 
FXFoldingItemfirstitem
 
FXFoldingItemlastitem
 
FXFoldingItemanchoritem
 
FXFoldingItemcurrentitem
 
FXFoldingItemextentitem
 
FXFoldingItemviewableitem
 
FXFontfont
 
FXFoldingListSortFunc sortfunc
 
FXColor textColor
 
FXColor selbackColor
 
FXColor seltextColor
 
FXColor lineColor
 
FXint treeWidth
 
FXint treeHeight
 
FXint visible
 
FXint indent
 
FXint grabx
 
FXint graby
 
FXString lookup
 
FXString help
 
FXbool state
 
- Protected Attributes inherited from FX::FXScrollArea
FXScrollBarhorizontal
 
FXScrollBarvertical
 
FXScrollCornercorner
 
FXint pos_x
 
FXint pos_y
 
- Protected Attributes inherited from FX::FXWindow
FXComposeContextcomposeContext
 
FXCursordefaultCursor
 
FXCursordragCursor
 
FXAccelTableaccelTable
 
FXObjecttarget
 
FXSelector message
 
FXint xpos
 
FXint ypos
 
FXColor backColor
 
FXString tag
 
FXuint flags
 
FXuint options
 
- Protected Attributes inherited from FX::FXDrawable
FXVisualvisual
 
FXint width
 
FXint height
 
- Protected Attributes inherited from FX::FXId
FXID xid
 

Additional Inherited Members

- Static Public Attributes inherited from FX::FXWindow
static FXDragType octetType
 
static FXDragType deleteType
 
static FXDragType textType
 
static FXDragType colorType
 
static FXDragType urilistType
 
static FXDragType utf8Type
 
static FXDragType utf16Type
 
static FXDragType actionType
 
static const FXDragType stringType
 
static const FXDragType imageType
 
static const FXchar octetTypeName []
 
static const FXchar deleteTypeName []
 
static const FXchar textTypeName []
 
static const FXchar colorTypeName []
 
static const FXchar urilistTypeName []
 
static const FXchar utf8TypeName []
 
static const FXchar utf16TypeName []
 
static const FXchar actionTypeName []
 
- Protected Types inherited from FX::FXWindow
enum  {
  FLAG_SHOWN = 0x00000001, FLAG_ENABLED = 0x00000002, FLAG_UPDATE = 0x00000004, FLAG_DROPTARGET = 0x00000008,
  FLAG_FOCUSED = 0x00000010, FLAG_DIRTY = 0x00000020, FLAG_RECALC = 0x00000040, FLAG_TIP = 0x00000080,
  FLAG_HELP = 0x00000100, FLAG_DEFAULT = 0x00000200, FLAG_INITIAL = 0x00000400, FLAG_SHELL = 0x00000800,
  FLAG_ACTIVE = 0x00001000, FLAG_PRESSED = 0x00002000, FLAG_KEY = 0x00004000, FLAG_CARET = 0x00008000,
  FLAG_CHANGED = 0x00010000, FLAG_LASSO = 0x00020000, FLAG_TRYDRAG = 0x00040000, FLAG_DODRAG = 0x00080000,
  FLAG_SCROLLINSIDE = 0x00100000, FLAG_SCROLLING = 0x00200000, FLAG_OWNED = 0x00400000, FLAG_CURSOR = 0x00800000
}
 

Detailed Description

A Folding List Widget resembles a Tree list except that it supports a header control to provide each item with multiple columns of text.

Subtrees can be collapsed or expanded by double-clicking on an item or by clicking on the optional plus button in front of the item. Each item may have a text and optional open-icon as well as a closed-icon. The items may be connected by optional lines to show the hierarchical relationship. When an item's selected state changes, the folding list emits a SEL_SELECTED or SEL_DESELECTED message. If an item is opened or closed, a message of type SEL_OPENED or SEL_CLOSED is sent. When the subtree under an item is expanded, a SEL_EXPANDED or SEL_COLLAPSED message is issued. A change of the current item is signified by the SEL_CHANGED message. In addition, the folding list sends SEL_COMMAND messages when the user clicks on an item, and SEL_CLICKED, SEL_DOUBLECLICKED, and SEL_TRIPLECLICKED when the user clicks once, twice, or thrice, respectively. When items are added or removed, the folding list sends messages of the type SEL_INSERTED or SEL_DELETED. In each of these cases, a pointer to the item, if any, is passed in the 3rd argument of the message. The text in each item is a string separated by tabs for each column; in mini- or big-icon mode, only the text before the first tab is shown. In detail-mode, the text before the first tab is shown in the first column, the text between the first and second tab is shown in the second column, and so on.

Member Function Documentation

◆ findItem()

FXFoldingItem* FX::FXFoldingList::findItem ( const FXString string,
FXFoldingItem start = nullptr,
FXuint  flags = SEARCH_FORWARD|SEARCH_WRAP 
) const

Search items by name, beginning from item start.

If the start item is NULL the search will start at the first, top-most item in the list. Flags may be SEARCH_FORWARD or SEARCH_BACKWARD to control the search direction; this can be combined with SEARCH_NOWRAP or SEARCH_WRAP to control whether the search wraps at the start or end of the list. The option SEARCH_IGNORECASE causes a case-insensitive match. Finally, passing SEARCH_PREFIX causes searching for a prefix of the item name. Return NULL if no matching item is found.

◆ findItemByData()

FXFoldingItem* FX::FXFoldingList::findItemByData ( FXptr  ptr,
FXFoldingItem start = nullptr,
FXuint  flags = SEARCH_FORWARD|SEARCH_WRAP 
) const

Search items by associated user data, beginning from item start.

If the start item is NULL the search will start at the first, top-most item in the list. Flags may be SEARCH_FORWARD or SEARCH_BACKWARD to control the search direction; this can be combined with SEARCH_NOWRAP or SEARCH_WRAP to control whether the search wraps at the start or end of the list.


The documentation for this class was generated from the following file:

Copyright © 1997-2022 Jeroen van der Zijp