25 #ifndef NCMultiSelectionBox_h
26 #define NCMultiSelectionBox_h
30 #include <yui/YMultiSelectionBox.h>
31 #include "NCPadWidget.h"
32 #include "NCTablePad.h"
54 bool isItemSelected( YItem *item );
60 virtual void startMultipleChanges() { startMultidraw(); }
62 virtual void doneMultipleChanges() { stopMultidraw(); }
64 virtual const char * location()
const {
return "NCMultiSelectionBox"; }
66 virtual void addItem( YItem * item );
68 virtual void deleteAllItems();
70 virtual void selectItem( YItem * item,
bool selected );
72 virtual void deselectAllItems();
77 virtual void wRecoded();
85 virtual int preferredWidth();
86 virtual int preferredHeight();
88 virtual void setSize(
int newWidth,
int newHeight );
90 virtual void setLabel(
const std::string & nlabel );
92 virtual YItem * currentItem();
93 virtual void setCurrentItem( YItem * item );
99 virtual bool setKeyboardFocus()
102 return YWidget::setKeyboardFocus();
107 unsigned getNumLines() {
return myPad()->
Lines(); }
115 #endif // NCMultiSelectionBox_h
void ClearTable()
Clear all content.
unsigned Lines() const
Return the number of table lines (logical, not screen)
virtual NCPad * CreatePad()
Create empty MsB pad.
void toggleCurrentItem()
Toggle item from selected -> deselected and vice versa.
const NCTableLine * GetLine(unsigned idx) const
Return the line at idx for read-only operations.
A virtual window with a real viewport (which is NCursesWindow) and a scrolling mechanism.
virtual NCTablePad * myPad() const
Overload myPad to narrow the type.
virtual void setEnabled(bool do_bv)
Pure virtual to make sure every widget implements it.
One line in a NCTable with multiple cells and an optional tree hierarchy.
NCTableTag * tagCell(int index)
Return pointer to current line tag (holds state and yitem pointer)
A column (one cell) used as a selection marker: [ ]/[x] or ( )/(x).