libyui-ncurses
 
Loading...
Searching...
No Matches
NCItemSelectorBase Class Referenceabstract
Inheritance diagram for NCItemSelectorBase:
Collaboration diagram for NCItemSelectorBase:

Public Member Functions

virtual ~NCItemSelectorBase ()
 
virtual NCursesEvent wHandleInput (wint_t key)
 
virtual int preferredWidth ()
 
virtual int preferredHeight ()
 
virtual void setSize (int newWidth, int newHeight)
 
virtual YItem * currentItem () const
 
virtual void setCurrentItem (YItem *item)
 
virtual void setEnabled (bool do_bv)
 
virtual bool setKeyboardFocus ()
 
virtual void setVisibleItems (int newVal)
 
int linesCount () const
 
int currentLine () const
 
virtual void addItem (YItem *item)
 
virtual void deleteAllItems ()
 
virtual void selectItem (YItem *item, bool selected)
 
virtual void deselectAllItems ()
 
const NCTableLinegetLine (int lineNo)
 
virtual void startMultipleChanges ()
 
virtual void doneMultipleChanges ()
 
virtual const char * location () const
 
virtual void activateItem (YItem *item)
 
virtual void shortcutChanged ()
 
virtual bool HasHotkey (int key)
 
- Public Member Functions inherited from NCPadWidget
 NCPadWidget (NCWidget *myparent=0)
 
 NCPadWidget (YWidget *parent)
 
size_t Columns ()
 
void setLabel (const NClabel &nlabel)
 
- Public Member Functions inherited from NCWidget
void grabSet (NCWidget *ngrab)
 
void grabRelease (NCWidget *ograb)
 
 NCWidget (NCWidget *myparent)
 
 NCWidget (YWidget *parent=0)
 
bool isValid () const
 
bool winExist () const
 
virtual const NCstyle::StylewStyle () const
 
const NCstyle::StWidgetwidgetStyle (bool nonactive=false) const
 
const NCstyle::StWidgetframeStyle () const
 
const NCstyle::StListlistStyle () const
 
wsze wGetDefsze () const
 
wrect wGetSize () const
 
void Update ()
 
void Redraw (bool sub=false)
 
void Recoded ()
 
NC::WState GetState () const
 
void SetState (const NC::WState newstate, bool force=false)
 
virtual bool HasFunctionHotkey (int key) const
 
virtual NCursesEvent wHandleHotkey (wint_t key)
 
void DumpOn (std::ostream &str, std::string prfx) const
 
- Public Member Functions inherited from tnode< NCWidget * >
 tnode (NCWidget *v, self *p=0, bool behind=true)
 
 tnode (NCWidget *v, self &p, bool behind=true)
 
 tnode (NCWidget *v, self &p, self &s, bool behind=true)
 
void Disconnect ()
 Disconnect from the parent and siblings, but keep children.
 
bool ReparentTo (self &p, bool behind=true)
 
bool ReparentTo (self &p, self &s, bool behind=true)
 
NCWidget *& Value () const
 
NCWidget *& operator() () const
 Alias for Value.
 
selfParent ()
 
const selfParent () const
 
selfPsibling ()
 Previous sibling.
 
const selfPsibling () const
 Previous sibling.
 
selfNsibling ()
 Next sibling.
 
const selfNsibling () const
 Next sibling.
 
selfFchild ()
 First child.
 
const selfFchild () const
 First child.
 
selfLchild ()
 Last child.
 
const selfLchild () const
 Last child.
 
bool HasParent () const
 
bool HasSiblings () const
 
bool HasChildren () const
 
bool IsParentOf (const self &c) const
 
bool IsSiblingOf (const self &s) const
 
bool IsChildOf (const self &p) const
 
unsigned Depth () const
 Depth: zero if no parent, otherwise 1 + parent's depth.
 
bool IsDescendantOf (const self &n) const
 
bool IsDescendantOf (const self *n) const
 
selfTop ()
 Root of the tree.
 
const selfTop () const
 
selfNext (bool restart=false)
 
selfNext (self *&c, bool restart=false)
 Return Next and assign it to c.
 
const selfNext (bool restart=false) const
 
const selfNext (const self *&c, bool restart=false) const
 
selfPrev (bool restart=false)
 
selfPrev (self *&c, bool restart=false)
 Return Prev and assign it to c.
 
const selfPrev (bool restart=false) const
 
const selfPrev (const self *&c, bool restart=false) const
 

Protected Member Functions

 NCItemSelectorBase (YWidget *parent, bool enforceSingleSelection)
 
 NCItemSelectorBase (YWidget *parent, const YItemCustomStatusVector &customStates)
 
void createItemWidget (YItem *item)
 
virtual NCTableTagcreateTagCell (YItem *item)=0
 
virtual void cycleCurrentItemStatus ()=0
 
virtual bool statusChangeAllowed (int fromStatus, int toStatus)
 
virtual NCursesEvent valueChangedNotify (YItem *item)=0
 
std::string description (YItem *item) const
 
std::vector< std::string > descriptionLines (YItem *item) const
 
YItem * scrollDownToNextItem ()
 
YItem * scrollUpToPreviousItem ()
 
virtual wsze preferredSize ()
 
virtual NCTableTagtagCell (int index) const
 
int findItemLine (YItem *item) const
 
virtual NCPadCreatePad ()
 
virtual NCTablePadmyPad () const
 
virtual void wRecoded ()
 
- Protected Member Functions inherited from NCPadWidget
void startMultidraw ()
 
void stopMultidraw ()
 
bool inMultidraw () const
 
unsigned labelWidth () const
 
virtual void wCreate (const wrect &newrect)
 
virtual void wDelete ()
 
virtual void wRedraw ()
 
wsze defPadSze () const
 
virtual void DrawPad ()
 
void InitPad ()
 
void AdjustPad (wsze nsze)
 
void DelPad ()
 
virtual void HScroll (unsigned total, unsigned visible, unsigned start)
 
virtual void VScroll (unsigned total, unsigned visible, unsigned start)
 
virtual void ScrollHead (NCursesWindow &w, unsigned ccol)
 
virtual void AdjustPadSize (wsze &minsze)
 
virtual bool handleInput (wint_t key)
 
- Protected Member Functions inherited from NCWidget
virtual void PreDisconnect ()
 
virtual void PostDisconnect ()
 
virtual void PreReparent ()
 
virtual void PostReparent ()
 
NCursesWindowParentWin ()
 
bool grabFocus ()
 
virtual void grabNotify (NCWidget *)
 
virtual bool wantFocus (NCWidget &ngrab)
 
void wMoveChildTo (NCWidget &child, const wpos &newpos)
 
void wRelocate (const wrect &newrect)
 
void wRelocate (const wpos &newpos, const wsze &newsze)
 
virtual void wMoveTo (const wpos &newpos)
 
virtual void wUpdate (bool forced_br=false)
 
wpos ScreenPos () const
 
- Protected Member Functions inherited from NCursesError
 NCursesError (const char *msg="unknown error",...)
 
 NCursesError (int val, const char *msg="unknown error",...)
 
NCursesErrorNCError (const char *msg="unknown error",...)
 
NCursesErrorNCError (int val, const char *msg="unknown error",...)
 

Protected Attributes

wsze _prefSize
 
bool _prefSizeDirty
 
int _selectorWidth
 
int _hotKey
 
- Protected Attributes inherited from NCPadWidget
bool hasHeadline
 
bool activeLabelOnly
 
- Protected Attributes inherited from NCWidget
NCWidget *const grabedBy
 
NCursesWindowwin
 (owned)
 
wsze defsze
 
wrect framedim
 
wrect inparent
 
bool noUpdates
 
bool skipNoDimWin
 
NC::WState wstate
 
NClabelhotlabel
 
- Protected Attributes inherited from tnode< NCWidget * >
NCWidgetval
 
- Protected Attributes inherited from NCursesError
int errval_i
 
std::string errmsg_t
 

Friends

std::ostream & operator<< (std::ostream &str, const NCItemSelectorBase &obj)
 

Additional Inherited Members

- Protected Types inherited from tnode< NCWidget * >
typedef tnode< NCWidget * > self
 

Constructor & Destructor Documentation

◆ NCItemSelectorBase() [1/2]

NCItemSelectorBase::NCItemSelectorBase ( YWidget * parent,
bool enforceSingleSelection )
protected

Standard constructor.

◆ NCItemSelectorBase() [2/2]

NCItemSelectorBase::NCItemSelectorBase ( YWidget * parent,
const YItemCustomStatusVector & customStates )
protected

Constructor for custom item status values.

◆ ~NCItemSelectorBase()

NCItemSelectorBase::~NCItemSelectorBase ( )
virtual

Destructor.

Member Function Documentation

◆ activateItem()

void NCItemSelectorBase::activateItem ( YItem * item)
virtual

Activate selected item. Can be used in tests to simulate user input.

◆ addItem()

void NCItemSelectorBase::addItem ( YItem * item)
virtual

Add an item to this widget. Reimplemented from YSelectionWidget.

◆ createItemWidget()

void NCItemSelectorBase::createItemWidget ( YItem * item)
protected

Create a widget for the given item.

◆ CreatePad()

NCPad * NCItemSelectorBase::CreatePad ( )
protectedvirtual

Create the pad for this widget.

Reimplemented from NCPadWidget.

◆ createTagCell()

virtual NCTableTag * NCItemSelectorBase::createTagCell ( YItem * item)
protectedpure virtual

Create a tag cell for an item. This is the cell with the "[x]" or "(x)" selector. It also stores the item pointer so the item can later be referenced by this tag.

Derived classes are required to implement this.

Implemented in NCCustomStatusItemSelector, and NCItemSelector.

◆ currentItem()

YItem * NCItemSelectorBase::currentItem ( ) const
virtual

Return the current item, i.e. the item that currently has the keyboard focus. Not to be confused with the selected item.

◆ currentLine()

int NCItemSelectorBase::currentLine ( ) const
inline

Return number of the current line, i.e. the line that has the keyboard focus.

◆ cycleCurrentItemStatus()

virtual void NCItemSelectorBase::cycleCurrentItemStatus ( )
protectedpure virtual

Cycle the status of the current item through its possible values. For a plain ItemSelector, this means true -> false -> true.

Derived classes are required to implement this.

Implemented in NCCustomStatusItemSelector, and NCItemSelector.

◆ deleteAllItems()

void NCItemSelectorBase::deleteAllItems ( )
virtual

Delete all items. Reimplemented from YSelectionWidget.

◆ description()

string NCItemSelectorBase::description ( YItem * item) const
protected

Return the desription text for an item. The result may contain newlines.

◆ descriptionLines()

vector< string > NCItemSelectorBase::descriptionLines ( YItem * item) const
protected

Return the description text for an item as multiple lines.

◆ deselectAllItems()

void NCItemSelectorBase::deselectAllItems ( )
virtual

Deselect all items.

◆ findItemLine()

int NCItemSelectorBase::findItemLine ( YItem * item) const
protected

Return the line number that contains the first line of 'item' or -1 if not found.

◆ getLine()

const NCTableLine * NCItemSelectorBase::getLine ( int lineNo)
inline

Return the text line with the specified line number. Notice that this is different from the item index (see getNumLines()).

◆ HasHotkey()

bool NCItemSelectorBase::HasHotkey ( int key)
virtual

Whether any item has the given hot-key . Reimplemented from NCWidget.

Reimplemented from NCWidget.

◆ linesCount()

int NCItemSelectorBase::linesCount ( ) const
inline

Return the number of lines in this widget. This is different from the number of items because each item always has one line for the item label, optionally multiple lines for the description, and optionally a separator line between it and the next item.

◆ location()

virtual const char * NCItemSelectorBase::location ( ) const
inlinevirtual

Reimplemented from NCPadWidget.

◆ myPad()

virtual NCTablePad * NCItemSelectorBase::myPad ( ) const
inlineprotectedvirtual

Return the pad for this widget; overloaded to narrow the type.

Reimplemented from NCPadWidget.

◆ preferredHeight()

int NCItemSelectorBase::preferredHeight ( )
virtual

Return the preferred height for this widget. Reimplemented from YWidget.

◆ preferredSize()

wsze NCItemSelectorBase::preferredSize ( )
protectedvirtual

Return the preferred size for this widget.

◆ preferredWidth()

int NCItemSelectorBase::preferredWidth ( )
virtual

Return the preferred width for this widget. Reimplemented from YWidget.

◆ scrollDownToNextItem()

YItem * NCItemSelectorBase::scrollDownToNextItem ( )
protected

If the cursor is not on the first line of an item (the line with the "[x]" selector), scroll down to the next line that is the first line of an item.

◆ scrollUpToPreviousItem()

YItem * NCItemSelectorBase::scrollUpToPreviousItem ( )
protected

If the cursor is not on the first line of an item (the line with the "[x]" selector), scroll up to the next line that is the first line of an item.

NOTREACHED

◆ selectItem()

void NCItemSelectorBase::selectItem ( YItem * item,
bool selected )
virtual

Select or deselect an item. Reimplemented from YSelectionWidget.

◆ setCurrentItem()

void NCItemSelectorBase::setCurrentItem ( YItem * item)
virtual

Set the current item, i.e. the item that currently has the keyboard focus.

◆ setEnabled()

void NCItemSelectorBase::setEnabled ( bool do_bv)
virtual

Enable or disable this widget. Reimplemented from YWidget.

Reimplemented from NCPadWidget.

◆ setKeyboardFocus()

bool NCItemSelectorBase::setKeyboardFocus ( )
virtual

Set the keyboard focus to this widget. Reimplemented from YWidget.

◆ setSize()

void NCItemSelectorBase::setSize ( int newWidth,
int newHeight )
virtual

Set the size of this widget. Reimplemented from YWidget.

◆ setVisibleItems()

void NCItemSelectorBase::setVisibleItems ( int newVal)
virtual

Set the number of visible items for this widget. Reimplemented from YItemSelector.

◆ shortcutChanged()

void NCItemSelectorBase::shortcutChanged ( )
virtual

Notification that some shortcut was changed.

Reimplemented from YSelectionWidget.

◆ statusChangeAllowed()

virtual bool NCItemSelectorBase::statusChangeAllowed ( int fromStatus,
int toStatus )
inlineprotectedvirtual

Return 'true' if a status change (by user interaction) from status 'fromStatus' to status 'toStatus' is allowed, 'false' if not.

Reimplemented in NCCustomStatusItemSelector, and NCItemSelector.

◆ tagCell()

NCTableTag * NCItemSelectorBase::tagCell ( int index) const
protectedvirtual

Return the tag cell (the cell with the "[x]" or "(x)" selector) for the item with the specified index.

Reimplemented in NCCustomStatusItemSelector.

◆ valueChangedNotify()

virtual NCursesEvent NCItemSelectorBase::valueChangedNotify ( YItem * item)
protectedpure virtual

Notification that a status value was just changed in the input handler and the 'notify' flag is set. The returned event is used as the return value of the input handler (unless it has event type 'none' which is also returned by the default constructor of NCursesEvent), i.e. it is sent to the application.

Derived classes are required to implement this.

Implemented in NCCustomStatusItemSelector, and NCItemSelector.

◆ wHandleInput()

NCursesEvent NCItemSelectorBase::wHandleInput ( wint_t key)
virtual

Handle keyboard input.

Reimplemented from NCWidget.

◆ wRecoded()

virtual void NCItemSelectorBase::wRecoded ( )
inlineprotectedvirtual

Reimplemented from NCPadWidget.


The documentation for this class was generated from the following files: