NAME
Tk::ColorEditor - a general purpose Tk widget Color Editor
SYNOPSIS
use Tk::ColorEditor;$cref = $mw->ColorEditor(-title => $title, -cursor => @cursor);$cref->Show;
DESCRIPTION
ColorEditor is implemented as an object with various methods, described below. First, create your ColorEditor object during program initialization (one should be sufficient), and then configure it by specifying a list of Tk widgets to colorize. When it's time to use the editor, invoke the Show() method.
ColorEditor allows some customization: you may alter the color attribute menu by adding and/or deleting menu items and/or separators, turn the status window on or off, alter the configurator's list of color widgets, or even supply your own custom color configurator callback.
- 1.
-
Call the constructor to create the editor object, which in turn returns a blessed reference to the new object:
use Tk::ColorEditor;$cref = $mw->ColorEditor(-title => $title,-cursor => @cursor,);mw - a window reference, usually the result of a MainWindow->newcall. As the default root of a widget tree, $mw and alldescendant widgets at object-creation-time are configuredby the default color configurator procedure. (You probablywant to change this though or you might end up colorizingColorEditor!)title - Toplevel title, default = ' '.cursor - a valid Tk '-cursor' specification (default is'top_left_arrow'). This cursor is used over all ColorEditor"hot spots".
- 2.
-
Invoke the configure() method to change editor characteristics:
$cref->configure(-option => value, ..., -option-n => value-n);options:-command : a callback to a `set_colors' replacement.-widgets : a reference to a list of widget referencesfor the color configurator.-display_status : TRUE IFF display the ColorEditor statuswindow when applying colors.-add_menu_item : 'SEP', or a color attribute menu item.-delete_menu_item : 'SEP', a color attribute menu item, or colorattribute menu ordinal.For example:$cref->configure(-delete_menu_item => 3,-delete_menu_item => 'disabledforeground',-add_menu_item => 'SEP',-add_menu_item => 'New color attribute',-widgets => [$ce, $qu, $f2b2],-widgets => [$f2->Descendants],-command => [\&my_special_configurator, some, args ]);
- 3.
-
Invoke the Show() method on the editor object, say, by a button or menu press:
$cref->Show;
- 4.
-
The cget(-widgets) method returns a reference to a list of widgets that are colorized by the configurator. Typically, you add new widgets to this list and then use it in a subsequent configure() call to expand your color list.
$cref->configure(-widgets => [@{$Filesystem_ref->cget(-widgets)}, @{$cref->cget(-widgets)},]);
- 5.
-
The delete_widgets() method expects a reference to a list of widgets which are then removed from the current color list.
$cref->delete_widgets($OBJTABLE{$objname}->{'-widgets'})
AUTHORS
Stephen O. Lidie, Lehigh University Computing Center. 95/03/05 [email protected]
Many thanks to Guy Decoux ([email protected]) for doing the initial translation of tcolor.tcl to TkPerl, from which this code has been derived.