Author: sh-sh-sh
Date: Fri Aug 22 18:43:08 2008
New Revision: 50344
URL: http://svn.opensuse.org/viewcvs/yast?rev=50344&view=rev
Log:
added support for button box widgets
Added:
trunk/ncurses/src/NCButtonBox.cc
trunk/ncurses/src/NCButtonBox.h
Modified:
trunk/ncurses/src/Makefile.am
trunk/ncurses/src/NCWidgetFactory.cc
trunk/ncurses/src/NCWidgetFactory.h
trunk/ncurses/src/YNCursesUI.cc
Modified: trunk/ncurses/src/Makefile.am
URL: http://svn.opensuse.org/viewcvs/yast/trunk/ncurses/src/Makefile.am?rev=50344&r1=50343&r2=50344&view=diff
==============================================================================
--- trunk/ncurses/src/Makefile.am (original)
+++ trunk/ncurses/src/Makefile.am Fri Aug 22 18:43:08 2008
@@ -46,6 +46,7 @@
NCStyleDef.h \
NCTableItem.h \
NCPad.h \
+ NCButtonBox.h \
NCTreePad.h \
NCTablePad.h \
NCTextPad.h \
@@ -128,6 +129,7 @@
NCStyleDef.cc \
NCTableItem.cc \
NCPad.cc \
+ NCButtonBox.cc \
NCTreePad.cc \
NCTablePad.cc \
NCTextPad.cc \
Added: trunk/ncurses/src/NCButtonBox.cc
URL: http://svn.opensuse.org/viewcvs/yast/trunk/ncurses/src/NCButtonBox.cc?rev=50344&view=auto
==============================================================================
--- trunk/ncurses/src/NCButtonBox.cc (added)
+++ trunk/ncurses/src/NCButtonBox.cc Fri Aug 22 18:43:08 2008
@@ -0,0 +1,65 @@
+/*---------------------------------------------------------------------\
+| |
+| __ __ ____ _____ ____ |
+| \ \ / /_ _/ ___|_ _|___ \ |
+| \ V / _` \___ \ | | __) | |
+| | | (_| |___) || | / __/ |
+| |_|\__,_|____/ |_| |_____| |
+| |
+| core system |
+| (C) SuSE GmbH |
+\----------------------------------------------------------------------/
+
+ File: NCButtonBox.cc
+
+ Author: Stefan Hundhammer
+
+/-*/
+
+#define YUILogComponent "ncurses"
+#include
+#include "NCurses.h"
+#include "NCButtonBox.h"
+
+
+NCButtonBox::NCButtonBox( YWidget * parent )
+ : YButtonBox( parent )
+ , NCWidget( parent )
+{
+ yuiDebug() << endl;
+ wstate = NC::WSdumb;
+}
+
+
+NCButtonBox::~NCButtonBox()
+{
+ yuiDebug() << endl;
+}
+
+
+void NCButtonBox::setSize( int newWidth, int newHeight )
+{
+ wRelocate( wpos( 0 ), wsze( newHeight, newWidth ) );
+ YButtonBox::setSize( newWidth, newHeight );
+}
+
+
+void NCButtonBox::setEnabled( bool do_bv )
+{
+ NCWidget::setEnabled( do_bv );
+ YButtonBox::setEnabled( do_bv );
+}
+
+
+void NCButtonBox::moveChild( YWidget * child, int newX, int newY )
+{
+ NCWidget * cw = dynamic_cast( child );
+
+ if ( !( cw && IsParentOf( *cw ) ) )
+ {
+ yuiError() << DLOC << cw << " is not my child" << endl;
+ return;
+ }
+
+ wMoveChildTo( *cw, wpos( newY, newX ) );
+}
Added: trunk/ncurses/src/NCButtonBox.h
URL: http://svn.opensuse.org/viewcvs/yast/trunk/ncurses/src/NCButtonBox.h?rev=50344&view=auto
==============================================================================
--- trunk/ncurses/src/NCButtonBox.h (added)
+++ trunk/ncurses/src/NCButtonBox.h Fri Aug 22 18:43:08 2008
@@ -0,0 +1,52 @@
+/*---------------------------------------------------------------------\
+| |
+| __ __ ____ _____ ____ |
+| \ \ / /_ _/ ___|_ _|___ \ |
+| \ V / _` \___ \ | | __) | |
+| | | (_| |___) || | / __/ |
+| |_|\__,_|____/ |_| |_____| |
+| |
+| core system |
+| (C) SuSE GmbH |
+\----------------------------------------------------------------------/
+
+ File: NCButtonBox.h
+
+ Author: Michael Andres
+
+/-*/
+
+#ifndef NCButtonBox_h
+#define NCButtonBox_h
+
+#include <iosfwd>
+
+#include "YButtonBox.h"
+#include "NCWidget.h"
+
+class NCButtonBox;
+
+
+class NCButtonBox : public YButtonBox, public NCWidget
+{
+
+public:
+
+ NCButtonBox( YWidget * parent );
+ virtual ~NCButtonBox();
+
+ virtual void moveChild( YWidget * child, int newX, int newY );
+ virtual void setSize( int newWidth, int newHeight );
+ virtual void setEnabled( bool enabled );
+
+private:
+
+ friend std::ostream & operator<<( std::ostream & stream, const NCButtonBox & widget );
+
+ NCButtonBox & operator=( const NCButtonBox & );
+ NCButtonBox( const NCButtonBox & );
+
+};
+
+
+#endif // NCButtonBox_h
Modified: trunk/ncurses/src/NCWidgetFactory.cc
URL: http://svn.opensuse.org/viewcvs/yast/trunk/ncurses/src/NCWidgetFactory.cc?rev=50344&r1=50343&r2=50344&view=diff
==============================================================================
--- trunk/ncurses/src/NCWidgetFactory.cc (original)
+++ trunk/ncurses/src/NCWidgetFactory.cc Fri Aug 22 18:43:08 2008
@@ -279,6 +279,17 @@
return layoutBox;
}
+
+NCButtonBox *
+NCWidgetFactory::createButtonBox( YWidget * parent )
+{
+ NCButtonBox * buttonBox = new NCButtonBox( parent );
+ YUI_CHECK_NEW( buttonBox );
+
+ return buttonBox;
+}
+
+
NCEmpty *
NCWidgetFactory::createEmpty( YWidget * parent )
{
@@ -382,7 +393,7 @@
// Creates special widgets used for the package selection dialog.
// This is special to the NCurses UI; there is no a corresponding widget
-// in the Qt UI.
+// in the Qt UI.
YWidget *
NCWidgetFactory::createPkgSpecial( YWidget * parent, const string & subwidget )
{
Modified: trunk/ncurses/src/NCWidgetFactory.h
URL: http://svn.opensuse.org/viewcvs/yast/trunk/ncurses/src/NCWidgetFactory.h?rev=50344&r1=50343&r2=50344&view=diff
==============================================================================
--- trunk/ncurses/src/NCWidgetFactory.h (original)
+++ trunk/ncurses/src/NCWidgetFactory.h Fri Aug 22 18:43:08 2008
@@ -24,6 +24,7 @@
#include "NCAlignment.h"
#include "NCBusyIndicator.h"
+#include "NCButtonBox.h"
#include "NCCheckBox.h"
#include "NCCheckBoxFrame.h"
#include "NCComboBox.h"
@@ -78,6 +79,7 @@
//
virtual NCLayoutBox * createLayoutBox ( YWidget * parent, YUIDimension dim );
+ virtual NCButtonBox * createButtonBox ( YWidget * parent );
//
Modified: trunk/ncurses/src/YNCursesUI.cc
URL: http://svn.opensuse.org/viewcvs/yast/trunk/ncurses/src/YNCursesUI.cc?rev=50344&r1=50343&r2=50344&view=diff
==============================================================================
--- trunk/ncurses/src/YNCursesUI.cc (original)
+++ trunk/ncurses/src/YNCursesUI.cc Fri Aug 22 18:43:08 2008
@@ -26,6 +26,7 @@
#include
#include
#include
+#include
#include
#define YUILogComponent "ncurses"
@@ -81,6 +82,15 @@
app()->setLanguage( language, encoding );
}
+ YButtonBoxMargins buttonBoxMargins;
+ buttonBoxMargins.left = 1;
+ buttonBoxMargins.right = 1;
+ buttonBoxMargins.top = 1;
+ buttonBoxMargins.bottom = 0;
+ buttonBoxMargins.spacing = 1;
+ buttonBoxMargins.helpButtonExtraSpacing = 3;
+ YButtonBox::setDefaultMargins( buttonBoxMargins );
+
try
{
NCurses::init();
--
To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org
For additional commands, e-mail: yast-commit+help@opensuse.org