From a69bed2a3bee2182ac1b524eec3a854153987ec2 Mon Sep 17 00:00:00 2001
From: Christophe Geuzaine <cgeuzaine@ulg.ac.be>
Date: Tue, 9 Jan 2001 14:24:13 +0000
Subject: [PATCH] *** empty log message ***

---
 Adapt/Makefile      |   7 +-
 Box/Box.cpp         |   4 +-
 Common/Context.cpp  |   4 +-
 Common/Makefile     |  32 ++---
 Common/Static.h     |   2 -
 Common/Views.h      |  24 ++--
 Fltk/Callbacks.cpp  |  70 +++++++++-
 Fltk/Callbacks.h    |  12 +-
 Fltk/GUI.cpp        |  66 ++++++---
 Fltk/GUI.h          |   4 +-
 Fltk/Main.cpp       |   5 +-
 Fltk/Makefile       |  60 +++++----
 Geo/Makefile        |  82 +++++++-----
 Geo/Verif.cpp       |  84 +-----------
 Geo/Verif.h         |   4 -
 Graphics/Geom.cpp   |   3 +-
 Graphics/Makefile   | 146 ++++++++++----------
 Graphics/Mesh.cpp   |   3 +-
 Graphics/Post.cpp   |   3 +-
 Graphics/Scale.cpp  |   5 +-
 Mesh/Makefile       | 319 ++++++++++++++++++++++----------------------
 Motif/CbContext.cpp |   3 +-
 Motif/CbGeneral.cpp |   4 +-
 Motif/CbOptions.cpp |  15 +--
 Motif/CbPost.cpp    |   3 +-
 Motif/Main.cpp      |   5 +-
 Motif/Makefile      | 190 +++++++++++++-------------
 Parser/Makefile     |  42 +++---
 Parser/OpenFile.cpp |   6 +-
 29 files changed, 622 insertions(+), 585 deletions(-)

diff --git a/Adapt/Makefile b/Adapt/Makefile
index 871d2791ef..0259e54949 100644
--- a/Adapt/Makefile
+++ b/Adapt/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.7 2001-01-08 08:05:39 geuzaine Exp $
+# $Id: Makefile,v 1.8 2001-01-09 14:24:03 geuzaine Exp $
 #
 # Makefile for "libAdapt.a"
 #
@@ -58,8 +58,9 @@ depend:
 
 # DO NOT DELETE THIS LINE
 Adapt.o: Adapt.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h Adapt.h nrutil.h ../Common/Const.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Adapt.h nrutil.h \
+ ../Common/Const.h
 mnbrak.o: mnbrak.cpp nrutil.h ../Common/Const.h
 brent.o: brent.cpp nrutil.h ../Common/Const.h
 nrutil.o: nrutil.cpp
diff --git a/Box/Box.cpp b/Box/Box.cpp
index bf71d6dccd..c6e405dcdc 100644
--- a/Box/Box.cpp
+++ b/Box/Box.cpp
@@ -1,4 +1,4 @@
-// $Id: Box.cpp,v 1.18 2001-01-08 08:05:40 geuzaine Exp $
+// $Id: Box.cpp,v 1.19 2001-01-09 14:24:04 geuzaine Exp $
 
 #include <signal.h>
 
@@ -16,8 +16,6 @@
 
 #include "Static.h"
 
-extern List_T *Post_ViewList;
-
 /* dummy defs for link purposes */
 
 void AddViewInUI(int, char *, int){}
diff --git a/Common/Context.cpp b/Common/Context.cpp
index 88413e215f..e2497cf6e9 100644
--- a/Common/Context.cpp
+++ b/Common/Context.cpp
@@ -1,4 +1,4 @@
-// $Id: Context.cpp,v 1.25 2001-01-08 08:05:40 geuzaine Exp $
+// $Id: Context.cpp,v 1.26 2001-01-09 14:24:05 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "Const.h"
@@ -235,8 +235,6 @@ void Init_Context(void){
 
 }
 
-extern List_T  *Post_ViewList;
-
 void Print_Context(char *filename){
   FILE *file;
   int i ;
diff --git a/Common/Makefile b/Common/Makefile
index 7e933a5219..bf018ab165 100644
--- a/Common/Makefile
+++ b/Common/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.8 2001-01-08 08:05:40 geuzaine Exp $
+# $Id: Makefile,v 1.9 2001-01-09 14:24:05 geuzaine Exp $
 #
 # Makefile for "libCommon.a"
 #
@@ -58,20 +58,22 @@ depend:
 
 # DO NOT DELETE THIS LINE
 Context.o: Context.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  Const.h ../Geo/Geo.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h \
-  ../Graphics/Draw.h ../Common/Views.h ../Common/Const.h \
-  ../Common/ColorTable.h Context.h trackball.c trackball.h
-Views.o: Views.cpp Gmsh.h Message.h ../DataStr/Malloc.h ../DataStr/List.h \
-  ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h Views.h Const.h \
-  ColorTable.h Context.h
+ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h \
+ ../DataStr/Tools.h Const.h ../Geo/Geo.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
+ ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Context.h \
+ trackball.c trackball.h
+Views.o: Views.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
+ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h \
+ ../DataStr/Tools.h Views.h Const.h ColorTable.h Context.h
 GetOptions.o: GetOptions.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  Const.h Context.h ../Geo/Geo.h ../Mesh/Mesh.h ../Mesh/Vertex.h \
-  ../Mesh/Simplex.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \
-  ../Mesh/Metric.h Views.h ColorTable.h Version.h
+ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h \
+ ../DataStr/Tools.h Const.h Context.h ../Geo/Geo.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h Views.h ColorTable.h \
+ Version.h
 Timer.o: Timer.cpp
 ColorTable.o: ColorTable.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  ColorTable.h Context.h Const.h
+ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h \
+ ../DataStr/Tools.h ColorTable.h Context.h Const.h
diff --git a/Common/Static.h b/Common/Static.h
index dc8584b073..d0461f81b1 100644
--- a/Common/Static.h
+++ b/Common/Static.h
@@ -12,6 +12,4 @@ int         CurrentNodeNumber, CurrentSimplexNumber;
 Context_T   CTX ;
 Mesh        M, *THEM, *LOCAL;
 
-Tree_T     *EntitesVisibles = NULL;
-
 #endif
diff --git a/Common/Views.h b/Common/Views.h
index 9426516c93..f1a00f7209 100644
--- a/Common/Views.h
+++ b/Common/Views.h
@@ -5,11 +5,11 @@
 #include "ColorTable.h"
 
 typedef struct{
-  /* intrinsic to a view */
+  // intrinsic to a view
   int Num, Changed, DuplicateOf, Links;
   char FileName[NAME_STR_L], Name[NAME_STR_L];
 
-  /* the data */
+  // the data
   int datasize; // size(double) or sizeof(float)
   List_T *Time;
   int NbSP, NbVP, NbTP;
@@ -23,7 +23,7 @@ typedef struct{
   int NbTimeStep, ScalarOnly;
   double Min, Max;
 
-  /* options */
+  // options
   char   Format[NAME_STR_L];
   double CustomMin, CustomMax;
   double Offset[3], Raise[3], ArrowScale;
@@ -34,18 +34,22 @@ typedef struct{
   int TimeStep;
   ColorTable CT;
 
-  /* dynamic */
+  // dynamic
   double (*GVFI) (double min, double max, int nb, int index);
   int (*GIFV) (double min, double max, int nb, double value);
 }Post_View;
 
-/* IntervalsType */
+// The static list with pointers to all views
+
+extern List_T *Post_ViewList;
+
+// IntervalsType
 #define DRAW_POST_ISO          1
 #define DRAW_POST_CONTINUOUS   2
 #define DRAW_POST_DISCRETE     3
 #define DRAW_POST_NUMERIC      4
 
-/* ArrowType */
+// ArrowType
 #define DRAW_POST_SEGMENT      1
 #define DRAW_POST_ARROW        2
 #define DRAW_POST_PYRAMID      3
@@ -53,19 +57,19 @@ typedef struct{
 #define DRAW_POST_DISPLACEMENT 5
 #define DRAW_POST_ARROW_HEAD   6
 
-/* ArrowLocation */
+// ArrowLocation
 #define DRAW_POST_LOCATE_COG     1
 #define DRAW_POST_LOCATE_VERTEX  2
 
-/* ScaleType */
+// ScaleType
 #define DRAW_POST_DEFAULT 1
 #define DRAW_POST_CUSTOM  2
 
-/* RangeType */
+// RangeType
 #define DRAW_POST_LINEAR       1
 #define DRAW_POST_LOGARITHMIC  2
 
-/* Public functions */
+// Public functions
 
 int fcmpPostViewNum(const void *v1, const void *v2);
 int fcmpPostViewDuplicateOf(const void *v1, const void *v2);
diff --git a/Fltk/Callbacks.cpp b/Fltk/Callbacks.cpp
index d9fa61a129..ab0280488d 100644
--- a/Fltk/Callbacks.cpp
+++ b/Fltk/Callbacks.cpp
@@ -1,4 +1,4 @@
-// $Id: Callbacks.cpp,v 1.4 2001-01-09 13:28:44 geuzaine Exp $
+// $Id: Callbacks.cpp,v 1.5 2001-01-09 14:24:06 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "GmshUI.h"
@@ -7,6 +7,7 @@
 #include "Draw.h"
 #include "Views.h"
 #include "Timer.h"
+#include "Visibility.h"
 #include "CreateFile.h"
 #include "OpenFile.h"
 #include "Context.h"
@@ -18,7 +19,6 @@
 extern GUI       *WID;
 extern Mesh       M;
 extern Context_T  CTX;
-extern List_T    *Post_ViewList;
 
 // Compatibility routines
 
@@ -318,12 +318,74 @@ void opt_general_light_cb(CALLBACK_ARGS){
 void opt_geometry_cb(CALLBACK_ARGS) {
   WID->opt_geometry();
 }
+void opt_geometry_entity_cb(CALLBACK_ARGS) {
+  switch((int)data){
+  case 0: CTX.geom.points = !CTX.geom.points; break;
+  case 1: CTX.geom.lines = !CTX.geom.lines; break;
+  case 2: CTX.geom.surfaces = !CTX.geom.surfaces; break;
+  case 3: CTX.geom.volumes = !CTX.geom.volumes; break;
+  }
+}
+void opt_geometry_num_cb(CALLBACK_ARGS) {
+  switch((int)data){
+  case 0: CTX.geom.points_num = !CTX.geom.points_num; break;
+  case 1: CTX.geom.lines_num = !CTX.geom.lines_num; break;
+  case 2: CTX.geom.surfaces_num = !CTX.geom.surfaces_num; break;
+  case 3: CTX.geom.volumes_num = !CTX.geom.volumes_num; break;
+  }
+}
+void opt_geometry_show_by_entity_num_cb(CALLBACK_ARGS) {
+  const char * c = ((Fl_Input*)w)->value(); 
+  if (!strcmp(c,"all") || !strcmp(c,"*")){
+    if(SHOW_ALL_ENTITIES){ RemplirEntitesVisibles(0); SHOW_ALL_ENTITIES = 0; }
+    else { RemplirEntitesVisibles(1); SHOW_ALL_ENTITIES = 1; }
+  }
+  else{ 
+    int i = atoi(c);
+    if(EntiteEstElleVisible(i)) ToutesLesEntitesRelatives(i,EntitesVisibles,0);
+    else ToutesLesEntitesRelatives(i,EntitesVisibles,1);
+  }
+}
+
+void opt_geometry_normals_cb(CALLBACK_ARGS) {
+  CTX.geom.normals = ((Fl_Value_Input*)w)->value();
+}
+void opt_geometry_tangents_cb(CALLBACK_ARGS) {
+  CTX.geom.tangents = ((Fl_Value_Input*)w)->value();
+}
 
 // Option Mesh Menu
 
 void opt_mesh_cb(CALLBACK_ARGS) {
   WID->opt_mesh();
 }
+void opt_mesh_entity_cb(CALLBACK_ARGS) {
+  switch((int)data){
+  case 0: CTX.mesh.points = !CTX.mesh.points; break;
+  case 1: CTX.mesh.lines = !CTX.mesh.lines; break;
+  case 2: CTX.mesh.surfaces = !CTX.mesh.surfaces; break;
+  case 3: CTX.mesh.volumes = !CTX.mesh.volumes; break;
+  }
+}
+void opt_mesh_num_cb(CALLBACK_ARGS) {
+  switch((int)data){
+  case 0: CTX.mesh.points_num = !CTX.mesh.points_num; break;
+  case 1: CTX.mesh.lines_num = !CTX.mesh.lines_num; break;
+  case 2: CTX.mesh.surfaces_num = !CTX.mesh.surfaces_num; break;
+  case 3: CTX.mesh.volumes_num = !CTX.mesh.volumes_num; break;
+  }
+}
+void opt_mesh_show_by_entity_num_cb(CALLBACK_ARGS) {
+  opt_geometry_show_by_entity_num_cb(w,data);
+}
+void opt_mesh_show_by_quality_cb(CALLBACK_ARGS) {
+  const char * c = ((Fl_Input*)w)->value(); 
+  if (!strcmp(c,"all") || !strcmp(c,"*"))
+    CTX.mesh.limit_gamma = 0.0 ;
+  else
+    CTX.mesh.limit_gamma = atof(c);
+}
+
 
 // Option Post Menu
 
@@ -333,8 +395,8 @@ void opt_post_cb(CALLBACK_ARGS) {
 
 // Option Statistics Menu
 
-void opt_stat_cb(CALLBACK_ARGS) {
-  WID->opt_stat();
+void opt_statistics_cb(CALLBACK_ARGS) {
+  WID->opt_statistics();
 }
 
 // Help Menu
diff --git a/Fltk/Callbacks.h b/Fltk/Callbacks.h
index 9c968cfdc7..207ed04246 100644
--- a/Fltk/Callbacks.h
+++ b/Fltk/Callbacks.h
@@ -54,10 +54,20 @@ void opt_general_light_cb(CALLBACK_ARGS) ;
 // Option Geometry Menu
 
 void opt_geometry_cb(CALLBACK_ARGS) ;
+void opt_geometry_entity_cb(CALLBACK_ARGS) ;
+void opt_geometry_num_cb(CALLBACK_ARGS) ;
+void opt_geometry_show_by_entity_num_cb(CALLBACK_ARGS) ;
+void opt_geometry_normals_cb(CALLBACK_ARGS) ;
+void opt_geometry_tangents_cb(CALLBACK_ARGS) ;
 
 // Option Mesh Menu
 
 void opt_mesh_cb(CALLBACK_ARGS) ;
+void opt_mesh_entity_cb(CALLBACK_ARGS) ;
+void opt_mesh_num_cb(CALLBACK_ARGS) ;
+void opt_mesh_show_by_entity_num_cb(CALLBACK_ARGS) ;
+void opt_mesh_show_by_quality_cb(CALLBACK_ARGS) ;
+void opt_mesh_normals_cb(CALLBACK_ARGS) ;
 
 // Option Post Menu
 
@@ -65,7 +75,7 @@ void opt_post_cb(CALLBACK_ARGS) ;
 
 // Option Statistics Menu
 
-void opt_stat_cb(CALLBACK_ARGS) ;
+void opt_statistics_cb(CALLBACK_ARGS) ;
 
 // Help Menu
 
diff --git a/Fltk/GUI.cpp b/Fltk/GUI.cpp
index 497d68f551..f9ea37d6da 100644
--- a/Fltk/GUI.cpp
+++ b/Fltk/GUI.cpp
@@ -18,7 +18,6 @@
 #include "GetOptions.h"
 
 extern Context_T  CTX;
-extern List_T    *Post_ViewList;
 
 // Definition of the static menus
 
@@ -51,7 +50,7 @@ Fl_Menu_Item m_menubar_table[] = {
     {"Mesh...",            FL_SHIFT+'m', (Fl_Callback *)opt_mesh_cb, 0},
     {"Post-Processing...", FL_SHIFT+'p', (Fl_Callback *)opt_post_cb, 0, FL_MENU_DIVIDER},
     {"General...",         FL_SHIFT+'o', (Fl_Callback *)opt_general_cb, 0},
-    {"Statistics...",      FL_SHIFT+'i', (Fl_Callback *)opt_stat_cb, 0},
+    {"Statistics...",      FL_SHIFT+'i', (Fl_Callback *)opt_statistics_cb, 0},
     {0},
   {"Help",0,0,0,FL_SUBMENU},
     {"Short Help...",   0, (Fl_Callback *)help_short_cb, 0, FL_MENU_DIVIDER},
@@ -699,26 +698,55 @@ void GUI::opt_geometry(){
 	Fl_Group* o = new Fl_Group(WB, WB+BH, width-2*WB, height-3*WB-2*BH, "Visibility");
 	o->labelsize(CTX.fontsize);
         geo_butt[0] = new Fl_Check_Button(2*WB, 2*WB+BH, 100, BH, "Points");
+	geo_butt[0]->callback(opt_geometry_entity_cb, (void*)0);
+	geo_butt[0]->value(CTX.geom.points);
         geo_butt[1] = new Fl_Check_Button(2*WB, 2*WB+2*BH, 100, BH, "Curves");
+	geo_butt[1]->callback(opt_geometry_entity_cb, (void*)1);
+	geo_butt[1]->value(CTX.geom.lines);
         geo_butt[2] = new Fl_Check_Button(2*WB, 2*WB+3*BH, 100, BH, "Surfaces");
+	geo_butt[2]->callback(opt_geometry_entity_cb, (void*)2);
+	geo_butt[2]->value(CTX.geom.surfaces);
         geo_butt[3] = new Fl_Check_Button(2*WB, 2*WB+4*BH, 100, BH, "Volumes");
+	geo_butt[3]->callback(opt_geometry_entity_cb, (void*)3);
+	geo_butt[3]->value(CTX.geom.volumes);
         geo_butt[4] = new Fl_Check_Button(2*WB+120, 2*WB+BH, 100, BH, "Point Numbers");
+	geo_butt[4]->callback(opt_geometry_num_cb, (void*)0);
+	geo_butt[4]->value(CTX.geom.points_num);
         geo_butt[5] = new Fl_Check_Button(2*WB+120, 2*WB+2*BH, 100, BH, "Curve Numbers");
+	geo_butt[5]->callback(opt_geometry_num_cb, (void*)1);
+	geo_butt[5]->value(CTX.geom.lines_num);
         geo_butt[6] = new Fl_Check_Button(2*WB+120, 2*WB+3*BH, 100, BH, "Surface Numbers");
+	geo_butt[6]->callback(opt_geometry_num_cb, (void*)2);
+	geo_butt[6]->value(CTX.geom.surfaces_num);
         geo_butt[7] = new Fl_Check_Button(2*WB+120, 2*WB+4*BH, 100, BH, "Volume Numbers");
+	geo_butt[7]->callback(opt_geometry_num_cb, (void*)3);
+	geo_butt[7]->value(CTX.geom.volumes_num);
 	for(int i=0 ; i<8 ; i++){
 	  geo_butt[i]->type(FL_TOGGLE_BUTTON);
 	  geo_butt[i]->down_box(FL_DOWN_BOX);
 	  geo_butt[i]->labelsize(CTX.fontsize);
 	  geo_butt[i]->selection_color(FL_YELLOW);
 	}
-        geo_value[0] = new Fl_Value_Input(2*WB, 2*WB+5*BH, 100, BH, "Entity Number");
-	geo_value[0]->minimum(0); geo_value[0]->maximum(1000); geo_value[0]->step(1);
-	geo_value[1] = new Fl_Value_Input(2*WB, 2*WB+6*BH, 100, BH, "Normals");
-	geo_value[1]->minimum(0); geo_value[1]->maximum(100); geo_value[1]->step(1);
-        geo_value[2] = new Fl_Value_Input(2*WB, 2*WB+7*BH, 100, BH, "Tangents");
-	geo_value[2]->minimum(0); geo_value[2]->maximum(100); geo_value[2]->step(1);
-	for(int i=0 ; i<3 ; i++){
+        geo_input = new Fl_Input(2*WB, 2*WB+5*BH, 100, BH, "Entity Number (or *)");
+	geo_input->callback(opt_geometry_show_by_entity_num_cb);
+	geo_input->labelsize(CTX.fontsize);
+	geo_input->type(FL_HORIZONTAL);
+	geo_input->align(FL_ALIGN_RIGHT);
+
+	geo_value[0] = new Fl_Value_Input(2*WB, 2*WB+6*BH, 100, BH, "Normals");
+	geo_value[0]->minimum(0); 
+	geo_value[0]->maximum(100);
+	geo_value[0]->step(0.1);
+	geo_value[0]->callback(opt_geometry_normals_cb);
+	geo_value[0]->value(CTX.geom.normals);
+
+        geo_value[1] = new Fl_Value_Input(2*WB, 2*WB+7*BH, 100, BH, "Tangents");
+	geo_value[1]->minimum(0);
+	geo_value[1]->maximum(100);
+	geo_value[1]->step(0.1);
+	geo_value[1]->callback(opt_geometry_tangents_cb);
+	geo_value[1]->value(CTX.mesh.tangents);
+	for(int i=0 ; i<2 ; i++){
 	  geo_value[i]->labelsize(CTX.fontsize);
 	  geo_value[i]->type(FL_HORIZONTAL);
 	  geo_value[i]->align(FL_ALIGN_RIGHT);
@@ -941,11 +969,11 @@ void GUI::opt_post(){
 
 // Create the window for the statistics
 
-void GUI::opt_stat(){
-  static int init_opt_stat = 0;
+void GUI::opt_statistics(){
+  static int init_opt_statistics = 0;
 
-  if(!init_opt_stat){
-    init_opt_stat = 1 ;
+  if(!init_opt_statistics){
+    init_opt_statistics = 1 ;
 
     int width = 234;
     int height = 5*WB+16*BH ;
@@ -1055,7 +1083,7 @@ void GUI::help_short(){
     o->end();
     
     { 
-      Fl_Button* o = new Fl_Return_Button(width-60-WB, height-BH-WB, 60, BH, "cancel");
+      Fl_Button* o = new Fl_Return_Button(width-60-WB, height-BH-WB, 60, BH, "OK");
       o->labelsize(CTX.fontsize);
       o->callback(cancel_cb, (void*)help_window);
     }
@@ -1103,7 +1131,7 @@ void GUI::help_about(){
 	    gmsh_os, gmsh_date, gmsh_host, gmsh_packager, 
 	    gmsh_url, gmsh_email, gmsh_copyright);
     o2->label(buffer);
-    o2->box(FL_FLAT_BOX);
+    o2->box(FL_THIN_UP_BOX);
     o2->labelsize(CTX.fontsize);
     o2->labelfont(FL_COURIER);
     o2->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
@@ -1137,6 +1165,7 @@ void GUI::opt_view(){
     view_window->label("View Options");
     { 
       Fl_Tabs* o = new Fl_Tabs(WB, WB, width-2*WB, height-3*WB-BH);
+      // Color bar
       { 
 	Fl_Group* o = new Fl_Group(WB, WB+BH, width-2*WB, height-3*WB-2*BH, "Color bar");
 	o->labelsize(CTX.fontsize);
@@ -1159,10 +1188,10 @@ void GUI::opt_view(){
 	}
         o->end();
       }
+      // Range
       { 
 	Fl_Group* o = new Fl_Group(WB, WB+BH, width-2*WB, height-3*WB-2*BH, "Range");
 	o->labelsize(CTX.fontsize);
-
 	{
 	  Fl_Group* o = new Fl_Group(WB, 2*WB+BH, width-2*WB, 2*BH, 0);
 	  view_butt[4] = new Fl_Check_Button(2*WB, 2*WB+  BH, 100, BH, "Linear");
@@ -1174,7 +1203,6 @@ void GUI::opt_view(){
 	  }
 	  o->end();
 	}
-
         view_butt[3] = new Fl_Check_Button(2*WB, 2*WB+3*BH, 100, BH, "Custom");
 	view_butt[3]->type(FL_TOGGLE_BUTTON);
 	view_butt[3]->down_box(FL_DOWN_BOX);
@@ -1188,7 +1216,6 @@ void GUI::opt_view(){
 	  view_value[i]->type(FL_HORIZONTAL);
 	  view_value[i]->align(FL_ALIGN_LEFT);
 	}
-
 	{
 	  Fl_Group* o =  new Fl_Group       (WB,       2*WB+6*BH, width-2*WB, 2*BH, 0);
 	  view_butt[6] = new Fl_Check_Button(2*WB,     2*WB+6*BH, 100, BH, "Iso");
@@ -1202,7 +1229,6 @@ void GUI::opt_view(){
 	  }
 	  o->end();
 	}
-
 	view_value[2] = new Fl_Value_Input(2*WB, 2*WB+5*BH, 40, BH, "Intervals");
 	view_value[2]->labelsize(CTX.fontsize);
 	view_value[2]->type(FL_HORIZONTAL);
@@ -1212,6 +1238,7 @@ void GUI::opt_view(){
 	view_value[2]->step(1);
         o->end();
       }
+      // Offset
       { 
 	Fl_Group* o = new Fl_Group(WB, WB+BH, width-2*WB, height-3*WB-2*BH, "Offset");
 	o->labelsize(CTX.fontsize);
@@ -1226,6 +1253,7 @@ void GUI::opt_view(){
 	}	
 	o->end();
       }
+      // Raise
       { 
 	Fl_Group* o = new Fl_Group(WB, WB+BH, width-2*WB, height-3*WB-2*BH, "Raise");
 	o->labelsize(CTX.fontsize);
diff --git a/Fltk/GUI.h b/Fltk/GUI.h
index fe94cb8b9f..98efd4bd3b 100644
--- a/Fltk/GUI.h
+++ b/Fltk/GUI.h
@@ -111,10 +111,12 @@ class GUI{
 
   // geometry options window
   Fl_Check_Button  *geo_butt[10] ;
+  Fl_Input         *geo_input ;
   Fl_Value_Input   *geo_value[10] ;
   
   // mesh options window
   Fl_Check_Button  *mesh_butt[20] ;
+  Fl_Input         *mesh_input ;
   Fl_Value_Input   *mesh_value[20] ;
 
   // post-processing options window
@@ -149,7 +151,7 @@ public:
   void opt_geometry();
   void opt_mesh();
   void opt_post();
-  void opt_stat();
+  void opt_statistics();
   void opt_view();
 
   // create help windows
diff --git a/Fltk/Main.cpp b/Fltk/Main.cpp
index 1e589749fa..b0f0b484d5 100644
--- a/Fltk/Main.cpp
+++ b/Fltk/Main.cpp
@@ -1,4 +1,4 @@
-// $Id: Main.cpp,v 1.4 2001-01-09 09:52:16 geuzaine Exp $
+// $Id: Main.cpp,v 1.5 2001-01-09 14:24:06 geuzaine Exp $
 
 #include <signal.h>
 
@@ -18,9 +18,6 @@
 #include "OpenFile.h"
 #include "GetOptions.h"
 
-extern List_T *Post_ViewList;
-int            SHOW_ALL_ENTITIES ;
-
 GUI *WID ;
 
 int main(int argc, char *argv[]){
diff --git a/Fltk/Makefile b/Fltk/Makefile
index c3fc8f2a2a..8ed53955a6 100644
--- a/Fltk/Makefile
+++ b/Fltk/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.1 2001-01-08 08:16:27 geuzaine Exp $
+# $Id: Makefile,v 1.2 2001-01-09 14:24:06 geuzaine Exp $
 #
 # Makefile for "libFltk.a"
 #
@@ -58,28 +58,40 @@ depend:
 	$(RM) $(RMFLAGS) Makefile.new
 
 # DO NOT DELETE THIS LINE
-Main.o: Main.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  ../Common/GmshUI.h ../Geo/Geo.h ../Geo/Verif.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
-  ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h \
-  ../Common/Context.h ../Parser/Parser.h ../Common/Static.h \
-  ../Common/Version.h GUI.h ../Parser/OpenFile.h ../Common/GetOptions.h
+Main.o: Main.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Geo/Verif.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h \
+ ../Graphics/Draw.h ../Common/Views.h ../Common/Const.h \
+ ../Common/ColorTable.h ../Common/Context.h ../Parser/Parser.h \
+ ../Common/Static.h ../Common/Version.h GUI.h ../Parser/OpenFile.h \
+ ../Common/GetOptions.h
 Message.o: Message.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
-  ../Common/Version.h ../Common/Context.h ../Common/Const.h
-GUI.o: GUI.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  ../Common/GmshUI.h ../Common/Context.h ../Common/Const.h ../Geo/Geo.h \
-  ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
-  ../Common/Views.h ../Common/ColorTable.h ../Common/Version.h GUI.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
+ ../Common/Version.h ../Common/Context.h ../Common/Const.h GUI.h
+GUI.o: GUI.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
+ ../Common/Context.h ../Common/Const.h ../Geo/Geo.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
+ ../Common/Views.h ../Common/ColorTable.h ../Common/Version.h GUI.h \
+ Callbacks.h ../Common/Bitmaps.h ../Common/GetOptions.h \
+ ../Common/Help.h
 Opengl.o: Opengl.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
-  ../Common/Context.h ../Common/Const.h ../Geo/Geo.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
-  ../Common/Views.h ../Common/ColorTable.h GUI.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
+ ../Common/Context.h ../Common/Const.h ../Geo/Geo.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
+ ../Common/Views.h ../Common/ColorTable.h GUI.h
+Callbacks.o: Callbacks.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
+ ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h \
+ ../Common/Timer.h ../Geo/Visibility.h ../Graphics/CreateFile.h \
+ ../Parser/OpenFile.h ../Common/Context.h GUI.h Callbacks.h
diff --git a/Geo/Makefile b/Geo/Makefile
index 643cbc9f2c..883a3dc77c 100644
--- a/Geo/Makefile
+++ b/Geo/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.8 2001-01-08 08:05:42 geuzaine Exp $
+# $Id: Makefile,v 1.9 2001-01-09 14:24:08 geuzaine Exp $
 #
 # Makefile for "libGeo.a"
 #
@@ -27,6 +27,7 @@ SRC =  	CAD.cpp \
         Geo.cpp \
         StepGeomDatabase.cpp \
 	Verif.cpp \
+	Visibility.cpp \
         Print_Geo.cpp
 
 OBJ = $(SRC:.cpp=.o)
@@ -55,44 +56,51 @@ depend:
 	$(RM) $(RMFLAGS) Makefile.new
 
 # DO NOT DELETE THIS LINE
-CAD.o: CAD.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  Geo.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h \
-  ../Mesh/Interpolation.h ../Mesh/Numeric.h ../Common/Const.h \
-  ../Mesh/Create.h CAD.h ../Common/Context.h
+CAD.o: CAD.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Geo.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h \
+ ../Mesh/Interpolation.h ../Mesh/Numeric.h ../Common/Const.h \
+ ../Mesh/Create.h CAD.h ../Common/Context.h
 DataBase.o: DataBase.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Geo.h \
-  ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h CAD.h ../Mesh/Create.h Verif.h \
-  ../Common/Context.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Geo.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h CAD.h ../Mesh/Create.h \
+ Verif.h ../Common/Context.h
 MinMax.o: MinMax.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Mesh/Vertex.h \
-  ../Common/Context.h
-ExtrudeParams.o: ExtrudeParams.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h Geo.h CAD.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ExtrudeParams.h
-Geo.o: Geo.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  ../Common/Const.h Geo.h CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h \
-  ../Mesh/Simplex.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \
-  ../Mesh/Metric.h DataBase.h ../Parser/Parser.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h \
+ ../Mesh/Vertex.h ../Common/Context.h
+ExtrudeParams.o: ExtrudeParams.cpp ../Common/Gmsh.h \
+ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \
+ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h Geo.h CAD.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ExtrudeParams.h
+Geo.o: Geo.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Geo.h CAD.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h ../Parser/Parser.h
 StepGeomDatabase.o: StepGeomDatabase.cpp ../Common/Gmsh.h \
-  ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \
-  ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h \
-  Geo.h StepGeomDatabase.h DataBase.h ../Common/Context.h
+ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \
+ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
+ ../Common/Const.h Geo.h StepGeomDatabase.h DataBase.h \
+ ../Common/Context.h
 Verif.o: Verif.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h Geo.h CAD.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Geo.h CAD.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h
+Visibility.o: Visibility.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Geo.h CAD.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h
 Print_Geo.o: Print_Geo.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h Geo.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h CAD.h ../Common/Context.h \
-  ../Common/Const.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Geo.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h CAD.h ../Common/Context.h \
+ ../Common/Const.h
diff --git a/Geo/Verif.cpp b/Geo/Verif.cpp
index 91d8803188..fbf06399d4 100644
--- a/Geo/Verif.cpp
+++ b/Geo/Verif.cpp
@@ -1,4 +1,4 @@
-// $Id: Verif.cpp,v 1.6 2001-01-08 08:05:43 geuzaine Exp $
+// $Id: Verif.cpp,v 1.7 2001-01-09 14:24:08 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "Geo.h"
@@ -282,85 +282,3 @@ void PremierVolume(int iSurf, int *iVol){
   List_Delete(temp);
 }
 
-/* Gestion des entites visibles */
-
-extern Tree_T *EntitesVisibles;
-
-typedef struct{
- int Entite;
- int Visible;
-}EntiteVisible;
-
-int compareEntiteVisible(const void *a, const void *b){
-  EntiteVisible *q,*w;
-  q = (EntiteVisible*)a;
-  w = (EntiteVisible*)b;
-  return(q->Entite-w->Entite);
-}
-
-int EntiteEstElleVisible(int iEnt){
-  EntiteVisible e;
-  e.Entite = iEnt;
-  if(Tree_Query(EntitesVisibles,&e))
-    return e.Visible;
-  return 1;
-}
-
-void ToutesLesEntitesRelatives(int iEnt, Tree_T *Tree, int add_rem){
-  int i;
-  EntiteVisible e;
-
-  Surface *s;
-  Volume *v;
-  Curve *c;
-
-  if((c = FindCurve(iEnt,THEM))){
-  }
-  else if((s = FindSurface(iEnt,THEM))){
-    for(i=0;i<List_Nbr(s->s.Generatrices);i++){
-      List_Read(s->s.Generatrices,i,&c);
-      e.Entite = abs(c->Num);
-      e.Visible = add_rem;
-      Tree_Replace(Tree,&e);
-    }
-  }
-  else if((v = FindVolume(iEnt,THEM))){
-    for(i=0;i<List_Nbr(v->Surfaces);i++){
-      List_Read(v->Surfaces,i,&s);
-      e.Entite = abs(s->Num);
-      e.Visible = add_rem;
-      Tree_Replace(Tree,&e);
-    }
-  }
-
-  e.Entite = abs(iEnt);
-  e.Visible = add_rem;
-  Tree_Replace(Tree,&e);
-}
-
-void RemplirEntitesVisibles (int add_rem){
-  int i;
-  Volume *v;
-  Surface *s;
-  Curve *c;
-
-  List_T *ListVolumes = Tree2List (THEM->Volumes);
-  List_T *ListSurfaces = Tree2List (THEM->Surfaces);
-  List_T *ListCurves = Tree2List (THEM->Curves);
-  EntitesVisibles = Tree_Create(sizeof(EntiteVisible),compareEntiteVisible);
-  for(i=0;i<List_Nbr(ListVolumes);i++){
-    List_Read(ListVolumes,i,&v);
-    ToutesLesEntitesRelatives(v->Num,EntitesVisibles,add_rem);
-  }
-  for(i=0;i<List_Nbr(ListSurfaces);i++){
-    List_Read(ListSurfaces,i,&s);
-    ToutesLesEntitesRelatives(s->Num,EntitesVisibles,add_rem);
-  }
-  for(i=0;i<List_Nbr(ListCurves);i++){
-    List_Read(ListCurves,i,&c);
-    ToutesLesEntitesRelatives(c->Num,EntitesVisibles,add_rem);
-  }
-  List_Delete(ListVolumes);
-  List_Delete(ListSurfaces);
-  List_Delete(ListCurves);
-}
diff --git a/Geo/Verif.h b/Geo/Verif.h
index dc51b6d7fe..24175399f0 100644
--- a/Geo/Verif.h
+++ b/Geo/Verif.h
@@ -4,8 +4,4 @@
 int alledgeslinked (int ed, List_T * Liste, List_T * old);
 int allfaceslinked (int iz, List_T * Liste, List_T * old);
 
-int EntiteEstElleVisible(int iEnt);
-void RemplirEntitesVisibles (int add_rem);
-void ToutesLesEntitesRelatives(int iEnt, Tree_T *Tree, int add_rem);
-
 #endif
diff --git a/Graphics/Geom.cpp b/Graphics/Geom.cpp
index dc654821bc..8010aca0d9 100644
--- a/Graphics/Geom.cpp
+++ b/Graphics/Geom.cpp
@@ -1,4 +1,4 @@
-// $Id: Geom.cpp,v 1.8 2001-01-08 08:05:43 geuzaine Exp $
+// $Id: Geom.cpp,v 1.9 2001-01-09 14:24:09 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "GmshUI.h"
@@ -9,6 +9,7 @@
 #include "Verif.h"
 #include "Interpolation.h"
 #include "Numeric.h"
+#include "Visibility.h"
 
 extern Context_T  CTX;
 extern Mesh      *THEM;
diff --git a/Graphics/Makefile b/Graphics/Makefile
index 01d68652db..93e549a2ab 100644
--- a/Graphics/Makefile
+++ b/Graphics/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.11 2001-01-08 08:05:43 geuzaine Exp $
+# $Id: Makefile,v 1.12 2001-01-09 14:24:09 geuzaine Exp $
 #
 # Makefile for "libGraphics.a"
 #
@@ -68,83 +68,87 @@ depend:
 	$(RM) $(RMFLAGS) Makefile.new
 
 # DO NOT DELETE THIS LINE
-Draw.o: Draw.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  ../Common/GmshUI.h ../Geo/Geo.h ../Mesh/Mesh.h ../Mesh/Vertex.h \
-  ../Mesh/Simplex.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \
-  ../Mesh/Metric.h Draw.h ../Common/Views.h ../Common/Const.h \
-  ../Common/ColorTable.h ../Common/Context.h ../Geo/MinMax.h \
-  ../Motif/CbGeneral.h
-Mesh.o: Mesh.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  ../Common/GmshUI.h ../Geo/Geo.h ../Mesh/Mesh.h ../Mesh/Vertex.h \
-  ../Mesh/Simplex.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \
-  ../Mesh/Metric.h Draw.h ../Common/Views.h ../Common/Const.h \
-  ../Common/ColorTable.h ../Common/Context.h ../Geo/MinMax.h gl2ps.h \
-  ../Geo/Verif.h ../Mesh/Numeric.h
-Geom.o: Geom.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  ../Common/GmshUI.h ../Geo/Geo.h ../Mesh/Mesh.h ../Mesh/Vertex.h \
-  ../Mesh/Simplex.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \
-  ../Mesh/Metric.h Draw.h ../Common/Views.h ../Common/Const.h \
-  ../Common/ColorTable.h ../Common/Context.h ../Geo/Verif.h \
-  ../Mesh/Interpolation.h ../Mesh/Numeric.h
-Post.o: Post.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  ../Common/GmshUI.h ../Geo/Geo.h ../Mesh/Mesh.h ../Mesh/Vertex.h \
-  ../Mesh/Simplex.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \
-  ../Mesh/Metric.h Draw.h ../Common/Views.h ../Common/Const.h \
-  ../Common/ColorTable.h ../Common/Context.h
+Draw.o: Draw.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h Draw.h ../Common/Views.h \
+ ../Common/Const.h ../Common/ColorTable.h ../Common/Context.h \
+ ../Geo/MinMax.h ../Motif/CbGeneral.h
+Mesh.o: Mesh.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h Draw.h ../Common/Views.h \
+ ../Common/Const.h ../Common/ColorTable.h ../Common/Context.h \
+ ../Geo/MinMax.h gl2ps.h ../Geo/Verif.h ../Mesh/Numeric.h \
+ ../Geo/Visibility.h
+Geom.o: Geom.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h Draw.h ../Common/Views.h \
+ ../Common/Const.h ../Common/ColorTable.h ../Common/Context.h \
+ ../Geo/Verif.h ../Mesh/Interpolation.h ../Mesh/Numeric.h \
+ ../Geo/Visibility.h
+Post.o: Post.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h Draw.h ../Common/Views.h \
+ ../Common/Const.h ../Common/ColorTable.h ../Common/Context.h
 PostSimplex.o: PostSimplex.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
-  ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h Draw.h ../Common/Views.h \
-  ../Common/Const.h ../Common/ColorTable.h Iso.h ../Common/Context.h
-Iso.o: Iso.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h Draw.h ../Common/Views.h \
-  ../Common/Const.h ../Common/ColorTable.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h Draw.h ../Common/Views.h \
+ ../Common/Const.h ../Common/ColorTable.h Iso.h ../Common/Context.h
+Iso.o: Iso.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Mesh/Mesh.h ../Mesh/Vertex.h \
+ ../Mesh/Simplex.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \
+ ../Mesh/Metric.h Draw.h ../Common/Views.h ../Common/Const.h \
+ ../Common/ColorTable.h
 Entity.o: Entity.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h Draw.h ../Common/Views.h \
-  ../Common/Const.h ../Common/ColorTable.h ../Common/Context.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h Draw.h ../Common/Views.h \
+ ../Common/Const.h ../Common/ColorTable.h ../Common/Context.h
 Scale.o: Scale.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
-  ../Common/Const.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Draw.h \
-  ../Common/Views.h ../Common/ColorTable.h ../Common/Context.h gl2ps.h \
-  ../Motif/XContext.h
-Axes.o: Axes.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  ../Common/GmshUI.h ../Common/Const.h ../Mesh/Mesh.h ../Mesh/Vertex.h \
-  ../Mesh/Simplex.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \
-  ../Mesh/Metric.h Draw.h ../Common/Views.h ../Common/ColorTable.h \
-  ../Common/Context.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
+ ../Common/Const.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Draw.h \
+ ../Common/Views.h ../Common/ColorTable.h ../Common/Context.h gl2ps.h \
+ ../Motif/XContext.h
+Axes.o: Axes.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
+ ../Common/Const.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Draw.h \
+ ../Common/Views.h ../Common/ColorTable.h ../Common/Context.h
 CreateFile.o: CreateFile.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Parser/OpenFile.h \
-  ../Common/Const.h Draw.h ../Common/Views.h ../Common/ColorTable.h \
-  ../Common/Context.h ../Motif/Widgets.h ../Motif/XContext.h XDump.h \
-  gl2ps.h gl2gif.h gl2jpeg.h gl2ppm.h gl2yuv.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Parser/OpenFile.h \
+ ../Common/Const.h Draw.h ../Common/Views.h ../Common/ColorTable.h \
+ ../Common/Context.h ../Motif/Widgets.h ../Motif/XContext.h XDump.h \
+ gl2ps.h gl2gif.h gl2jpeg.h gl2ppm.h gl2yuv.h
 XDump.o: XDump.cpp
 gl2ps.o: gl2ps.cpp gl2ps.h
 gl2gif.o: gl2gif.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h gl2gif.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h gl2gif.h
 gl2jpeg.o: gl2jpeg.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
-  ../jpeg/jpeglib.h ../jpeg/jconfig.h ../jpeg/jmorecfg.h ../jpeg/jerror.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
+ ../jpeg/jpeglib.h ../jpeg/jconfig.h ../jpeg/jmorecfg.h \
+ ../jpeg/jerror.h
 gl2ppm.o: gl2ppm.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h
 gl2yuv.o: gl2yuv.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h
diff --git a/Graphics/Mesh.cpp b/Graphics/Mesh.cpp
index d392acc168..b199479647 100644
--- a/Graphics/Mesh.cpp
+++ b/Graphics/Mesh.cpp
@@ -1,4 +1,4 @@
-// $Id: Mesh.cpp,v 1.14 2001-01-08 08:05:43 geuzaine Exp $
+// $Id: Mesh.cpp,v 1.15 2001-01-09 14:24:09 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "GmshUI.h"
@@ -10,6 +10,7 @@
 #include "gl2ps.h"
 #include "Verif.h"
 #include "Numeric.h"
+#include "Visibility.h"
 
 extern Mesh      *THEM;
 extern Context_T  CTX;
diff --git a/Graphics/Post.cpp b/Graphics/Post.cpp
index 51e9327323..c4f6433fd0 100644
--- a/Graphics/Post.cpp
+++ b/Graphics/Post.cpp
@@ -1,4 +1,4 @@
-// $Id: Post.cpp,v 1.9 2001-01-08 08:05:43 geuzaine Exp $
+// $Id: Post.cpp,v 1.10 2001-01-09 14:24:09 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "GmshUI.h"
@@ -9,7 +9,6 @@
 #include "Context.h"
 
 extern Context_T   CTX;
-extern List_T     *Post_ViewList;
 
 static double      Raise[3][5];
 static double      RaiseFactor[3];
diff --git a/Graphics/Scale.cpp b/Graphics/Scale.cpp
index 9e5589c210..4fa1d822af 100644
--- a/Graphics/Scale.cpp
+++ b/Graphics/Scale.cpp
@@ -1,4 +1,4 @@
-// $Id: Scale.cpp,v 1.12 2001-01-08 08:05:43 geuzaine Exp $
+// $Id: Scale.cpp,v 1.13 2001-01-09 14:24:09 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "GmshUI.h"
@@ -6,6 +6,7 @@
 #include "Mesh.h"
 #include "Draw.h"
 #include "Context.h"
+#include "Views.h"
 #include "gl2ps.h"
 
 extern Context_T   CTX;
@@ -23,8 +24,6 @@ extern XContext_T  XCTX;
 /* Even if all computations in these routines are made in window
    coordinates, double precision is used to work at subpixel accuracy */
 
-extern List_T   *Post_ViewList;
-
 /* ------------------------------------------------------------------------ */
 /*  D r a w _ S t r i n g                                                   */
 /* ------------------------------------------------------------------------ */
diff --git a/Mesh/Makefile b/Mesh/Makefile
index b18e7547c5..85a4f4d048 100644
--- a/Mesh/Makefile
+++ b/Mesh/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.8 2001-01-08 08:05:45 geuzaine Exp $
+# $Id: Makefile,v 1.9 2001-01-09 14:24:10 geuzaine Exp $
 #
 # Makefile for "libMesh.a"
 #
@@ -88,191 +88,196 @@ depend:
 
 # DO NOT DELETE THIS LINE
 1D_Mesh.o: 1D_Mesh.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  Mesh.h Vertex.h Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h \
-  ../Common/Context.h Interpolation.h Numeric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
+ Mesh.h Vertex.h Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h \
+ ../Common/Context.h Interpolation.h Numeric.h
 2D_Mesh.o: 2D_Mesh.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h Create.h \
-  2D_Mesh.h Numeric.h ../Common/Context.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
+ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h \
+ Create.h 2D_Mesh.h Numeric.h ../Common/Context.h
 2D_SMesh.o: 2D_SMesh.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Geo/Geo.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h Numeric.h \
-  Interpolation.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Geo/Geo.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h Numeric.h \
+ Interpolation.h
 2D_Elliptic.o: 2D_Elliptic.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
+ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h
 2D_BGMesh.o: 2D_BGMesh.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
 2D_Recombine.o: 2D_Recombine.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h Create.h \
-  Numeric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h Create.h \
+ Numeric.h
 2D_InitMesh.o: 2D_InitMesh.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h Numeric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h Numeric.h
 2D_Bowyer.o: 2D_Bowyer.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
 2D_Bricks.o: 2D_Bricks.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
-2D_DivAndConq.o: 2D_DivAndConq.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
+2D_DivAndConq.o: 2D_DivAndConq.cpp ../Common/Gmsh.h \
+ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \
+ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
+ ../Common/Const.h Mesh.h Vertex.h Simplex.h Edge.h \
+ ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
 2D_Util.o: 2D_Util.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
 2D_Links.o: 2D_Links.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
 2D_Tree.o: 2D_Tree.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Simplex.h Edge.h \
-  ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
-2D_Cylindrical.o: 2D_Cylindrical.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h ../Common/Context.h \
-  Numeric.h
-2D_Parametric.o: 2D_Parametric.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Interpolation.h \
-  Mesh.h 2D_Mesh.h Create.h ../Common/Context.h Numeric.h
-2D_Mesh_Aniso.o: 2D_Mesh_Aniso.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h \
-  Interpolation.h Create.h ../Common/Context.h Numeric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Simplex.h Edge.h \
+ ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h
+2D_Cylindrical.o: 2D_Cylindrical.cpp ../Common/Gmsh.h \
+ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \
+ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
+ ../Common/Const.h Mesh.h Vertex.h Simplex.h Edge.h \
+ ../Geo/ExtrudeParams.h Metric.h ../Common/Context.h Numeric.h
+2D_Parametric.o: 2D_Parametric.cpp ../Common/Gmsh.h \
+ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \
+ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
+ ../Common/Const.h ../Geo/Geo.h ../Geo/CAD.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h Interpolation.h Mesh.h \
+ 2D_Mesh.h Create.h ../Common/Context.h Numeric.h
+2D_Mesh_Aniso.o: 2D_Mesh_Aniso.cpp ../Common/Gmsh.h \
+ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \
+ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
+ ../Common/Const.h ../Geo/Geo.h ../Geo/CAD.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h Interpolation.h \
+ Create.h ../Common/Context.h Numeric.h
 3D_Mesh.o: 3D_Mesh.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 3D_Mesh.h Create.h \
-  Numeric.h ../Common/Context.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h 3D_Mesh.h Create.h \
+ Numeric.h ../Common/Context.h
 3D_SMesh.o: 3D_SMesh.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Simplex.h Edge.h \
-  ../Geo/ExtrudeParams.h Metric.h Interpolation.h Create.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Simplex.h Edge.h \
+ ../Geo/ExtrudeParams.h Metric.h Interpolation.h Create.h
 3D_BGMesh.o: 3D_BGMesh.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Simplex.h Edge.h \
-  ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h 3D_Mesh.h ../Adapt/Adapt.h \
-  ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Numeric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Simplex.h Edge.h \
+ ../Geo/ExtrudeParams.h Metric.h 2D_Mesh.h 3D_Mesh.h ../Adapt/Adapt.h \
+ ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Numeric.h
 3D_Extrude.o: 3D_Extrude.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h \
-  ../Common/Context.h Create.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
+ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h \
+ ../Common/Context.h Create.h
 3D_Coherence.o: 3D_Coherence.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  Mesh.h Vertex.h Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h \
-  3D_Mesh.h Create.h Numeric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
+ Mesh.h Vertex.h Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h \
+ 3D_Mesh.h Create.h Numeric.h
 3D_Divide.o: 3D_Divide.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h
 3D_Bricks.o: 3D_Bricks.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h
 MeshQuality.o: MeshQuality.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h Numeric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h Numeric.h
 Create.o: Create.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h Numeric.h \
-  ../Common/Context.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
+ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h \
+ Numeric.h ../Common/Context.h
 Generator.o: Generator.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h Create.h \
-  ../Common/Context.h ../Parser/OpenFile.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h Create.h \
+ ../Common/Context.h ../Parser/OpenFile.h
 Print_Mesh.o: Print_Mesh.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h Create.h \
-  ../Common/Context.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
+ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h \
+ Create.h ../Common/Context.h
 Read_Mesh.o: Read_Mesh.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Geo/Geo.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h Create.h \
-  ../Geo/MinMax.h
-STL.o: STL.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  Mesh.h Vertex.h Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Geo/Geo.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h Create.h \
+ ../Geo/MinMax.h
+STL.o: STL.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Simplex.h Edge.h \
+ ../Geo/ExtrudeParams.h Metric.h
 SwapEdge.o: SwapEdge.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h SwapPatterns.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h SwapPatterns.h
 Numeric.o: Numeric.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h Numeric.h \
-  Interpolation.h ../Adapt/nrutil.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
+ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h \
+ Numeric.h Interpolation.h ../Adapt/nrutil.h
 Metric.o: Metric.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h Matrix.h \
-  Interpolation.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
+ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h \
+ Matrix.h Interpolation.h
 Nurbs.o: Nurbs.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Simplex.h Edge.h \
-  ../Geo/ExtrudeParams.h Metric.h
-Interpolation.o: Interpolation.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h Numeric.h \
-  Interpolation.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Simplex.h Edge.h \
+ ../Geo/ExtrudeParams.h Metric.h
+Interpolation.o: Interpolation.cpp ../Common/Gmsh.h \
+ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \
+ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
+ ../Common/Const.h ../Geo/Geo.h ../Geo/CAD.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h Mesh.h Numeric.h \
+ Interpolation.h
 SecondOrder.o: SecondOrder.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Geo/Geo.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h Interpolation.h \
-  Numeric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Geo/Geo.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h Interpolation.h \
+ Numeric.h
 Smoothing.o: Smoothing.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
-  Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Mesh.h Vertex.h \
+ Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h
 CrossData.o: CrossData.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Simplex.h Edge.h \
-  ../Geo/ExtrudeParams.h Metric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Simplex.h Edge.h \
+ ../Geo/ExtrudeParams.h Metric.h
 Vertex.o: Vertex.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h Vertex.h ../Common/Context.h \
-  ../Common/Const.h
-Edge.o: Edge.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  Mesh.h Vertex.h Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h \
-  ../Common/Const.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Vertex.h ../Common/Context.h \
+ ../Common/Const.h
+Edge.o: Edge.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Simplex.h Edge.h \
+ ../Geo/ExtrudeParams.h Metric.h ../Common/Const.h
 Simplex.o: Simplex.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  Mesh.h Vertex.h Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h \
-  Numeric.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
+ Mesh.h Vertex.h Simplex.h Edge.h ../Geo/ExtrudeParams.h Metric.h \
+ Numeric.h
diff --git a/Motif/CbContext.cpp b/Motif/CbContext.cpp
index 1a45bb01a5..a204d1c9eb 100644
--- a/Motif/CbContext.cpp
+++ b/Motif/CbContext.cpp
@@ -1,4 +1,4 @@
-// $Id: CbContext.cpp,v 1.1 2001-01-08 08:20:10 geuzaine Exp $
+// $Id: CbContext.cpp,v 1.2 2001-01-09 14:24:11 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "GmshUI.h"
@@ -17,7 +17,6 @@ extern Context_T   CTX;
 extern XContext_T  XCTX;
 extern Widgets_T   WID; 
 extern Mesh        M;
-extern List_T     *Post_ViewList;
 
 static char *txt_new [] = 
   { "Parameter", "Point", "Line", "Spline", "Bezier", "BSpline", "Circle", "Ellipsis", 
diff --git a/Motif/CbGeneral.cpp b/Motif/CbGeneral.cpp
index 4279056292..e57b74b98d 100644
--- a/Motif/CbGeneral.cpp
+++ b/Motif/CbGeneral.cpp
@@ -1,4 +1,4 @@
-// $Id: CbGeneral.cpp,v 1.1 2001-01-08 08:20:10 geuzaine Exp $
+// $Id: CbGeneral.cpp,v 1.2 2001-01-09 14:24:11 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "GmshUI.h"
@@ -13,8 +13,6 @@ extern Context_T   CTX;
 extern XContext_T  XCTX;
 extern Widgets_T   WID;
 
-extern List_T    *Post_ViewList;
-
 extern void GetStatistics(double s[50]);
 
 static char label[32];
diff --git a/Motif/CbOptions.cpp b/Motif/CbOptions.cpp
index a9f3acaefb..9c99071532 100644
--- a/Motif/CbOptions.cpp
+++ b/Motif/CbOptions.cpp
@@ -1,4 +1,4 @@
-// $Id: CbOptions.cpp,v 1.1 2001-01-08 08:20:10 geuzaine Exp $
+// $Id: CbOptions.cpp,v 1.2 2001-01-09 14:24:11 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "GmshUI.h"
@@ -12,6 +12,7 @@
 #include "XContext.h"
 #include "Register.h"
 #include "Timer.h"
+#include "Visibility.h"
 
 #include "CbGeneral.h"
 #include "CbOptions.h"
@@ -24,10 +25,8 @@ extern XContext_T XCTX ;
 extern Widgets_T  WID;
 extern Pixmaps_T  PIX;
 extern Mesh       M;
-extern Tree_T    *EntitesVisibles;
-
-int SHOW_ALL_ENTITIES, SELECT_BY_NUMBER=OPTIONS_MESH_SELECT_ENTITY ;
 
+static int  select_by_number=OPTIONS_MESH_SELECT_ENTITY ;
 static int  stop_anim ;
 static long anim_time ;
 
@@ -305,8 +304,8 @@ void OptionsCb (Widget w, XtPointer client_data, XtPointer call_data){
   case OPTIONS_MESH_ABORT : 
     CancelMeshThread();
     break;
-  case OPTIONS_MESH_SELECT_ENTITY : SELECT_BY_NUMBER = OPTIONS_MESH_SELECT_ENTITY; break; 
-  case OPTIONS_MESH_SELECT_QUALITY : SELECT_BY_NUMBER = OPTIONS_MESH_SELECT_QUALITY; break; 
+  case OPTIONS_MESH_SELECT_ENTITY : select_by_number = OPTIONS_MESH_SELECT_ENTITY; break; 
+  case OPTIONS_MESH_SELECT_QUALITY : select_by_number = OPTIONS_MESH_SELECT_QUALITY; break; 
 
     /* post */
     
@@ -345,11 +344,11 @@ void OptionsCb (Widget w, XtPointer client_data, XtPointer call_data){
 
     /* mesh + geom : a changer...*/
   case OPTIONS_GEOM_HIDE_SHOW :  
-    SELECT_BY_NUMBER=OPTIONS_MESH_SELECT_ENTITY;
+    select_by_number=OPTIONS_MESH_SELECT_ENTITY;
     /* Fal-through */
   case OPTIONS_MESH_HIDE_SHOW :  
     c = XmTextGetString(w); 
-    if(SELECT_BY_NUMBER == OPTIONS_MESH_SELECT_ENTITY){
+    if(select_by_number == OPTIONS_MESH_SELECT_ENTITY){
       if (!strcmp(c,"all") || !strcmp(c,"*")){
         if(SHOW_ALL_ENTITIES){ RemplirEntitesVisibles(0); SHOW_ALL_ENTITIES = 0; }
         else { RemplirEntitesVisibles(1); SHOW_ALL_ENTITIES = 1; }
diff --git a/Motif/CbPost.cpp b/Motif/CbPost.cpp
index 52f166b151..169ad69dc4 100644
--- a/Motif/CbPost.cpp
+++ b/Motif/CbPost.cpp
@@ -1,4 +1,4 @@
-// $Id: CbPost.cpp,v 1.1 2001-01-08 08:20:10 geuzaine Exp $
+// $Id: CbPost.cpp,v 1.2 2001-01-09 14:24:11 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "GmshUI.h"
@@ -21,7 +21,6 @@ extern Widgets_T  WID ;
 extern Context_T  CTX ;
 extern XContext_T XCTX ;
 extern Mesh       *THEM;
-extern List_T     *Post_ViewList;
 extern int         Force_ViewNumber;
 
 static double      ADAPTATION_ERROR=10. ;
diff --git a/Motif/Main.cpp b/Motif/Main.cpp
index a6a6278080..7dd8fa792d 100644
--- a/Motif/Main.cpp
+++ b/Motif/Main.cpp
@@ -1,4 +1,4 @@
-// $Id: Main.cpp,v 1.1 2001-01-08 08:20:11 geuzaine Exp $
+// $Id: Main.cpp,v 1.2 2001-01-09 14:24:11 geuzaine Exp $
 
 #include <signal.h>
 
@@ -11,6 +11,7 @@
 #include "Context.h"
 #include "ColorTable.h"
 #include "Parser.h"
+#include "Views.h"
 
 #include "Widgets.h"
 #include "Pixmaps.h"
@@ -29,8 +30,6 @@
 
 #include "Version.h"
 
-extern List_T *Post_ViewList;
-
 char* ShowVisualClass(int cls){
   if(cls==TrueColor)   return "TrueColor";
   if(cls==DirectColor) return "DirectColor";
diff --git a/Motif/Makefile b/Motif/Makefile
index 8bc2405b8f..1e49f859ec 100644
--- a/Motif/Makefile
+++ b/Motif/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.1 2001-01-08 08:20:11 geuzaine Exp $
+# $Id: Makefile,v 1.2 2001-01-09 14:24:11 geuzaine Exp $
 #
 # Makefile for "libMotif.a"
 #
@@ -70,112 +70,114 @@ depend:
 	$(RM) $(RMFLAGS) Makefile.new
 
 # DO NOT DELETE THIS LINE
-Main.o: Main.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
-  ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
-  ../Common/GmshUI.h ../Geo/Geo.h ../Geo/Verif.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
-  ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h \
-  ../Common/Context.h ../Parser/Parser.h Widgets.h Pixmaps.h XColors.h \
-  XContext.h XRessources.h CbContext.h CbGeom.h Register.h Geometry.h \
-  ../Parser/OpenFile.h ../Common/GetOptions.h ../Common/Static.h \
-  XStatic.h ../Common/Version.h
+Main.o: Main.cpp ../Common/Gmsh.h ../Common/Message.h \
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Geo/Verif.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h \
+ ../Graphics/Draw.h ../Common/Views.h ../Common/Const.h \
+ ../Common/ColorTable.h ../Common/Context.h ../Parser/Parser.h \
+ Widgets.h Pixmaps.h XColors.h XContext.h XRessources.h CbContext.h \
+ CbGeom.h Register.h Geometry.h ../Parser/OpenFile.h \
+ ../Common/GetOptions.h ../Common/Static.h XStatic.h \
+ ../Common/Version.h
 Widgets.o: Widgets.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Common/Context.h \
-  ../Common/Const.h XContext.h Info.h Widgets.h Help.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Common/Context.h \
+ ../Common/Const.h XContext.h Info.h Widgets.h ../Common/Help.h
 Geometry.o: Geometry.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
-  ../Common/Context.h ../Common/Const.h XContext.h Widgets.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
+ ../Common/Context.h ../Common/Const.h XContext.h Widgets.h
 Register.o: Register.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
-  ../Common/Context.h ../Common/Const.h XContext.h Widgets.h Register.h \
-  CbOptions.h CbContext.h CbFile.h CbGeom.h CbMesh.h CbPost.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
+ ../Common/Context.h ../Common/Const.h XContext.h Widgets.h Register.h \
+ CbOptions.h CbContext.h CbFile.h CbGeom.h CbMesh.h CbPost.h
 Pixmaps.o: Pixmaps.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h Widgets.h \
-  ../Common/Context.h ../Common/Const.h Pixmaps.h Bitmaps.h XColors.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h Widgets.h \
+ ../Common/Context.h ../Common/Const.h Pixmaps.h ../Common/Bitmaps.h \
+ XColors.h
 Opengl.o: Opengl.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
-  ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
-  ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h \
-  ../Common/Context.h ../Geo/MinMax.h Widgets.h XContext.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
+ ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h \
+ ../Common/Context.h ../Geo/MinMax.h Widgets.h XContext.h
 XColors.o: XColors.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h XContext.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h XContext.h
 Message.o: Message.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
-  ../Common/Version.h ../Common/Context.h ../Common/Const.h Widgets.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
+ ../Common/Version.h ../Common/Context.h ../Common/Const.h Widgets.h
 CbContext.o: CbContext.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
-  ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
-  ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Widgets.h \
-  ../Common/Context.h XContext.h CbContext.h CbGeom.h CbMesh.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
+ ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Widgets.h \
+ ../Common/Context.h XContext.h CbContext.h CbGeom.h CbMesh.h
 CbPost.o: CbPost.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
-  ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
-  ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Widgets.h \
-  ../Common/Context.h XContext.h ../Parser/OpenFile.h CbPost.h CbGeom.h \
-  CbMesh.h CbColorbar.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
+ ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Widgets.h \
+ ../Common/Context.h XContext.h ../Parser/OpenFile.h CbPost.h CbGeom.h \
+ CbMesh.h CbColorbar.h
 CbColorbar.o: CbColorbar.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
-  ../Common/Const.h XColors.h Widgets.h Register.h ../Common/Context.h \
-  XContext.h ../Common/ColorTable.h CbColorbar.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
+ ../Common/Const.h XColors.h Widgets.h Register.h ../Common/Context.h \
+ XContext.h ../Common/ColorTable.h CbColorbar.h
 CbGeom.o: CbGeom.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
-  ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
-  ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Widgets.h \
-  ../Common/Context.h ../Geo/Verif.h ../Parser/OpenFile.h CbGeom.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
+ ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Widgets.h \
+ ../Common/Context.h ../Geo/Verif.h ../Parser/OpenFile.h CbGeom.h
 CbMesh.o: CbMesh.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
-  ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
-  ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h CbMesh.h \
-  ../Common/Context.h Widgets.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
+ ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h CbMesh.h \
+ ../Common/Context.h Widgets.h
 CbOptions.o: CbOptions.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
-  ../Geo/Verif.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h \
-  ../Graphics/Draw.h ../Common/Views.h ../Common/Const.h \
-  ../Common/ColorTable.h Widgets.h Pixmaps.h ../Common/Context.h \
-  XContext.h Register.h ../Common/Timer.h CbGeneral.h CbOptions.h \
-  CbGeom.h CbMesh.h CbPost.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Geo/Geo.h \
+ ../Geo/Verif.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h \
+ ../Graphics/Draw.h ../Common/Views.h ../Common/Const.h \
+ ../Common/ColorTable.h Widgets.h Pixmaps.h ../Common/Context.h \
+ XContext.h Register.h ../Common/Timer.h ../Geo/Visibility.h \
+ CbGeneral.h CbOptions.h CbGeom.h CbMesh.h CbPost.h
 CbFile.o: CbFile.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
-  ../Parser/OpenFile.h ../Common/Const.h ../Mesh/Mesh.h ../Mesh/Vertex.h \
-  ../Mesh/Simplex.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \
-  ../Mesh/Metric.h ../Graphics/Draw.h ../Common/Views.h \
-  ../Common/ColorTable.h Widgets.h ../Common/Context.h CbFile.h \
-  CbColorbar.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h \
+ ../Parser/OpenFile.h ../Common/Const.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
+ ../Common/Views.h ../Common/ColorTable.h Widgets.h \
+ ../Common/Context.h ../Graphics/CreateFile.h CbFile.h CbColorbar.h
 CbInput.o: CbInput.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
-  ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Widgets.h \
-  ../Common/Context.h XContext.h Register.h CbContext.h CbGeneral.h \
-  CbGeom.h CbPost.h CbMesh.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
+ ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Widgets.h \
+ ../Common/Context.h XContext.h Register.h CbContext.h CbGeneral.h \
+ CbGeom.h CbPost.h CbMesh.h
 CbGeneral.o: CbGeneral.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
-  ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h \
-  ../Common/Context.h XContext.h Widgets.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/GmshUI.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \
+ ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h \
+ ../Common/Context.h XContext.h Widgets.h
diff --git a/Parser/Makefile b/Parser/Makefile
index f27e2e7349..e8d781d90a 100644
--- a/Parser/Makefile
+++ b/Parser/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.11 2001-01-08 08:05:47 geuzaine Exp $
+# $Id: Makefile,v 1.12 2001-01-09 14:24:13 geuzaine Exp $
 #
 # Makefile for "libParser.a"
 #
@@ -64,26 +64,26 @@ depend:
 
 # DO NOT DELETE THIS LINE
 Gmsh.yy.o: Gmsh.yy.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
-  ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
-  ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Gmsh.tab.cpp.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Geo/Geo.h \
+ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \
+ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Gmsh.tab.cpp.h
 Gmsh.tab.o: Gmsh.tab.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h \
-  ../Common/Context.h ../Geo/Geo.h ../Geo/CAD.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Geo/DataBase.h \
-  ../Mesh/Create.h ../Common/Views.h ../Common/ColorTable.h \
-  ../Geo/StepGeomDatabase.h ../Common/Options.h ../Graphics/Draw.h \
-  ../Common/Colors.h Parser.h OpenFile.h FunctionManager.h \
-  ../Common/Timer.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h \
+ ../Common/Context.h ../Geo/Geo.h ../Geo/CAD.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Geo/DataBase.h \
+ ../Mesh/Create.h ../Common/Views.h ../Common/ColorTable.h \
+ ../Geo/StepGeomDatabase.h ../Common/Options.h ../Graphics/Draw.h \
+ ../Common/Colors.h Parser.h OpenFile.h FunctionManager.h \
+ ../Common/Timer.h
 OpenFile.o: OpenFile.cpp ../Common/Gmsh.h ../Common/Message.h \
-  ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
-  ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h \
-  ../Common/Context.h Parser.h OpenFile.h ../Geo/Geo.h ../Mesh/Mesh.h \
-  ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
-  ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Common/Views.h \
-  ../Common/ColorTable.h ../Geo/MinMax.h ../Common/GmshUI.h \
-  ../Graphics/Draw.h ../Motif/Widgets.h
+ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
+ ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h \
+ ../Common/Context.h Parser.h OpenFile.h ../Geo/Geo.h ../Mesh/Mesh.h \
+ ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \
+ ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Common/Views.h \
+ ../Common/ColorTable.h ../Geo/MinMax.h ../Geo/Visibility.h \
+ ../Common/GmshUI.h ../Graphics/Draw.h ../Motif/Widgets.h
 FunctionManager.o: FunctionManager.cpp FunctionManager.h
diff --git a/Parser/OpenFile.cpp b/Parser/OpenFile.cpp
index d8cf5da1bd..fac0dcbafa 100644
--- a/Parser/OpenFile.cpp
+++ b/Parser/OpenFile.cpp
@@ -1,4 +1,4 @@
-// $Id: OpenFile.cpp,v 1.2 2001-01-09 09:52:17 geuzaine Exp $
+// $Id: OpenFile.cpp,v 1.3 2001-01-09 14:24:13 geuzaine Exp $
 #include "Gmsh.h"
 #include "Const.h"
 #include "Context.h"
@@ -8,13 +8,11 @@
 #include "Mesh.h"
 #include "Views.h"
 #include "MinMax.h"
+#include "Visibility.h"
 
 #ifndef _BLACKBOX
 #include "GmshUI.h"
 #include "Draw.h"
-extern int        SHOW_ALL_ENTITIES ;
-extern Tree_T    *EntitesVisibles;
-extern void RemplirEntitesVisibles (int add_rem);
 #endif
 
 #ifdef _XMOTIF
-- 
GitLab