Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

ciroucset_form_t.h

00001 /* ciroucset form class. -*-ObjC-*-
00002 Copyright (C) 2004,2005 Antti Järvinen
00003 
00004 This program is free software; you can redistribute it and/or
00005 modify it under the terms of the GNU General Public License
00006 as published by the Free Software Foundation; either version 2
00007 of the License, or (at your option) any later version.
00008 
00009 This program is distributed in the hope that it will be useful,
00010 but WITHOUT ANY WARRANTY; without even the implied warranty of
00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012 GNU General Public License for more details.
00013 
00014 You should have received a copy of the GNU General Public License
00015 along with this program; if not, write to the Free Software
00016 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. */
00017 
00018 /* "$Id: ciroucset_form_t.h,v 1.6 2005/05/13 21:25:23 costello Exp $" -*-ObjC-*- */
00019 
00020 #ifndef CIROUCSET_FORM_H_INCLUDED
00021 #define CIROUCSET_FORM_H_INCLUDED
00022 #include <objc/Object.h>
00023 #include "ciroucset_common.h"
00024 #include "ciroucset_field_t.h"
00025 #include "ciroucset_label_t.h"
00026 #include "ciroucset_window_owner_p.h"
00027 #include "ciroucset_focus_observer_p.h"
00028 #include <limits.h> /* for INT_MAX */
00029 #include "pointerlist_t.h"
00030 
00037 @interface ciroucset_form_t:Object <ciroucset_window_owner_p> {
00038   /* static labels: */
00039   pointerlist_t *labels;                
00040   /* actual fields: */
00041   pointerlist_t *fields;        
00042   /* administrativa blaablaa: */
00043   ciroucset_field_t *focused_field; 
00044   unsigned focused_field_index ; 
00045   WINDOW *window;               
00046   id <ciroucset_focus_observer_p> focus_observer ; 
00047 }
00048 /*
00049  * methods:
00050  */
00051 -init ;
00052 -(int)add_field:(ciroucset_field_t *)aField ;
00053 -(int)add_label:(ciroucset_label_t *)aLabel ;
00059 -(void)create_navigation_network;
00060 -(void)remove_label:(id)aLabel;
00065 -(int)display:(WINDOW *)w ;
00070 -(int)display:(WINDOW *)w ;
00074 -(ciroucset_field_t *)field_of_focus ; 
00079 -(void)clear_to_eof;
00084 -(void)yank_buffer; 
00085 -(void)clear_field ; /* current field */
00086 -(void)clear_to_eol; /* current field */
00087 /*
00088  * phunktion that does what folks usualle expedt backspace-key to do.
00089  */
00090 -(void)del_backwards;
00091 -(void)del_forward;
00092 -(void)del_word;
00093 -(void)down_char;
00094 -(void)down_line;
00095 -(void)first_field;
00096 -(void)ins_line;
00097 -(void)ins_space;
00098 -(void)last_field;
00102 -(void)left_field;
00103 
00109 -(void)right_field ;
00120 -(void)left_char ; 
00131 -(void)right_char ; 
00132 -(void)new_line ; 
00137 -(void)next_field;
00138 -(void)next_page;
00139 -(void)next_word;
00140 -(void)prev_char;
00141 -(void)prev_field;
00142 -(void)prev_page;
00143 -(void)prev_word;
00144 -(void)to_beginning_of_line;
00145 -(void)up_char;
00149 -(void)up_field; 
00150 /*
00151  * moves focus to field that is "down" from focused
00152  */
00153 -(void)down_field;
00157 -free;
00158 -(void)refresh_current_field;
00159 -(void)refresh_all_fields ; 
00160 -(void)install_focus_change_observer:(id<ciroucset_focus_observer_p>)observer ;
00164 -(void)input_processor:(wchar_t)c: (int) get_wch_retval ; 
00169 -(ciroucset_field_t **)fieldpointers ; 
00177 -(void)focus_change_actions:(unsigned)aNewFocusedIndex ; 
00178 @end
00179 /* end if ciroucset_form_t definition */
00180 
00181 #endif /* CIROUCSET_FORM_H_INCLUDED */

Generated on Sun May 15 23:45:22 2005 for kort4 by  doxygen 1.4.2