graph-displayer.cc
author hegyi
Mon, 02 Oct 2006 18:52:00 +0000
changeset 157 7e6ad28aeb9e
parent 130 3533c2d9a865
child 174 95872af46fc4
permissions -rw-r--r--
View settings also for edges.
ladanyi@130
     1
#ifdef HAVE_CONFIG_H
ladanyi@130
     2
#include <config.h>
ladanyi@130
     3
#endif
ladanyi@130
     4
ladanyi@53
     5
#include "all_include.h"
ladanyi@53
     6
#include "mapstorage.h"
ladanyi@53
     7
#include "main_win.h"
ladanyi@1
     8
#include <libgnomecanvasmm.h>
ladanyi@1
     9
#include <libgnomecanvasmm/polygon.h>
ladanyi@1
    10
ladanyi@130
    11
#include <locale.h>
ladanyi@130
    12
ladanyi@1
    13
#define MAIN_PART
ladanyi@1
    14
hegyi@28
    15
std::vector <std::string> edge_property_strings;
hegyi@28
    16
std::vector <double> edge_property_defaults;
hegyi@28
    17
std::vector <std::string> node_property_strings;
hegyi@28
    18
std::vector <double> node_property_defaults;
hegyi@81
    19
int longest_property_string_length;
ladanyi@1
    20
ladanyi@1
    21
int main(int argc, char *argv[])
ladanyi@1
    22
{
ladanyi@133
    23
  setlocale(LC_ALL, "");
ladanyi@130
    24
  bindtextdomain(PACKAGE, LOCALEDIR);
ladanyi@130
    25
  bind_textdomain_codeset(PACKAGE, "UTF-8");
ladanyi@130
    26
  textdomain(PACKAGE);
hegyi@4
    27
hegyi@4
    28
  //initializing
hegyi@4
    29
hegyi@28
    30
  edge_property_strings.resize(EDGE_PROPERTY_NUM);
hegyi@28
    31
  edge_property_strings[E_WIDTH]="Edge Width";
hegyi@28
    32
  edge_property_strings[E_COLOR]="Edge Color";
hegyi@28
    33
  edge_property_strings[E_TEXT]="Edge Text";
ladanyi@1
    34
hegyi@28
    35
  edge_property_defaults.resize(EDGE_PROPERTY_NUM);
hegyi@28
    36
  edge_property_defaults[E_WIDTH]=10.0;
hegyi@28
    37
  edge_property_defaults[E_COLOR]=100;
hegyi@28
    38
  edge_property_defaults[E_TEXT]=0;
hegyi@28
    39
hegyi@28
    40
  node_property_strings.resize(NODE_PROPERTY_NUM);
hegyi@28
    41
  node_property_strings[N_RADIUS]="Node Radius";
hegyi@28
    42
  node_property_strings[N_COLOR]="Node Color";
hegyi@28
    43
  node_property_strings[N_TEXT]="Node Text";
hegyi@28
    44
hegyi@28
    45
  node_property_defaults.resize(NODE_PROPERTY_NUM);
hegyi@28
    46
  node_property_defaults[N_RADIUS]=20.0;
hegyi@28
    47
  node_property_defaults[N_COLOR]=100;
hegyi@28
    48
  node_property_defaults[N_TEXT]=0;
ladanyi@1
    49
hegyi@81
    50
  longest_property_string_length=0;
hegyi@81
    51
  for(int i=0;i<EDGE_PROPERTY_NUM;i++)
hegyi@81
    52
    {
hegyi@81
    53
      int j=edge_property_strings[i].size();
hegyi@81
    54
      if(j>longest_property_string_length)
hegyi@81
    55
	{
hegyi@81
    56
	  longest_property_string_length=j;
hegyi@81
    57
	}
hegyi@81
    58
    }
hegyi@81
    59
  for(int i=0;i<NODE_PROPERTY_NUM;i++)
hegyi@81
    60
    {
hegyi@81
    61
      int j=node_property_strings[i].size();
hegyi@81
    62
      if(j>longest_property_string_length)
hegyi@81
    63
	{
hegyi@81
    64
	  longest_property_string_length=j;
hegyi@81
    65
	}
hegyi@81
    66
    }
hegyi@81
    67
hegyi@81
    68
hegyi@4
    69
  //initializing GUI
hegyi@4
    70
ladanyi@1
    71
  Gnome::Canvas::init();
ladanyi@1
    72
  Gtk::Main app(argc, argv);
ladanyi@1
    73
hegyi@96
    74
  MainWin mytab;
ladanyi@57
    75
hegyi@102
    76
//   if ((argc == 2) && (Glib::file_test(argv[1], Glib::FILE_TEST_IS_REGULAR)))
hegyi@102
    77
//     {
hegyi@102
    78
//       mytab.readFile(argv[1]);
hegyi@102
    79
//     }
hegyi@102
    80
  if(argc>=2)
hegyi@96
    81
    {
hegyi@102
    82
      for(int i=1;i<argc;i++)
hegyi@102
    83
	{
hegyi@102
    84
	  if(Glib::file_test(argv[i], Glib::FILE_TEST_IS_REGULAR))
hegyi@102
    85
	    {
hegyi@102
    86
	      mytab.readFile(argv[i]);
hegyi@102
    87
	    }
hegyi@102
    88
	}
hegyi@102
    89
    }
hegyi@102
    90
  else
hegyi@102
    91
    {
hegyi@102
    92
      mytab.newTab();
hegyi@96
    93
    }
ladanyi@57
    94
  
hegyi@96
    95
  app.run(mytab);
ladanyi@1
    96
ladanyi@1
    97
  return 0;
ladanyi@1
    98
}