#ifndef _CONSTRUCTOR_H_
#define _CONSTRUCTOR_H_
+#include <iostream>
#include <libglademm.h>
#include <gtkmm.h>
#include <gtkmm/window.h>
#include <gtkmm/button.h>
#include <gtkmm/fixed.h>
#include <gtkmm/scrolledwindow.h>
+#include <gtkmm/checkbutton.h>
#include "workplace.h"
#include "item.h"
-#include "codo.h"
-#include "canio.h"
-#include "y.h"
-
+#include "splitter.h"
+#include "conduct.h"
+#include "union.h"
+#include "cistern.h"
class Constructor : public Gtk::Window {
public:
Constructor(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& refGlade);
virtual ~Constructor();
protected:
+ int id;
// / defino los elementos de la ventana.
- Gtk::Button *btn_canio, *btn_codo, *btn_y;
+ Gtk::Button *btn_canio, *btn_codo, *btn_y, *btn_tanque;
+ Gtk::ImageMenuItem *main_menu_quit, *edit_menu_del;
+ Gtk::CheckButton *chk_btn_logica;
WorkPlace *workplace;
- Glib::RefPtr<Gdk::Pixbuf> ico_canio, ico_y, ico_codo;
+ Glib::RefPtr<Gdk::Pixbuf> ico_canio, ico_y, ico_codo, ico_tanque;
std::list<Gtk::TargetEntry> listTargets;
Glib::RefPtr<Gdk::Pixbuf> ico_last;
std::list<CItem *> listaItems;
-
+ bool logica;
+ bool can_drop(CItem *, int , int);
// /señales de control para los elementos de la ventana.
virtual void on_btn_canio_drag_get(const Glib::RefPtr<Gdk::DragContext>& context, GtkSelectionData* selection_data, guint info, guint time);
virtual void on_btn_y_drag_get(const Glib::RefPtr<Gdk::DragContext>& context, GtkSelectionData* selection_data, guint info, guint time);
virtual void on_btn_codo_drag_get(const Glib::RefPtr<Gdk::DragContext>& context, GtkSelectionData* selection_data, guint info, guint time);
-
+ virtual void on_btn_tanque_drag_get(const Glib::RefPtr<Gdk::DragContext>& context, GtkSelectionData* selection_data, guint info, guint time);
+ virtual void on_main_menu_quit();
+ virtual void on_edit_menu_del();
+ virtual void on_chk_btn_clicked();
+
// señales para cambiar el icono.
virtual void on_canio_drag_begin(const Glib::RefPtr<Gdk::DragContext>& context);
virtual void on_y_drag_begin(const Glib::RefPtr<Gdk::DragContext>& context);
virtual void on_codo_drag_begin(const Glib::RefPtr<Gdk::DragContext>& context);
+ virtual void on_tanque_drag_begin(const Glib::RefPtr<Gdk::DragContext>& context);
virtual void on_item_drag_begin(const Glib::RefPtr<Gdk::DragContext>& context, CItem *);
virtual void on_item_drag_data_get(const Glib::RefPtr<Gdk::DragContext>& context, GtkSelectionData* selection_data, guint info, guint time);