예제 #1
0
파일: themes.py 프로젝트: davidfor/calibre
 def choose_color(self):
     col = QColorDialog.getColor(self.current_color or Qt.black, self, _('Choose color'))
     if col.isValid():
         self.current_color = col
         self.update_tooltip()
         self.ic.fill(col)
         self.setIcon(QIcon(self.ic))
         self.data[self.name] = self.value
         self.changed.emit()
예제 #2
0
 def change_cover_grid_color(self):
     col = QColorDialog.getColor(self.cg_bg_widget.bcol,
                           self.gui, _('Choose background color for cover grid'))
     if col.isValid():
         col = tuple(col.getRgb())[:3]
         self.set_cg_color(col)
         self.changed_signal.emit()
         if self.cg_bg_widget.btex:
             if question_dialog(
                 self, _('Remove background image?'),
                 _('There is currently a background image set, so the color'
                   ' you have chosen will not be visible. Remove the background image?')):
                 self.set_cg_texture(None)
예제 #3
0
파일: config.py 프로젝트: Cykooz/calibre
 def change_color(self, which, reset=False):
     if reset:
         setattr(self, "current_%s_color" % which, None)
     else:
         initial = getattr(self, "current_%s_color" % which)
         if initial:
             initial = QColor(initial)
         else:
             initial = Qt.black if which == "text" else Qt.white
         title = _("Choose text color") if which == "text" else _("Choose background color")
         col = QColorDialog.getColor(initial, self, title, QColorDialog.ShowAlphaChannel)
         if col.isValid():
             name = unicode(col.name())
             setattr(self, "current_%s_color" % which, name)
     self.update_sample_colors()
예제 #4
0
파일: text.py 프로젝트: timpalpant/calibre
 def format_text(self, formatting):
     if self.syntax != "html":
         return
     if formatting.startswith("justify_"):
         return self.smarts.set_text_alignment(self, formatting.partition("_")[-1])
     color = "currentColor"
     if formatting in {"color", "background-color"}:
         color = QColorDialog.getColor(
             QColor(Qt.black if formatting == "color" else Qt.white),
             self,
             _("Choose color"),
             QColorDialog.ShowAlphaChannel,
         )
         if not color.isValid():
             return
         r, g, b, a = color.getRgb()
         if a == 255:
             color = "rgb(%d, %d, %d)" % (r, g, b)
         else:
             color = "rgba(%d, %d, %d, %.2g)" % (r, g, b, a / 255)
     prefix, suffix = {
         "bold": ("<b>", "</b>"),
         "italic": ("<i>", "</i>"),
         "underline": ("<u>", "</u>"),
         "strikethrough": ("<strike>", "</strike>"),
         "superscript": ("<sup>", "</sup>"),
         "subscript": ("<sub>", "</sub>"),
         "color": ('<span style="color: %s">' % color, "</span>"),
         "background-color": ('<span style="background-color: %s">' % color, "</span>"),
     }[formatting]
     left, right = self.get_range_inside_tag()
     c = self.textCursor()
     c.setPosition(left)
     c.setPosition(right, c.KeepAnchor)
     prev_text = unicode(c.selectedText()).rstrip("\0")
     c.insertText(prefix + prev_text + suffix)
     if prev_text:
         right = c.position()
         c.setPosition(left)
         c.setPosition(right, c.KeepAnchor)
     else:
         c.setPosition(c.position() - len(suffix))
     self.setTextCursor(c)
예제 #5
0
파일: text.py 프로젝트: kovidgoyal/calibre
 def format_text(self, formatting):
     if self.syntax != 'html':
         return
     if formatting.startswith('justify_'):
         return self.smarts.set_text_alignment(
             self,
             formatting.partition('_')[-1])
     color = 'currentColor'
     if formatting in {'color', 'background-color'}:
         color = QColorDialog.getColor(
             QColor(Qt.black if formatting == 'color' else Qt.white), self,
             _('Choose color'), QColorDialog.ShowAlphaChannel)
         if not color.isValid():
             return
         r, g, b, a = color.getRgb()
         if a == 255:
             color = 'rgb(%d, %d, %d)' % (r, g, b)
         else:
             color = 'rgba(%d, %d, %d, %.2g)' % (r, g, b, a / 255)
     prefix, suffix = {
         'bold': ('<b>', '</b>'),
         'italic': ('<i>', '</i>'),
         'underline': ('<u>', '</u>'),
         'strikethrough': ('<strike>', '</strike>'),
         'superscript': ('<sup>', '</sup>'),
         'subscript': ('<sub>', '</sub>'),
         'color': ('<span style="color: %s">' % color, '</span>'),
         'background-color': ('<span style="background-color: %s">' % color,
                              '</span>'),
     }[formatting]
     left, right = self.get_range_inside_tag()
     c = self.textCursor()
     c.setPosition(left)
     c.setPosition(right, c.KeepAnchor)
     prev_text = unicode(c.selectedText()).rstrip('\0')
     c.insertText(prefix + prev_text + suffix)
     if prev_text:
         right = c.position()
         c.setPosition(left)
         c.setPosition(right, c.KeepAnchor)
     else:
         c.setPosition(c.position() - len(suffix))
     self.setTextCursor(c)
예제 #6
0
 def background_color(self):
     col = QColorDialog.getColor(Qt.white, self,
             _('Choose background color'), QColorDialog.ShowAlphaChannel)
     if col.isValid():
         self.exec_command('hiliteColor', unicode(col.name()))
예제 #7
0
 def foreground_color(self):
     col = QColorDialog.getColor(Qt.black, self,
             _('Choose foreground color'), QColorDialog.ShowAlphaChannel)
     if col.isValid():
         self.exec_command('foreColor', unicode(col.name()))
예제 #8
0
파일: covers.py 프로젝트: GRiker/calibre
 def choose_color(self):
     c = QColorDialog.getColor(self._color, self, _('Choose color'))
     if c.isValid():
         self._color = c
         self.update_display()
예제 #9
0
 def choose_color(self):
     col = QColorDialog.getColor(QColor(self._color or Qt.white), self, _('Choose a color'))
     if col.isValid():
         self.color = unicode(col.name())
예제 #10
0
파일: widgets2.py 프로젝트: zwlistu/calibre
 def choose_color(self):
     col = QColorDialog.getColor(QColor(self._color or Qt.white), self, _('Choose a color'))
     if col.isValid():
         self.color = unicode_type(col.name())
예제 #11
0
 def choose_color(self):
     c = QColorDialog.getColor(self._color, self, _('Choose color'))
     if c.isValid():
         self._color = c
         self.update_display()
예제 #12
0
 def background_color(self):
     col = QColorDialog.getColor(Qt.white, self,
                                 _('Choose background color'),
                                 QColorDialog.ShowAlphaChannel)
     if col.isValid():
         self.exec_command('hiliteColor', unicode(col.name()))
예제 #13
0
 def foreground_color(self):
     col = QColorDialog.getColor(Qt.black, self,
                                 _('Choose foreground color'),
                                 QColorDialog.ShowAlphaChannel)
     if col.isValid():
         self.exec_command('foreColor', unicode(col.name()))
예제 #14
0
 def _pick_color(self):
     color = QColorDialog.getColor()
     if color.isValid():
         self._set_color(color)