X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/e752c10ce2c082a8654b2abd68b2cf442275cdcd..f29a7129de56edca96ea8ef58576898c1e52ed6f:/Constructor/workplace.cpp?ds=sidebyside diff --git a/Constructor/workplace.cpp b/Constructor/workplace.cpp index 3baa408..418f6b7 100644 --- a/Constructor/workplace.cpp +++ b/Constructor/workplace.cpp @@ -3,7 +3,7 @@ WorkPlace::WorkPlace( BaseObjectType* cobject, const Glib::RefPtr &refGlade):Gtk::Fixed(cobject) { refGlade->get_widget_derived("viewport",viewport); - this->signal_button_press_event().connect(SigC::slot(*this,&WorkPlace::on_button_press_event)); + viewport->workplace = this; } WorkPlace::~WorkPlace() @@ -21,28 +21,14 @@ bool WorkPlace::on_expose_event(GdkEventExpose *event) get_window()->draw_point (get_style()->get_black_gc(), x+1,y); get_window()->draw_point (get_style()->get_black_gc(), x-1,y); } - //TODO recorer la lista_lineas y dibujar todas - get_window()->draw_line (get_style()->get_black_gc(), temp.x,temp.y,temp.w,temp.z); return true; } - bool WorkPlace::on_button_press_event(GdkEventButton *event) { - std::cout<< temp.x<<" "<type == GDK_BUTTON_PRESS) && (event->button == 1) ) { - get_pointer(temp.x,temp.y); - std::cout<< temp.x<<" "<type == GDK_BUTTON_PRESS) && (event->button == 1) ) { - get_pointer(temp.w,temp.z); - lista_lineas.push_back(temp); - get_window()->draw_line (get_style()->get_black_gc(), temp.x,temp.y,temp.w,temp.z); + if ((event->type==GDK_BUTTON_RELEASE) && (event->button ==1)) { + get_pointer(viewport->temp.w, viewport->temp.z); + get_window()->draw_line (get_style()->get_black_gc(), viewport->temp.x,viewport->temp.y,viewport->temp.w,viewport->temp.z); } return true; }