Author: kmachalkova Date: Mon Nov 5 16:29:40 2007 New Revision: 41806 URL: http://svn.opensuse.org/viewcvs/yast?rev=41806&view=rev Log: Comments + removed unneeded stuff + fixed overloaded selectItem() Modified: branches/tmp/sh/mod-ui/ncurses/src/NCTree.cc branches/tmp/sh/mod-ui/ncurses/src/NCTree.h Modified: branches/tmp/sh/mod-ui/ncurses/src/NCTree.cc URL: http://svn.opensuse.org/viewcvs/yast/branches/tmp/sh/mod-ui/ncurses/src/NCTree.cc?rev=41806&r1=41805&r2=41806&view=diff ============================================================================== --- branches/tmp/sh/mod-ui/ncurses/src/NCTree.cc (original) +++ branches/tmp/sh/mod-ui/ncurses/src/NCTree.cc Mon Nov 5 16:29:40 2007 @@ -213,7 +213,7 @@ // METHOD NAME : NCTree::getTreeLine // METHOD TYPE : const NCTreeLine * // -// DESCRIPTION : +// DESCRIPTION : Return pointer to tree line at given index // inline const NCTreeLine * NCTree::getTreeLine( unsigned idx ) const { @@ -229,7 +229,7 @@ // METHOD NAME : NCTree::modifyTreeLine // METHOD TYPE : NCTreeLine * // -// DESCRIPTION : +// DESCRIPTION : Modify tree line at given index // inline NCTreeLine * NCTree::modifyTreeLine( unsigned idx ) { @@ -245,7 +245,7 @@ // METHOD NAME : NCTree::preferredWidth // METHOD TYPE : int // -// DESCRIPTION : +// DESCRIPTION : Set preferred width // int NCTree::preferredWidth() { @@ -259,7 +259,7 @@ // METHOD NAME : NCTree::preferredHeight // METHOD TYPE : int // -// DESCRIPTION : +// DESCRIPTION : Set preferred height // int NCTree::preferredHeight() { @@ -267,10 +267,17 @@ return sze.H; } +/////////////////////////////////////////////////////////////////// +// +// +// METHOD NAME : NCTree::setEnabled +// METHOD TYPE : void +// +// DESCRIPTION : Enable/disable widget +// void NCTree::setEnabled( bool do_bv ) { NCWidget::setEnabled( do_bv ); - //YTree::setEnabled( do_bv ); YWidget::setEnabled( do_bv ); } @@ -293,8 +300,9 @@ // METHOD NAME : NCTree::getCurrentItem // METHOD TYPE : int // -// DESCRIPTION : -// +// DESCRIPTION : Return YTreeItem pointer for a current line +// (under the cursor) +// const YTreeItem * NCTree::getCurrentItem() const { const YTreeItem * yitem = 0; @@ -312,25 +320,11 @@ /////////////////////////////////////////////////////////////////// // // -// METHOD NAME : NCTree::setCurrentItem +// METHOD NAME : NCTree::selectItem // METHOD TYPE : void // -// DESCRIPTION : +// DESCRIPTION : Set current item (under the cursor) to selected // -void NCTree::setCurrentItem( YTreeItem * it ) -{ - if ( !myPad() ) - return; - for ( unsigned i = 0; i < myPad()->Lines(); ++i ) { - const NCTreeLine * cline = getTreeLine( i ); - if ( &cline->Yitem() == it ) { - DDBG << "got " << it->label() << " at " << i << endl; - myPad()->ShowItem( cline ); - break; - } - } -} - void NCTree::selectItem( YItem *item, bool selected ) { if ( !myPad() ) @@ -340,7 +334,6 @@ YUI_CHECK_PTR( treeItem ); const YTreeItem *citem = getCurrentItem(); - NCMIL << "Index: " << citem->index() << endl; if ( !selected && ( treeItem == citem )) { @@ -348,23 +341,32 @@ } else { + //retrieve position of item int at = treeItem->index(); YTree::selectItem( treeItem, selected ); + //this highlights selected item, possibly unpacks the tree + //should it be in currently hidden branch myPad()->ShowItem( getTreeLine (at) ); } } +/////////////////////////////////////////////////////////////////// +// +// +// METHOD NAME : NCTree::selectItem +// METHOD TYPE : void +// +// DESCRIPTION : Set current item (at given index) to selected +// (overloaded for convenience) +// void NCTree::selectItem( int index ) { - YTree::deselectAllItems(); YItem * item = YTree::itemAt( index ); if ( item ) { - NCMIL << "selectItem: " << item->label().c_str() << endl; - item->setSelected( true ); - // FIXME - call myPad()->ShowItem() ??? + selectItem( item, true); } else YUI_THROW( YUIException( "Can't find selected item" ) ); @@ -404,7 +406,7 @@ // METHOD NAME : NCTree::CreatePad // METHOD TYPE : NCPad * // -// DESCRIPTION : +// DESCRIPTION : Creates empty pad // NCPad * NCTree::CreatePad() { @@ -420,11 +422,15 @@ // METHOD NAME : NCTree::Dit // METHOD TYPE : void // -// DESCRIPTION : +// DESCRIPTION : Creates tree lines and appends them to TreePad +// (called recursively for each child of an item) // void NCTree::Dit( NCTreeLine * p, NCTreePad * pad, YTreeItem * item ) { + //static index counter static int idx = 0; + //set item index explicitely, it is set to -1 by default + //which makes selecting items painful item->setIndex( idx++ ); NCTreeLine * c = new NCTreeLine( p, *item ); @@ -437,7 +443,14 @@ Dit( c, pad, (YTreeItem *)(*it) ); } } - +/////////////////////////////////////////////////////////////////// +// +// +// METHOD NAME : NCTree::DrawPad +// METHOD TYPE : void +// +// DESCRIPTION : Fills TreePad with lines (uses Dit to create them) +// void NCTree::DrawPad() { if ( !myPad() ) Modified: branches/tmp/sh/mod-ui/ncurses/src/NCTree.h URL: http://svn.opensuse.org/viewcvs/yast/branches/tmp/sh/mod-ui/ncurses/src/NCTree.h?rev=41806&r1=41805&r2=41806&view=diff ============================================================================== --- branches/tmp/sh/mod-ui/ncurses/src/NCTree.h (original) +++ branches/tmp/sh/mod-ui/ncurses/src/NCTree.h Mon Nov 5 16:29:40 2007 @@ -82,7 +82,6 @@ virtual void rebuildTree(); virtual const YTreeItem * getCurrentItem() const; - virtual void setCurrentItem( YTreeItem * it ); virtual void selectItem( YItem *item, bool selected ); virtual void selectItem( int index ); -- To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org For additional commands, e-mail: yast-commit+help@opensuse.org