<HTML> <HEAD> <TITLE>Source: hk_classes/hk_classes/hk_form.h</TITLE> <META NAME="Generator" CONTENT="KDOC "> </HEAD> <BODY bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#000099" alink= "#ffffff"> <TABLE WIDTH="100%" BORDER="0"> <TR> <TD> <TABLE BORDER="0"> <TR><TD valign="top" align="left" cellspacing="10"> <h1>Source: hk_classes/hk_classes/hk_form.h</h1> </TD> <TD valign="top" align="right" colspan="1"></TD></TR> </TABLE> <HR> <TABLE BORDER="0"> </TABLE> </TD> <TD align="right"><TABLE BORDER="0"><TR><TD><small><A HREF="index-long.html">Annotated List</A></small></TD></TR> <TR><TD><small><A HREF="header-list.html">Files</A></small></TD></TR> <TR><TD><small><A HREF="all-globals.html">Globals</A></small></TD></TR> <TR><TD><small><A HREF="hier.html">Hierarchy</A></small></TD></TR> <TR><TD><small><A HREF="index.html">Index</A></small></TD></TR> </TABLE></TD></TR></TABLE> <pre> // **************************************************************************** // copyright (c) 2000-2002 Horst Knorr <hk_classes@knoda.org> // This file is part of the hk_classes library. // This file may be distributed and/or modified under the terms of the // GNU Library Public License version 2 as published by the Free Software // Foundation and appearing in the file COPYING included in the // packaging of this file. // This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. // **************************************************************************** #ifndef HK_FORM_H #define HK_FORM_H #include "hk_presentation.h" using namespace std; class hk_dslineedit; class hk_dsgrid; class hk_dsboolean; class hk_dsrowselector; class hk_dscombobox; class hk_dsmemo; class hk_button; class hk_label; class hk_formprivate; /** * *@short base class for forms *@version $Revision: 1.2 $ *@author Horst Knorr (hk_classes@knoda.org) * */ /** * base class of a form.To use it set a database with set_database() first. To create a form it has to be in *mode "design". */ class hk_form:public hk_presentation { friend class hk_dsvisible; friend class hk_visible; public: hk_form(void); virtual ~hk_form(void); /** * the form has to be in design mode to use this function! The function will create a new * grid in the upper left corner. *@return the new created object if successful else NULL */ hk_dsgrid* new_grid(void); /** * the form has to be in design mode to use this function! The function will create a new * lineeidt field in the upper left corner. *@return the new created object if successful else NULL */ hk_dslineedit* new_lineedit(void); /** * the form has to be in design mode to use this function! The function will create a new * bool field in the upper left corner. *@return the new created object if successful else NULL */ hk_dsboolean* new_bool(void); /** * the form has to be in design mode to use this function! The function will create a new * combobox in the upper left corner. *@return the new created object if successful else NULL */ hk_dscombobox* new_combobox(void); /** * the form has to be in design mode to use this function! The function will create a new * button in the upper left corner. *@return the new created object if successful else NULL */ hk_button* new_button(void); /** * the form has to be in design mode to use this function! The function will create a new * row selector in the upper left corner. *@return the new created object if successful else NULL */ hk_dsrowselector* new_rowselector(void); /** * the form has to be in design mode to use this function! The function will create a new * memofield in the upper left corner. *@return the new created object if successful else NULL */ hk_dsmemo* new_memo(void); /** * the form has to be in design mode to use this function! The function will create a new * textlabel in the upper left corner. *@return the new created object if successful else NULL */ hk_label* new_label(void); /** *save the form to a file *@param name the name of the file *@param ask if true and the form already exists you will be asked before the old form will be overwritten *@return true if successful else false */ bool save_form(const hk_string& name="",bool ask=true); /** *load the form from a file *@param name the name of the file *@return true if successful else false */ void load_form(const hk_string& name=""); virtual void savedata(ostream& s); virtual void loaddata(const hk_string& definition); /** * sets the real size of the form. If you designed a form in i.e. 800x600 resolution and want to watch it * with 1024x768 resolution, set this to 1024x768. Dynamic sized visible objects will be resized. All objects * will be positioned new. */ virtual void set_designsize(unsigned int width, unsigned int height,bool registerchange=true); hk_visible* get_visible(long nr); hk_visible* get_visible(const hk_string& identifier); virtual void bulk_operation(enum_bulkoperation bulkoperation); virtual bool set_mode(enum_mode s); protected: virtual hk_dsgrid* widget_specific_new_grid(void){return NULL;} virtual hk_dsrowselector* widget_specific_new_rowselector(void){return NULL;} virtual hk_dslineedit* widget_specific_new_lineedit(void){return NULL;} virtual hk_dsboolean* widget_specific_new_bool(void){return NULL;} virtual hk_button* widget_specific_new_button(void){return NULL;} virtual hk_dscombobox* widget_specific_new_combobox(void){return NULL;} virtual hk_dsmemo* widget_specific_new_memo(void){return NULL;} virtual hk_label* widget_specific_new_label(void){return NULL;} virtual void widget_specific_fieldresize(hk_visible* v); virtual void widget_specific_after_loadform(void){} list<hk_visible*>* visibles(void); void remove_visible(hk_visible* v); hk_visible* new_object(const hk_string& name); void raise_widget(hk_visible*); void lower_widget(hk_visible*); virtual void sizetype_changed(void); private: void add_visible(hk_visible* v); void clear_visiblelist(void); hk_formprivate* p_private; }; #endif </pre> <HR> <table> <tr><td><small>Generated by: horst on horstnotebook on Wed Sep 24 10:38:50 2003, using kdoc 2.0a54.</small></td></tr> </table> </BODY> </HTML>