Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members
|
00001 /******************************************************************************** 00002 * * 00003 * I c o n L i s t W i d g e t * 00004 * * 00005 ********************************************************************************* 00006 * Copyright (C) 1999,2006 by Jeroen van der Zijp. All Rights Reserved. * 00007 ********************************************************************************* 00008 * This library is free software; you can redistribute it and/or * 00009 * modify it under the terms of the GNU Lesser General Public * 00010 * License as published by the Free Software Foundation; either * 00011 * version 2.1 of the License, or (at your option) any later version. * 00012 * * 00013 * This library is distributed in the hope that it will be useful, * 00014 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 00016 * Lesser General Public License for more details. * 00017 * * 00018 * You should have received a copy of the GNU Lesser General Public * 00019 * License along with this library; if not, write to the Free Software * 00020 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. * 00021 ********************************************************************************* 00022 * $Id: FXIconList.h,v 1.95 2006/01/22 17:58:04 fox Exp $ * 00023 ********************************************************************************/ 00024 #ifndef FXICONLIST_H 00025 #define FXICONLIST_H 00026 00027 #ifndef FXSCROLLAREA_H 00028 #include "FXScrollArea.h" 00029 #endif 00030 00031 namespace FX { 00032 00033 00034 /// Icon list styles 00035 enum { 00036 ICONLIST_EXTENDEDSELECT = 0, /// Extended selection mode 00037 ICONLIST_SINGLESELECT = 0x00100000, /// At most one selected item 00038 ICONLIST_BROWSESELECT = 0x00200000, /// Always exactly one selected item 00039 ICONLIST_MULTIPLESELECT = 0x00300000, /// Multiple selection mode 00040 ICONLIST_AUTOSIZE = 0x00400000, /// Automatically size item spacing 00041 ICONLIST_DETAILED = 0, /// List mode 00042 ICONLIST_MINI_ICONS = 0x00800000, /// Mini Icon mode 00043 ICONLIST_BIG_ICONS = 0x01000000, /// Big Icon mode 00044 ICONLIST_ROWS = 0, /// Row-wise mode 00045 ICONLIST_COLUMNS = 0x02000000, /// Column-wise mode 00046 ICONLIST_NORMAL = ICONLIST_EXTENDEDSELECT 00047 }; 00048 00049 00050 class FXIcon; 00051 class FXHeader; 00052 class FXFont; 00053 class FXIconList; 00054 class FXFileList; 00055 00056 00057 /// Icon item 00058 class FXAPI FXIconItem : public FXObject { 00059 FXDECLARE(FXIconItem) 00060 friend class FXIconList; 00061 friend class FXFileList; 00062 protected: 00063 FXString label; 00064 FXIcon *bigIcon; 00065 FXIcon *miniIcon; 00066 void *data; 00067 FXuint state; 00068 private: 00069 FXIconItem(const FXIconItem&); 00070 FXIconItem& operator=(const FXIconItem&); 00071 protected: 00072 FXIconItem():bigIcon(NULL),miniIcon(NULL),data(NULL),state(0){} 00073 virtual void draw(const FXIconList* list,FXDC& dc,FXint x,FXint y,FXint w,FXint h) const; 00074 virtual FXint hitItem(const FXIconList* list,FXint rx,FXint ry,FXint rw=1,FXint rh=1) const; 00075 protected: 00076 virtual void drawBigIcon(const FXIconList* list,FXDC& dc,FXint x,FXint y,FXint w,FXint h) const; 00077 virtual void drawMiniIcon(const FXIconList* list,FXDC& dc,FXint x,FXint y,FXint w,FXint h) const; 00078 virtual void drawDetails(const FXIconList* list,FXDC& dc,FXint x,FXint y,FXint w,FXint h) const; 00079 public: 00080 enum { 00081 SELECTED = 1, /// Selected 00082 FOCUS = 2, /// Focus 00083 DISABLED = 4, /// Disabled 00084 DRAGGABLE = 8, /// Draggable 00085 BIGICONOWNED = 16, /// Big icon owned by item 00086 MINIICONOWNED = 32 /// Mini icon owned by item 00087 }; 00088 public: 00089 00090 /// Construct new item with given text, icons, and user-data 00091 FXIconItem(const FXString& text,FXIcon* bi=NULL,FXIcon* mi=NULL,void* ptr=NULL):label(text),bigIcon(bi),miniIcon(mi),data(ptr),state(0){} 00092 00093 /// Change item's text label 00094 virtual void setText(const FXString& txt); 00095 00096 /// Return item's text label 00097 const FXString& getText() const { return label; } 00098 00099 /// Change item's big icon, deleting the old icon if it was owned 00100 virtual void setBigIcon(FXIcon* icn,FXbool owned=FALSE); 00101 00102 /// Return item's big icon 00103 FXIcon* getBigIcon() const { return bigIcon; } 00104 00105 /// Change item's mini icon, deleting the old icon if it was owned 00106 virtual void setMiniIcon(FXIcon* icn,FXbool owned=FALSE); 00107 00108 /// Return item's mini icon 00109 FXIcon* getMiniIcon() const { return miniIcon; } 00110 00111 /// Change item's user data 00112 void setData(void* ptr){ data=ptr; } 00113 00114 /// Get item's user data 00115 void* getData() const { return data; } 00116 00117 /// Make item draw as focused 00118 virtual void setFocus(FXbool focus); 00119 00120 /// Return true if item has focus 00121 FXbool hasFocus() const { return (state&FOCUS)!=0; } 00122 00123 /// Select item 00124 virtual void setSelected(FXbool selected); 00125 00126 /// Return true if this item is selected 00127 FXbool isSelected() const { return (state&SELECTED)!=0; } 00128 00129 /// Enable or disable item 00130 virtual void setEnabled(FXbool enabled); 00131 00132 /// Return true if this item is enabled 00133 FXbool isEnabled() const { return (state&DISABLED)==0; } 00134 00135 /// Make item draggable 00136 virtual void setDraggable(FXbool draggable); 00137 00138 /// Return true if this item is draggable 00139 FXbool isDraggable() const { return (state&DRAGGABLE)!=0; } 00140 00141 /// Return width of item as drawn in list 00142 virtual FXint getWidth(const FXIconList* list) const; 00143 00144 /// Return height of item as drawn in list 00145 virtual FXint getHeight(const FXIconList* list) const; 00146 00147 /// Create server-side resources 00148 virtual void create(); 00149 00150 /// Detach server-side resources 00151 virtual void detach(); 00152 00153 /// Destroy server-side resources 00154 virtual void destroy(); 00155 00156 /// Save to stream 00157 virtual void save(FXStream& store) const; 00158 00159 /// Load from stream 00160 virtual void load(FXStream& store); 00161 00162 /// Destroy item and free icons if owned 00163 virtual ~FXIconItem(); 00164 }; 00165 00166 00167 /// Icon item collate function 00168 typedef FXint (*FXIconListSortFunc)(const FXIconItem*,const FXIconItem*); 00169 00170 00171 typedef FXObjectListOf<FXIconItem> FXIconItemList; 00172 00173 00174 /** 00175 * A Icon List Widget displays a list of items, each with a text and 00176 * optional icon. Icon List can display its items in essentially three 00177 * different ways; in big-icon mode, the bigger of the two icons is used 00178 * for each item, and the text is placed underneath the icon. In mini- 00179 * icon mode, the icons are listed in rows and columns, with the smaller 00180 * icon preceding the text. Finally, in detail mode the icons are listed 00181 * in a single column, and all fields of the text are shown under a 00182 * header control with one button for each subfield. 00183 * When an item's selected state changes, the icon list sends 00184 * a SEL_SELECTED or SEL_DESELECTED message. A change of the current 00185 * item is signified by the SEL_CHANGED message. 00186 * The icon list sends SEL_COMMAND messages when the user clicks on an item, 00187 * and SEL_CLICKED, SEL_DOUBLECLICKED, and SEL_TRIPLECLICKED when the user 00188 * clicks once, twice, or thrice, respectively. 00189 * When items are added, replaced, or removed, the icon list sends messages 00190 * of the type SEL_INSERTED, SEL_REPLACED, or SEL_DELETED. 00191 * In each of these cases, the index to the item, if any, is passed in the 00192 * 3rd argument of the message. 00193 */ 00194 class FXAPI FXIconList : public FXScrollArea { 00195 FXDECLARE(FXIconList) 00196 protected: 00197 FXHeader *header; // Header control 00198 FXIconItemList items; // Item list 00199 FXint nrows; // Number of rows 00200 FXint ncols; // Number of columns 00201 FXint anchor; // Anchor item 00202 FXint current; // Current item 00203 FXint extent; // Extent item 00204 FXint cursor; // Cursor item 00205 FXint viewable; // Visible item 00206 FXFont *font; // Font 00207 FXIconListSortFunc sortfunc; // Item sort function 00208 FXColor textColor; // Text color 00209 FXColor selbackColor; // Selected back color 00210 FXColor seltextColor; // Selected text color 00211 FXint itemWidth; // Item width 00212 FXint itemHeight; // Item height 00213 FXint itemSpace; // Space for item label 00214 FXint anchorx; // Rectangular selection 00215 FXint anchory; 00216 FXint currentx; 00217 FXint currenty; 00218 FXint grabx; // Grab point x 00219 FXint graby; // Grab point y 00220 FXString lookup; // Lookup string 00221 FXString help; // Help text 00222 FXbool state; // State of item 00223 protected: 00224 FXIconList(); 00225 void recompute(); 00226 void getrowscols(FXint& nr,FXint& nc,FXint w,FXint h) const; 00227 void drawLasso(FXint x0,FXint y0,FXint x1,FXint y1); 00228 void lassoChanged(FXint ox,FXint oy,FXint ow,FXint oh,FXint nx,FXint ny,FXint nw,FXint nh,FXbool notify); 00229 virtual void moveContents(FXint x,FXint y); 00230 virtual FXIconItem *createItem(const FXString& text,FXIcon *big,FXIcon* mini,void* ptr); 00231 static FXint compareSection(const FXchar *p,const FXchar* q,FXint s); 00232 static FXint compareSectionCase(const FXchar *p,const FXchar* q,FXint s); 00233 private: 00234 FXIconList(const FXIconList&); 00235 FXIconList &operator=(const FXIconList&); 00236 public: 00237 long onPaint(FXObject*,FXSelector,void*); 00238 long onEnter(FXObject*,FXSelector,void*); 00239 long onLeave(FXObject*,FXSelector,void*); 00240 long onUngrabbed(FXObject*,FXSelector,void*); 00241 long onKeyPress(FXObject*,FXSelector,void*); 00242 long onKeyRelease(FXObject*,FXSelector,void*); 00243 long onLeftBtnPress(FXObject*,FXSelector,void*); 00244 long onLeftBtnRelease(FXObject*,FXSelector,void*); 00245 long onRightBtnPress(FXObject*,FXSelector,void*); 00246 long onRightBtnRelease(FXObject*,FXSelector,void*); 00247 long onMotion(FXObject*,FXSelector,void*); 00248 long onQueryTip(FXObject*,FXSelector,void*); 00249 long onQueryHelp(FXObject*,FXSelector,void*); 00250 long onTipTimer(FXObject*,FXSelector,void*); 00251 long onCmdSelectAll(FXObject*,FXSelector,void*); 00252 long onCmdDeselectAll(FXObject*,FXSelector,void*); 00253 long onCmdSelectInverse(FXObject*,FXSelector,void*); 00254 long onCmdArrangeByRows(FXObject*,FXSelector,void*); 00255 long onUpdArrangeByRows(FXObject*,FXSelector,void*); 00256 long onCmdArrangeByColumns(FXObject*,FXSelector,void*); 00257 long onUpdArrangeByColumns(FXObject*,FXSelector,void*); 00258 long onCmdShowDetails(FXObject*,FXSelector,void*); 00259 long onUpdShowDetails(FXObject*,FXSelector,void*); 00260 long onCmdShowBigIcons(FXObject*,FXSelector,void*); 00261 long onUpdShowBigIcons(FXObject*,FXSelector,void*); 00262 long onCmdShowMiniIcons(FXObject*,FXSelector,void*); 00263 long onUpdShowMiniIcons(FXObject*,FXSelector,void*); 00264 long onHeaderChanged(FXObject*,FXSelector,void*); 00265 long onHeaderResize(FXObject*,FXSelector,void*); 00266 long onFocusIn(FXObject*,FXSelector,void*); 00267 long onFocusOut(FXObject*,FXSelector,void*); 00268 long onClicked(FXObject*,FXSelector,void*); 00269 long onDoubleClicked(FXObject*,FXSelector,void*); 00270 long onTripleClicked(FXObject*,FXSelector,void*); 00271 long onCommand(FXObject*,FXSelector,void*); 00272 long onAutoScroll(FXObject*,FXSelector,void*); 00273 long onLookupTimer(FXObject*,FXSelector,void*); 00274 long onCmdSetValue(FXObject*,FXSelector,void*); 00275 long onCmdGetIntValue(FXObject*,FXSelector,void*); 00276 long onCmdSetIntValue(FXObject*,FXSelector,void*); 00277 public: 00278 static FXint ascending(const FXIconItem* a,const FXIconItem* b); 00279 static FXint descending(const FXIconItem* a,const FXIconItem* b); 00280 static FXint ascendingCase(const FXIconItem* a,const FXIconItem* b); 00281 static FXint descendingCase(const FXIconItem* a,const FXIconItem* b); 00282 public: 00283 enum { 00284 ID_SHOW_DETAILS=FXScrollArea::ID_LAST, 00285 ID_SHOW_MINI_ICONS, 00286 ID_SHOW_BIG_ICONS, 00287 ID_ARRANGE_BY_ROWS, 00288 ID_ARRANGE_BY_COLUMNS, 00289 ID_HEADER_CHANGE, 00290 ID_LOOKUPTIMER, 00291 ID_SELECT_ALL, 00292 ID_DESELECT_ALL, 00293 ID_SELECT_INVERSE, 00294 ID_LAST 00295 }; 00296 public: 00297 00298 /// Construct icon list with no items in it initially 00299 FXIconList(FXComposite *p,FXObject* tgt=NULL,FXSelector sel=0,FXuint opts=ICONLIST_NORMAL,FXint x=0,FXint y=0,FXint w=0,FXint h=0); 00300 00301 /// Create server-side resources 00302 virtual void create(); 00303 00304 /// Detach server-side resources 00305 virtual void detach(); 00306 00307 /// Recalculate layout 00308 virtual void recalc(); 00309 00310 /// Perform layout 00311 virtual void layout(); 00312 00313 /// Compute and return content width 00314 virtual FXint getContentWidth(); 00315 00316 /// Return content height 00317 virtual FXint getContentHeight(); 00318 00319 /// Icon list can receive focus 00320 virtual bool canFocus() const; 00321 00322 /// Move the focus to this window 00323 virtual void setFocus(); 00324 00325 /// Remove the focus from this window 00326 virtual void killFocus(); 00327 00328 /// Return viewport size 00329 virtual FXint getViewportHeight(); 00330 00331 /// Resize this window to the specified width and height 00332 virtual void resize(FXint w,FXint h); 00333 00334 /// Move and resize this window in the parent's coordinates 00335 virtual void position(FXint x,FXint y,FXint w,FXint h); 00336 00337 /// Return number of items 00338 FXint getNumItems() const { return items.no(); } 00339 00340 /// Return number of rows 00341 FXint getNumRows() const { return nrows; } 00342 00343 /// Return number of columns 00344 FXint getNumCols() const { return ncols; } 00345 00346 /// Return header control 00347 FXHeader* getHeader() const { return header; } 00348 00349 /// Set headers from array of strings 00350 void setHeaders(const FXchar** strings,FXint size=1); 00351 00352 /// Set headers from newline separated strings 00353 void setHeaders(const FXString& strings,FXint size=1); 00354 00355 /// Append header with given text and optional icon 00356 void appendHeader(const FXString& text,FXIcon *icon=NULL,FXint size=1); 00357 00358 /// Remove header at index 00359 void removeHeader(FXint index); 00360 00361 /// Change text of header at index 00362 void setHeaderText(FXint index,const FXString& text); 00363 00364 /// Return text of header at index 00365 FXString getHeaderText(FXint index) const; 00366 00367 /// Change icon of header at index 00368 void setHeaderIcon(FXint index,FXIcon *icon); 00369 00370 /// Return icon of header at index 00371 FXIcon* getHeaderIcon(FXint index) const; 00372 00373 /// Change size of header at index 00374 void setHeaderSize(FXint index,FXint size); 00375 00376 /// Return width of header at index 00377 FXint getHeaderSize(FXint index) const; 00378 00379 /// Return number of headers 00380 FXint getNumHeaders() const; 00381 00382 /// Return the item at the given index 00383 FXIconItem *getItem(FXint index) const; 00384 00385 /// Replace the item with a [possibly subclassed] item 00386 FXint setItem(FXint index,FXIconItem* item,FXbool notify=FALSE); 00387 00388 /// Replace items text, icons, and user-data pointer 00389 FXint setItem(FXint index,const FXString& text,FXIcon *big=NULL,FXIcon* mini=NULL,void* ptr=NULL,FXbool notify=FALSE); 00390 00391 /// Fill list by appending items from array of strings 00392 FXint fillItems(const FXchar** strings,FXIcon *big=NULL,FXIcon* mini=NULL,void* ptr=NULL,FXbool notify=FALSE); 00393 00394 /// Fill list by appending items from newline separated strings 00395 FXint fillItems(const FXString& strings,FXIcon *big=NULL,FXIcon* mini=NULL,void* ptr=NULL,FXbool notify=FALSE); 00396 00397 /// Insert a new [possibly subclassed] item at the give index 00398 FXint insertItem(FXint index,FXIconItem* item,FXbool notify=FALSE); 00399 00400 /// Insert item at index with given text, icons, and user-data pointer 00401 FXint insertItem(FXint index,const FXString& text,FXIcon *big=NULL,FXIcon* mini=NULL,void* ptr=NULL,FXbool notify=FALSE); 00402 00403 /// Append a [possibly subclassed] item to the end of the list 00404 FXint appendItem(FXIconItem* item,FXbool notify=FALSE); 00405 00406 /// Append new item with given text and optional icons, and user-data pointer 00407 FXint appendItem(const FXString& text,FXIcon *big=NULL,FXIcon* mini=NULL,void* ptr=NULL,FXbool notify=FALSE); 00408 00409 /// Prepend a [possibly subclassed] item to the end of the list 00410 FXint prependItem(FXIconItem* item,FXbool notify=FALSE); 00411 00412 /// Prepend new item with given text and optional icons, and user-data pointer 00413 FXint prependItem(const FXString& text,FXIcon *big=NULL,FXIcon* mini=NULL,void* ptr=NULL,FXbool notify=FALSE); 00414 00415 /// Move item from oldindex to newindex 00416 FXint moveItem(FXint newindex,FXint oldindex,FXbool notify=FALSE); 00417 00418 /// Extract item from list 00419 FXIconItem* extractItem(FXint index,FXbool notify=FALSE); 00420 00421 /// Remove item from list 00422 void removeItem(FXint index,FXbool notify=FALSE); 00423 00424 /// Remove all items from list 00425 void clearItems(FXbool notify=FALSE); 00426 00427 /// Return item width 00428 FXint getItemWidth() const { return itemWidth; } 00429 00430 /// Return item height 00431 FXint getItemHeight() const { return itemHeight; } 00432 00433 /// Return index of item at x,y, or -1 if none 00434 virtual FXint getItemAt(FXint x,FXint y) const; 00435 00436 /** 00437 * Search items by name, beginning from item start. If the start 00438 * item is -1 the search will start at the first item in the list. 00439 * Flags may be SEARCH_FORWARD or SEARCH_BACKWARD to control the 00440 * search direction; this can be combined with SEARCH_NOWRAP or SEARCH_WRAP 00441 * to control whether the search wraps at the start or end of the list. 00442 * The option SEARCH_IGNORECASE causes a case-insensitive match. Finally, 00443 * passing SEARCH_PREFIX causes searching for a prefix of the item name. 00444 * Return -1 if no matching item is found. 00445 */ 00446 FXint findItem(const FXString& text,FXint start=-1,FXuint flags=SEARCH_FORWARD|SEARCH_WRAP) const; 00447 00448 /** 00449 * Search items by associated user data, beginning from item start. If the 00450 * start item is -1 the search will start at the first item in the list. 00451 * Flags may be SEARCH_FORWARD or SEARCH_BACKWARD to control the 00452 * search direction; this can be combined with SEARCH_NOWRAP or SEARCH_WRAP 00453 * to control whether the search wraps at the start or end of the list. 00454 */ 00455 FXint findItemByData(const void *ptr,FXint start=-1,FXuint flags=SEARCH_FORWARD|SEARCH_WRAP) const; 00456 00457 /// Scroll to make item at index visible 00458 virtual void makeItemVisible(FXint index); 00459 00460 /// Change item text 00461 void setItemText(FXint index,const FXString& text); 00462 00463 /// Return item text 00464 FXString getItemText(FXint index) const; 00465 00466 /// Change item big icon 00467 void setItemBigIcon(FXint index,FXIcon* icon,FXbool owned=FALSE); 00468 00469 /// Return big icon of item at index 00470 FXIcon* getItemBigIcon(FXint index) const; 00471 00472 /// Change item mini icon 00473 void setItemMiniIcon(FXint index,FXIcon* icon,FXbool owned=FALSE); 00474 00475 /// Return mini icon of item at index 00476 FXIcon* getItemMiniIcon(FXint index) const; 00477 00478 /// Change item user-data pointer 00479 void setItemData(FXint index,void* ptr); 00480 00481 /// Return item user-data pointer 00482 void* getItemData(FXint index) const; 00483 00484 /// Return TRUE if item at index is selected 00485 FXbool isItemSelected(FXint index) const; 00486 00487 /// Return TRUE if item at index is current 00488 FXbool isItemCurrent(FXint index) const; 00489 00490 /// Return TRUE if item at index is visible 00491 FXbool isItemVisible(FXint index) const; 00492 00493 /// Return TRUE if item at index is enabled 00494 FXbool isItemEnabled(FXint index) const; 00495 00496 /// Return item hit code: 0 outside, 1 icon, 2 text 00497 FXint hitItem(FXint index,FXint x,FXint y,FXint ww=1,FXint hh=1) const; 00498 00499 /// Repaint item at index 00500 void updateItem(FXint index) const; 00501 00502 /// Enable item at index 00503 virtual FXbool enableItem(FXint index); 00504 00505 /// Disable item at index 00506 virtual FXbool disableItem(FXint index); 00507 00508 /// Select item at index 00509 virtual FXbool selectItem(FXint index,FXbool notify=FALSE); 00510 00511 /// Deselect item at index 00512 virtual FXbool deselectItem(FXint index,FXbool notify=FALSE); 00513 00514 /// Toggle item at index 00515 virtual FXbool toggleItem(FXint index,FXbool notify=FALSE); 00516 00517 /// Select items in rectangle 00518 virtual FXbool selectInRectangle(FXint x,FXint y,FXint w,FXint h,FXbool notify=FALSE); 00519 00520 /// Extend selection from anchor index to index 00521 virtual FXbool extendSelection(FXint index,FXbool notify=FALSE); 00522 00523 /// Deselect all items 00524 virtual FXbool killSelection(FXbool notify=FALSE); 00525 00526 /// Change current item index 00527 virtual void setCurrentItem(FXint index,FXbool notify=FALSE); 00528 00529 /// Return current item index, or -1 if none 00530 FXint getCurrentItem() const { return current; } 00531 00532 /// Change anchor item index 00533 void setAnchorItem(FXint index); 00534 00535 /// Return anchor item index, or -1 if none 00536 FXint getAnchorItem() const { return anchor; } 00537 00538 /// Return index of item under cursor, or -1 if none 00539 FXint getCursorItem() const { return cursor; } 00540 00541 /// Sort items 00542 void sortItems(); 00543 00544 /// Return sort function 00545 FXIconListSortFunc getSortFunc() const { return sortfunc; } 00546 00547 /// Change sort function 00548 void setSortFunc(FXIconListSortFunc func){ sortfunc=func; } 00549 00550 /// Change text font 00551 void setFont(FXFont* fnt); 00552 00553 /// Return text font 00554 FXFont* getFont() const { return font; } 00555 00556 /// Return normal text color 00557 FXColor getTextColor() const { return textColor; } 00558 00559 /// Change normal text color 00560 void setTextColor(FXColor clr); 00561 00562 /// Return selected text background 00563 FXColor getSelBackColor() const { return selbackColor; } 00564 00565 /// Change selected text background 00566 void setSelBackColor(FXColor clr); 00567 00568 /// Return selected text color 00569 FXColor getSelTextColor() const { return seltextColor; } 00570 00571 /// Change selected text color 00572 void setSelTextColor(FXColor clr); 00573 00574 /// Change maximum item space for each item 00575 void setItemSpace(FXint s); 00576 00577 /// Return maximum item space 00578 FXint getItemSpace() const { return itemSpace; } 00579 00580 /// Get the current icon list style 00581 FXuint getListStyle() const; 00582 00583 /// Set the current icon list style. 00584 void setListStyle(FXuint style); 00585 00586 /// Set the status line help text for this widget 00587 void setHelpText(const FXString& text); 00588 00589 /// Get the status line help text for this widget 00590 const FXString& getHelpText() const { return help; } 00591 00592 /// Save list to a stream 00593 virtual void save(FXStream& store) const; 00594 00595 /// Load list from a stream 00596 virtual void load(FXStream& store); 00597 00598 /// Destructor 00599 virtual ~FXIconList(); 00600 }; 00601 00602 } 00603 00604 #endif
Copyright © 1997-2005 Jeroen van der Zijp |