documentation and webdemo updates
[freeside.git] / htdocs / docs / man / FS / UI / Base.html
1 <HTML>
2 <HEAD>
3 <TITLE>FS::UI::Base - Base class for all user-interface objects</TITLE>
4 <LINK REV="made" HREF="mailto:perl@packages.debian.org">
5 </HEAD>
6
7 <BODY>
8
9 <A NAME="__index__"></A>
10 <!-- INDEX BEGIN -->
11
12 <UL>
13
14         <LI><A HREF="#name">NAME</A></LI>
15         <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
16         <LI><A HREF="#description">DESCRIPTION</A></LI>
17         <LI><A HREF="#methods">METHODS</A></LI>
18         <LI><A HREF="#version">VERSION</A></LI>
19         <LI><A HREF="#bugs">BUGS</A></LI>
20         <LI><A HREF="#see also">SEE ALSO</A></LI>
21         <LI><A HREF="#history">HISTORY</A></LI>
22 </UL>
23 <!-- INDEX END -->
24
25 <HR>
26 <P>
27 <H1><A NAME="name">NAME</A></H1>
28 <P>FS::UI::Base - Base class for all user-interface objects</P>
29 <P>
30 <HR>
31 <H1><A NAME="synopsis">SYNOPSIS</A></H1>
32 <PRE>
33   use FS::UI::SomeInterface;
34   use FS::UI::some_table;</PRE>
35 <PRE>
36   $interface = new FS::UI::some_table;</PRE>
37 <PRE>
38   $error = $interface-&gt;browse;
39   $error = $interface-&gt;search;
40   $error = $interface-&gt;view;
41   $error = $interface-&gt;edit;
42   $error = $interface-&gt;process;</PRE>
43 <P>
44 <HR>
45 <H1><A NAME="description">DESCRIPTION</A></H1>
46 <P>An FS::UI::Base object represents a user interface object.  FS::UI::Base
47 is intended as a base class for table-specfic classes to inherit from, i.e.
48 FS::UI::cust_main.  The simplest case, which will provide a default UI for your
49 new table, is as follows:</P>
50 <PRE>
51   package FS::UI::table_name;
52   use vars qw ( @ISA );
53   use FS::UI::Base;
54   @ISA = qw( FS::UI::Base );
55   sub db_table { 'table_name'; }</PRE>
56 <P>Currently available interfaces are:
57   FS::UI::Gtk, an X-Windows UI implemented using the Gtk+ toolkit
58   FS::UI::CGI, a web interface implemented using CGI.pm, etc.</P>
59 <P>
60 <HR>
61 <H1><A NAME="methods">METHODS</A></H1>
62 <DL>
63 <DT><STRONG><A NAME="item_new">new</A></STRONG><BR>
64 <DD>
65 <DT><STRONG><A NAME="item_browse">browse</A></STRONG><BR>
66 <DD>
67 <DT><STRONG><A NAME="item_title">title</A></STRONG><BR>
68 <DD>
69 <DT><STRONG><A NAME="item_addwidget">addwidget</A></STRONG><BR>
70 <DD>
71 </DL>
72 <P>
73 <HR>
74 <H1><A NAME="version">VERSION</A></H1>
75 <P>$Id: Base.html,v 1.3 2001-04-23 12:40:31 ivan Exp $</P>
76 <P>
77 <HR>
78 <H1><A NAME="bugs">BUGS</A></H1>
79 <P>This documentation is incomplete.</P>
80 <P>There should be some sort of per-(freeside)-user preferences and the ability
81 for specific FS::UI:: modules to put their own values there as well.</P>
82 <P>
83 <HR>
84 <H1><A NAME="see also">SEE ALSO</A></H1>
85 <P><A HREF="../.././FS/UI/Gtk.html">the FS::UI::Gtk manpage</A>, <A HREF="../.././FS/UI/CGI.html">the FS::UI::CGI manpage</A></P>
86 <P>
87 <HR>
88 <H1><A NAME="history">HISTORY</A></H1>
89 <P>$Log: Base.html,v $
90 <P>Revision 1.3  2001-04-23 12:40:31  ivan
91 <P>documentation and webdemo updates
92 <P>
93 Revision 1.1  1999/08/04 09:03:53  ivan
94 initial checkin of module files for proper perl installation</P>
95 <P>Revision 1.1  1999/01/20 09:30:36  ivan
96 skeletal cross-UI UI code.</P>
97
98 </BODY>
99
100 </HTML>