Imaging Lingo widgets

Since Imagine Lingo was born, I am drawing my UI controls with this technic.
It's easy and fast, and I do not need to prepare a hundret bitmaps.

Surely there is a much better alternative for UI controls: The OSControl Xtra from Peghole. It creates boxes, scrollbars, push buttons, bevel buttons, progress bars, 'little arrow'-buttons, sliders, radio buttons and checkboxes.
And these controls are truely cross-platform: on a Macintosh they look like Macintosh controls, on a PC running Windows they look like windows controls.

But well, my Imging Lingo behaviors are still working, and I am using them alot (eg. in the 3DPI). They are not 'truely cross-platform' but they look like I want them to be...

Slider | Wheel | Button



Watch the Demo
Download Source (Director 8 file)

The behavior for a slider (= scrollbar):
You can not only define the standard properties like enabled, value, the minimum and maximum value, the lineStep and pageStep, than also if you like to control an integer or float value.
You can define the color for the slider thumb, if the arrow buttons should be visible, if the slider should be drawn in 'flat appearance', if there should be a hilite during page scrolling, and if the size of the slider should be as big as your sprite is or corrected to standard 16 pixel width.



Watch the Demo
Download Source (Director 8 file)

The Wheel is an endless slider, although you even can define a minimum and maximum value as well.
Controlling the values works exactly the same way as with the IL_Slider_behavior.
For adapting the appearance you can choose the color, the grid distance and 'flat appearance'.


Watch the Demo
Download Source (Director 8 file)

The behavior draws a button for you.
You can choose the type of the Button (Button, Toggles or Sticky), and one of 3 bevel strengths. You can also define, if an icon should be displayed, which bitmap member should be used for the icon, and which ink should be used when copying the icon image on the button.
Note that this version does not work with real text, you need to create a bitmap of the text to display it on the button.