+Tue February 26 2013 Shyouzou Sugitani <shy@users.sourceforge.jp>
+ * ウインドウ移動後の再描画処理要求をTransparentWindowの方で
+ 生成するようにした.
+
Mon February 25 2013 Shyouzou Sugitani <shy@users.sourceforge.jp>
* Gtk.DrawingAreaを持たないBaseTransparentWindowクラスを追加し,
TransparentWindowはこのクラスを継承するようにした.
def __move(self):
x, y = self.get_position()
self.window.move(x, y)
- self.darea.queue_draw()
def set_position(self, base_x, base_y):
if self.balloon_id is None: ## FIXME
return self.position
def destroy(self, finalize=0):
- self.window.remove(self.darea)
- self.darea.destroy()
self.window.destroy()
def is_shown(self):
self.__shown = 1
# make sure window is in its position (call before showing the window)
self.__move()
- self.darea.show()
self.window.show()
# make sure window is in its position (call after showing the window)
self.__move()
def raise_(self):
if self.__shown:
- ##self.window.get_window().raise_()
getattr(self.window.get_window(), 'raise')() # XXX
def lower(self):
new_x = self.base_x + int((self.x + self.action_x + self.vx) * self.scale / 100)
new_y = self.base_y + int((self.y + self.action_y + self.vy) * self.scale / 100)
self.window.move(new_x, new_y)
- self.darea.queue_draw()
def set_skin(self):
if self.window is None:
return
self.set_skin()
self.set_position()
- self.darea.queue_draw()
@property
def clickerase(self):
if self.dragmove_vertical:
self.y += y_delta
self.set_position()
- self.darea.queue_draw()
self.x_root = event.x_root
self.y_root = event.y_root
if self.move_notify_time is None or \
self.darea.connect('motion_notify_event', self.motion_notify)
self.darea.connect('leave_notify_event', self.leave_notify)
self.darea.connect('draw', self.redraw)
- self.darea.set_size_request(self.w, self.h)
+ self.window.update_size(self.w, self.h)
self.set_position()
target_window = self.request_parent('GET', 'get_target_window')
if self.data['ontop']:
self.x = base_x - int(self.w * a) + offsetx + xoffset
self.y = base_y - int(self.h * b) + offsety + yoffset
self.window.move(self.x, self.y)
- self.darea.queue_draw()
def set_scale(self, scale):
self.__scale = scale
if not self.omni:
self.y = top + scrn_h - self.h
self.window.move(self.x, self.y)
- self.darea.queue_draw()
def move(self, x_delta, y_delta):
self.x = self.x + x_delta
int(self.offset_x * self.__scale / 100)
self.y = top + int(self.offset_y * self.__scale / 100)
self.window.move(self.x, self.y)
- self.darea.queue_draw()
def set_surface(self):
path = os.path.join(self.data['dir'],
else:
pass
self.window.move(self.x, self.y)
- self.darea.queue_draw()
def check_collision(self): ## FIXME: check self position
for side in [0, 1]:
Gtk.Window.move(self, new_x, new_y)
self.__position = (new_x, new_y)
self.__surface_position = (x, y)
+ self.darea.queue_draw()
def get_draw_offset(self):
window_x, window_y = self.__position
def move_surface(self, xoffset, yoffset):
x, y = self.get_position()
self.window.move(x + xoffset, y + yoffset)
- self.darea.queue_draw()
if self.side < 2:
args = (self.side, xoffset, yoffset)
self.request_parent(
self.position = (x, y)
new_x, new_y = self.get_position()
self.window.move(new_x, new_y)
- self.darea.queue_draw()
left, top, scrn_w, scrn_h = ninix.pix.get_workarea()
direction = 0 if x > left + scrn_w // 2 else 1
self.direction = direction
def destroy(self):
self.seriko.destroy()
- self.window.remove(self.darea)
- self.darea.destroy()
self.window.destroy()
def is_shown(self):
self.__shown = True
x, y = self.get_position()
self.window.move(x, y) # XXX: call before showing the window
- self.darea.show()
self.window.show()
self.request_parent('NOTIFY', 'notify_observer', 'show', (self.side))
self.request_parent('NOTIFY', 'notify_observer', 'raise', (self.side))
'NOTIFY', 'notify_observer', 'hide', (self.side))
def raise_(self):
- #self.window.get_window().raise_()
getattr(self.window.get_window(), 'raise')() # XXX
self.request_parent('NOTIFY', 'notify_observer', 'raise', (self.side))
y_delta = int(event.y_root - self.y_root)
x, y = self.position # XXX: without window_offset
self.set_position(x + x_delta, y + y_delta)
- self.darea.queue_draw()
self.x_root = event.x_root
self.y_root = event.y_root
elif state & Gdk.ModifierType.BUTTON2_MASK or \