From 3e35ed278f8bba95eff67d440ff594004d8f50f6 Mon Sep 17 00:00:00 2001 From: paolo Date: Tue, 5 Sep 2006 23:48:56 +0000 Subject: [PATCH] - added a container for holt_widget git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@1013 3ecf2c5c-341e-0410-92b4-d18e462d057c --- src/holt_container_window.cc | 40 ++++++++++++++++++++++++++ src/holt_container_window.hh | 55 ++++++++++++++++++++++++++++++++++++ 2 files changed, 95 insertions(+) create mode 100644 src/holt_container_window.cc create mode 100644 src/holt_container_window.hh diff --git a/src/holt_container_window.cc b/src/holt_container_window.cc new file mode 100644 index 0000000..340a52a --- /dev/null +++ b/src/holt_container_window.cc @@ -0,0 +1,40 @@ +#include "holt_container_window.hh" + +using namespace sgpem; + + + HoltContainerWindow::HoltContainerWindow(Simulation& simulation) + : _holt_widget(simulation) + { + // This just sets the title of our new window. + set_title(_("Holt Graph")); + add(_holt_widget); + _holt_widget.set_scaling_mode(CairoWidget::scaling_min); + _holt_widget.show(); + //set_keep_above(); + } + + HoltContainerWindow::~HoltContainerWindow() + { + } + + void HoltContainerWindow::on_size_request(Gtk::Requisition* /* requisition */ ) + { + int height = get_height(); + int width = get_width(); + // if height/width >=5/3 + if(height * 3 >= width * 5) + { + _holt_widget.set_arrange_mode(HoltWidget::arrange_vertical); + } + else if( width * 3 >= height * 5) + { + _holt_widget.set_arrange_mode(HoltWidget::arrange_horizontal); + } + else + { + _holt_widget.set_arrange_mode(HoltWidget::arrange_circular); + } + + + } diff --git a/src/holt_container_window.hh b/src/holt_container_window.hh new file mode 100644 index 0000000..df55725 --- /dev/null +++ b/src/holt_container_window.hh @@ -0,0 +1,55 @@ +// src/simulation_widget.hh - Copyright 2005, 2006, University +// of Padova, dept. of Pure and Applied +// Mathematics +// +// This file is part of SGPEMv2. +// +// This is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; either version 2 of the License, or +// (at your option) any later version. +// +// SGPEMv2 is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with SGPEMv2; if not, write to the Free Software +// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +#ifndef HOLT_CONTAINER_WINDOW_HH +#define HOLT_CONTAINER_WINDOW_HH 1 + +#include "config.h" +#include "gettext.h" + +#include + +#include +#include + +#include "backend/simulation.hh" +#include "cairo_widget.hh" +#include "holt_widget.hh" + +namespace sgpem { + // ------------------------------------------------------ + // + // HoltContainerWindow class + // + // contains and controls the tested holt widget + // + // ------------------------------------------------------ + class HoltContainerWindow : public Gtk::Window + { + public: + HoltContainerWindow(Simulation& simulation); + virtual ~HoltContainerWindow(); + protected: + virtual void on_size_request (Gtk::Requisition* requisition); + HoltWidget _holt_widget; + }; + +} // ~ namespace sgpem +#endif