Feelin release 050517

Date 17-May-2005 8:43:03
Topic: Software News


Feelin is an object-oriented system (OOS) for the AmigaOS. It provides two things : A small shared library, fast and powerful (the object-system's core), offering everything needed to create a complete object-oriented environnement ; And an extensible system to create and maintain GUIs. Although Feelin comes with a lot of GUI oriented classes, Feelin is not limited to that, and can be used for a variety of projects.




New preference item standard

Preference items are now defined in a CSS style format e.g. $button-frame (note well the dollar sign). The preference system has been partially rewritten and is now even more efficient.

Preview / Pop / Adjust

Created an adjust system with two new base classes FC_Adjust and FC_Preview. All previous adjust and pop classes are now subclasses of those two. FC_Adjust and FC_Preview subclasses are very modular, it's so simple now to create preview, popup and adjust classes.

Documents : XML / HTML

FC_XMLApplication has been split to create FC_XMLObject. FC_XMLDocument has been split to create FC_Document, which is now the base class for documents interpreting. FC_HTMLDocument is one of its new subclass. As FC_XMLDocument is used to parse XML code, FC_HTMLDocument can be used to parse HTML code (which is less formal).

XMLObjects

Feelin is not only able to create whole applications from XML files, but is now also able to create XML objects anywhere in your applications (and classes) very easily ! For example, all groups used by the preference editor are generated from XML files.

XMLApplications was a first step in the separation between code and GUI, now the user can do WHAT HE WANTS with its GUI.

FC_PreferenceGroup totaly rewritten

ALL preference groups (group objects used by the preference editor to adjust preferences) are now using XMLObjects ! XML files are available in the "Feelin:XMLSources/Feelin/Preferences" directory.

Only ONE tiny little line of code is needed to create a preference group !! It was already very easy to create preference groups, now everything is AUTOMATIC ! Thanks to the new preference items standard (e.g. $button-frame), the XML support and the FPreferenceScript type the whole preference process (object generation, loadin, saving and object disposal) is TOTALY AUTOMATIC !

A LOT of preference items have been added to a LOT of classes, making the GUI EXTREMELY configurable.

Layout & Rendering

At last, FC_ImageDisplay is capable of drawing GRADIENTS. This awaited improvement make the GUI really nice and soft.

Feelin GUI is now powered by a new layout rethinking system, the fourth and the last (I hope), it's just fabulous ! Rethink requests are now buffered, even if 20 rethinks are requested, only 1 redraw is performed ! And as usual only modified objects are updated.

Window expansion is nicer now. The window is expanded from all sides, thus a centered window expanding remains centered, instead of expanding only to the left and the bottom.

FC_Area and FC_Window are now subclasses of FC_Frame, which now handles the FA_Back on its own making refreshing just perfect The complex refresh mode has been improved and is now fabulous !

Events

The new event code FV_EVENT_BUTTON_WHEEL of class FF_EVENT_BUTTON has been added and can be used to react on mouse wheel. Most classes are now uses this nice features. In fact, eveything that can be adjusted with the mouse can also be adjusted with mouse wheel e.g. lists, sliders, proportionals, cycles, event group pages !

Dialogs

Subclass of FC_Window, the new FC_Dialog class can be used to create a lot of commom requesters e.g. "Ok", "Yes | No", "Save | Use | Cancel"... Custom objects can be added very easily making dialog window fully customizable e.g. FC_PreferenceEditor is now a subclass of FC_Dialog.

FC_List

FC_List has been particuliarly updated and is now become as powerful as configurable. Column format is now defined in XML and a lot of features are available.

---

With, 20 new classes (76 classes available), I've done my best to offer a more complete, powerful and pleasant framework for Amiga developers; and an attractive GUI for users that like customizing A LOT



This article comes from AmigaWorld - Amiga Community Portal
https://amigaworld.net

The URL for this story is:
https://amigaworld.net/article.php?storyid=2300