SmartButtons are flexible image buttons based on MaxGui panels.
The SmartButton functions are put together in a Blitzmax module, which need to be installed before you can use it.
A SmartButton consists out of images, regions, actions and triggers. You can then define one or more regions on a SmartButton where you want an action triggered. Every defined region can hold one or more actions.
To define a region you can use lines, circles, ovals, rectangles and polygons (any shape, all done in maths only). While moving the mouse over the image of the SmartButton any hit of a region with a certain trigger will result in an event and if an action is defined, also this action will be run.
An Action can be SetPicture, PlaySound, Simple Animation...(20 predefined different actions available, or use your own). Every region can hold one or more actions. The trigger decides when to act. These actions once created are completely independent. They will run every time the event is fired. All SmartButton actions and events are hook based and will occur without delay.
A valid trigger is mouse left/right - up,down, mousewheel up/down, mouse hover, timertick. A trigger can act only once or forever.
You can code all parts of a SmartButton by hand or use the SmartButton Editor to do it visual.
The SmartButton Editor creates a xml config file which holds all settings of defined hotspot regions and actions. This config file can then be automatically imported into Logic Gui © www.LogicZone.de to let the new SmartButton be part of your new gui design and to create all source code accordingly.
If you feed the SmartButton module only by your own code, this xml config file is not needed at all.