Create event driven Web GUI using remote scripting
This is a class set for implementing a GUI with forms, listviews, etc, using event driven programming helped by the "Remote Scripting" method.
The goals are to:
1) Do all the work in PHP without having to take care of generating HTML, capturing events on the server side, processing this events using PHP , and returning the response to the client side without reloading the page.
2) Have a set of classes to create many types of GUI elements, setting the event handling by assigning names to each event of interest, and processing the events doing something like to modify the state of the object in the server side and returning the response in an hidden iframe to redraw the GUI element on the client side.
3) Open a door for a future tool, lik "Visual-PHP", that simplifies the construction and generation of Web based GUI without dealing with too many technical details.
The main class is p4a_Application, a container of buttons, forms, labels or panels, that is also a contanier itself and can be made visible or not like a frame in Visual Basic.
This class generates DHTML help tooltips that may appear over different types of Web page elements when the user drags the mouse over them. Screenreaders can switch the tooltips off (using a hidden link) and have meaningful title attributes for the corresponding web page elements.
The class provides several means for associating tooltip messages to different page elements.
The tooltip messages are defined in HTML, thus providing flexibility to the formatting of the messages that are displayed, which may include images and other formatting elements.
The class generates all the necessary Javascript code to associate to all tooltips added to a page.
This Javascript code uses the an adapted version of infobox.js Javascript library written originally by Klaus Knopper.
2006-07-18: Now the select-box bug is fixed with an iframe-hack!