#include <ndk++.h>
Inheritance diagram for NDK_XX::NDKDlgEdit:
Public Methods | |
NDKDlgEdit (NDKDlgControl *parent, int id, const string &text,int lines, int cols, int y, int x,int style=framed|editable|tabstop|notify) | |
~NDKDlgEdit () | |
int | edit (int key) |
Protected Methods | |
virtual int | add_or_insert_char (int key) |
virtual void | add_char (int key) |
virtual void | insert_char (int key) |
int | driver (int key) |
|
Definition at line 761 of file ndk++.cc.
00765 :NDKDlgLabel(parent,id,title,lines,cols,y,x,style) 00766 { 00767 } |
|
Definition at line 770 of file ndk++.cc. References NDK_XX::NDKDlgControl::has_frame(), and NDK_XX::NDKDlgLabel::viewport.
|
|
Definition at line 787 of file ndk++.cc. References NDK_XX::NDKDlgLabel::cur_x, NDK_XX::NDKDlgLabel::cur_y, NDK_XX::NDKDlgLabel::text, and NDK_XX::NDKDlgLabel::viewport. Referenced by add_or_insert_char().
|
|
Definition at line 805 of file ndk++.cc. References add_char(), NDK_XX::NDKDlgLabel::cur_x, NDK_XX::NDKDlgLabel::cur_y, NDK_XX::NDKDlgControl::get_ctrl_id(), insert_char(), NDK_XX::NDKDlgControl::notify_enabled(), NDK_XX::NDKDlgControl::overwrite(), NDK_XX::NDKDlgControl::pParent, NDK_XX::NDKDlgControl::process_message(), TXT_CHANGED, and NDK_XX::NDKDlgLabel::viewport. Referenced by edit().
00806 { 00807 if(!isprint(key)) 00808 return FALSE; 00809 00810 if(cur_x > -1 && cur_x < viewport->width()){ 00811 if(overwrite())add_char(key); 00812 else insert_char(key); 00813 viewport->move(cur_y,++cur_x); 00814 viewport->cursyncup(); 00815 viewport->refresh(); 00816 if(notify_enabled()) 00817 process_message(pParent,TXT_CHANGED,get_ctrl_id(),0); 00818 } 00819 return TRUE; 00820 } |
|
get a chance at processing the key, before parent does Reimplemented from NDK_XX::NDKDlgLabel. Definition at line 778 of file ndk++.cc. References edit().
00779 { 00780 if(edit(key)) 00781 return TRUE; 00782 return NDKDlgLabel::driver(key); 00783 } |
|
Definition at line 824 of file ndk++.cc. References add_or_insert_char(), NDK_XX::NDKDlgLabel::cur_x, NDK_XX::NDKDlgLabel::cur_y, NDK_XX::NDKDlgLabel::text, NDK_XX::NDKDlgLabel::viewport, and NDK_XX::NDKDlgLabel::visible_size(). Referenced by driver().
00825 { 00826 // getyx(cur_y,cur_x); 00827 00828 switch(key) { 00829 case KEY_BACKSPACE: 00830 case KEY_DC: 00831 if(cur_x){ 00832 text.erase(--cur_x,1); 00833 viewport->delch(cur_y,cur_x); 00834 viewport->move(cur_y,cur_x); 00835 viewport->cursyncup(); 00836 viewport->refresh(); 00837 } 00838 return TRUE; 00839 case KEY_LEFT: 00840 if(cur_x){ 00841 viewport->move(cur_y,--cur_x); 00842 viewport->cursyncup(); 00843 viewport->refresh(); 00844 } 00845 return TRUE; 00846 case KEY_RIGHT: 00847 if(cur_x < visible_size()){ 00848 viewport->move(cur_y,++cur_x); 00849 viewport->cursyncup(); 00850 viewport->refresh(); 00851 } 00852 return TRUE; 00853 default: 00854 if(add_or_insert_char(key)) 00855 return TRUE; 00856 } 00857 return FALSE; 00858 } |
|
Definition at line 795 of file ndk++.cc. References NDK_XX::NDKDlgLabel::cur_x, NDK_XX::NDKDlgLabel::cur_y, NDK_XX::NDKDlgLabel::max_len(), NDK_XX::NDKDlgLabel::text, and NDK_XX::NDKDlgLabel::viewport. Referenced by add_or_insert_char().
|