NAME:

Object: TemplateChooser


SYNOPSIS:

use class::TemplateChooser;


DIRECTORY/FILE:

The file TemplateChooser.pm is located in the subdirectory './class'


DESCRIPTION:

The object TemplateChooser encapsulates the dialog used for choosing a template.


STATUS:

Coding: 99% done

Documentation: up-do-date

NOTE: Here all objects get correctly destroyed after closing the window --> !NO CIRCULAR REFERENCES!


ATTRIBUTES:

Do not set/read them directly, use the Get/Set methods instead.

$self->{'prjform'} #A reference to the PrjForm object this window is associated with

$self->{'ui'}->{'_top'} #A referenece to the Toplevel

$self->{'ui'}->{...the rest of this branch...} #References to the widgets that build the user interface


Class variables:


METHODS:


Class Methods:


Constructors:


new

$object = TemplateChooser->new($ref_prjform);

This constructor creates a new object of the class TemplateChooser.

it returns (áfter the dialog was executed) the filename of the choosen template.

Parameters:

(+) $ref_prjform: A reference to the PrjForm object the TemplateChooser was created from


Destructors:


DESTROY

The standard automatically called PERL destructor for objects. Unfortionatly it is called very late (when the whole application terminates.)


do_detstroy

$object->do_detsroy();


Public data methods (=Get/Set methods):


prjform

$ref_prjform = $object->prjform(); #gets a reference to the associated prjform object

$object ->prjform($ref_prjform); #sets a reference to the associated prjform object


Other public methods:


_filetypes_changed

$object->_filetypes_changed();

This is the callback for a change in the BrowseEntry that displays the filetypes.


_files_changed

$object->_files_changed();

This is the callback for a change in the TList that displays the template files.


KNOWN BUGS:

There is too much direct access to hash-values in the PrjForm class in this class.

We will have to create more Get/Set methods in PrjForm.pm and use them here later.


STILL MISSING: