author | hegyi |
Wed, 28 Feb 2007 15:19:20 +0000 | |
changeset 193 | 2a9a5d7f1a16 |
child 194 | 6b2b718420eb |
permissions | -rw-r--r-- |
hegyi@192 | 1 |
/* -*- C++ -*- |
hegyi@192 | 2 |
* |
hegyi@192 | 3 |
* This file is a part of LEMON, a generic C++ optimization library |
hegyi@192 | 4 |
* |
hegyi@192 | 5 |
* Copyright (C) 2003-2006 |
hegyi@192 | 6 |
* Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport |
hegyi@192 | 7 |
* (Egervary Research Group on Combinatorial Optimization, EGRES). |
hegyi@192 | 8 |
* |
hegyi@192 | 9 |
* Permission to use, modify and distribute this software is granted |
hegyi@192 | 10 |
* provided that this copyright notice appears in all copies. For |
hegyi@192 | 11 |
* precise terms see the accompanying LICENSE file. |
hegyi@192 | 12 |
* |
hegyi@192 | 13 |
* This software is provided "AS IS" with no warranty of any kind, |
hegyi@192 | 14 |
* express or implied, and with no claim as to its suitability for any |
hegyi@192 | 15 |
* purpose. |
hegyi@192 | 16 |
* |
hegyi@192 | 17 |
*/ |
hegyi@192 | 18 |
|
hegyi@192 | 19 |
#ifndef EPS_WIN_H |
hegyi@192 | 20 |
#define EPS_WIN_H |
hegyi@192 | 21 |
|
hegyi@192 | 22 |
class EpsWin; |
hegyi@192 | 23 |
|
hegyi@192 | 24 |
#include <all_include.h> |
hegyi@192 | 25 |
#include <nbtab.h> |
hegyi@192 | 26 |
#include <mapselector.h> |
hegyi@192 | 27 |
#include <libgnomecanvasmm.h> |
hegyi@192 | 28 |
#include <libgnomecanvasmm/polygon.h> |
hegyi@192 | 29 |
|
hegyi@192 | 30 |
///Graph visualization setup window. |
hegyi@192 | 31 |
|
hegyi@192 | 32 |
///This class is responsible for creating a window, |
hegyi@192 | 33 |
///on which the visualization attributes can be |
hegyi@192 | 34 |
///assigned to maps. |
hegyi@192 | 35 |
class EpsWin : public Gtk::Dialog |
hegyi@192 | 36 |
{ |
hegyi@192 | 37 |
protected: |
hegyi@192 | 38 |
///\ref NoteBookTab to that the \ref EpsWin belongs to. |
hegyi@192 | 39 |
NoteBookTab & mytab; |
hegyi@192 | 40 |
|
hegyi@192 | 41 |
///Designing element |
hegyi@192 | 42 |
Gtk::Table * table; |
hegyi@192 | 43 |
|
hegyi@192 | 44 |
///Information holder |
hegyi@192 | 45 |
Gtk::Label * label; |
hegyi@192 | 46 |
|
hegyi@192 | 47 |
///configuration |
hegyi@192 | 48 |
std::vector<Gtk::CheckButton *> options; |
hegyi@192 | 49 |
|
hegyi@192 | 50 |
///OK, Cancel |
hegyi@192 | 51 |
Gtk::Button * ok, * cancel; |
hegyi@192 | 52 |
|
hegyi@192 | 53 |
///Container in which filename entry are organized. |
hegyi@192 | 54 |
Gtk::HBox hbox; |
hegyi@192 | 55 |
|
hegyi@192 | 56 |
///Filename |
hegyi@192 | 57 |
Gtk::Entry name; |
hegyi@192 | 58 |
|
hegyi@192 | 59 |
public: |
hegyi@192 | 60 |
///Constructor |
hegyi@192 | 61 |
|
hegyi@192 | 62 |
///It creates the widgets shown in \ref EpsWin and |
hegyi@192 | 63 |
///binds the needed signal to the correct place. |
hegyi@192 | 64 |
///\param title title of window |
hegyi@192 | 65 |
///\param eml edgemap list |
hegyi@192 | 66 |
///\param nml nodemap list |
hegyi@192 | 67 |
///\param mw the owner \ref NoteBookTab (\ref mytab) |
hegyi@192 | 68 |
EpsWin(const std::string& title, NoteBookTab & mw); |
hegyi@192 | 69 |
|
hegyi@192 | 70 |
///Deregistrates \ref EpsWin in its \ref NoteBookTab (\ref mytab) |
hegyi@192 | 71 |
virtual bool on_delete_event(GdkEventAny *); |
hegyi@192 | 72 |
|
hegyi@192 | 73 |
///Close window if Esc key pressed. |
hegyi@192 | 74 |
virtual bool closeIfEscapeIsPressed(GdkEventKey*); |
hegyi@192 | 75 |
|
hegyi@192 | 76 |
///Callback function for OK button. It creates the map. |
hegyi@192 | 77 |
|
hegyi@192 | 78 |
///If OK is pressed this function |
hegyi@192 | 79 |
///transmits the collected data to |
hegyi@192 | 80 |
///appropriate functions to be able |
hegyi@192 | 81 |
///to create EPS |
hegyi@192 | 82 |
virtual void on_response(int response_id); |
hegyi@192 | 83 |
|
hegyi@192 | 84 |
}; |
hegyi@192 | 85 |
|
hegyi@192 | 86 |
#endif //EPS_WIN_H |