design_win.h
changeset 3 2cc5ed6e6255
equal deleted inserted replaced
-1:000000000000 0:9ed2338b89d1
       
     1 /* -*- C++ -*-
       
     2  *
       
     3  * This file is a part of LEMON, a generic C++ optimization library
       
     4  *
       
     5  * Copyright (C) 2003-2006
       
     6  * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
       
     7  * (Egervary Research Group on Combinatorial Optimization, EGRES).
       
     8  *
       
     9  * Permission to use, modify and distribute this software is granted
       
    10  * provided that this copyright notice appears in all copies. For
       
    11  * precise terms see the accompanying LICENSE file.
       
    12  *
       
    13  * This software is provided "AS IS" with no warranty of any kind,
       
    14  * express or implied, and with no claim as to its suitability for any
       
    15  * purpose.
       
    16  *
       
    17  */
       
    18 
       
    19 #ifndef DESWIN_H
       
    20 #define DESWIN_H
       
    21 
       
    22 #include <all_include.h>
       
    23 #include <libgnomecanvasmm.h>
       
    24 #include <libgnomecanvasmm/polygon.h>
       
    25 
       
    26 class DesignWin : public Gtk::Window
       
    27 {
       
    28 private:
       
    29   Gtk::SpinButton * attraction;
       
    30   Gtk::SpinButton * propulsation;
       
    31   Gtk::SpinButton * iteration;
       
    32   Gtk::Table table;
       
    33   Gtk::Button * close_button;
       
    34 
       
    35   sigc::signal<void, double> signal_attraction_ch;
       
    36   sigc::signal<void, double> signal_propulsation_ch;
       
    37   sigc::signal<void, int> signal_iteration_ch;
       
    38   sigc::signal<void> close_run_pr;
       
    39 
       
    40   void emit_attraction();
       
    41   void emit_propulsation();
       
    42   void emit_iteration();
       
    43   void emit_closerun(){close_run_pr.emit();};
       
    44 
       
    45 public:
       
    46   ///Close window if escape key is pressed.
       
    47   bool closeIfEscapeIsPressed(GdkEventKey* e);
       
    48 
       
    49   ///Constructor
       
    50 
       
    51   ///It builds the window.
       
    52   DesignWin(const std::string&, double, double, int);
       
    53 
       
    54   sigc::signal<void, double> signal_attraction(){return signal_attraction_ch;};
       
    55   sigc::signal<void, double> signal_propulsation(){return signal_propulsation_ch;};
       
    56   sigc::signal<void, int> signal_iteration(){return signal_iteration_ch;};
       
    57   sigc::signal<void> close_run(){return close_run_pr;};
       
    58 
       
    59   void set_title(std::string);
       
    60 
       
    61   void set_data(double, double, int);
       
    62 };
       
    63 #endif //DESWIN_H