Path: usenet.cise.ufl.edu!huron.eel.ufl.edu!usenet.eel.ufl.edu!uky.edu!stdio!news.iac.net!netnews.com!news.idt.net!chippy.visi.com!news-out.visi.com!nac!nntp.teleport.com!news.teleport.com!not-for-mail
From: Dominique Dumont <[email protected]>
Newsgroups: comp.lang.perl.announce,comp.lang.perl.tk
Subject: ANNOUNCE: new Puppet::Any module
Followup-To: comp.lang.perl.tk
Date: 19 Mar 1998 19:36:26 GMT
Organization: Teleport - Portland's Public Access (503) 220-1016
Lines: 59
Sender: [email protected]
Approved: [email protected] (comp.lang.perl.announce)
Message-ID: <[email protected]>
NNTP-Posting-Host: gadget.cscaper.com
X-Disclaimer: The "Approved" header verifies header information for article transmission and does not imply approval of content.
Xref: usenet.cise.ufl.edu comp.lang.perl.announce:21 comp.lang.perl.tk:156


Hello

Here's my last new perl (I said it ;-) ) modules :

Puppet::Any adpO Base class for an optionnal Tk GUI to your class   DDUMONT



Puppet::* classes are designed to provide an access to the "puppeted"
object using a GUI based on Tk.

The basic idea is when you construct a Puppet::* object, you have all the
functionnality of the object without the GUI. Then, when the need arises,
you may (or the class may decide to) open the GUI of the object and then
the user may perform any interactive he wishes.

On the other hand, if the need does not arise, you may instanciate a lot of
objects without cluttering your display.

For instance, if you have an object (say a ProcessGroup)
controlling a set of processes (Process objects). The user may start the
ProcessGroup through its GUI. Then all processes are run. If one of them
fails, it will raise its own GUI to display the cause of the problem and
let the user decide what to do.

This class named Puppet::Any is the base class inherited by all other
Puppet classes. In this example, Process and Process group both will
inherit Puppet::Any.

The base class features :
- A Tk::Multi::Manager to show or hide the different display of the base class
 (or of the derived class)
- A menu bar
- An event log display so derived object may log their activity
- A Debug log display so derived object may log their "accidental"
 activities
- An Object Scanner to display the attribute of the derived object
- A set of functions to managed "has-a" relationship between Puppet objects.
 The menu bar feature a "content" bar which enabled the user to open the
 display of all "contained" objects.

Future puppets derived of Puppet::Any will be :
Puppet::Twins (for RPC calls and Puppet features)
Puppet::Process
Puppet::ProcessGroup
Puppet::AtomicTest (no nuke there, its just a test that cannot be divided)

Don't ask me for a release or a release date of them. I have prototypes of
most of them and I'll release them when I get the time to put them in a proper
shape and to document them.




--
[email protected]