]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blob - Constructor/constructor.h
casi no se solapan items, y ademas se pueden eliminar
[z.facultad/75.42/plaqui.git] / Constructor / constructor.h
1 // ventana principal
2 #ifndef  _CONSTRUCTOR_H_
3 #define _CONSTRUCTOR_H_
4
5 #include <iostream>
6 #include <libglademm.h>
7 #include <gtkmm.h>
8 #include <gtkmm/window.h>
9 #include <gtkmm/box.h>
10 #include <gtkmm/button.h>
11 #include <gtkmm/fixed.h>
12 #include <gtkmm/scrolledwindow.h>
13 #include "workplace.h"
14 #include "item.h"
15 #include "splitter.h"
16 #include "conduct.h"
17 #include "union.h"
18 #include "cistern.h"
19
20 class Constructor : public Gtk::Window {
21         public: 
22                 Constructor(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& refGlade);
23                 virtual ~Constructor();
24         protected: 
25         int id;
26                 // / defino los elementos de la ventana.
27         Gtk::Button *btn_canio, *btn_codo, *btn_y, *btn_tanque;
28         Gtk::ImageMenuItem *main_menu_quit, *edit_menu_del;
29         WorkPlace *workplace;
30         Glib::RefPtr<Gdk::Pixbuf> ico_canio, ico_y, ico_codo, ico_tanque;
31         std::list<Gtk::TargetEntry> listTargets;
32         Glib::RefPtr<Gdk::Pixbuf> ico_last;
33         std::list<CItem *> listaItems;
34         
35         bool can_drop(CItem *, int , int);
36         // /señales de control para los elementos de la ventana.
37                 
38         virtual void on_btn_canio_drag_get(const Glib::RefPtr<Gdk::DragContext>& context, GtkSelectionData* selection_data, guint info, guint time);
39         virtual void on_btn_y_drag_get(const Glib::RefPtr<Gdk::DragContext>& context, GtkSelectionData* selection_data, guint info, guint time);
40         virtual void on_btn_codo_drag_get(const Glib::RefPtr<Gdk::DragContext>& context, GtkSelectionData* selection_data, guint info, guint time);
41         virtual void on_btn_tanque_drag_get(const Glib::RefPtr<Gdk::DragContext>& context, GtkSelectionData* selection_data, guint info, guint time);
42         virtual void on_main_menu_quit();
43         virtual void on_edit_menu_del();
44                 
45         // señales para cambiar el icono.
46         virtual void on_canio_drag_begin(const Glib::RefPtr<Gdk::DragContext>& context);
47         virtual void on_y_drag_begin(const Glib::RefPtr<Gdk::DragContext>& context);
48         virtual void on_codo_drag_begin(const Glib::RefPtr<Gdk::DragContext>& context);
49         virtual void on_tanque_drag_begin(const Glib::RefPtr<Gdk::DragContext>& context);
50         
51         virtual void on_item_drag_begin(const Glib::RefPtr<Gdk::DragContext>& context, CItem *);
52         virtual void on_item_drag_data_get(const Glib::RefPtr<Gdk::DragContext>& context, GtkSelectionData* selection_data, guint info, guint time);
53
54         virtual void on_item_drop_drag_received(const Glib::RefPtr<Gdk::DragContext>& context, int x, int y, GtkSelectionData* selection_data, guint info, guint time);
55 };
56 #endif