diff --git a/livesupport/modules/widgets/include/LiveSupport/Widgets/WhiteWindow.h b/livesupport/modules/widgets/include/LiveSupport/Widgets/WhiteWindow.h index e0171464f..ae73928cb 100644 --- a/livesupport/modules/widgets/include/LiveSupport/Widgets/WhiteWindow.h +++ b/livesupport/modules/widgets/include/LiveSupport/Widgets/WhiteWindow.h @@ -22,7 +22,7 @@ Author : $Author: maroy $ - Version : $Revision: 1.4 $ + Version : $Revision: 1.5 $ Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/modules/widgets/include/LiveSupport/Widgets/WhiteWindow.h,v $ ------------------------------------------------------------------------------*/ @@ -69,11 +69,21 @@ using namespace LiveSupport::Core; * A container holding exactly one child, habing a light blue border to it. * * @author $Author: maroy $ - * @version $Revision: 1.4 $ + * @version $Revision: 1.5 $ */ class WhiteWindow : public Gtk::Window { private: + /** + * The default width of the window, of -1, automatic. + */ + int defaultWidth; + + /** + * The default height of the window, if -1, automatic + */ + int defaultHeight; + /** * The rounded container for the window. */ @@ -263,6 +273,16 @@ class WhiteWindow : public Gtk::Window */ Glib::ustring get_title(void) const throw (); + + /** + * Set the default size of the window. + * + * @param width the default width of the window. + * @param height the default height of the window. + */ + void + set_default_size(int width, + int height) throw (); }; diff --git a/livesupport/modules/widgets/src/WhiteWindow.cxx b/livesupport/modules/widgets/src/WhiteWindow.cxx index e89cfe63c..fa88a721f 100644 --- a/livesupport/modules/widgets/src/WhiteWindow.cxx +++ b/livesupport/modules/widgets/src/WhiteWindow.cxx @@ -22,7 +22,7 @@ Author : $Author: maroy $ - Version : $Revision: 1.5 $ + Version : $Revision: 1.6 $ Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/modules/widgets/src/WhiteWindow.cxx,v $ ------------------------------------------------------------------------------*/ @@ -63,6 +63,8 @@ WhiteWindow :: WhiteWindow(Glib::ustring title, : Gtk::Window(Gtk::WINDOW_TOPLEVEL) { set_decorated(false); + defaultWidth = -1; + defaultHeight = -1; Ptr::Ref wf = WidgetFactory::getInstance(); @@ -137,6 +139,13 @@ void WhiteWindow :: on_size_request(Gtk::Requisition* requisition) throw () { Gtk::Window::on_size_request(requisition); + + if (defaultWidth >= 0 && requisition->width < defaultWidth) { + requisition->width = defaultWidth; + } + if (defaultHeight >= 0 && requisition->height < defaultHeight) { + requisition->height = defaultHeight; + } } @@ -300,3 +309,15 @@ WhiteWindow :: get_title(void) const throw () return title->get_label(); } + +/*------------------------------------------------------------------------------ + * Set the default window size. + *----------------------------------------------------------------------------*/ +void +WhiteWindow :: set_default_size(int width, + int height) throw () +{ + defaultWidth = width; + defaultHeight = height; +} +