| Type | Title | Author |
|---|---|---|
| Forum topic | WebEx Connect Integration Availability | kreester |
| Notebook entry | Day One Dream Factory | chuckbrady |
| Notebook entry | how to animate a sprite | butcher |
The list plugin implements scrollable lists and outlines in a variety of styles.
The default script for lists allows for containment in a border.
Messages: nodemove, nodechange, nodeselect, nodeactive
Nodemove is sent when the position of the list changes.
Nodechange is sent when the items in the list change.
Nodeselect is sent when the select state of the list changes.
Nodeactive is sent when the active state of the list changes.
activeget, activeset
active TF = activeget(node name $) activeset(node name $, active TF)
Turn on or off the active state of the entire list.
Inactive lists are drawn in gray, items are not selectable.
Individual items can be activated or deactivated with the itemactiveset property
See: itemactiveset, itemactiveget
alignget, alignset
text align # = alignget(node name $) alignset(node name $, text align #)
Get or set the alignment of the entire list.
Values are -1 to 1 for left, center, and right.
boundsget, boundsset
rectangle $ = boundsget(node name $) boundsset(node name $, rectangle $)
Get or set the boundary rectangle of the object.
clipopenget, clipopenset
clip open TF = clipopenget(node name $) clipopenset(node name $, clip open TF)
Get or set the clipopen property. If true, the list does not clip its children.
This is useful for children that need to extend outside the list.
counticons, deleteicon, inserticon
total icons # = counticons(node name $) deleteicon(node name $, icon index #) inserticon(node name $, after index #)
These routines create, delete, and count icons for the given list.
In general, you should insert and name an icon, import data for it, and set the icon name of a list item to display.
See: itemiconset, itemiconget
countitems
total items # = countitems(node name $)
Returns the total number of items in the list.
cursorset
cursorset(node name $, icon name $)
Any list bar icon can be turned into a cursor as needed.
This allows a list to store and use custom cursors.
dataget, dataset
data $ = dataget(node name $) dataset(node name $, data $)
Insert tabbed text data into a list for outline view. This is very helpful for XML.
Dataget returns the tabbed data with a return at the end of each line.
deleteitem
deleteitem(node name $, item index #)
Deletes the given item.
enabledget, enabledset
enabled TF = enabledget(node name $) enabledset(node name $, enabled TF)
Get or set the enabled attribute of the list. If enabled, the list inverts selected items.
See: itemselectget, itemselectset, selectget, selectset, multiselectget, multiselectset
fillcolorget, fillcolorset
fill color $ = fillcolorget(node name $) fillcolorset(node name $, fill color $)
Get or set the fillcolor for the list.
fillget, fillset
fill TF = fillget(node name $) fillset(node name $, fill TF)
Get or set if the list is filled or transparent.
fontnameget, fontnameset
font name $ = fontnameget(node name $) fontnameset(node name $, font name $)
Get or set the font name for the entire list.
fontsizeget, fontsizeset
font size # = fontsizeget(node name $) fontsizeset(node name $, font size #)
Get or set the font size for the entire list.
fullget, fullset, infoget, infoset
full $ = fullget(node name $) fullset(node name $, full $) info $ = infoget(node name $) infoset(node name $, info $)
Get or set XML data that describes all the settings for this node.
The fullget and fullset routines have a header element with appropriate namespaces, infoget and infoset are an XML snippet for access as a property. Example:
mynode.info.title = "new title"
handlesget, handlesset
handles TF = handlesget(node name $) handlesset(node name $, handles TF)
Turn on or off dragable handles for reshaping the node.
This routine is used by the system tool palettes for manual positioning.
See: markersget, markersset, partget, partset
hittest, hittestall, hittestarrow
hit item index # = hittest(node name $, hor #, ver #) hit item index # = hittestall(node name $, hor #, ver #) hit item index # = hittestarrow(node name $, hor #, ver #)
Returns the index of the item clicked on, or zero if the mouse is not in an item.
Hittestall tests items even if they are inactive.
Hittestarrow tests for points in the open and close outlining arrows.
iconbinaryget, iconbinaryset
binary data $ = iconbinaryget(node name $, icon index #) iconbinaryset(node name $, icon index #, binary data $)
Get or set binary data for any icon.
This routine is useful for serialization into xml and trading icons between nodes.
iconexport, iconimport
iconexport(node name $, icon index #, file name $) iconimport(node name $, icon index #, file name $)
Import and export icon pictures. These are small 16 X 16 bitmapped images.
iconnameget, iconnameset
icon name $ = iconnameget(node name $, icon index #) iconnameset(node name $, icon index #, icon name $)
Get and set the name of the icon. This should match the icon name in the item.
insertitem
insertitem(node name $, after index #)
Inserts a new item after the given position. Use zero to insert at the beginning of the list.
See: itemnameset
itemactiveget, itemactiveset
active TF = itemactiveget(node name $, item index #) itemactiveset(node name $, item index #, active TF)
Get or set the active property of an item. Inactive items are drawn in gray and are not selectable.
The entire list can be activated or deactivated with the activeset property.
See: activeset, activeget
itembounds, itemextraspacebounds
the bounds $ = itembounds(node name $, item index #) extra space bounds $ = itemextraspacebounds(node name $, item index #)
This returns the bounds of any list item, or the bounds of the extra space at the bottom of the list item.
See: itemextraspaceset, itemextraspaceget
itemdividinglineget, itemdividinglineset
dividing line TF = itemdividinglineget(node name $, item index #) itemdividinglineset(node name $, item index #, dividing line TF)
Get or set the dividing line property of a list item. Dividing lines cannot be selected.
itemextrasaveget, itemextrasaveset, itemextraspaceget, itemextraspaceset
extra save # = itemextrasaveget(node name $, item index #) itemextrasaveset(node name $, item index #, extra save #) extra space # = itemextraspaceget(node name $, item index #) itemextraspaceset(node name $, item index #, extra space #)
This gets and sets the extra space at the bottom of any item.
Use this for expand lists to make them open and close.
Use the extrasaveset and extrasaveget functions to remember the desired value of extra space for that item.
Negative values will unify the extra space and the item visually.
itemfillcolorget, itemfillcolorset
color $ = itemfillcolorget(node name $, item index #) itemfillcolorset(node name $, item index #, color $)
Get or set the fill color of an individual item in the list.
See: fillcolorget, fillcolorset
itemfontstyleget, itemfontstyleset
font style name $ = itemfontstyleget(node name $, item index #) itemfontstyleset(node name $, item index #, font style name $)
Get or set the font style of an item. Available styles include: plain, bold, italic, and underline.
itemhiliteget, itemhiliteset
item hilite $ = itemhiliteget(node name $, item index #) itemhiliteset(node name $, item index #, item hilite $)
Get or set the hilite for each item, which draws a special border on the item showing mouse control.
Hilites include: thin, thick, gray, thick gray, dark, light, very dark, very light, and none.
itemiconget, itemiconset
icon name $ = itemiconget(node name $, item index #) itemiconset(node name $, item index #, icon name $)
Get or set the icon name for a list item. List icons are small 16 X 16 bitmapped images.
See: inserticon, deleteicon, counticons
itemisopenget, itemisopenset
open TF = itemisopenget(node name $, item index #) itemisopenset(node name $, item index #, open TF)
Get or set the open attribute. If an item is open in an outline list, the subitems are displayed.
itemnameget, itemnameset
item name $ = itemnameget(node name $, item index #) itemnameset(node name $, item index #, item name $)
Get or set the item name for a list item. Generally you will inset an item and then name it.
See: insertitem
itemrefget, itemrefset
item ref # = itemrefget(node name $, item index #) itemrefset(node name $, item index #, item ref #)
Get or set the item ref, which is a user definable number that sticks to the list.
itemselectget, itemselectset
select TF = itemselectget(node name $, item index #) itemselectset(node name $, item index #, select TF)
Get or set the selected attribute. Selected items appear inverted.
Selecting a new item will deselect the old one, unless multiselect is true.
See: multiselectset, multiselectget, enabledget, enabledset, selectget, selectset
itemtabcountget, itemtabcountset
tab count # = itemtabcountget(node name $, item index #) itemtabcountset(node name $, item index #, tab count #)
Get or set the tabcount attribute. This shows up in tabbed or outline style lists.
In tabbed lists, the tab count controls how many tabs are used from the left.
In outline lists, the number of tabs should only increase or decrease by 1 from item to item for outlining.
itemtextcolorget, itemtextcolorset
color $ = itemtextcolorget(node name $, item index #) itemtextcolorset(node name $, item index #, color $)
Get or set the text color of an item.
leadingget, leadingset
text leading # = leadingget(node name $) leadingset(node name $, text leading #)
Get or set the leading, which is extra pixels between items.
linecolorget, linecolorset
line color $ = linecolorget(node name $) linecolorset(node name $, line color $)
Get or set the color of the line around the list.
linesizeget, linesizeset
linesize # = linesizeget(node name $) linesizeset(node name $, linesize #)
Get or set the linesize, which is the border around the list.
See: linecolorset, linecolorget
markersget, markersset
markers TF = markersget(node name $) markersset(node name $, markers TF)
Turn on or off the node outline to show selection.
This routine is used by the system tool palettes to show that a node is selected.
See: handlesset, handlesget, partget, partset
moveitem
moveitem(node name $, item index #, new index #)
Moves the item to a new position.
multiselectget, multiselectset
multiselect TF = multiselectget(node name $) multiselectset(node name $, multiselect TF)
If true, multiple items can be selected, if false, only one item at a time can be selected.
See: selectset, selectget, itemselectset, itemselectget, enabledget, enabledset
partget, partset
part # = partget(node name $, hor #, ver #) partset(node name $, hor #, ver #, part #)
Get or set the points for an individual handle.
See: markersget, markersset, handlesset, handlesget
reset
reset(node name $)
Resets the height of the list to include all items. This is useful for scrolling.
selectcolorget, selectcolorset
select color $ = selectcolorget(node name $) selectcolorset(node name $, select color $)
Get and set the color of the selected list item. Use black to invert the list item and icon.
Be sure to have some contrast between the selection color and the item text color.
selectget, selectset
item index # = selectget(node name $) selectset(node name $, item index #)
Get or set the currently selected item, or zero for no item selected.
If multiple items are selected, selectget will return the first selected item.
See: enabledget, enabledset, multiselectget, multiselectset, itemselectset, itemselectget
selectnameget, selectnameset
item name $ = selectnameget(node name $) selectnameset(node name $, item name $)
Get or set the currently selected item by name.
If multiple items are selected, selectnameget will return the first selected item name.
If no item is selected, selectnameget will return the empty string.
If selectnameset cannot find an item with the given name, all items are deselected.
See: selectset, selectget
sortbyname, sortbyref
sortbyname(node name $, ascending TF) sortbyref(node name $, ascending TF)
These routines sort lists by name or item ref in ascending or descending order.
sortdatestring, sortdatetimestring, sortfloatstring, sortlongstring
string $ = sortdatestring(date string $) string $ = sortdatetimestring(date time string $) string $ = sortfloatstring(float #.#) string $ = sortlongstring(long #)
These are utility functions for converting dates and numbers into sortable strings.
The date format is "7/23/2003" and the date and time format is "7/24/1998 5:37 pm".
sortfouradd, sortfourfinish, sortfourstart
sortfouradd(node name $, string1 $, string2 $, string3 $, string4 $) index list $ = sortfourfinish(node name $, swaplist TF, ascending TF) sortfourstart(node name $)
First call sortfourstart followed by any number of calls to sortfouradd with the strings and substrings to be sorted.
Sortfourfinish will return the sorted index list of all the strings, if the swaplist flag is true, sortfourfinish will return the item swaps necessary to sort the list.
This is useful for sorting four-dimensional arrays of strings.
See: sortdatestring, sortlongstring, sortfloatstring, sortdatetimestring
sortoneadd, sortonefinish, sortonestart
sortoneadd(node name $, string1 $) index list $ = sortonefinish(node name $, swaplist TF, ascending TF) sortonestart(node name $)
First call sortonestart followed by any number of calls to sortoneadd with the strings to be sorted.
Sortonefinish will return the sorted index list of all the strings, if the swaplist flag is true, sortonefinish will return the item swaps necessary to sort the list.
This is useful for sorting one-dimensional arrays of strings.
See: sortdatestring, sortlongstring, sortfloatstring, sortdatetimestring
sortthreeadd, sortthreefinish, sortthreestart
sortthreeadd(node name $, string1 $, string2 $, string3 $) index list $ = sortthreefinish(node name $, swaplist TF, ascending TF) sortthreestart(node name $)
First call sortthreestart followed by any number of calls to sortthreeadd with the strings and substrings to be sorted.
Sortthreefinish will return the sorted index list of all the strings, if the swaplist flag is true, sortonefinish will return the item swaps necessary to sort the list.
This is useful for sorting three-dimensional arrays of strings.
See: sortdatestring, sortlongstring, sortfloatstring, sortdatetimestring
sorttwoadd, sorttwofinish, sorttwostart
sorttwoadd(node name $, string1 $, string2 $) index list $ = sorttwofinish(node name $, swaplist TF, ascending TF) sorttwostart(node name $)
First call sorttwostart followed by any number of calls to sorttwoadd with the strings and substrings to be sorted.
Sorttwofinish will return the sorted index list of all the strings, if the swaplist flag is true, sortonefinish will return the item swaps necessary to sort the list.
This is useful for sorting two-dimensional arrays of strings.
See: sortdatestring, sortlongstring, sortfloatstring, sortdatetimestring
styleget, styleset
style name $ = styleget(node name $) styleset(node name $, style name $)
Get or set the style of the list: outline, tabbed, standard, expanded, beveled, cascade, and control.
Outline lists have controls at left for opening and closing tabbed items.
Expanded lists are for opening and closing list items as menus.
Control lists draw a tree control, this is often combined with icons for file systems or document navigation.
See: itemisopenset, itemtabcountset
tabwidthget, tabwidthset
tab width # = tabwidthget(node name $) tabwidthset(node name $, tab width #)
Get or set the tab width for tabbed and outlined list items.
See: styleset, styleget
titlehorget, titlehorset
title hor # = titlehorget(node name $) titlehorset(node name $, title hor #)
Get or set the title horizontal offset of every list item.
titleverget, titleverset
title ver # = titleverget(node name $) titleverset(node name $, title ver #)
Get or set the title vertical offset of every list item.
There must be some leading at the bottom of the item for the title to be moved down.
See: leadingget, leadingset