-#ifndef GTKMM_EXAMPLE_DRAWINGAREALINES_H
-#define GTKMM_EXAMPLE_DRAWINGAREALINES_H
+#ifndef _ITEM_H_
+#define _ITEM_H_
#include <iostream>
#include <gtkmm/drawingarea.h>
#include <gtkmm.h>
#include <gdkmm.h>
#include <libglademm.h>
-#include "propertywnd.h"
-
+#include <gtkmm/entry.h>
+#include "itemptywnd.h"
+class WorkPlace;
+
class CItem:public Gtk::DrawingArea {
public:
CItem();
CItem(const char *filename);
- ~CItem();
+ virtual ~CItem();
virtual bool on_expose_event(GdkEventExpose* event);
virtual void on_menu_popup_propiedades();
virtual void on_menu_popup_rotar();
virtual void on_menu_popup_eliminar();
+ virtual void on_menu_popup_conectar();
Glib::RefPtr<Gdk::Pixbuf> get_image() { return image; }
+ virtual void save(FILE *archivo) = 0;
+ int get_position_x();
+ int get_position_y();
+ int get_id();
+ int get_conector_in();
+ int get_conector_out();
+ double get_caudal();
+ void set_position(int _x, int _y);
+ void set_id(int _id);
+ void set_caudal(double _caudal);
+ void set_name(Glib::ustring _name);
+ void set_conector_in(int _in);
+ void set_conector_out(int _out);
+ bool is_occupied_area(int _a, int _b);
+ Glib::ustring get_name();
+ WorkPlace *workplace;
+ Gtk::Entry *combo_entry;
protected:
+ int ID, conector_in, conector_out;
+ Glib::ustring name;
+ double caudal_max;
Gtk::Menu menu_popup;
- Gtk::Image menu_image_delete, menu_image_rotar, menu_image_propiedades;
+ Gtk::Image menu_image_delete, menu_image_rotar, menu_image_propiedades, menu_image_linea;
Glib::RefPtr<Gdk::Pixbuf> image;
- PropertyWnd *property_wnd;
+ ItemPtyWnd *property_wnd;
+ int x, y;
};
#endif