parameters: (self, widget, event)
return_statement: return False
docstring: ! Motion Notify
          @param self this object
          @param widget widget
          @param event event
          @return true if moving otherwise false
docstring_summary: ! Motion Notify
docstring_tokens: ! Motion Notify
function: def motion_notify(self, widget, event):
          """! Motion Notify
          @param self this object
          @param widget widget
          @param event event
          @return true if moving otherwise false
          """
          (x, y, width, height) = self.__data.get_selection_rectangle()
          if self.__moving_left:
              if event.x <= 0:
                  self.__moving_left_cur = 0
              elif event.x >= x + width:
                  self.__moving_left_cur = x + width
              else:
                  self.__moving_left_cur = event.x
              self.queue_draw_area(0, int(y), int(self.__width), int(height))
              return True
          if self.__moving_right:
              if event.x >= self.__width:
                  self.__moving_right = self.__width
              elif event.x < x:
                  self.__moving_right_cur = x
              else:
                  self.__moving_right_cur = event.x
              self.queue_draw_area(0, int(y), int(self.__width), int(height))
              return True
          if self.__moving_both:
              cur_e = self.__width - (x + width - self.__moving_both_start)
              cur_s = (self.__moving_both_start - x)
              if event.x < cur_s:
                  self.__moving_both_cur = cur_s
              elif event.x > cur_e:
                  self.__moving_both_cur = cur_e
              else:
                  self.__moving_both_cur = event.x
              self.queue_draw_area(0, int(y), int(self.__width), int(height))
              return True
          if self.__moving_top:
              self.__moving_top_cur = event.x
              delta = self.__data.scale_data(self.__moving_top_start - self.__moving_top_cur)
              (left, right) = self.__data.get_range()
              self.__data.set_range(left + delta, right + delta)
              self.__force_full_redraw = True
              self.__moving_top_start = event.x
              self.queue_draw()
              return True
          (d_x, d_y, d_width, d_height) = self.__data.get_data_rectangle()
          if event.y > y and event.y < y + height:
              if abs(event.x - x) < 5 or abs(event.x - (x + width)) < 5:
                  widget.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.SB_H_DOUBLE_ARROW))
                  return True
              if event.x > x and event.x < x + width:
                  widget.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.FLEUR))
                  return True
          if event.y > d_y and event.y < (d_y + d_height):
              if event.x > d_x and event.x < (d_x + d_width):
                  widget.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.FLEUR))
                  return True
          widget.window.set_cursor(None)
          return False
function_tokens: def motion_notify ( self , widget , event ) : ( x , y , width , height ) = self . __data . get_selection_rectangle ( ) if self . __moving_left : if event . x <= 0 : self . __moving_left_cur = 0 elif event . x >= x + width : self . __moving_left_cur = x + width else : self . __moving_left_cur = event . x self . queue_draw_area ( 0 , int ( y ) , int ( self . __width ) , int ( height ) ) return True if self . __moving_right : if event . x >= self . __width : self . __moving_right = self . __width elif event . x < x : self . __moving_right_cur = x else : self . __moving_right_cur = event . x self . queue_draw_area ( 0 , int ( y ) , int ( self . __width ) , int ( height ) ) return True if self . __moving_both : cur_e = self . __width - ( x + width - self . __moving_both_start ) cur_s = ( self . __moving_both_start - x ) if event . x < cur_s : self . __moving_both_cur = cur_s elif event . x > cur_e : self . __moving_both_cur = cur_e else : self . __moving_both_cur = event . x self . queue_draw_area ( 0 , int ( y ) , int ( self . __width ) , int ( height ) ) return True if self . __moving_top : self . __moving_top_cur = event . x delta = self . __data . scale_data ( self . __moving_top_start - self . __moving_top_cur ) ( left , right ) = self . __data . get_range ( ) self . __data . set_range ( left + delta , right + delta ) self . __force_full_redraw = True self . __moving_top_start = event . x self . queue_draw ( ) return True ( d_x , d_y , d_width , d_height ) = self . __data . get_data_rectangle ( ) if event . y > y and event . y < y + height : if abs ( event . x - x ) < 5 or abs ( event . x - ( x + width ) ) < 5 : widget . window . set_cursor ( gtk . gdk . Cursor ( gtk . gdk . SB_H_DOUBLE_ARROW ) ) return True if event . x > x and event . x < x + width : widget . window . set_cursor ( gtk . gdk . Cursor ( gtk . gdk . FLEUR ) ) return True if event . y > d_y and event . y < ( d_y + d_height ) : if event . x > d_x and event . x < ( d_x + d_width ) : widget . window . set_cursor ( gtk . gdk . Cursor ( gtk . gdk . FLEUR ) ) return True widget . window . set_cursor ( None ) return False