Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

NDK_XX::Label Class Reference

#include <ndk++.h>

Inheritance diagram for NDK_XX::Label:

NDK_XX::Control NDK_XX::Button NDK_XX::Edit NDK_XX::StatusBar NDK_XX::ListItem NDK_XX::PushButton NDK_XX::Tab NDK_XX::EditNumber NDK_XX::CheckButton NDK_XX::MenuItem NDK_XX::RadioButton NDK_XX::PropDlgPushButton NDK_XX::EditDate NDK_XX::EditDouble List of all members.

Public Methods

 Label (Control *parent, int id, const string &title,int lines, int cols, int y, int x,int style=tabstop|notify)
 Label (int id, const string &title,int lines, int cols, int y, int x,int style=tabstop|notify)
 ~Label ()
void set_text (const string &txt)
 Usualy, a control in a dialog has some kind of text on it...

string get_text () const
void activate ()
 Draw as active (i.e.,with bold frame).

void deactivate ()
 Draw as inactive (i.e.,with normal frame).

chtype operator[] (int pos) const
 Useful for scrolling labels in lists.

int max_len () const
 Maximum size of contained text. (default=viewport's size).

int set_max_len (int len)

Protected Methods

virtual void refresh_text ()
 Update the text we present on the viewport.

virtual void refresh_viewport ()
 Calls to the panel underneath.


Protected Attributes

string text
int pos_x
 Hack to manage framed/unframed windows.

int pos_y
 Hack to manage framed/unframed windows.

int max_length
 The maximum allowed text to enter.

NCursesWindow * viewport
int cur_x
 cursor situation

int cur_y
 cursor situation

int x_start
 first visible char


Constructor & Destructor Documentation

NDK_XX::Label::Label Control   parent,
int    id,
const string &    title,
int    lines,
int    cols,
int    y,
int    x,
int    style = tabstop|notify
 

Label Constructor See parameters for class Control

Definition at line 237 of file ndk++.cc.

References NDK_XX::Control::enable_notify(), NDK_XX::Control::has_frame(), max_length, pos_x, pos_y, set_text(), NDK_XX::Control::title, and viewport.

Referenced by NDK_XX::Tab::hide().

00241     : Control(parent,id,lines,cols,y,x,style)
00242         ,text(title)
00243         ,pos_x(0),pos_y(0)
00244         ,viewport(this)
00245         ,cur_x(0),cur_y(0),x_start(0)
00246 {
00247     enable_notify(false);
00248     if(has_frame()){
00249         viewport = new NCursesWindow(*this);
00250         pos_x++; 
00251         pos_y++; 
00252     }
00253     max_length = viewport->width();
00254     set_text(title);
00255     enable_notify();
00256 }

NDK_XX::Label::Label int    id,
const string &    title,
int    lines,
int    cols,
int    y,
int    x,
int    style = tabstop|notify
 

Label Constructor See parameters for class Control

Definition at line 260 of file ndk++.cc.

References NDK_XX::Control::enable_notify(), NDK_XX::Control::has_frame(), pos_x, pos_y, set_text(), NDK_XX::Control::title, and viewport.

00263     : Control(id,lines,cols,y,x,style)
00264         ,text(title)
00265         ,pos_x(0),pos_y(0)
00266         ,viewport(this)
00267         ,cur_x(0),cur_y(0)
00268 {
00269     enable_notify(false);
00270     if(has_frame()){
00271         viewport = new NCursesWindow(*this);
00272         pos_x++; 
00273         pos_y++; 
00274     }
00275     set_text(title);
00276     enable_notify();
00277 }

NDK_XX::Label::~Label   [inline]
 

Definition at line 480 of file ndk++.h.

00492 : public Edit


Member Function Documentation

void NDK_XX::Label::activate   [virtual]
 

Draw as active (i.e.,with bold frame).

Reimplemented from NDK_XX::Control.

Reimplemented in NDK_XX::Button, and NDK_XX::Tab.

Definition at line 310 of file ndk++.cc.

References NDK_XX::Control::has_frame(), NDK_XX::Control::is_hidden(), and refresh_viewport().

00311 {
00312     if(is_hidden())
00313         return;
00314     Control::activate();
00315     if(!has_frame()){
00316         refresh_viewport();
00317     }
00318 }

void NDK_XX::Label::deactivate   [virtual]
 

Draw as inactive (i.e.,with normal frame).

Reimplemented from NDK_XX::Control.

Reimplemented in NDK_XX::Button, and NDK_XX::Tab.

Definition at line 322 of file ndk++.cc.

References NDK_XX::Control::has_frame(), NDK_XX::Control::is_hidden(), and refresh_viewport().

00323 {
00324     if(is_hidden())
00325         return;
00326     Control::deactivate();
00327     if(!has_frame()){
00328         refresh_viewport();
00329     }
00330 }

string NDK_XX::Label::get_text   const [inline, virtual]
 

Implements NDK_XX::Control.

Definition at line 484 of file ndk++.h.

00492 : public Edit

int NDK_XX::Label::max_len   const [inline]
 

Maximum size of contained text. (default=viewport's size).

Definition at line 504 of file ndk++.h.

Referenced by NDK_XX::Edit::add_or_insert_char(), NDK_XX::Edit::insert_char(), NDK_XX::Edit::move_right(), NDK_XX::Tab::set_text(), and NDK_XX::PushButton::set_text().

00504 {}

chtype NDK_XX::Label::operator[] int    pos const [inline]
 

Useful for scrolling labels in lists.

Definition at line 490 of file ndk++.h.

References NDK_XX::Edit::Edit(), NDK_XX::Control::editable, NDK_XX::EditNumber::EditNumber(), NDK_XX::Control::framed, NDK_XX::Control::notify, NDK_XX::Control::tabstop, and text.

00492                  : public Edit
00493 {
00494 public:
00495 
00496     /**
00497         EditNumber Constructor
00498         See parameters for class Control
00499     */
00500     EditNumber( Control *parent,int id,const string &text

virtual void NDK_XX::Label::refresh_text   [inline, protected, virtual]
 

Update the text we present on the viewport.

Reimplemented in NDK_XX::Edit, and NDK_XX::ListItem.

Definition at line 530 of file ndk++.h.

References NDK_XX::Control::editable, NDK_XX::Control::framed, NDK_XX::Control::notify, and NDK_XX::Control::tabstop.

Referenced by set_text().

00535          :
    string mask;

virtual void NDK_XX::Label::refresh_viewport   [inline, protected, virtual]
 

Calls to the panel underneath.

Definition at line 536 of file ndk++.h.

References NDK_XX::EditDate::mask.

Referenced by activate(), NDK_XX::Edit::add_or_insert_char(), deactivate(), NDK_XX::EditDate::edit(), NDK_XX::Edit::edit(), NDK_XX::Edit::move_left(), NDK_XX::Edit::move_right(), and set_text().

00549                 :public EditNumber

int NDK_XX::Label::set_max_len int    len [inline]
 

Definition at line 506 of file ndk++.h.

00518 :public EditNumber

void NDK_XX::Label::set_text const string &    txt [virtual]
 

Usualy, a control in a dialog has some kind of text on it...

Implements NDK_XX::Control.

Reimplemented in NDK_XX::PushButton, NDK_XX::ListItem, and NDK_XX::Tab.

Definition at line 281 of file ndk++.cc.

References cur_x, NDK_XX::Control::get_ctrl_id(), NDK_XX::Control::notify_enabled(), NDK_XX::Control::pParent, NDK_XX::Control::process_message(), refresh_text(), refresh_viewport(), text, TXT_CHANGED, and x_start.

Referenced by NDK_XX::Button::activate(), NDK_XX::Button::deactivate(), NDK_XX::EditDate::EditDate(), and Label().

00282 {
00283     string old_text= text;
00284     text = v;
00285     x_start=0;
00286     cur_x=0;
00287     refresh_text();
00288     refresh_viewport();
00289     if(old_text!=text && notify_enabled()){
00290         process_message(pParent,TXT_CHANGED,get_ctrl_id(),0);
00291     }
00292 }


Member Data Documentation

int NDK_XX::Label::cur_x [protected]
 

cursor situation

Definition at line 524 of file ndk++.h.

Referenced by NDK_XX::Edit::add_char(), NDK_XX::Edit::add_or_insert_char(), NDK_XX::EditDate::edit(), NDK_XX::Edit::edit(), NDK_XX::Edit::insert_char(), NDK_XX::Edit::move_left(), NDK_XX::Edit::move_right(), and set_text().

int NDK_XX::Label::cur_y [protected]
 

cursor situation

Definition at line 524 of file ndk++.h.

int NDK_XX::Label::max_length [protected]
 

The maximum allowed text to enter.

Definition at line 516 of file ndk++.h.

Referenced by Label().

int NDK_XX::Label::pos_x [protected]
 

Hack to manage framed/unframed windows.

Definition at line 513 of file ndk++.h.

Referenced by Label(), NDK_XX::Tab::set_text(), and NDK_XX::PushButton::set_text().

int NDK_XX::Label::pos_y [protected]
 

Hack to manage framed/unframed windows.

Definition at line 513 of file ndk++.h.

Referenced by Label().

string NDK_XX::Label::text [protected]
 

Definition at line 510 of file ndk++.h.

Referenced by NDK_XX::Tab::activate(), NDK_XX::Button::activate(), NDK_XX::Edit::add_char(), NDK_XX::Edit::add_or_insert_char(), NDK_XX::CheckButton::CheckButton(), NDK_XX::Tab::deactivate(), NDK_XX::Button::deactivate(), NDK_XX::EditDate::edit(), NDK_XX::Edit::edit(), NDK_XX::Tab::hide(), NDK_XX::Edit::insert_char(), NDK_XX::MenuItem::MenuItem(), NDK_XX::Edit::move_right(), operator[](), NDK_XX::PushButton::PushButton(), NDK_XX::RadioButton::RadioButton(), NDK_XX::ListItem::set_check(), NDK_XX::Tab::set_text(), NDK_XX::ListItem::set_text(), NDK_XX::PushButton::set_text(), set_text(), and NDK_XX::Tab::Tab().

NCursesWindow* NDK_XX::Label::viewport [protected]
 

Edition viewport. When not framed, viewport = window;

Definition at line 521 of file ndk++.h.

Referenced by NDK_XX::Edit::add_or_insert_char(), Label(), NDK_XX::Edit::move_right(), and NDK_XX::Edit::~Edit().

int NDK_XX::Label::x_start [protected]
 

first visible char

Definition at line 527 of file ndk++.h.

Referenced by NDK_XX::Edit::add_or_insert_char(), NDK_XX::Edit::edit(), NDK_XX::Edit::move_left(), NDK_XX::Edit::move_right(), and set_text().


The documentation for this class was generated from the following files:
Generated on Thu Oct 10 16:02:16 2002 by doxygen1.2.17