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