示例#1
0
 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)
示例#2
0
    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)
示例#3
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