Re: [gtkmm] moving window



I have found the problem :)

here is the new code

	get_size(mx,my);
	x_delta = event->x_root - drag_x;
	y_delta = event->y_root - drag_y;
	get_window()->get_root_origin (x, y);
get_window()->move_resize ((gint) floor (x + x_delta), (gint) floor (y + y_delta),mx,my);


SMS WebMaster wrote:
Hi

can anyone tell me what is the wrong in this code (this code to allow me to move the window when I press it and move the mouse, but the problem is thta I have to move the mouse very slow to make this code work, if I mouse the mouse fast the window will not move with the mouse ):



PicEvent.set_events(Gdk::BUTTON_PRESS_MASK | Gdk::POINTER_MOTION_MASK | Gdk::POINTER_MOTION_HINT_MASK);
  PicEvent.signal_motion_notify_event().connect(
     SigC::slot(*this, &MainWindow::window_motion) );
  PicEvent.signal_button_press_event().connect(
    SigC::slot(*this, &MainWindow::on_PICEvent_button_press) );
  PicEvent.signal_button_release_event().connect(
    SigC::slot(*this, &MainWindow::on_PICEvent_button_release) );


bool MainWindow::window_motion (GdkEventMotion* event)
{
    gint x;
    gint y;
    gint mx, my;
    double x_delta;
    double y_delta;
    this->get_pointer (mx, my);
if (!dragging) {

        return TRUE;
    }

    x_delta = event->x_root - drag_x;
    y_delta = event->y_root - drag_y;

    get_window()->get_root_origin (x, y);
get_window()->move ((gint) floor (x + x_delta), (gint) floor (y + y_delta)); drag_x = event->x_root;
    drag_y = event->y_root;

    return TRUE;
}


bool MainWindow::on_TimeEvent_button_press(GdkEventButton* event)
{
  return true;
}

bool MainWindow::on_PICEvent_button_press(GdkEventButton* event)
{
  dragging=TRUE;
    drag_x = event->x_root;
    drag_y = event->y_root;
  return true;
}
bool MainWindow::on_PICEvent_button_release(GdkEventButton* event)
{
  dragging=FALSE;
  return true;
}


Any help please ?



--
http://www.4-SMS.Com
http://eShop.4-SMS.Com
http://Mozilla.4-SMS.Com
-*- If Linux doesn't have the solution, you have the wrong problem -*-




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]