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 * >
void Disconnect ()
 Disconnect from the parent and siblings, but keep children.
bool ReparentTo (self &p, bool behind=true)
NCWidget *& Value () const
NCWidget *& operator() () const
 Alias for Value.
self * Parent ()
self * Psibling ()
 Previous sibling.
self * Nsibling ()
 Next sibling.
self * Fchild ()
 First child.
self * Lchild ()
 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
self & Top ()
 Root of the tree.
self * Next (bool restart=false)
self * Prev (bool restart=false)

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:
  • /builddir/build/BUILD/libyui-4.6.2-build/libyui-4.6.2/libyui-ncurses/src/NCItemSelector.h
  • /builddir/build/BUILD/libyui-4.6.2-build/libyui-4.6.2/libyui-ncurses/src/NCItemSelector.cc