def __init__(self, parent, target): super(HCYMaskTemplateDialog, self).__init__( title=C_( u"HCY Gamut Mask new-from-template dialog: window title", "New Gamut Mask from Template", ), transient_for=parent, modal=True, destroy_with_parent=True, window_position=Gtk.WindowPosition.MOUSE, ) self.add_button(Gtk.STOCK_CANCEL, Gtk.ResponseType.REJECT) target_mgr = target.get_color_manager() prefs_ro = deepcopy(target_mgr.get_prefs()) datapath = target_mgr.get_data_path() mgr = ColorManager(prefs=prefs_ro, datapath=datapath) mgr.set_wheel_type(target_mgr.get_wheel_type()) self.target = target for name, desc, mask_shapes_float in self.__templates: mask = [] for mask_shape_float in mask_shapes_float: shape = [] for h, c, y in mask_shape_float: h = mgr.undistort_hue(h) shape.append(HCYColor(h, c, y)) mask.append(shape) label = Gtk.Label() label.set_markup("<b>%s</b>\n\n%s" % (name, desc)) label.set_size_request(375, -1) label.set_line_wrap(True) label.set_alignment(0, 0.5) preview = HCYMaskPreview() preview.set_color_manager(mgr) preview.set_mask(mask) preview_frame = Gtk.AspectFrame(obey_child=True) preview_frame.add(preview) preview_frame.set_shadow_type(Gtk.ShadowType.NONE) hbox = Gtk.HBox() hbox.set_spacing(6) hbox.pack_start(preview_frame, False, False, 0) hbox.pack_start(label, True, True, 0) button = Gtk.Button() button.add(hbox) button.set_relief(Gtk.ReliefStyle.NONE) button.connect("clicked", self.__button_clicked_cb, mask) self.vbox.pack_start(button, True, True, 0) self.connect("response", self.__response_cb) self.connect("show", self.__show_cb) for w in self.vbox: w.show_all() ref_color = target.get_managed_color() mgr.set_color(ref_color)
def __init__(self): super(HSVSquare, self).__init__() self._faces = ['h', 's', 'v'] self.__square = _HSVSquareInnerSquare(self) self.__ring = _HSVSquareOuterRing(self) s_align = Gtk.Alignment( xalign=0.5, yalign=0.5, xscale=0.54, yscale=0.54, ) plz_be_square = Gtk.AspectFrame() plz_be_square.set_shadow_type(Gtk.ShadowType.NONE) s_align.add(plz_be_square) plz_be_square.add(self.__square) self.__ring.add(s_align) self.pack_start(self.__ring, True, True, 0)
def get_page_widget(self): frame = Gtk.AspectFrame(obey_child=True) frame.set_shadow_type(Gtk.ShadowType.NONE) frame.add(self.__table) return frame