00001 #ifndef Se_Object_Included 00002 #define Se_Object_Included 00003 00004 #include <string> 00005 00006 #include <gtk/gtk.h> 00007 00008 #include "se_gtk_data_vector.h" 00009 #include "se_gtk_data.h" 00010 #include "se_string.h" 00011 00012 namespace Se{ 00013 00014 /*declarations*/ 00015 00016 class Object{ 00017 00018 int id; 00019 Object *parent; 00020 Gtk_Data_Vector *data; 00021 00022 //Matlab 00023 String matlab_name; 00024 00025 //Graphics User Interface 00026 String window_name; 00027 00028 GtkWidget *window; 00029 GtkWidget *scrolled_window; 00030 GtkWidget *table; 00031 GtkWidget *common_toolbar; 00032 00033 //private functions 00034 Object(); 00035 Object *get_ancestor(); 00036 00037 public: 00038 //Constructors and Destructors 00039 Object(String,int,Object *parent); 00040 00041 virtual ~Object(); 00042 00043 //Set 00044 void set_data(Gtk_Data_Vector *data); 00045 void push_back(Gtk_Data *new_data);/*push back and set parent*/ 00046 void set_accumulation(); 00047 00048 //Get 00049 int get_id(); 00050 virtual Gtk_Data *get_data(int object_id,String name); 00051 Gtk_Data *get_data(String name); 00052 Gtk_Data_Vector *get_data(); 00053 Gtk_Data *get_data(int); 00054 String get_matlab_name(); 00055 String get_window_name(); 00056 00057 //Matlab 00058 virtual void put_variable(String,double *,int); 00059 virtual void put_command(String); 00060 virtual void take_variable(String name,double **data,int *size); 00061 00062 //Compare 00063 bool compare_id(int id); 00064 00065 //Update 00066 virtual void update(); 00067 00068 //Graphics User Interface 00069 void basic_build(); 00070 void build_data(int,int); 00071 00072 GtkWidget *get_window(); 00073 GtkWidget *get_table(); 00074 00075 //Callbacks 00076 static void update_callback(GtkWidget *widget,gpointer data); 00077 }; 00078 00079 } 00080 #endif
1.2.18