gui/all_include.h
author deba
Wed, 01 Mar 2006 10:25:30 +0000
changeset 1991 d7442141d9ef
parent 1731 616bc933c2bc
permissions -rw-r--r--
The graph adadptors can be alteration observed.
In most cases it uses the adapted graph alteration notifiers.
Only special case is now the UndirGraphAdaptor, where
we have to proxy the signals from the graph.

The SubBidirGraphAdaptor is removed, because it doest not
gives more feature than the EdgeSubGraphAdaptor<UndirGraphAdaptor<Graph>>.

The ResGraphAdaptor is based on this composition.
ladanyi@1442
     1
// -*- C++ -*- //
ladanyi@1442
     2
ladanyi@1442
     3
#ifndef ALL_INCLUDE_H
ladanyi@1442
     4
#define ALL_INCLUDE_H
ladanyi@1442
     5
ladanyi@1442
     6
#include <fstream>
ladanyi@1442
     7
#include <iostream>
ladanyi@1442
     8
ladanyi@1442
     9
#include <vector>
ladanyi@1442
    10
ladanyi@1442
    11
#include <lemon/list_graph.h>
ladanyi@1442
    12
#include <lemon/graph_reader.h>
ladanyi@1442
    13
#include <lemon/graph_writer.h>
ladanyi@1442
    14
#include <lemon/graph_utils.h>
ladanyi@1442
    15
#include <lemon/maps.h>
ladanyi@1442
    16
#include <lemon/error.h>
ladanyi@1442
    17
#include <lemon/xy.h>
ladanyi@1442
    18
hegyi@1512
    19
enum {E_WIDTH, E_COLOR, E_TEXT, EDGE_PROPERTY_NUM}; // edge properties;
hegyi@1512
    20
enum {N_RADIUS, N_COLOR, N_TEXT, NODE_PROPERTY_NUM}; // node properties;
hegyi@1550
    21
enum {MOVE, CREATE_NODE, CREATE_EDGE, ERASER, EDGE_MAP_EDIT, NODE_MAP_EDIT, TOOL_NUM}; // tools;
ladanyi@1442
    22
#define RANGE 3
ladanyi@1442
    23
#define WIN_WIDTH 900
ladanyi@1442
    24
#define WIN_HEIGHT 600
hegyi@1599
    25
#define MIN_EDGE_WIDTH 2
hegyi@1599
    26
#define MAX_EDGE_WIDTH 40
hegyi@1599
    27
#define MIN_NODE_RADIUS 2
hegyi@1599
    28
#define MAX_NODE_RADIUS 80
ladanyi@1442
    29
ladanyi@1442
    30
#ifndef MAIN_PART
hegyi@1512
    31
extern std::vector <std::string> edge_property_strings;
hegyi@1512
    32
extern std::vector <double> edge_property_defaults;
hegyi@1512
    33
extern std::vector <std::string> node_property_strings;
hegyi@1512
    34
extern std::vector <double> node_property_defaults;
hegyi@1731
    35
extern int longest_property_string_length;
ladanyi@1442
    36
#endif //MAIN_PART
ladanyi@1442
    37
ladanyi@1442
    38
using namespace lemon;
ladanyi@1442
    39
ladanyi@1860
    40
typedef xy<double> XY;
ladanyi@1442
    41
typedef ListGraph Graph;
ladanyi@1442
    42
typedef Graph::Node Node;
alpar@1643
    43
typedef Graph::Edge Edge;
ladanyi@1442
    44
typedef Graph::EdgeIt EdgeIt;
alpar@1651
    45
typedef Graph::InEdgeIt InEdgeIt;
alpar@1651
    46
typedef Graph::OutEdgeIt OutEdgeIt;
ladanyi@1442
    47
typedef Graph::NodeIt NodeIt;
ladanyi@1442
    48
ladanyi@1650
    49
const std::string prog_name = "LEMON Graph Editor";
ladanyi@1650
    50
ladanyi@1442
    51
#endif // ALL_INCLUDE_H