// Copyright (c) 2002 Max Planck Institut fuer Informatik (Germany). // All rights reserved. // // This file is part of CGAL (www.cgal.org); you may redistribute it under // the terms of the Q Public License version 1.0. // See the file LICENSE.QPL distributed with CGAL. // // Licensees holding a valid commercial license may use this file in // accordance with the commercial license agreement provided with the software. // // This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. // // $Source: /CVSROOT/CGAL/Packages/Partition_2/demo/Partition_2/partition_2_toolbar_layers.C,v $ // $Revision: 1.1.6.1 $ $Date: 2004/12/19 16:37:42 $ // $Name: $ // // Author(s) : Radu Ursu #ifdef CGAL_USE_QT #include "partition_2_toolbar_layers.h" #include "partition_2_layers.h" // icons #include #include #include #include #include #include Layers_toolbar::Layers_toolbar(CGAL::Qt_widget *w, QMainWindow *mw, Cgal_Polygon *p) : QToolBar(mw, "LT"), nr_of_buttons(0) { showP = new Qt_layer_show_polygon(*p); showGA = new Qt_layer_show_greene_approx(*p); showYM = new Qt_layer_show_ymonotone(*p); showOC = new Qt_layer_show_optimal_convex(*p); showPP = new Qt_layer_show_polygon_points(*p); //set the widget widget = w; window = mw; widget->attach(showP); widget->attach(showGA); widget->attach(showYM); widget->attach(showOC); widget->attach(showPP); showGA->deactivate(); showYM->deactivate(); showOC->deactivate(); QIconSet set0(QPixmap( (const char**)show_polygon_small_xpm ), QPixmap( (const char**)show_polygon_xpm )); QIconSet set1(QPixmap( (const char**)greene_approx_small_xpm ), QPixmap( (const char**)greene_approx_xpm )); QIconSet set2(QPixmap( (const char**)ymonotone_small_xpm ), QPixmap( (const char**)ymonotone_xpm )); QIconSet set3(QPixmap( (const char**)optimal_convex_small_xpm ), QPixmap( (const char**)optimal_convex_xpm )); QIconSet set4(QPixmap( (const char**)points_small_xpm ), QPixmap( (const char**)points_xpm )); but[0] = new QToolButton(this, "show_polygon"); but[0]->setIconSet(set0); but[0]->setTextLabel("Show Simple Polygon"); but[1] = new QToolButton(this, "greene_approx"); but[1]->setIconSet(set1); but[1]->setTextLabel("Show Greene Approximation"); but[2] = new QToolButton(this, "ymonotone"); but[2]->setIconSet(set2); but[2]->setTextLabel("Show Y Monotone Partition"); but[3] = new QToolButton(this, "optimal_convex"); but[3]->setIconSet(set3); but[3]->setTextLabel("Show Optimal Convex Partition"); but[4] = new QToolButton(this, "show_points"); but[4]->setIconSet(set4); but[4]->setTextLabel("Show Polygon Vertices"); nr_of_buttons = 5; button_group = new QButtonGroup(0, "nonexclusive"); for(int i =0; isetToggleButton(true); but[i]->toggle(); button_group->insert(but[i]); } but[1]->toggle(); but[2]->toggle(); but[3]->toggle(); connect(but[0], SIGNAL(stateChanged(int)), showP, SLOT(stateChanged(int))); connect(but[1], SIGNAL(stateChanged(int)), showGA, SLOT(stateChanged(int))); connect(but[2], SIGNAL(stateChanged(int)), showYM, SLOT(stateChanged(int))); connect(but[3], SIGNAL(stateChanged(int)), showOC, SLOT(stateChanged(int))); connect(but[4], SIGNAL(stateChanged(int)), showPP, SLOT(stateChanged(int))); connect(button_group, SIGNAL(clicked(int)), widget, SLOT(redraw())); } Layers_toolbar::~Layers_toolbar() { delete showP; delete showGA; delete showYM; delete showOC; delete showPP; delete button_group; }; #include "partition_2_toolbar_layers.moc" #endif