30 #include <yui/YTable.h>
31 #include "NCPadWidget.h"
32 #include "NCTablePad.h"
39 NCTable( YWidget * parent, YTableHeader *tableHeader,
bool multiSelection =
false );
43 bool bigList()
const {
return biglist; }
45 void setHeader( std::vector <std::string> head );
46 void getHeader( std::vector <std::string> & head );
50 virtual void setAlignment(
int col, YAlignmentType al );
52 void setBigList(
const bool big ) { biglist = big; }
54 void SetSepChar(
const chtype colSepchar ) {
myPad()->SetSepChar( colSepchar ); }
56 void SetSepWidth(
const unsigned sepwidth ) {
myPad()->SetSepWidth( sepwidth ); }
58 void SetHotCol(
const int hcol ) {
myPad()->SetHotCol( hcol ); }
60 virtual void addItem( YItem *yitem );
61 virtual void addItems(
const YItemCollection & itemCollection );
62 virtual void deleteAllItems( );
64 virtual int getCurrentItem();
65 YItem * getCurrentItemPointer();
67 virtual void setCurrentItem(
int index );
68 virtual void selectItem( YItem *yitem,
bool selected );
69 void selectCurrentItem();
70 virtual void deselectAllItems();
72 virtual int preferredWidth();
73 virtual int preferredHeight();
75 virtual void setSize(
int newWidth,
int newHeight );
77 virtual void setLabel(
const std::string & nlabel );
81 bool setItemByKey(
int key );
85 virtual bool setKeyboardFocus()
88 return YWidget::setKeyboardFocus();
93 void stripHotkeys() {
myPad()->stripHotkeys(); }
111 virtual const char * location()
const {
return "NCTable"; }
113 virtual NCPad * CreatePad();
115 virtual void cellChanged(
int index,
int colnum,
const std::string & newtext );
116 virtual void cellChanged(
const YTableCell *cell );
118 virtual void startMultipleChanges() { startMultidraw(); }
119 virtual void doneMultipleChanges() { stopMultidraw(); }
123 virtual void addItem( YItem *yitem,
bool allAtOnce );
128 std::vector<NCstring> _header;
130 friend std::ostream & operator<<( std::ostream & STREAM,
const NCTable & OBJ );
virtual NCTablePad * myPad() const
virtual void setEnabled(bool do_bv)