Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
b5a40dca
Commit
b5a40dca
authored
Mar 27, 1992
by
Guido van Rossum
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Initial revision
parent
edbfcbd7
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
234 additions
and
0 deletions
+234
-0
Lib/irix5/flp.doc
Lib/irix5/flp.doc
+117
-0
Lib/plat-irix5/flp.doc
Lib/plat-irix5/flp.doc
+117
-0
No files found.
Lib/irix5/flp.doc
0 → 100755
View file @
b5a40dca
.SH
Module flp
.LP
The flp module loads fl-forms from fd files, as generated
by fdesign. The module is designed to be flexible enough to allow
almost anything to be done with the loaded form.
.LP
Loadform defines
two types of functions: functions to parse fd files and functions to
create the forms from the templates returned by the parse functions.
There are fairly low-level create functions that create single objects,
and convenience routines that create complete forms, including callbacks,
etc.
.LP
The exception flp.error is raised whenever an error occurs while parsing a forms
definition file or creating a form.
.SH 2
Parsing functions
.LP
There are two parsing functions, parse_form() and parse_forms(). They
take the following form:
.LP
.ft C
ftuple = parse_form(filename, formname)
.br
ftdict = parse_forms(filename)
.IP
Parse_form parses a single form, and returns a tuple (ftmp, otmplist).
Ftmp is a template for a form, otmplist is a list of templates for
objects. See below for a description of these templates.
.IP
Parse_forms parses all forms in an fd file. It returns a dictionary of
(ftmp, otmplist) tuples, indexed by formname.
.IP
Filename is the name of the forms definition file to inspect. The functions
appends '.fd' if needed, and use 'sys.path' to locate the file.
.IP
formname is the name of the form to load. This argument is mandatory,
even if the file only contains one form.
.LP
The form template and object template are structures that contain all
the information read from the fd file, in 'natural' form. A form
template record contains the following fields:
.IP
.nf
"Name", the name of the form;
"Width", the width of the form;
"Height", the height of the form; and
"Numberofobjects", the number of objects in the form.
.LP
An object template contains the following fields:
.IP
.nf
"Class", the class of object (eg. FL.BUTTON);
"Type", the sub-class (eg. FL.NORMALBUTTON);
"Box", a list with four members: [x, y, width, height];
"Boxtype", the type of box (eg. FL.DOWNBOX);
"Colors", a list with the two object colors;
"Alignment", the label alignment (eg. FL.ALIGNLEFT);
"Style", the label style (eg. FL.BOLDSTYLE);
"Lcol", the label color;
"Label", a string containing the label;
"Name", a string containing the name of the object;
"Callback", a string containing the callback routine name; and
"Argument", a string containing the callback routine extra argument.
.SH
Low-level create routines.
.LP
The three low-level creation routines are called as follows:
.LP
.ft C
form = create_form(form_template)
.IP
Create an fl form from a form template. Returns the form created.
.LP
.ft C
obj = create_object(form, obj_template)
.IP
Create an object in an fl form. Return the new object.
An error is raised if the object has a callback routine.
.SH
High-level create routines.
.LP
The 'standard' way to handle forms in python is to define a class
that contains the form and all the objects (insofar as they are named),
and that defines all the callback functions, and use an instance of
this class to handle the form interaction.
Flp contains three routines that simplify handling this paradigm:
.LP
.ft C
create_full_form(instance, ftuple)
.IP
This routine takes an instance of your form-handling class and an
ftuple (as returned by the parsing routines) as parameters. It inserts
the form into the instance, defines all object names and arranges that
the callback methods are called. All the names inserted into the
instance are the same as the names used for the objects, etc. in the
fd file.
.LP
.ft C
merge_full_form(instance, form, ftuple)
.IP
This function does the same as create_full_form, only it does not create
the form itself nor the 'background box' that fdesign automatically
adds to each form. This is useful if your class inherits a superclass
that already defines a skeleton form (with 'OK' and 'Cancel' buttons,
for instance), and you want to merge the new form into that existing
form. The 'form' parameter is the form to which the new objects are
added.
.LP
If you use the paradigm sketched here but need slightly more control
over object creation there is a routine that creates a single object
and inserts its name (and arranges for the callback routine to be
called):
.LP
.ft C
create_object_instance(instance, form, obj_template)
Lib/plat-irix5/flp.doc
0 → 100755
View file @
b5a40dca
.SH
Module flp
.LP
The flp module loads fl-forms from fd files, as generated
by fdesign. The module is designed to be flexible enough to allow
almost anything to be done with the loaded form.
.LP
Loadform defines
two types of functions: functions to parse fd files and functions to
create the forms from the templates returned by the parse functions.
There are fairly low-level create functions that create single objects,
and convenience routines that create complete forms, including callbacks,
etc.
.LP
The exception flp.error is raised whenever an error occurs while parsing a forms
definition file or creating a form.
.SH 2
Parsing functions
.LP
There are two parsing functions, parse_form() and parse_forms(). They
take the following form:
.LP
.ft C
ftuple = parse_form(filename, formname)
.br
ftdict = parse_forms(filename)
.IP
Parse_form parses a single form, and returns a tuple (ftmp, otmplist).
Ftmp is a template for a form, otmplist is a list of templates for
objects. See below for a description of these templates.
.IP
Parse_forms parses all forms in an fd file. It returns a dictionary of
(ftmp, otmplist) tuples, indexed by formname.
.IP
Filename is the name of the forms definition file to inspect. The functions
appends '.fd' if needed, and use 'sys.path' to locate the file.
.IP
formname is the name of the form to load. This argument is mandatory,
even if the file only contains one form.
.LP
The form template and object template are structures that contain all
the information read from the fd file, in 'natural' form. A form
template record contains the following fields:
.IP
.nf
"Name", the name of the form;
"Width", the width of the form;
"Height", the height of the form; and
"Numberofobjects", the number of objects in the form.
.LP
An object template contains the following fields:
.IP
.nf
"Class", the class of object (eg. FL.BUTTON);
"Type", the sub-class (eg. FL.NORMALBUTTON);
"Box", a list with four members: [x, y, width, height];
"Boxtype", the type of box (eg. FL.DOWNBOX);
"Colors", a list with the two object colors;
"Alignment", the label alignment (eg. FL.ALIGNLEFT);
"Style", the label style (eg. FL.BOLDSTYLE);
"Lcol", the label color;
"Label", a string containing the label;
"Name", a string containing the name of the object;
"Callback", a string containing the callback routine name; and
"Argument", a string containing the callback routine extra argument.
.SH
Low-level create routines.
.LP
The three low-level creation routines are called as follows:
.LP
.ft C
form = create_form(form_template)
.IP
Create an fl form from a form template. Returns the form created.
.LP
.ft C
obj = create_object(form, obj_template)
.IP
Create an object in an fl form. Return the new object.
An error is raised if the object has a callback routine.
.SH
High-level create routines.
.LP
The 'standard' way to handle forms in python is to define a class
that contains the form and all the objects (insofar as they are named),
and that defines all the callback functions, and use an instance of
this class to handle the form interaction.
Flp contains three routines that simplify handling this paradigm:
.LP
.ft C
create_full_form(instance, ftuple)
.IP
This routine takes an instance of your form-handling class and an
ftuple (as returned by the parsing routines) as parameters. It inserts
the form into the instance, defines all object names and arranges that
the callback methods are called. All the names inserted into the
instance are the same as the names used for the objects, etc. in the
fd file.
.LP
.ft C
merge_full_form(instance, form, ftuple)
.IP
This function does the same as create_full_form, only it does not create
the form itself nor the 'background box' that fdesign automatically
adds to each form. This is useful if your class inherits a superclass
that already defines a skeleton form (with 'OK' and 'Cancel' buttons,
for instance), and you want to merge the new form into that existing
form. The 'form' parameter is the form to which the new objects are
added.
.LP
If you use the paradigm sketched here but need slightly more control
over object creation there is a routine that creates a single object
and inserts its name (and arranges for the callback routine to be
called):
.LP
.ft C
create_object_instance(instance, form, obj_template)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment