pep8'd sugar3.graphics
This commit is contained in:
parent
51f07bba81
commit
edbc8f53b3
@ -56,7 +56,7 @@ class Animator(GObject.GObject):
|
|||||||
|
|
||||||
self._start_time = time.time()
|
self._start_time = time.time()
|
||||||
self._timeout_sid = GLib.timeout_add(
|
self._timeout_sid = GLib.timeout_add(
|
||||||
int(self._interval * 1000), self._next_frame_cb)
|
int(self._interval * 1000), self._next_frame_cb)
|
||||||
|
|
||||||
def stop(self):
|
def stop(self):
|
||||||
if self._timeout_sid:
|
if self._timeout_sid:
|
||||||
|
@ -48,7 +48,7 @@ class _ColorButton(Gtk.Button):
|
|||||||
|
|
||||||
__gtype_name__ = 'SugarColorButton'
|
__gtype_name__ = 'SugarColorButton'
|
||||||
__gsignals__ = {'color-set': (GObject.SignalFlags.RUN_FIRST, None,
|
__gsignals__ = {'color-set': (GObject.SignalFlags.RUN_FIRST, None,
|
||||||
tuple())}
|
tuple())}
|
||||||
|
|
||||||
def __init__(self, **kwargs):
|
def __init__(self, **kwargs):
|
||||||
self._title = _('Choose a color')
|
self._title = _('Choose a color')
|
||||||
@ -66,13 +66,16 @@ class _ColorButton(Gtk.Button):
|
|||||||
# FIXME Drag and drop is not working, SL #3796
|
# FIXME Drag and drop is not working, SL #3796
|
||||||
if self._accept_drag:
|
if self._accept_drag:
|
||||||
self.drag_dest_set(Gtk.DestDefaults.MOTION |
|
self.drag_dest_set(Gtk.DestDefaults.MOTION |
|
||||||
Gtk.DestDefaults.HIGHLIGHT | Gtk.DestDefaults.DROP,
|
Gtk.DestDefaults.HIGHLIGHT |
|
||||||
[Gtk.TargetEntry.new('application/x-color', 0, 0)],
|
Gtk.DestDefaults.DROP,
|
||||||
Gdk.DragAction.COPY)
|
[Gtk.TargetEntry.new(
|
||||||
|
'application/x-color', 0, 0)],
|
||||||
|
Gdk.DragAction.COPY)
|
||||||
self.drag_source_set(Gdk.ModifierType.BUTTON1_MASK |
|
self.drag_source_set(Gdk.ModifierType.BUTTON1_MASK |
|
||||||
Gdk.ModifierType.BUTTON3_MASK,
|
Gdk.ModifierType.BUTTON3_MASK,
|
||||||
[Gtk.TargetEntry.new('application/x-color', 0, 0)],
|
[Gtk.TargetEntry.new(
|
||||||
Gdk.DragAction.COPY)
|
'application/x-color', 0, 0)],
|
||||||
|
Gdk.DragAction.COPY)
|
||||||
self.connect('drag_data_received', self.__drag_data_received_cb)
|
self.connect('drag_data_received', self.__drag_data_received_cb)
|
||||||
self.connect('drag_data_get', self.__drag_data_get_cb)
|
self.connect('drag_data_get', self.__drag_data_get_cb)
|
||||||
|
|
||||||
@ -92,7 +95,7 @@ class _ColorButton(Gtk.Button):
|
|||||||
primary_text=self._title)
|
primary_text=self._title)
|
||||||
self._palette.connect('color-set', self.__palette_color_set_cb)
|
self._palette.connect('color-set', self.__palette_color_set_cb)
|
||||||
self._palette.connect('notify::color', self.
|
self._palette.connect('notify::color', self.
|
||||||
__palette_color_changed)
|
__palette_color_changed)
|
||||||
|
|
||||||
return self._palette
|
return self._palette
|
||||||
|
|
||||||
@ -110,7 +113,7 @@ class _ColorButton(Gtk.Button):
|
|||||||
fg_color = context.get_color(Gtk.StateType.NORMAL)
|
fg_color = context.get_color(Gtk.StateType.NORMAL)
|
||||||
# the color components are stored as float values between 0.0 and 1.0
|
# the color components are stored as float values between 0.0 and 1.0
|
||||||
return '#%.2X%.2X%.2X' % (fg_color.red * 255, fg_color.green * 255,
|
return '#%.2X%.2X%.2X' % (fg_color.red * 255, fg_color.green * 255,
|
||||||
fg_color.blue * 255)
|
fg_color.blue * 255)
|
||||||
|
|
||||||
def set_color(self, color):
|
def set_color(self, color):
|
||||||
assert isinstance(color, Gdk.Color)
|
assert isinstance(color, Gdk.Color)
|
||||||
@ -167,7 +170,7 @@ class _ColorButton(Gtk.Button):
|
|||||||
|
|
||||||
has_invoker = GObject.property(type=bool, default=True,
|
has_invoker = GObject.property(type=bool, default=True,
|
||||||
flags=GObject.PARAM_READWRITE |
|
flags=GObject.PARAM_READWRITE |
|
||||||
GObject.PARAM_CONSTRUCT_ONLY,
|
GObject.PARAM_CONSTRUCT_ONLY,
|
||||||
getter=_get_has_invoker,
|
getter=_get_has_invoker,
|
||||||
setter=_set_has_invoker)
|
setter=_set_has_invoker)
|
||||||
|
|
||||||
@ -179,7 +182,7 @@ class _ColorButton(Gtk.Button):
|
|||||||
|
|
||||||
has_palette = GObject.property(type=bool, default=True,
|
has_palette = GObject.property(type=bool, default=True,
|
||||||
flags=GObject.PARAM_READWRITE |
|
flags=GObject.PARAM_READWRITE |
|
||||||
GObject.PARAM_CONSTRUCT_ONLY,
|
GObject.PARAM_CONSTRUCT_ONLY,
|
||||||
getter=_get_has_palette,
|
getter=_get_has_palette,
|
||||||
setter=_set_has_palette)
|
setter=_set_has_palette)
|
||||||
|
|
||||||
@ -191,15 +194,15 @@ class _ColorButton(Gtk.Button):
|
|||||||
|
|
||||||
accept_drag = GObject.property(type=bool, default=True,
|
accept_drag = GObject.property(type=bool, default=True,
|
||||||
flags=GObject.PARAM_READWRITE |
|
flags=GObject.PARAM_READWRITE |
|
||||||
GObject.PARAM_CONSTRUCT_ONLY,
|
GObject.PARAM_CONSTRUCT_ONLY,
|
||||||
getter=_get_accept_drag,
|
getter=_get_accept_drag,
|
||||||
setter=_set_accept_drag)
|
setter=_set_accept_drag)
|
||||||
|
|
||||||
def __drag_begin_cb(self, widget, context):
|
def __drag_begin_cb(self, widget, context):
|
||||||
# Drag and Drop
|
# Drag and Drop
|
||||||
pixbuf = GdkPixbuf.Pixbuf(GdkPixbuf.Colorspace.RGB, True, 8,
|
pixbuf = GdkPixbuf.Pixbuf(GdkPixbuf.Colorspace.RGB, True, 8,
|
||||||
style.SMALL_ICON_SIZE,
|
style.SMALL_ICON_SIZE,
|
||||||
style.SMALL_ICON_SIZE)
|
style.SMALL_ICON_SIZE)
|
||||||
|
|
||||||
red = self._color.red / 257
|
red = self._color.red / 257
|
||||||
green = self._color.green / 257
|
green = self._color.green / 257
|
||||||
@ -211,11 +214,11 @@ class _ColorButton(Gtk.Button):
|
|||||||
|
|
||||||
def __drag_data_get_cb(self, widget, context, selection_data, info, time):
|
def __drag_data_get_cb(self, widget, context, selection_data, info, time):
|
||||||
data = struct.pack('=HHHH', self._color.red, self._color.green,
|
data = struct.pack('=HHHH', self._color.red, self._color.green,
|
||||||
self._color.blue, 65535)
|
self._color.blue, 65535)
|
||||||
selection_data.set(selection_data.target, 16, data)
|
selection_data.set(selection_data.target, 16, data)
|
||||||
|
|
||||||
def __drag_data_received_cb(self, widget, context, x, y, selection_data, \
|
def __drag_data_received_cb(self, widget, context, x, y, selection_data,
|
||||||
info, time):
|
info, time):
|
||||||
if len(selection_data.data) != 8:
|
if len(selection_data.data) != 8:
|
||||||
return
|
return
|
||||||
|
|
||||||
@ -242,7 +245,7 @@ class _ColorPalette(Palette):
|
|||||||
# The color-set signal is emitted when the user is finished selecting
|
# The color-set signal is emitted when the user is finished selecting
|
||||||
# a color.
|
# a color.
|
||||||
__gsignals__ = {'color-set': (GObject.SignalFlags.RUN_FIRST, None,
|
__gsignals__ = {'color-set': (GObject.SignalFlags.RUN_FIRST, None,
|
||||||
tuple())}
|
tuple())}
|
||||||
|
|
||||||
def __init__(self, **kwargs):
|
def __init__(self, **kwargs):
|
||||||
self._color = Gdk.Color(0, 0, 0)
|
self._color = Gdk.Color(0, 0, 0)
|
||||||
@ -406,8 +409,9 @@ def _add_accelerator(tool_button):
|
|||||||
keyval, mask = Gtk.accelerator_parse(tool_button.props.accelerator)
|
keyval, mask = Gtk.accelerator_parse(tool_button.props.accelerator)
|
||||||
# the accelerator needs to be set at the child, so the Gtk.AccelLabel
|
# the accelerator needs to be set at the child, so the Gtk.AccelLabel
|
||||||
# in the palette can pick it up.
|
# in the palette can pick it up.
|
||||||
tool_button.get_child().add_accelerator('clicked', accel_group, keyval, mask,
|
tool_button.get_child(
|
||||||
Gtk.AccelFlags.LOCKED | Gtk.AccelFlags.VISIBLE)
|
).add_accelerator('clicked', accel_group, keyval, mask,
|
||||||
|
Gtk.AccelFlags.LOCKED | Gtk.AccelFlags.VISIBLE)
|
||||||
|
|
||||||
|
|
||||||
def _hierarchy_changed_cb(tool_button, previous_toplevel):
|
def _hierarchy_changed_cb(tool_button, previous_toplevel):
|
||||||
@ -426,7 +430,7 @@ class ColorToolButton(Gtk.ToolItem):
|
|||||||
|
|
||||||
__gtype_name__ = 'SugarColorToolButton'
|
__gtype_name__ = 'SugarColorToolButton'
|
||||||
__gsignals__ = {'color-set': (GObject.SignalFlags.RUN_FIRST, None,
|
__gsignals__ = {'color-set': (GObject.SignalFlags.RUN_FIRST, None,
|
||||||
tuple())}
|
tuple())}
|
||||||
|
|
||||||
def __init__(self, icon_name='color-preview', **kwargs):
|
def __init__(self, icon_name='color-preview', **kwargs):
|
||||||
self._accelerator = None
|
self._accelerator = None
|
||||||
@ -471,7 +475,7 @@ class ColorToolButton(Gtk.ToolItem):
|
|||||||
return self._accelerator
|
return self._accelerator
|
||||||
|
|
||||||
accelerator = GObject.property(type=str, setter=set_accelerator,
|
accelerator = GObject.property(type=str, setter=set_accelerator,
|
||||||
getter=get_accelerator)
|
getter=get_accelerator)
|
||||||
|
|
||||||
def create_palette(self):
|
def create_palette(self):
|
||||||
self._palette = self.get_child().create_palette()
|
self._palette = self.get_child().create_palette()
|
||||||
|
@ -89,7 +89,7 @@ class ComboBox(Gtk.ComboBox):
|
|||||||
file_name = self._get_real_name_from_theme(icon_name, size)
|
file_name = self._get_real_name_from_theme(icon_name, size)
|
||||||
|
|
||||||
pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size(
|
pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size(
|
||||||
file_name, width, height)
|
file_name, width, height)
|
||||||
else:
|
else:
|
||||||
pixbuf = None
|
pixbuf = None
|
||||||
|
|
||||||
|
@ -139,7 +139,7 @@ class _IconBuffer(object):
|
|||||||
theme = Gtk.IconTheme.get_default()
|
theme = Gtk.IconTheme.get_default()
|
||||||
|
|
||||||
size = 50
|
size = 50
|
||||||
if self.width != None:
|
if self.width is not None:
|
||||||
size = self.width
|
size = self.width
|
||||||
|
|
||||||
info = theme.lookup_icon(self.icon_name, int(size), 0)
|
info = theme.lookup_icon(self.icon_name, int(size), 0)
|
||||||
@ -153,7 +153,7 @@ class _IconBuffer(object):
|
|||||||
del info
|
del info
|
||||||
else:
|
else:
|
||||||
logging.warning('No icon with the name %s was found in the '
|
logging.warning('No icon with the name %s was found in the '
|
||||||
'theme.', self.icon_name)
|
'theme.', self.icon_name)
|
||||||
|
|
||||||
return icon_info
|
return icon_info
|
||||||
|
|
||||||
@ -205,7 +205,7 @@ class _IconBuffer(object):
|
|||||||
if info.attach_x < 0 or info.attach_y < 0:
|
if info.attach_x < 0 or info.attach_y < 0:
|
||||||
info.icon_padding = max(-info.attach_x, -info.attach_y)
|
info.icon_padding = max(-info.attach_x, -info.attach_y)
|
||||||
elif info.attach_x + info.size > icon_width or \
|
elif info.attach_x + info.size > icon_width or \
|
||||||
info.attach_y + info.size > icon_height:
|
info.attach_y + info.size > icon_height:
|
||||||
x_padding = info.attach_x + info.size - icon_width
|
x_padding = info.attach_x + info.size - icon_width
|
||||||
y_padding = info.attach_y + info.size - icon_height
|
y_padding = info.attach_y + info.size - icon_height
|
||||||
info.icon_padding = max(x_padding, y_padding)
|
info.icon_padding = max(x_padding, y_padding)
|
||||||
@ -397,9 +397,9 @@ class Icon(Gtk.Image):
|
|||||||
|
|
||||||
allocation = self.get_allocation()
|
allocation = self.get_allocation()
|
||||||
x = math.floor(xpad +
|
x = math.floor(xpad +
|
||||||
(allocation.width - requisition.width) * xalign)
|
(allocation.width - requisition.width) * xalign)
|
||||||
y = math.floor(ypad +
|
y = math.floor(ypad +
|
||||||
(allocation.height - requisition.height) * yalign)
|
(allocation.height - requisition.height) * yalign)
|
||||||
|
|
||||||
if self._scale != 1.0:
|
if self._scale != 1.0:
|
||||||
cr.scale(self._scale, self._scale)
|
cr.scale(self._scale, self._scale)
|
||||||
@ -727,8 +727,9 @@ class CanvasIcon(EventIcon):
|
|||||||
|
|
||||||
def __button_press_event_cb(self, icon, event):
|
def __button_press_event_cb(self, icon, event):
|
||||||
if self.palette and not self.palette.is_up():
|
if self.palette and not self.palette.is_up():
|
||||||
self.set_state_flags(self.get_state_flags() | Gtk.StateFlags.ACTIVE,
|
self.set_state_flags(
|
||||||
clear=True)
|
self.get_state_flags() | Gtk.StateFlags.ACTIVE,
|
||||||
|
clear=True)
|
||||||
|
|
||||||
def __button_release_event_cb(self, icon, event):
|
def __button_release_event_cb(self, icon, event):
|
||||||
self.unset_state_flags(Gtk.StateFlags.ACTIVE)
|
self.unset_state_flags(Gtk.StateFlags.ACTIVE)
|
||||||
@ -807,7 +808,7 @@ class CellRendererIcon(Gtk.CellRenderer):
|
|||||||
self._xo_color = value
|
self._xo_color = value
|
||||||
|
|
||||||
xo_color = GObject.property(type=object,
|
xo_color = GObject.property(type=object,
|
||||||
getter=get_xo_color, setter=set_xo_color)
|
getter=get_xo_color, setter=set_xo_color)
|
||||||
|
|
||||||
def set_fill_color(self, value):
|
def set_fill_color(self, value):
|
||||||
if self._fill_color != value:
|
if self._fill_color != value:
|
||||||
@ -918,9 +919,9 @@ class CellRendererIcon(Gtk.CellRenderer):
|
|||||||
else:
|
else:
|
||||||
context.set_state(Gtk.StateFlags.NORMAL)
|
context.set_state(Gtk.StateFlags.NORMAL)
|
||||||
|
|
||||||
|
Gtk.render_background(
|
||||||
Gtk.render_background(context, cr, background_area.x, background_area.y,
|
context, cr, background_area.x, background_area.y,
|
||||||
background_area.width, background_area.height)
|
background_area.width, background_area.height)
|
||||||
|
|
||||||
Gtk.render_frame(context, cr, background_area.x, background_area.y,
|
Gtk.render_frame(context, cr, background_area.x, background_area.y,
|
||||||
background_area.width, background_area.height)
|
background_area.width, background_area.height)
|
||||||
|
@ -92,4 +92,4 @@ class MenuItem(Gtk.ImageMenuItem):
|
|||||||
return self._accelerator
|
return self._accelerator
|
||||||
|
|
||||||
accelerator = GObject.property(type=str, setter=set_accelerator,
|
accelerator = GObject.property(type=str, setter=set_accelerator,
|
||||||
getter=get_accelerator)
|
getter=get_accelerator)
|
||||||
|
@ -34,7 +34,8 @@ class Notebook(Gtk.Notebook):
|
|||||||
|
|
||||||
__gproperties__ = {
|
__gproperties__ = {
|
||||||
'can-close-tabs': (bool, None, None, False,
|
'can-close-tabs': (bool, None, None, False,
|
||||||
GObject.PARAM_READWRITE | GObject.PARAM_CONSTRUCT_ONLY),
|
GObject.PARAM_READWRITE |
|
||||||
|
GObject.PARAM_CONSTRUCT_ONLY),
|
||||||
}
|
}
|
||||||
|
|
||||||
def __init__(self, **kwargs):
|
def __init__(self, **kwargs):
|
||||||
|
@ -60,10 +60,10 @@ class ObjectChooser(object):
|
|||||||
|
|
||||||
self._bus = dbus.SessionBus(mainloop=self._main_loop)
|
self._bus = dbus.SessionBus(mainloop=self._main_loop)
|
||||||
self._bus.add_signal_receiver(
|
self._bus.add_signal_receiver(
|
||||||
self.__name_owner_changed_cb,
|
self.__name_owner_changed_cb,
|
||||||
signal_name='NameOwnerChanged',
|
signal_name='NameOwnerChanged',
|
||||||
dbus_interface='org.freedesktop.DBus',
|
dbus_interface='org.freedesktop.DBus',
|
||||||
arg0=J_DBUS_SERVICE)
|
arg0=J_DBUS_SERVICE)
|
||||||
|
|
||||||
obj = self._bus.get_object(J_DBUS_SERVICE, J_DBUS_PATH)
|
obj = self._bus.get_object(J_DBUS_SERVICE, J_DBUS_PATH)
|
||||||
journal = dbus.Interface(obj, J_DBUS_INTERFACE)
|
journal = dbus.Interface(obj, J_DBUS_INTERFACE)
|
||||||
|
@ -35,7 +35,7 @@ from sugar3.graphics.palettewindow import PaletteWindow, \
|
|||||||
from sugar3.graphics.palettemenu import PaletteMenuItem
|
from sugar3.graphics.palettemenu import PaletteMenuItem
|
||||||
|
|
||||||
from sugar3.graphics.palettewindow import MouseSpeedDetector, Invoker, \
|
from sugar3.graphics.palettewindow import MouseSpeedDetector, Invoker, \
|
||||||
WidgetInvoker, CursorInvoker, ToolInvoker, CellRendererInvoker
|
WidgetInvoker, CursorInvoker, ToolInvoker, CellRendererInvoker
|
||||||
assert MouseSpeedDetector
|
assert MouseSpeedDetector
|
||||||
assert Invoker
|
assert Invoker
|
||||||
assert WidgetInvoker
|
assert WidgetInvoker
|
||||||
@ -43,6 +43,7 @@ assert CursorInvoker
|
|||||||
assert ToolInvoker
|
assert ToolInvoker
|
||||||
assert CellRendererInvoker
|
assert CellRendererInvoker
|
||||||
|
|
||||||
|
|
||||||
class _HeaderItem(Gtk.MenuItem):
|
class _HeaderItem(Gtk.MenuItem):
|
||||||
"""A MenuItem with a custom child widget that gets all the
|
"""A MenuItem with a custom child widget that gets all the
|
||||||
available space.
|
available space.
|
||||||
@ -269,7 +270,7 @@ class Palette(PaletteWindow):
|
|||||||
return self._secondary_text
|
return self._secondary_text
|
||||||
|
|
||||||
secondary_text = GObject.property(type=str, getter=get_secondary_text,
|
secondary_text = GObject.property(type=str, getter=get_secondary_text,
|
||||||
setter=set_secondary_text)
|
setter=set_secondary_text)
|
||||||
|
|
||||||
def _show_icon(self):
|
def _show_icon(self):
|
||||||
self._label_alignment.set_padding(0, 0, 0, style.DEFAULT_SPACING)
|
self._label_alignment.set_padding(0, 0, 0, style.DEFAULT_SPACING)
|
||||||
@ -326,7 +327,7 @@ class Palette(PaletteWindow):
|
|||||||
|
|
||||||
def set_content(self, widget):
|
def set_content(self, widget):
|
||||||
assert self._widget is None \
|
assert self._widget is None \
|
||||||
or isinstance(self._widget, _PaletteWindowWidget)
|
or isinstance(self._widget, _PaletteWindowWidget)
|
||||||
|
|
||||||
if self._widget is None:
|
if self._widget is None:
|
||||||
self._widget = _PaletteWindowWidget(self)
|
self._widget = _PaletteWindowWidget(self)
|
||||||
@ -366,7 +367,7 @@ class Palette(PaletteWindow):
|
|||||||
def get_label_width(self):
|
def get_label_width(self):
|
||||||
# Gtk.AccelLabel request doesn't include the accelerator.
|
# Gtk.AccelLabel request doesn't include the accelerator.
|
||||||
label_width = self._label_alignment.get_preferred_width()[1] + \
|
label_width = self._label_alignment.get_preferred_width()[1] + \
|
||||||
self._label.get_accel_width()
|
self._label.get_accel_width()
|
||||||
return label_width
|
return label_width
|
||||||
|
|
||||||
def _update_separators(self):
|
def _update_separators(self):
|
||||||
|
@ -30,7 +30,7 @@ class PaletteMenuBox(Gtk.VBox):
|
|||||||
vertical_padding=None):
|
vertical_padding=None):
|
||||||
item = None
|
item = None
|
||||||
if (isinstance(item_or_widget, PaletteMenuItem) or
|
if (isinstance(item_or_widget, PaletteMenuItem) or
|
||||||
isinstance(item_or_widget, PaletteMenuItemSeparator)):
|
isinstance(item_or_widget, PaletteMenuItemSeparator)):
|
||||||
item = item_or_widget
|
item = item_or_widget
|
||||||
else:
|
else:
|
||||||
item = self._wrap_widget(item_or_widget, horizontal_padding,
|
item = self._wrap_widget(item_or_widget, horizontal_padding,
|
||||||
@ -98,7 +98,7 @@ class PaletteMenuItem(Gtk.EventBox):
|
|||||||
|
|
||||||
if icon_name is not None:
|
if icon_name is not None:
|
||||||
self.icon = Icon(icon_name=icon_name,
|
self.icon = Icon(icon_name=icon_name,
|
||||||
icon_size=Gtk.IconSize.SMALL_TOOLBAR)
|
icon_size=Gtk.IconSize.SMALL_TOOLBAR)
|
||||||
if xo_color is not None:
|
if xo_color is not None:
|
||||||
self.icon.props.xo_color = xo_color
|
self.icon.props.xo_color = xo_color
|
||||||
self._hbox.pack_start(self.icon, expand=False, fill=False,
|
self._hbox.pack_start(self.icon, expand=False, fill=False,
|
||||||
@ -118,10 +118,10 @@ class PaletteMenuItem(Gtk.EventBox):
|
|||||||
self.label.set_ellipsize(Pango.EllipsizeMode.MIDDLE)
|
self.label.set_ellipsize(Pango.EllipsizeMode.MIDDLE)
|
||||||
align.add(self.label)
|
align.add(self.label)
|
||||||
self._hbox.pack_start(align, expand=True, fill=True,
|
self._hbox.pack_start(align, expand=True, fill=True,
|
||||||
padding=style.DEFAULT_PADDING)
|
padding=style.DEFAULT_PADDING)
|
||||||
|
|
||||||
self.id_bt_release_cb = self.connect('button-release-event',
|
self.id_bt_release_cb = self.connect('button-release-event',
|
||||||
self.__button_release_cb)
|
self.__button_release_cb)
|
||||||
self.id_enter_notify_cb = self.connect('enter-notify-event',
|
self.id_enter_notify_cb = self.connect('enter-notify-event',
|
||||||
self.__enter_notify_cb)
|
self.__enter_notify_cb)
|
||||||
self.id_leave_notify_cb = self.connect('leave-notify-event',
|
self.id_leave_notify_cb = self.connect('leave-notify-event',
|
||||||
@ -142,7 +142,7 @@ class PaletteMenuItem(Gtk.EventBox):
|
|||||||
|
|
||||||
def set_label(self, text_label):
|
def set_label(self, text_label):
|
||||||
text = '<span foreground="%s">' % style.COLOR_WHITE.get_html() + \
|
text = '<span foreground="%s">' % style.COLOR_WHITE.get_html() + \
|
||||||
text_label + '</span>'
|
text_label + '</span>'
|
||||||
self.label.set_markup(text)
|
self.label.set_markup(text)
|
||||||
|
|
||||||
def set_image(self, icon):
|
def set_image(self, icon):
|
||||||
@ -151,8 +151,8 @@ class PaletteMenuItem(Gtk.EventBox):
|
|||||||
self._hbox.reorder_child(icon, 0)
|
self._hbox.reorder_child(icon, 0)
|
||||||
|
|
||||||
def set_sensitive(self, sensitive):
|
def set_sensitive(self, sensitive):
|
||||||
is_sensitive = bool(not self.get_state_flags() & \
|
is_sensitive = bool(not self.get_state_flags() &
|
||||||
Gtk.StateFlags.INSENSITIVE)
|
Gtk.StateFlags.INSENSITIVE)
|
||||||
if is_sensitive == sensitive:
|
if is_sensitive == sensitive:
|
||||||
return
|
return
|
||||||
|
|
||||||
@ -165,6 +165,6 @@ class PaletteMenuItem(Gtk.EventBox):
|
|||||||
self.handler_block(self.id_bt_release_cb)
|
self.handler_block(self.id_bt_release_cb)
|
||||||
self.handler_block(self.id_enter_notify_cb)
|
self.handler_block(self.id_enter_notify_cb)
|
||||||
self.handler_block(self.id_leave_notify_cb)
|
self.handler_block(self.id_leave_notify_cb)
|
||||||
self.set_state_flags(self.get_state_flags() | \
|
self.set_state_flags(self.get_state_flags() |
|
||||||
Gtk.StateFlags.INSENSITIVE,
|
Gtk.StateFlags.INSENSITIVE,
|
||||||
clear=True)
|
clear=True)
|
||||||
|
@ -55,11 +55,13 @@ def _calculate_gap(a, b):
|
|||||||
gap = False
|
gap = False
|
||||||
|
|
||||||
if gap:
|
if gap:
|
||||||
if gap_side == Gtk.PositionType.BOTTOM or gap_side == Gtk.PositionType.TOP:
|
if gap_side == Gtk.PositionType.BOTTOM or \
|
||||||
|
gap_side == Gtk.PositionType.TOP:
|
||||||
gap_start = min(a.width, max(0, b.x - a.x))
|
gap_start = min(a.width, max(0, b.x - a.x))
|
||||||
gap_size = max(0, min(a.width,
|
gap_size = max(0, min(a.width,
|
||||||
(b.x + b.width) - a.x) - gap_start)
|
(b.x + b.width) - a.x) - gap_start)
|
||||||
elif gap_side == Gtk.PositionType.RIGHT or gap_side == Gtk.PositionType.LEFT:
|
elif gap_side == Gtk.PositionType.RIGHT or \
|
||||||
|
gap_side == Gtk.PositionType.LEFT:
|
||||||
gap_start = min(a.height, max(0, b.y - a.y))
|
gap_start = min(a.height, max(0, b.y - a.y))
|
||||||
gap_size = max(0, min(a.height,
|
gap_size = max(0, min(a.height,
|
||||||
(b.y + b.height) - a.y) - gap_start)
|
(b.y + b.height) - a.y) - gap_start)
|
||||||
@ -295,7 +297,7 @@ class _PaletteWindowWidget(Gtk.Window):
|
|||||||
|
|
||||||
def set_accept_focus(self, focus):
|
def set_accept_focus(self, focus):
|
||||||
self._should_accept_focus = focus
|
self._should_accept_focus = focus
|
||||||
if self.get_window() != None:
|
if self.get_window() is not None:
|
||||||
self.get_window().set_accept_focus(focus)
|
self.get_window().set_accept_focus(focus)
|
||||||
|
|
||||||
def get_origin(self):
|
def get_origin(self):
|
||||||
@ -368,10 +370,12 @@ class _PaletteWindowWidget(Gtk.Window):
|
|||||||
context = self.get_style_context()
|
context = self.get_style_context()
|
||||||
context.add_class('toolitem')
|
context.add_class('toolitem')
|
||||||
if gap:
|
if gap:
|
||||||
Gtk.render_frame_gap(context, cr, 0, 0, allocation.width, allocation.height,
|
Gtk.render_frame_gap(
|
||||||
gap[0], gap[1], gap[1] + gap[2])
|
context, cr, 0, 0, allocation.width, allocation.height,
|
||||||
|
gap[0], gap[1], gap[1] + gap[2])
|
||||||
else:
|
else:
|
||||||
Gtk.render_frame(context, cr, 0, 0, allocation.width, allocation.height)
|
Gtk.render_frame(
|
||||||
|
context, cr, 0, 0, allocation.width, allocation.height)
|
||||||
return False
|
return False
|
||||||
|
|
||||||
def __enter_notify_event_cb(self, widget, event):
|
def __enter_notify_event_cb(self, widget, event):
|
||||||
@ -847,9 +851,9 @@ class Invoker(GObject.GObject):
|
|||||||
|
|
||||||
def _in_screen(self, rect):
|
def _in_screen(self, rect):
|
||||||
return rect.x >= self._screen_area.x and \
|
return rect.x >= self._screen_area.x and \
|
||||||
rect.y >= self._screen_area.y and \
|
rect.y >= self._screen_area.y and \
|
||||||
rect.x + rect.width <= self._screen_area.width and \
|
rect.x + rect.width <= self._screen_area.width and \
|
||||||
rect.y + rect.height <= self._screen_area.height
|
rect.y + rect.height <= self._screen_area.height
|
||||||
|
|
||||||
def _get_area_in_screen(self, rect):
|
def _get_area_in_screen(self, rect):
|
||||||
"""Return area of rectangle visible in the screen"""
|
"""Return area of rectangle visible in the screen"""
|
||||||
@ -857,9 +861,9 @@ class Invoker(GObject.GObject):
|
|||||||
x1 = max(rect.x, self._screen_area.x)
|
x1 = max(rect.x, self._screen_area.x)
|
||||||
y1 = max(rect.y, self._screen_area.y)
|
y1 = max(rect.y, self._screen_area.y)
|
||||||
x2 = min(rect.x + rect.width,
|
x2 = min(rect.x + rect.width,
|
||||||
self._screen_area.x + self._screen_area.width)
|
self._screen_area.x + self._screen_area.width)
|
||||||
y2 = min(rect.y + rect.height,
|
y2 = min(rect.y + rect.height,
|
||||||
self._screen_area.y + self._screen_area.height)
|
self._screen_area.y + self._screen_area.height)
|
||||||
|
|
||||||
return (x2 - x1) * (y2 - y1)
|
return (x2 - x1) * (y2 - y1)
|
||||||
|
|
||||||
@ -931,7 +935,7 @@ class Invoker(GObject.GObject):
|
|||||||
# Set palette_valign to align to screen on the bottom
|
# Set palette_valign to align to screen on the bottom
|
||||||
else:
|
else:
|
||||||
pv = -float(palette_dim.height - dbottom - rect.height) \
|
pv = -float(palette_dim.height - dbottom - rect.height) \
|
||||||
/ palette_dim.height
|
/ palette_dim.height
|
||||||
|
|
||||||
elif best_alignment in self.TOP or best_alignment in self.BOTTOM:
|
elif best_alignment in self.TOP or best_alignment in self.BOTTOM:
|
||||||
dleft = rect.x - screen_area.x
|
dleft = rect.x - screen_area.x
|
||||||
@ -946,7 +950,7 @@ class Invoker(GObject.GObject):
|
|||||||
# Set palette_halign to align to screen on right
|
# Set palette_halign to align to screen on right
|
||||||
else:
|
else:
|
||||||
ph = -float(palette_dim.width - dright - rect.width) \
|
ph = -float(palette_dim.width - dright - rect.width) \
|
||||||
/ palette_dim.width
|
/ palette_dim.width
|
||||||
|
|
||||||
return (ph, pv, ih, iv)
|
return (ph, pv, ih, iv)
|
||||||
|
|
||||||
@ -1039,7 +1043,7 @@ class Invoker(GObject.GObject):
|
|||||||
self._lock_palette = lock_palette
|
self._lock_palette = lock_palette
|
||||||
|
|
||||||
lock_palette = GObject.property(type=object, setter=set_lock_palette,
|
lock_palette = GObject.property(type=object, setter=set_lock_palette,
|
||||||
getter=get_lock_palette)
|
getter=get_lock_palette)
|
||||||
"""Whether the invoker will lock the Palette and
|
"""Whether the invoker will lock the Palette and
|
||||||
ignore mouse events. Defaults to False.
|
ignore mouse events. Defaults to False.
|
||||||
"""
|
"""
|
||||||
@ -1078,21 +1082,23 @@ class WidgetInvoker(Invoker):
|
|||||||
self.notify('widget')
|
self.notify('widget')
|
||||||
|
|
||||||
self._enter_hid = self._widget.connect('enter-notify-event',
|
self._enter_hid = self._widget.connect('enter-notify-event',
|
||||||
self.__enter_notify_event_cb)
|
self.__enter_notify_event_cb)
|
||||||
self._leave_hid = self._widget.connect('leave-notify-event',
|
self._leave_hid = self._widget.connect('leave-notify-event',
|
||||||
self.__leave_notify_event_cb)
|
self.__leave_notify_event_cb)
|
||||||
if GObject.signal_lookup('clicked', self._widget) != 0:
|
if GObject.signal_lookup('clicked', self._widget) != 0:
|
||||||
self._click_hid = self._widget.connect('clicked',
|
self._click_hid = self._widget.connect('clicked',
|
||||||
self.__click_event_cb)
|
self.__click_event_cb)
|
||||||
self._touch_hid = self._widget.connect('touch-event',
|
self._touch_hid = self._widget.connect('touch-event',
|
||||||
self.__touch_event_cb)
|
self.__touch_event_cb)
|
||||||
self._release_hid = self._widget.connect('button-release-event',
|
self._release_hid = \
|
||||||
self.__button_release_event_cb)
|
self._widget.connect('button-release-event',
|
||||||
|
self.__button_release_event_cb)
|
||||||
self._draw_hid = self._widget.connect_after('draw', self.__drawing_cb)
|
self._draw_hid = self._widget.connect_after('draw', self.__drawing_cb)
|
||||||
|
|
||||||
self._long_pressed_hid = self._long_pressed_controller.connect(
|
self._long_pressed_hid = self._long_pressed_controller.connect(
|
||||||
'pressed', self.__long_pressed_event_cb, self._widget)
|
'pressed', self.__long_pressed_event_cb, self._widget)
|
||||||
self._long_pressed_controller.attach(self._widget,
|
self._long_pressed_controller.attach(
|
||||||
|
self._widget,
|
||||||
SugarGestures.EventControllerFlags.NONE)
|
SugarGestures.EventControllerFlags.NONE)
|
||||||
|
|
||||||
self.attach(parent)
|
self.attach(parent)
|
||||||
@ -1260,10 +1266,12 @@ class CursorInvoker(Invoker):
|
|||||||
self.__leave_notify_event_cb)
|
self.__leave_notify_event_cb)
|
||||||
self._release_hid = self._item.connect('button-release-event',
|
self._release_hid = self._item.connect('button-release-event',
|
||||||
self.__button_release_event_cb)
|
self.__button_release_event_cb)
|
||||||
self._long_pressed_hid = self._long_pressed_controller.connect('pressed', \
|
self._long_pressed_hid = self._long_pressed_controller.connect(
|
||||||
self.__long_pressed_event_cb, self._item)
|
'pressed',
|
||||||
self._long_pressed_controller.attach(self._item, \
|
self.__long_pressed_event_cb, self._item)
|
||||||
SugarGestures.EventControllerFlags.NONE)
|
self._long_pressed_controller.attach(
|
||||||
|
self._item,
|
||||||
|
SugarGestures.EventControllerFlags.NONE)
|
||||||
|
|
||||||
def detach(self):
|
def detach(self):
|
||||||
Invoker.detach(self)
|
Invoker.detach(self)
|
||||||
@ -1364,10 +1372,11 @@ class CellRendererInvoker(Invoker):
|
|||||||
self.__leave_notify_event_cb)
|
self.__leave_notify_event_cb)
|
||||||
self._release_hid = tree_view.connect('button-release-event',
|
self._release_hid = tree_view.connect('button-release-event',
|
||||||
self.__button_release_event_cb)
|
self.__button_release_event_cb)
|
||||||
self._long_pressed_hid = self._long_pressed_controller.connect( \
|
self._long_pressed_hid = self._long_pressed_controller.connect(
|
||||||
'pressed', self.__long_pressed_event_cb, tree_view)
|
'pressed', self.__long_pressed_event_cb, tree_view)
|
||||||
self._long_pressed_controller.attach(tree_view,
|
self._long_pressed_controller.attach(
|
||||||
SugarGestures.EventControllerFlags.NONE)
|
tree_view,
|
||||||
|
SugarGestures.EventControllerFlags.NONE)
|
||||||
Invoker.attach(self, cell_renderer)
|
Invoker.attach(self, cell_renderer)
|
||||||
|
|
||||||
def detach(self):
|
def detach(self):
|
||||||
@ -1448,7 +1457,7 @@ class CellRendererInvoker(Invoker):
|
|||||||
|
|
||||||
def __button_release_event_cb(self, widget, event):
|
def __button_release_event_cb(self, widget, event):
|
||||||
if event.button == 1 and self.point_in_cell_renderer(event.x,
|
if event.button == 1 and self.point_in_cell_renderer(event.x,
|
||||||
event.y):
|
event.y):
|
||||||
tree_view = self._tree_view
|
tree_view = self._tree_view
|
||||||
path, column_, x_, y_ = tree_view.get_path_at_pos(int(event.x),
|
path, column_, x_, y_ = tree_view.get_path_at_pos(int(event.x),
|
||||||
int(event.y))
|
int(event.y))
|
||||||
@ -1456,7 +1465,7 @@ class CellRendererInvoker(Invoker):
|
|||||||
# So the treeview receives it and knows a drag isn't going on
|
# So the treeview receives it and knows a drag isn't going on
|
||||||
return False
|
return False
|
||||||
if event.button == 3 and self.point_in_cell_renderer(event.x,
|
if event.button == 3 and self.point_in_cell_renderer(event.x,
|
||||||
event.y):
|
event.y):
|
||||||
self.notify_right_click()
|
self.notify_right_click()
|
||||||
return True
|
return True
|
||||||
else:
|
else:
|
||||||
|
@ -69,7 +69,7 @@ class RadioToolButton(Gtk.RadioToolButton):
|
|||||||
return self._tooltip
|
return self._tooltip
|
||||||
|
|
||||||
tooltip = GObject.property(type=str, setter=set_tooltip,
|
tooltip = GObject.property(type=str, setter=set_tooltip,
|
||||||
getter=get_tooltip)
|
getter=get_tooltip)
|
||||||
|
|
||||||
def set_accelerator(self, accelerator):
|
def set_accelerator(self, accelerator):
|
||||||
self._accelerator = accelerator
|
self._accelerator = accelerator
|
||||||
@ -79,7 +79,7 @@ class RadioToolButton(Gtk.RadioToolButton):
|
|||||||
return self._accelerator
|
return self._accelerator
|
||||||
|
|
||||||
accelerator = GObject.property(type=str, setter=set_accelerator,
|
accelerator = GObject.property(type=str, setter=set_accelerator,
|
||||||
getter=get_accelerator)
|
getter=get_accelerator)
|
||||||
|
|
||||||
def set_icon_name(self, icon_name):
|
def set_icon_name(self, icon_name):
|
||||||
icon = Icon(icon_name=icon_name,
|
icon = Icon(icon_name=icon_name,
|
||||||
|
@ -67,11 +67,11 @@ class Color(object):
|
|||||||
|
|
||||||
def get_int(self):
|
def get_int(self):
|
||||||
return int(self._a * 255) + (int(self._b * 255) << 8) + \
|
return int(self._a * 255) + (int(self._b * 255) << 8) + \
|
||||||
(int(self._g * 255) << 16) + (int(self._r * 255) << 24)
|
(int(self._g * 255) << 16) + (int(self._r * 255) << 24)
|
||||||
|
|
||||||
def get_gdk_color(self):
|
def get_gdk_color(self):
|
||||||
return Gdk.Color(int(self._r * 65535), int(self._g * 65535),
|
return Gdk.Color(int(self._r * 65535), int(self._g * 65535),
|
||||||
int(self._b * 65535))
|
int(self._b * 65535))
|
||||||
|
|
||||||
def get_html(self):
|
def get_html(self):
|
||||||
return '#%02x%02x%02x' % (self._r * 255, self._g * 255, self._b * 255)
|
return '#%02x%02x%02x' % (self._r * 255, self._g * 255, self._b * 255)
|
||||||
|
@ -37,7 +37,7 @@ class ToolbarButton(ToolButton):
|
|||||||
self.set_page(page)
|
self.set_page(page)
|
||||||
|
|
||||||
self.connect('clicked',
|
self.connect('clicked',
|
||||||
lambda widget: self.set_expanded(not self.is_expanded()))
|
lambda widget: self.set_expanded(not self.is_expanded()))
|
||||||
self.connect_after('draw', self.__drawing_cb)
|
self.connect_after('draw', self.__drawing_cb)
|
||||||
self.connect('hierarchy-changed', self.__hierarchy_changed_cb)
|
self.connect('hierarchy-changed', self.__hierarchy_changed_cb)
|
||||||
|
|
||||||
@ -77,11 +77,11 @@ class ToolbarButton(ToolButton):
|
|||||||
|
|
||||||
def is_in_palette(self):
|
def is_in_palette(self):
|
||||||
return self.page is not None and \
|
return self.page is not None and \
|
||||||
self.page_widget.get_parent() == self.props.palette._widget
|
self.page_widget.get_parent() == self.props.palette._widget
|
||||||
|
|
||||||
def is_expanded(self):
|
def is_expanded(self):
|
||||||
return self.page is not None and \
|
return self.page is not None and \
|
||||||
not self.is_in_palette()
|
not self.is_in_palette()
|
||||||
|
|
||||||
def popdown(self):
|
def popdown(self):
|
||||||
if self.props.palette is not None:
|
if self.props.palette is not None:
|
||||||
@ -153,12 +153,12 @@ class ToolbarBox(Gtk.VBox):
|
|||||||
self._toolbar.connect('remove', self.__remove_cb)
|
self._toolbar.connect('remove', self.__remove_cb)
|
||||||
|
|
||||||
self._toolbar_widget, self._toolbar_alignment = \
|
self._toolbar_widget, self._toolbar_alignment = \
|
||||||
_embed_page(Gtk.EventBox(), self._toolbar)
|
_embed_page(Gtk.EventBox(), self._toolbar)
|
||||||
self.pack_start(self._toolbar_widget, True, True, 0)
|
self.pack_start(self._toolbar_widget, True, True, 0)
|
||||||
|
|
||||||
self.props.padding = padding
|
self.props.padding = padding
|
||||||
self.modify_bg(Gtk.StateType.NORMAL,
|
self.modify_bg(Gtk.StateType.NORMAL,
|
||||||
style.COLOR_TOOLBAR_GREY.get_gdk_color())
|
style.COLOR_TOOLBAR_GREY.get_gdk_color())
|
||||||
|
|
||||||
def get_toolbar(self):
|
def get_toolbar(self):
|
||||||
return self._toolbar
|
return self._toolbar
|
||||||
@ -185,7 +185,7 @@ class ToolbarBox(Gtk.VBox):
|
|||||||
self._toolbar_alignment.set_padding(0, 0, pad, pad)
|
self._toolbar_alignment.set_padding(0, 0, pad, pad)
|
||||||
|
|
||||||
padding = GObject.property(type=object,
|
padding = GObject.property(type=object,
|
||||||
getter=get_padding, setter=set_padding)
|
getter=get_padding, setter=set_padding)
|
||||||
|
|
||||||
def modify_bg(self, state, color):
|
def modify_bg(self, state, color):
|
||||||
if state == Gtk.StateType.NORMAL:
|
if state == Gtk.StateType.NORMAL:
|
||||||
@ -257,7 +257,7 @@ class _ToolbarPalette(PaletteWindow):
|
|||||||
return
|
return
|
||||||
box = button.toolbar_box
|
box = button.toolbar_box
|
||||||
_setup_page(button.page_widget, style.COLOR_BLACK.get_gdk_color(),
|
_setup_page(button.page_widget, style.COLOR_BLACK.get_gdk_color(),
|
||||||
box.props.padding)
|
box.props.padding)
|
||||||
PaletteWindow.popup(self, immediate)
|
PaletteWindow.popup(self, immediate)
|
||||||
|
|
||||||
def __group_popdown_cb(self, group):
|
def __group_popdown_cb(self, group):
|
||||||
@ -280,7 +280,8 @@ class _Box(Gtk.EventBox):
|
|||||||
cr.set_source_rgba(*style.COLOR_BUTTON_GREY.get_rgba())
|
cr.set_source_rgba(*style.COLOR_BUTTON_GREY.get_rgba())
|
||||||
cr.move_to(0, 0)
|
cr.move_to(0, 0)
|
||||||
cr.line_to(button_alloc.x + style.FOCUS_LINE_WIDTH, 0)
|
cr.line_to(button_alloc.x + style.FOCUS_LINE_WIDTH, 0)
|
||||||
cr.move_to(button_alloc.x + button_alloc.width - style.FOCUS_LINE_WIDTH, 0)
|
cr.move_to(
|
||||||
|
button_alloc.x + button_alloc.width - style.FOCUS_LINE_WIDTH, 0)
|
||||||
cr.line_to(self.get_allocation().width, 0)
|
cr.line_to(self.get_allocation().width, 0)
|
||||||
cr.stroke()
|
cr.stroke()
|
||||||
|
|
||||||
@ -306,7 +307,7 @@ def _embed_page(page_widget, page):
|
|||||||
alignment.show()
|
alignment.show()
|
||||||
|
|
||||||
page_widget.modify_bg(Gtk.StateType.ACTIVE,
|
page_widget.modify_bg(Gtk.StateType.ACTIVE,
|
||||||
style.COLOR_BUTTON_GREY.get_gdk_color())
|
style.COLOR_BUTTON_GREY.get_gdk_color())
|
||||||
page_widget.add(alignment)
|
page_widget.add(alignment)
|
||||||
page_widget.show()
|
page_widget.show()
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ class Toolbox(Gtk.VBox):
|
|||||||
|
|
||||||
__gsignals__ = {
|
__gsignals__ = {
|
||||||
'current-toolbar-changed': (GObject.SignalFlags.RUN_FIRST,
|
'current-toolbar-changed': (GObject.SignalFlags.RUN_FIRST,
|
||||||
None, ([int])),
|
None, ([int])),
|
||||||
}
|
}
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
|
@ -43,8 +43,9 @@ def _add_accelerator(tool_button):
|
|||||||
keyval, mask = Gtk.accelerator_parse(tool_button.props.accelerator)
|
keyval, mask = Gtk.accelerator_parse(tool_button.props.accelerator)
|
||||||
# the accelerator needs to be set at the child, so the Gtk.AccelLabel
|
# the accelerator needs to be set at the child, so the Gtk.AccelLabel
|
||||||
# in the palette can pick it up.
|
# in the palette can pick it up.
|
||||||
tool_button.get_child().add_accelerator('clicked', accel_group, keyval, mask,
|
tool_button.get_child(
|
||||||
Gtk.AccelFlags.LOCKED | Gtk.AccelFlags.VISIBLE)
|
).add_accelerator('clicked', accel_group, keyval, mask,
|
||||||
|
Gtk.AccelFlags.LOCKED | Gtk.AccelFlags.VISIBLE)
|
||||||
|
|
||||||
|
|
||||||
def _hierarchy_changed_cb(tool_button, previous_toplevel):
|
def _hierarchy_changed_cb(tool_button, previous_toplevel):
|
||||||
@ -103,7 +104,7 @@ class ToolButton(Gtk.ToolButton):
|
|||||||
return self._tooltip
|
return self._tooltip
|
||||||
|
|
||||||
tooltip = GObject.property(type=str, setter=set_tooltip,
|
tooltip = GObject.property(type=str, setter=set_tooltip,
|
||||||
getter=get_tooltip)
|
getter=get_tooltip)
|
||||||
|
|
||||||
def get_hide_tooltip_on_click(self):
|
def get_hide_tooltip_on_click(self):
|
||||||
return self._hide_tooltip_on_click
|
return self._hide_tooltip_on_click
|
||||||
@ -124,7 +125,7 @@ class ToolButton(Gtk.ToolButton):
|
|||||||
return self._accelerator
|
return self._accelerator
|
||||||
|
|
||||||
accelerator = GObject.property(type=str, setter=set_accelerator,
|
accelerator = GObject.property(type=str, setter=set_accelerator,
|
||||||
getter=get_accelerator)
|
getter=get_accelerator)
|
||||||
|
|
||||||
def set_icon_name(self, icon_name):
|
def set_icon_name(self, icon_name):
|
||||||
icon = Icon(icon_name=icon_name)
|
icon = Icon(icon_name=icon_name)
|
||||||
|
@ -239,7 +239,8 @@ class HTray(Gtk.EventBox):
|
|||||||
|
|
||||||
__gproperties__ = {
|
__gproperties__ = {
|
||||||
'align': (int, None, None, 0, 1, ALIGN_TO_START,
|
'align': (int, None, None, 0, 1, ALIGN_TO_START,
|
||||||
GObject.PARAM_READWRITE | GObject.PARAM_CONSTRUCT_ONLY),
|
GObject.PARAM_READWRITE |
|
||||||
|
GObject.PARAM_CONSTRUCT_ONLY),
|
||||||
'drag-active': (bool, None, None, False, GObject.PARAM_READWRITE),
|
'drag-active': (bool, None, None, False, GObject.PARAM_READWRITE),
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -294,8 +295,9 @@ class HTray(Gtk.EventBox):
|
|||||||
if self._drag_active != active:
|
if self._drag_active != active:
|
||||||
self._drag_active = active
|
self._drag_active = active
|
||||||
if self._drag_active:
|
if self._drag_active:
|
||||||
self._viewport.traybar.modify_bg(Gtk.StateType.NORMAL,
|
self._viewport.traybar.modify_bg(
|
||||||
style.COLOR_BLACK.get_gdk_color())
|
Gtk.StateType.NORMAL,
|
||||||
|
style.COLOR_BLACK.get_gdk_color())
|
||||||
else:
|
else:
|
||||||
self._viewport.traybar.modify_bg(Gtk.StateType.NORMAL, None)
|
self._viewport.traybar.modify_bg(Gtk.StateType.NORMAL, None)
|
||||||
|
|
||||||
@ -329,7 +331,7 @@ class VTray(Gtk.EventBox):
|
|||||||
|
|
||||||
__gproperties__ = {
|
__gproperties__ = {
|
||||||
'align': (int, None, None, 0, 1, ALIGN_TO_START,
|
'align': (int, None, None, 0, 1, ALIGN_TO_START,
|
||||||
GObject.PARAM_READWRITE | GObject.PARAM_CONSTRUCT_ONLY),
|
GObject.PARAM_READWRITE | GObject.PARAM_CONSTRUCT_ONLY),
|
||||||
'drag-active': (bool, None, None, False, GObject.PARAM_READWRITE),
|
'drag-active': (bool, None, None, False, GObject.PARAM_READWRITE),
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -384,8 +386,9 @@ class VTray(Gtk.EventBox):
|
|||||||
if self._drag_active != active:
|
if self._drag_active != active:
|
||||||
self._drag_active = active
|
self._drag_active = active
|
||||||
if self._drag_active:
|
if self._drag_active:
|
||||||
self._viewport.traybar.modify_bg(Gtk.StateType.NORMAL,
|
self._viewport.traybar.modify_bg(
|
||||||
style.COLOR_BLACK.get_gdk_color())
|
Gtk.StateType.NORMAL,
|
||||||
|
style.COLOR_BLACK.get_gdk_color())
|
||||||
else:
|
else:
|
||||||
self._viewport.traybar.modify_bg(Gtk.StateType.NORMAL, None)
|
self._viewport.traybar.modify_bg(Gtk.StateType.NORMAL, None)
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ class UnfullscreenButton(Gtk.Window):
|
|||||||
|
|
||||||
self.props.accept_focus = False
|
self.props.accept_focus = False
|
||||||
|
|
||||||
#Setup estimate of width, height
|
# Setup estimate of width, height
|
||||||
valid_, w, h = Gtk.icon_size_lookup(Gtk.IconSize.LARGE_TOOLBAR)
|
valid_, w, h = Gtk.icon_size_lookup(Gtk.IconSize.LARGE_TOOLBAR)
|
||||||
self._width = w
|
self._width = w
|
||||||
self._height = h
|
self._height = h
|
||||||
@ -58,7 +58,7 @@ class UnfullscreenButton(Gtk.Window):
|
|||||||
self._button.set_relief(Gtk.ReliefStyle.NONE)
|
self._button.set_relief(Gtk.ReliefStyle.NONE)
|
||||||
|
|
||||||
self._icon = Icon(icon_name='view-return',
|
self._icon = Icon(icon_name='view-return',
|
||||||
icon_size=Gtk.IconSize.LARGE_TOOLBAR)
|
icon_size=Gtk.IconSize.LARGE_TOOLBAR)
|
||||||
self._icon.show()
|
self._icon.show()
|
||||||
self._button.add(self._icon)
|
self._button.add(self._icon)
|
||||||
|
|
||||||
@ -162,8 +162,8 @@ class Window(Gtk.Window):
|
|||||||
self._unfullscreen_button_timeout_id = None
|
self._unfullscreen_button_timeout_id = None
|
||||||
|
|
||||||
self._unfullscreen_button_timeout_id = \
|
self._unfullscreen_button_timeout_id = \
|
||||||
GLib.timeout_add_seconds( \
|
GLib.timeout_add_seconds(
|
||||||
_UNFULLSCREEN_BUTTON_VISIBILITY_TIMEOUT, \
|
_UNFULLSCREEN_BUTTON_VISIBILITY_TIMEOUT,
|
||||||
self.__unfullscreen_button_timeout_cb)
|
self.__unfullscreen_button_timeout_cb)
|
||||||
|
|
||||||
def unfullscreen(self):
|
def unfullscreen(self):
|
||||||
@ -259,7 +259,7 @@ class Window(Gtk.Window):
|
|||||||
self.tray.props.visible = not self.tray.props.visible
|
self.tray.props.visible = not self.tray.props.visible
|
||||||
return True
|
return True
|
||||||
elif key == 'Escape' and self._is_fullscreen and \
|
elif key == 'Escape' and self._is_fullscreen and \
|
||||||
self.props.enable_fullscreen_mode:
|
self.props.enable_fullscreen_mode:
|
||||||
self.unfullscreen()
|
self.unfullscreen()
|
||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
@ -286,8 +286,8 @@ class Window(Gtk.Window):
|
|||||||
self._unfullscreen_button_timeout_id = None
|
self._unfullscreen_button_timeout_id = None
|
||||||
|
|
||||||
self._unfullscreen_button_timeout_id = \
|
self._unfullscreen_button_timeout_id = \
|
||||||
GLib.timeout_add_seconds( \
|
GLib.timeout_add_seconds(
|
||||||
_UNFULLSCREEN_BUTTON_VISIBILITY_TIMEOUT, \
|
_UNFULLSCREEN_BUTTON_VISIBILITY_TIMEOUT,
|
||||||
self.__unfullscreen_button_timeout_cb)
|
self.__unfullscreen_button_timeout_cb)
|
||||||
|
|
||||||
def __unfullscreen_button_timeout_cb(self):
|
def __unfullscreen_button_timeout_cb(self):
|
||||||
@ -321,5 +321,7 @@ class Window(Gtk.Window):
|
|||||||
def get_enable_fullscreen_mode(self):
|
def get_enable_fullscreen_mode(self):
|
||||||
return self._enable_fullscreen_mode
|
return self._enable_fullscreen_mode
|
||||||
|
|
||||||
enable_fullscreen_mode = GObject.property(type=object,
|
enable_fullscreen_mode = GObject.property(
|
||||||
setter=set_enable_fullscreen_mode, getter=get_enable_fullscreen_mode)
|
type=object,
|
||||||
|
setter=set_enable_fullscreen_mode,
|
||||||
|
getter=get_enable_fullscreen_mode)
|
||||||
|
@ -25,186 +25,186 @@ import logging
|
|||||||
from gi.repository import GConf
|
from gi.repository import GConf
|
||||||
|
|
||||||
colors = [
|
colors = [
|
||||||
['#B20008', '#FF2B34'], \
|
['#B20008', '#FF2B34'],
|
||||||
['#FF2B34', '#B20008'], \
|
['#FF2B34', '#B20008'],
|
||||||
['#E6000A', '#FF2B34'], \
|
['#E6000A', '#FF2B34'],
|
||||||
['#FF2B34', '#E6000A'], \
|
['#FF2B34', '#E6000A'],
|
||||||
['#FFADCE', '#FF2B34'], \
|
['#FFADCE', '#FF2B34'],
|
||||||
['#9A5200', '#FF2B34'], \
|
['#9A5200', '#FF2B34'],
|
||||||
['#FF2B34', '#9A5200'], \
|
['#FF2B34', '#9A5200'],
|
||||||
['#FF8F00', '#FF2B34'], \
|
['#FF8F00', '#FF2B34'],
|
||||||
['#FF2B34', '#FF8F00'], \
|
['#FF2B34', '#FF8F00'],
|
||||||
['#FFC169', '#FF2B34'], \
|
['#FFC169', '#FF2B34'],
|
||||||
['#807500', '#FF2B34'], \
|
['#807500', '#FF2B34'],
|
||||||
['#FF2B34', '#807500'], \
|
['#FF2B34', '#807500'],
|
||||||
['#BE9E00', '#FF2B34'], \
|
['#BE9E00', '#FF2B34'],
|
||||||
['#FF2B34', '#BE9E00'], \
|
['#FF2B34', '#BE9E00'],
|
||||||
['#F8E800', '#FF2B34'], \
|
['#F8E800', '#FF2B34'],
|
||||||
['#008009', '#FF2B34'], \
|
['#008009', '#FF2B34'],
|
||||||
['#FF2B34', '#008009'], \
|
['#FF2B34', '#008009'],
|
||||||
['#00B20D', '#FF2B34'], \
|
['#00B20D', '#FF2B34'],
|
||||||
['#FF2B34', '#00B20D'], \
|
['#FF2B34', '#00B20D'],
|
||||||
['#8BFF7A', '#FF2B34'], \
|
['#8BFF7A', '#FF2B34'],
|
||||||
['#00588C', '#FF2B34'], \
|
['#00588C', '#FF2B34'],
|
||||||
['#FF2B34', '#00588C'], \
|
['#FF2B34', '#00588C'],
|
||||||
['#005FE4', '#FF2B34'], \
|
['#005FE4', '#FF2B34'],
|
||||||
['#FF2B34', '#005FE4'], \
|
['#FF2B34', '#005FE4'],
|
||||||
['#BCCDFF', '#FF2B34'], \
|
['#BCCDFF', '#FF2B34'],
|
||||||
['#5E008C', '#FF2B34'], \
|
['#5E008C', '#FF2B34'],
|
||||||
['#FF2B34', '#5E008C'], \
|
['#FF2B34', '#5E008C'],
|
||||||
['#7F00BF', '#FF2B34'], \
|
['#7F00BF', '#FF2B34'],
|
||||||
['#FF2B34', '#7F00BF'], \
|
['#FF2B34', '#7F00BF'],
|
||||||
['#D1A3FF', '#FF2B34'], \
|
['#D1A3FF', '#FF2B34'],
|
||||||
['#9A5200', '#FF8F00'], \
|
['#9A5200', '#FF8F00'],
|
||||||
['#FF8F00', '#9A5200'], \
|
['#FF8F00', '#9A5200'],
|
||||||
['#C97E00', '#FF8F00'], \
|
['#C97E00', '#FF8F00'],
|
||||||
['#FF8F00', '#C97E00'], \
|
['#FF8F00', '#C97E00'],
|
||||||
['#FFC169', '#FF8F00'], \
|
['#FFC169', '#FF8F00'],
|
||||||
['#807500', '#FF8F00'], \
|
['#807500', '#FF8F00'],
|
||||||
['#FF8F00', '#807500'], \
|
['#FF8F00', '#807500'],
|
||||||
['#BE9E00', '#FF8F00'], \
|
['#BE9E00', '#FF8F00'],
|
||||||
['#FF8F00', '#BE9E00'], \
|
['#FF8F00', '#BE9E00'],
|
||||||
['#F8E800', '#FF8F00'], \
|
['#F8E800', '#FF8F00'],
|
||||||
['#008009', '#FF8F00'], \
|
['#008009', '#FF8F00'],
|
||||||
['#FF8F00', '#008009'], \
|
['#FF8F00', '#008009'],
|
||||||
['#00B20D', '#FF8F00'], \
|
['#00B20D', '#FF8F00'],
|
||||||
['#FF8F00', '#00B20D'], \
|
['#FF8F00', '#00B20D'],
|
||||||
['#8BFF7A', '#FF8F00'], \
|
['#8BFF7A', '#FF8F00'],
|
||||||
['#00588C', '#FF8F00'], \
|
['#00588C', '#FF8F00'],
|
||||||
['#FF8F00', '#00588C'], \
|
['#FF8F00', '#00588C'],
|
||||||
['#005FE4', '#FF8F00'], \
|
['#005FE4', '#FF8F00'],
|
||||||
['#FF8F00', '#005FE4'], \
|
['#FF8F00', '#005FE4'],
|
||||||
['#BCCDFF', '#FF8F00'], \
|
['#BCCDFF', '#FF8F00'],
|
||||||
['#5E008C', '#FF8F00'], \
|
['#5E008C', '#FF8F00'],
|
||||||
['#FF8F00', '#5E008C'], \
|
['#FF8F00', '#5E008C'],
|
||||||
['#A700FF', '#FF8F00'], \
|
['#A700FF', '#FF8F00'],
|
||||||
['#FF8F00', '#A700FF'], \
|
['#FF8F00', '#A700FF'],
|
||||||
['#D1A3FF', '#FF8F00'], \
|
['#D1A3FF', '#FF8F00'],
|
||||||
['#B20008', '#FF8F00'], \
|
['#B20008', '#FF8F00'],
|
||||||
['#FF8F00', '#B20008'], \
|
['#FF8F00', '#B20008'],
|
||||||
['#FF2B34', '#FF8F00'], \
|
['#FF2B34', '#FF8F00'],
|
||||||
['#FF8F00', '#FF2B34'], \
|
['#FF8F00', '#FF2B34'],
|
||||||
['#FFADCE', '#FF8F00'], \
|
['#FFADCE', '#FF8F00'],
|
||||||
['#807500', '#F8E800'], \
|
['#807500', '#F8E800'],
|
||||||
['#F8E800', '#807500'], \
|
['#F8E800', '#807500'],
|
||||||
['#BE9E00', '#F8E800'], \
|
['#BE9E00', '#F8E800'],
|
||||||
['#F8E800', '#BE9E00'], \
|
['#F8E800', '#BE9E00'],
|
||||||
['#FFFA00', '#EDDE00'], \
|
['#FFFA00', '#EDDE00'],
|
||||||
['#008009', '#F8E800'], \
|
['#008009', '#F8E800'],
|
||||||
['#F8E800', '#008009'], \
|
['#F8E800', '#008009'],
|
||||||
['#00EA11', '#F8E800'], \
|
['#00EA11', '#F8E800'],
|
||||||
['#F8E800', '#00EA11'], \
|
['#F8E800', '#00EA11'],
|
||||||
['#8BFF7A', '#F8E800'], \
|
['#8BFF7A', '#F8E800'],
|
||||||
['#00588C', '#F8E800'], \
|
['#00588C', '#F8E800'],
|
||||||
['#F8E800', '#00588C'], \
|
['#F8E800', '#00588C'],
|
||||||
['#00A0FF', '#F8E800'], \
|
['#00A0FF', '#F8E800'],
|
||||||
['#F8E800', '#00A0FF'], \
|
['#F8E800', '#00A0FF'],
|
||||||
['#BCCEFF', '#F8E800'], \
|
['#BCCEFF', '#F8E800'],
|
||||||
['#5E008C', '#F8E800'], \
|
['#5E008C', '#F8E800'],
|
||||||
['#F8E800', '#5E008C'], \
|
['#F8E800', '#5E008C'],
|
||||||
['#AC32FF', '#F8E800'], \
|
['#AC32FF', '#F8E800'],
|
||||||
['#F8E800', '#AC32FF'], \
|
['#F8E800', '#AC32FF'],
|
||||||
['#D1A3FF', '#F8E800'], \
|
['#D1A3FF', '#F8E800'],
|
||||||
['#B20008', '#F8E800'], \
|
['#B20008', '#F8E800'],
|
||||||
['#F8E800', '#B20008'], \
|
['#F8E800', '#B20008'],
|
||||||
['#FF2B34', '#F8E800'], \
|
['#FF2B34', '#F8E800'],
|
||||||
['#F8E800', '#FF2B34'], \
|
['#F8E800', '#FF2B34'],
|
||||||
['#FFADCE', '#F8E800'], \
|
['#FFADCE', '#F8E800'],
|
||||||
['#9A5200', '#F8E800'], \
|
['#9A5200', '#F8E800'],
|
||||||
['#F8E800', '#9A5200'], \
|
['#F8E800', '#9A5200'],
|
||||||
['#FF8F00', '#F8E800'], \
|
['#FF8F00', '#F8E800'],
|
||||||
['#F8E800', '#FF8F00'], \
|
['#F8E800', '#FF8F00'],
|
||||||
['#FFC169', '#F8E800'], \
|
['#FFC169', '#F8E800'],
|
||||||
['#008009', '#00EA11'], \
|
['#008009', '#00EA11'],
|
||||||
['#00EA11', '#008009'], \
|
['#00EA11', '#008009'],
|
||||||
['#00B20D', '#00EA11'], \
|
['#00B20D', '#00EA11'],
|
||||||
['#00EA11', '#00B20D'], \
|
['#00EA11', '#00B20D'],
|
||||||
['#8BFF7A', '#00EA11'], \
|
['#8BFF7A', '#00EA11'],
|
||||||
['#00588C', '#00EA11'], \
|
['#00588C', '#00EA11'],
|
||||||
['#00EA11', '#00588C'], \
|
['#00EA11', '#00588C'],
|
||||||
['#005FE4', '#00EA11'], \
|
['#005FE4', '#00EA11'],
|
||||||
['#00EA11', '#005FE4'], \
|
['#00EA11', '#005FE4'],
|
||||||
['#BCCDFF', '#00EA11'], \
|
['#BCCDFF', '#00EA11'],
|
||||||
['#5E008C', '#00EA11'], \
|
['#5E008C', '#00EA11'],
|
||||||
['#00EA11', '#5E008C'], \
|
['#00EA11', '#5E008C'],
|
||||||
['#7F00BF', '#00EA11'], \
|
['#7F00BF', '#00EA11'],
|
||||||
['#00EA11', '#7F00BF'], \
|
['#00EA11', '#7F00BF'],
|
||||||
['#D1A3FF', '#00EA11'], \
|
['#D1A3FF', '#00EA11'],
|
||||||
['#B20008', '#00EA11'], \
|
['#B20008', '#00EA11'],
|
||||||
['#00EA11', '#B20008'], \
|
['#00EA11', '#B20008'],
|
||||||
['#FF2B34', '#00EA11'], \
|
['#FF2B34', '#00EA11'],
|
||||||
['#00EA11', '#FF2B34'], \
|
['#00EA11', '#FF2B34'],
|
||||||
['#FFADCE', '#00EA11'], \
|
['#FFADCE', '#00EA11'],
|
||||||
['#9A5200', '#00EA11'], \
|
['#9A5200', '#00EA11'],
|
||||||
['#00EA11', '#9A5200'], \
|
['#00EA11', '#9A5200'],
|
||||||
['#FF8F00', '#00EA11'], \
|
['#FF8F00', '#00EA11'],
|
||||||
['#00EA11', '#FF8F00'], \
|
['#00EA11', '#FF8F00'],
|
||||||
['#FFC169', '#00EA11'], \
|
['#FFC169', '#00EA11'],
|
||||||
['#807500', '#00EA11'], \
|
['#807500', '#00EA11'],
|
||||||
['#00EA11', '#807500'], \
|
['#00EA11', '#807500'],
|
||||||
['#BE9E00', '#00EA11'], \
|
['#BE9E00', '#00EA11'],
|
||||||
['#00EA11', '#BE9E00'], \
|
['#00EA11', '#BE9E00'],
|
||||||
['#F8E800', '#00EA11'], \
|
['#F8E800', '#00EA11'],
|
||||||
['#00588C', '#00A0FF'], \
|
['#00588C', '#00A0FF'],
|
||||||
['#00A0FF', '#00588C'], \
|
['#00A0FF', '#00588C'],
|
||||||
['#005FE4', '#00A0FF'], \
|
['#005FE4', '#00A0FF'],
|
||||||
['#00A0FF', '#005FE4'], \
|
['#00A0FF', '#005FE4'],
|
||||||
['#BCCDFF', '#00A0FF'], \
|
['#BCCDFF', '#00A0FF'],
|
||||||
['#5E008C', '#00A0FF'], \
|
['#5E008C', '#00A0FF'],
|
||||||
['#00A0FF', '#5E008C'], \
|
['#00A0FF', '#5E008C'],
|
||||||
['#9900E6', '#00A0FF'], \
|
['#9900E6', '#00A0FF'],
|
||||||
['#00A0FF', '#9900E6'], \
|
['#00A0FF', '#9900E6'],
|
||||||
['#D1A3FF', '#00A0FF'], \
|
['#D1A3FF', '#00A0FF'],
|
||||||
['#B20008', '#00A0FF'], \
|
['#B20008', '#00A0FF'],
|
||||||
['#00A0FF', '#B20008'], \
|
['#00A0FF', '#B20008'],
|
||||||
['#FF2B34', '#00A0FF'], \
|
['#FF2B34', '#00A0FF'],
|
||||||
['#00A0FF', '#FF2B34'], \
|
['#00A0FF', '#FF2B34'],
|
||||||
['#FFADCE', '#00A0FF'], \
|
['#FFADCE', '#00A0FF'],
|
||||||
['#9A5200', '#00A0FF'], \
|
['#9A5200', '#00A0FF'],
|
||||||
['#00A0FF', '#9A5200'], \
|
['#00A0FF', '#9A5200'],
|
||||||
['#FF8F00', '#00A0FF'], \
|
['#FF8F00', '#00A0FF'],
|
||||||
['#00A0FF', '#FF8F00'], \
|
['#00A0FF', '#FF8F00'],
|
||||||
['#FFC169', '#00A0FF'], \
|
['#FFC169', '#00A0FF'],
|
||||||
['#807500', '#00A0FF'], \
|
['#807500', '#00A0FF'],
|
||||||
['#00A0FF', '#807500'], \
|
['#00A0FF', '#807500'],
|
||||||
['#BE9E00', '#00A0FF'], \
|
['#BE9E00', '#00A0FF'],
|
||||||
['#00A0FF', '#BE9E00'], \
|
['#00A0FF', '#BE9E00'],
|
||||||
['#F8E800', '#00A0FF'], \
|
['#F8E800', '#00A0FF'],
|
||||||
['#008009', '#00A0FF'], \
|
['#008009', '#00A0FF'],
|
||||||
['#00A0FF', '#008009'], \
|
['#00A0FF', '#008009'],
|
||||||
['#00B20D', '#00A0FF'], \
|
['#00B20D', '#00A0FF'],
|
||||||
['#00A0FF', '#00B20D'], \
|
['#00A0FF', '#00B20D'],
|
||||||
['#8BFF7A', '#00A0FF'], \
|
['#8BFF7A', '#00A0FF'],
|
||||||
['#5E008C', '#AC32FF'], \
|
['#5E008C', '#AC32FF'],
|
||||||
['#AC32FF', '#5E008C'], \
|
['#AC32FF', '#5E008C'],
|
||||||
['#7F00BF', '#AC32FF'], \
|
['#7F00BF', '#AC32FF'],
|
||||||
['#AC32FF', '#7F00BF'], \
|
['#AC32FF', '#7F00BF'],
|
||||||
['#D1A3FF', '#AC32FF'], \
|
['#D1A3FF', '#AC32FF'],
|
||||||
['#B20008', '#AC32FF'], \
|
['#B20008', '#AC32FF'],
|
||||||
['#AC32FF', '#B20008'], \
|
['#AC32FF', '#B20008'],
|
||||||
['#FF2B34', '#AC32FF'], \
|
['#FF2B34', '#AC32FF'],
|
||||||
['#AC32FF', '#FF2B34'], \
|
['#AC32FF', '#FF2B34'],
|
||||||
['#FFADCE', '#AC32FF'], \
|
['#FFADCE', '#AC32FF'],
|
||||||
['#9A5200', '#AC32FF'], \
|
['#9A5200', '#AC32FF'],
|
||||||
['#AC32FF', '#9A5200'], \
|
['#AC32FF', '#9A5200'],
|
||||||
['#FF8F00', '#AC32FF'], \
|
['#FF8F00', '#AC32FF'],
|
||||||
['#AC32FF', '#FF8F00'], \
|
['#AC32FF', '#FF8F00'],
|
||||||
['#FFC169', '#AC32FF'], \
|
['#FFC169', '#AC32FF'],
|
||||||
['#807500', '#AC32FF'], \
|
['#807500', '#AC32FF'],
|
||||||
['#AC32FF', '#807500'], \
|
['#AC32FF', '#807500'],
|
||||||
['#BE9E00', '#AC32FF'], \
|
['#BE9E00', '#AC32FF'],
|
||||||
['#AC32FF', '#BE9E00'], \
|
['#AC32FF', '#BE9E00'],
|
||||||
['#F8E800', '#AC32FF'], \
|
['#F8E800', '#AC32FF'],
|
||||||
['#008009', '#AC32FF'], \
|
['#008009', '#AC32FF'],
|
||||||
['#AC32FF', '#008009'], \
|
['#AC32FF', '#008009'],
|
||||||
['#00B20D', '#AC32FF'], \
|
['#00B20D', '#AC32FF'],
|
||||||
['#AC32FF', '#00B20D'], \
|
['#AC32FF', '#00B20D'],
|
||||||
['#8BFF7A', '#AC32FF'], \
|
['#8BFF7A', '#AC32FF'],
|
||||||
['#00588C', '#AC32FF'], \
|
['#00588C', '#AC32FF'],
|
||||||
['#AC32FF', '#00588C'], \
|
['#AC32FF', '#00588C'],
|
||||||
['#005FE4', '#AC32FF'], \
|
['#005FE4', '#AC32FF'],
|
||||||
['#AC32FF', '#005FE4'], \
|
['#AC32FF', '#005FE4'],
|
||||||
['#BCCDFF', '#AC32FF'], \
|
['#BCCDFF', '#AC32FF'],
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user