Thoughts about what to do ...
Further notes on the Killer Widget
Published on November 6, 2004 By Michael Burris In DesktopX
Knocking Activation:

A 1 pixel-wide strip against the (top) edge of the screen is the activation strip. When the cursor enters the activation strip area, a timer is started and a flag is set. The flag is cleared when the timer expires. If the cursor enters the area again before the flag is cleared, the DesktopX object is shown. The effect is that the object is only shown when there's a deliberate "knock-knock" against the edge of the screen in the magic area. No accidental activation, immediate access, and no clicking! This works as a deactivation method, too.

OK, here's how it works:

Download the modules you want as .dxpacks, and the main object as a .dxpack. Run DesktopX. Load the main object.

When the main object is loaded, it will automatically begin the OnScriptEnter subroutine. This will check for data in the data file (standard CUI file? additional file?). If none is found, it will default into setup mode. If data is found, it will read that data into the module list, and then check for the existence of each icon object. If the icon does not exist, it will attempt to load the .dxpack. If the object cannot be loaded, then the information will be removed from the data file, a restart flag will be set, and the process will move to the next item. Once it's finished, the restart flag will be checked. If set, it will clear all variables and begin the OnScriptEnter sequence again.

Sidebar: to activate setup, click on the setup button. It will turn red and a number will appear, counting down each second. When the count reaches zero, the button will turn green for 2 seconds. You have to click on the button while it is green to get to setup.

The user will be asked to type in the name of the module, and then asked to select the module .dxpack from a list, when it will load that object. Note: the main object must have the same name as the dxpack (just without the extension), and the icon must have the name ICON_module name. Once loaded, the main object will change the state of the selected module object to "setup", where the module object will change the values of two variables (to be named later, but the data is 'name' and 'module name'). It then changes the state of the main object to "message received". The main object will add those values to the internal data array, reset it's own state, and ask for another module. This will repeat until the user opts to end the setup.

Next, the main object will write the information to a data file on disk, and switch to the chooser screen. Each module will have an icon object in the chooser screen that is called by the main object. In the chooser module, the icons are shown, and a click on an icon changes the module displayed. The change bewteen modules should be handled by: 1) move the current module to the top of the Z-order, 2) move the new module from off screen to right under the current module, 3) move the old module to off screen, 4) transfer focus to the new module.

The way that the icons are displayed in the chooser hasn't been set yet. It would be more convenient to have all modules available on the chooser screen at once, with smaller icons, but since there will be a variable number of modules, there isn't a consistent format that can be used. So the icons will be in a horizontal line, and will scroll left and right to access all of them. If scroll functionality isn't easy enough for me to do, maybe DXA should just be limited to a certain number of loaded modules - depending on how many icons can be shown in the chooser.

The help function should either open up a .PDF file or bring up a text file with instructions on how to use DXA and the standard modules. Should the developer standards and requirements be included in each download? (Check on file size difference).

Comments
No one has commented on this article. Be the first!