For information about our main software product, the zs4 video compositing system, please visit the zs4 web site at www.zs4.net.


products

linux
osx
win32
bsd

autodox

classtree

source code

grafix

Version 0.958, build id 0703161351

Module Description

the cheese! this module defines interfaces for bitmaps, pixels, fonts, widgets, gadgets, gui, pixel effects etc.
module type : so
license: t@b0
depends on: kernel tabpix tabres tcpip http document_dig

Module History


Version: 0.952

2006 march 20

made viewselect gadget (tab control) cpp members public, so that the zs4 editor (for example) can add private buttons (for file opening dialog).

2006 march 3

added two methods, SelectRGBQuery() and SelectRGB() to i_gui class, so that a UI implementation under win32 fltk, carbon or sdl may tell an app (zs4) that it supports color choosing, which will allow the addition of color choosing dialogs to the zs4 UI.

Version: 0.951

2006 feb 23

changed behaviour of file browser/treeview control such that clicking on a directory name will either expand or refresh that directories listing. collapsing must be done using the little minus (-) button to the left of the directory name.

Version: 0.950

2006 feb 4

fixed margin handling in string boxes so that the text string boxes observe left and top margin within their bounding boxes.

Version: 0.947

2005 11 28

removed watermarking from treeitem render method

2005 11 27

altered the text content of the help (former 'about' tab) such that (if the application is zweistein) the t@b on the web link is replaced by a "more info about zs4" link.

2005 11 23

fix: tool tip popups (UI Hints) used to pop up too fast. they are now delayed 1 to 2 seconds. this delay is controlled by the "tooltipdelay" property of the gui object class (static prop).

Version: 0.944

2.h 2005 09 8 enable the (optional elimination of locks in the UI GUI tree. which hopefully makes the UI a tad more snappy

Version: 0.937

2005 06 18

fixed font support so that fonts with spaces in the face names have a reasonable chance of being displayed successfully.

Version: 0.933

2005 05 29

added methods to allow gui drivers ( guifltk , gui_wingdi ) to provide system specific file dialogs, for file selection.

Version: 0.931

2005 05 21

removed legacy video effects since superior items are now available in the mmeditor modules which is the core of the zs2 application.

Version: 0.930

2005 may 5

started circle drag tool. this is a new drawing feedback tool which, unlike "oval" uses the start point of the drag as center and the distance between start and end point of the drag as radius.

Version: 0.929

2005 may 1

major overhaul of t@b object class registrations, such that the registration methods are static and no longer require c++ instance of the t@b class to proceed with type registration. this was done since it seemed to help with the kernel module.

Version: 0.927

2005 april 19

made internal classes of i_surface exportable for windows...

Version: 0.923

2005-feb-18

treeitems now have to more style tokens. "background-color-currentitem" is used for the background color of the +/- and icon gadgets if the treeitem is the one and only "current" item of the containing treeview.

"background-color-selected" is used for the background color of the treeitems name-string if the select-state if the treeitem is "on" (multiple) treeitems may be selected at the same time.

2005-feb-16

most shortcut keys are no longer case sensitive. this also due to case confusion in fltk.

2005-feb-10

added more style keywords, particularly for th alignment of background images.

2005-feb-5

added style keywords "margin" "margin-left" "margin-top" "margin-right" "margin-bottom" as well as "width" and "height". interpretation of these style keywords is not fully complete, but it is now possible to set top margins for tab buttons...

2005-jan-26

the toggle gadget now supports toggled skinning of background images, i hope. this a response to skinning complaints from the CEO dept. this appears to include also a background skinning bug.br

2005-jan-24

the digmap and digslides objects has been changed to allow HOME and END keys to bring the slide show the the first, respectively last picture.

an attempt has been made to fix the "input disregarded" bug in the digmap object. as a result the slide show should respond to EVERY bit of user input.

Version: 0.922

2005-jan-19

encapsulated digmap object in new gadget/canvas type "digslides". this for easy inclusion of "recent-digs-slideshow" into any application.

if the digslides object has a "showimages" parent gadget then clicking on a slide will send the image to the showimages control (fotoman).

futhermore the digslides control responds to the standard "Refresh" function key (F5) which will attemt to update the slide show with the latest (un-)digs.

Version: 0.920

2004 12 16 (December 16)

changed export fotoman dig so that one may specify an extension ".png" for exporting png files.

added more infos to the tabout class. results: the "about" tab in tab applications provides now a "t@b on the web" button, which reminds our user whence the software cometh from, plus a cuppel copyright remarks.

the about tab has also received some german translations.

Version: 0.918 and earlier

2004-11-24-Tue

added mothod to i_bitmap allowing the adoption of an i_gadget-contained font.

2004-11-23-Tue

enabled the folderview gadget to optionally filter for "directories only" or a set of file extensions, this has been used in the plugin module showaudio and mmeditor (products: fotoman , waveman and soon as well zweistein )

2004-10-27-Sat

a whole bunch o things have been done in the last month or so:

fixed. highlighting mix logic for string boxes and background rendering.

new i_toggle gadget class
new i_dig_video class
new i_export_dig class

on top of this there have been a HUGE i_showimages changes, which manifests itself mostly in the fotoman application.

2004-09-18-Sat

fixed crash resulting from recursively enabling/disabling complex widgets

2004-09-12-Sun

added i_vfx_r_rot180 raster-reader

fixed the graying of save button in showimages (fotoman) control. this results now in proper display of .ico .bmp and .cur files under win32 systems. in addition to this images should no longer get lost on the fly just cuz they cannot save themselves...

2004-09-09-Wed

turns out that the user can get itself into quita a big mess with the way we allows keyboard shortcuts to be on-the-fly user-programmed... from now on the user may only program ADDITIONAL keyboard shortcuts.

2004-09-08-Wed

the grafix library now supports "dragtools" a generic mechanism that allows the sub-classing of the following procedure: "conversion of mouse-drag operations into object input, including visual feedback.

2004-09-02-Thu

made sure that the kernel version number appers on some more gui application windows. specifically the generic t@b gui window.

fixed the handling/rendering of png transparencies in the image redering which is ultimately used in applets like fotoman.

started working on a generic sprite layer, primarily targeted at handling more user interface things.

2004-08-30-Mon

well, changed a shitload of stuff in this module.

1: removed to i_popup cpp class and the corresponding t@b class "popup", since internal policy has decreed that nothing shall popup in our gui (and remind people of IE). this move also gives us openings for lotsa optimizations, cuz popped up layers required a pile of (now unnecessary) logic.

2: changed the "layout_render_parent" for stringboxes, and adjusted some of the string refresh logic, so that meta info and bitmap info about string and fonts are used to reduce the number of times that a string is examind/measured/rendered.

3: changed the "Children[]" member of the gadget object to be declared with the volatile keyword. and have the i_editobject class/interface write-protect volatile objects.

2004-08-30-Sun

changed a lot of stuff around. hopefully treeviews are now faster. on top of this the tabbing for object viewers should have improved a bit...

2004-08-29-Sat

added a few (about 4) cpp classes for dealing with the browsing of type faces. this is now at a point where most typeface objects which the system can load, can also be viewed. not solved is the problem of making assignments between type faces and other objects.

2004-08-27 Fri

the issue with keyboard shortcuts has now come up. added a enumeration class "guieventkey" for a internationalizable set of shortcut keys. the system will now accept CTRL-Key combinations while hovering over buttons. this will cause that button to be assigned to the respective key.

Defines T@B-Script Classes

bitmap, buddyview, bump, button, bytebox, canvas, choice, choice_enum, classname_dragtool, classname_gadget, color, dig_video, digmap, digslides, document_font, document_image, dragtool, dragtool_circle, dragtool_line, dragtool_oval, dragtool_rect, editarray, editclass, editenum, editobject, editprimitive, exportdig, fltkimg, folderitem, folderview, font, fontclass, fontitem, fontsize, fontspec, fontview, frame, gadget, gadget_flags, gadgetstate, gfxbool, gfxenum, gfxflags, gfxfloat, gfxfloatratio, gfxint, gfxintsize, gfxobject, gfxstring, grafix, gui, guiapp, guievent, guieventkey, guieventtype, hole, image, imagefilter, jpeg, knob, mpdropbad, mpdropok, mpempty, mpew, mpnormal, mpns, mpnsew, objectview, pane, panes, pixelchannel, pixelproperty, png, point, progbar, prompt, rect, setup, showcanvas, showdocument, showfolder, showfont, showimage, showimages, showtext, slider, sprite, statstring, statusbar, stringbox, styleclass, stylesheet, surface, systime, tabout, tabs, textbox, tickstring, toggle, tooltipdelay, treeitem, treeview, viewfont, viewgadget, viewobject, viewselect