diff --git a/resources/images/format-indent-less.png b/resources/images/format-indent-less.png new file mode 100644 index 0000000000..8662c34871 Binary files /dev/null and b/resources/images/format-indent-less.png differ diff --git a/resources/images/format-indent-more.png b/resources/images/format-indent-more.png new file mode 100644 index 0000000000..e1244ef47c Binary files /dev/null and b/resources/images/format-indent-more.png differ diff --git a/resources/images/format-justify-center.png b/resources/images/format-justify-center.png new file mode 100644 index 0000000000..505160a1bb Binary files /dev/null and b/resources/images/format-justify-center.png differ diff --git a/resources/images/format-justify-fill.png b/resources/images/format-justify-fill.png new file mode 100644 index 0000000000..ee34b8272f Binary files /dev/null and b/resources/images/format-justify-fill.png differ diff --git a/resources/images/format-justify-left.png b/resources/images/format-justify-left.png new file mode 100644 index 0000000000..f5af823a82 Binary files /dev/null and b/resources/images/format-justify-left.png differ diff --git a/resources/images/format-justify-right.png b/resources/images/format-justify-right.png new file mode 100644 index 0000000000..9a3d8d6ee1 Binary files /dev/null and b/resources/images/format-justify-right.png differ diff --git a/resources/images/format-list-ordered.png b/resources/images/format-list-ordered.png new file mode 100644 index 0000000000..c7da85da3f Binary files /dev/null and b/resources/images/format-list-ordered.png differ diff --git a/resources/images/format-list-unordered.png b/resources/images/format-list-unordered.png new file mode 100644 index 0000000000..c959989958 Binary files /dev/null and b/resources/images/format-list-unordered.png differ diff --git a/src/calibre/gui2/comments_editor.py b/src/calibre/gui2/comments_editor.py index a73181164f..bf8fb4a930 100644 --- a/src/calibre/gui2/comments_editor.py +++ b/src/calibre/gui2/comments_editor.py @@ -59,13 +59,28 @@ class EditorWidget(QWebView): _('Superscript'), True), ('ToggleSubscript', 'subscript', 'format-text-subscript', _('Subscript'), True), + ('InsertOrderedList', 'ordered_list', 'format-list-ordered', + _('Ordered list'), True), + ('InsertUnorderedList', 'unordered_list', 'format-list-unordered', + _('Unordered list'), True), + ('AlignLeft', 'align_left', 'format-justify-left', + _('Align left'), False), + ('AlignCenter', 'align_center', 'format-justify-center', + _('Align center'), False), + ('AlignRight', 'align_right', 'format-justify-right', + _('Align right'), False), + ('AlignJustified', 'align_justified', 'format-justify-fill', + _('Align justified'), False), ('Undo', 'undo', 'edit-undo', _('Undo'), False), ('Redo', 'redo', 'edit-redo', _('Redo'), False), ('Copy', 'copy', 'edit-copy', _('Copy'), False), ('Paste', 'paste', 'edit-paste', _('Paste'), False), ('Cut', 'cut', 'edit-cut', _('Cut'), False), - + ('Indent', 'indent', 'format-indent-more', + _('Increase Indentation'), False), + ('Outdent', 'outdent', 'format-indent-less', + _('Decrease Indentation'), False), ]: ac = PageAction(wac, icon, text, checkable, self) setattr(self, 'action_'+name, ac) @@ -119,14 +134,43 @@ class Editor(QWidget): def __init__(self, parent=None): QWidget.__init__(self, parent) - self.toolbar = QToolBar(self) + self.toolbar1 = QToolBar(self) + self.toolbar2 = QToolBar(self) self.editor = EditorWidget(self) self._layout = QVBoxLayout(self) self.setLayout(self._layout) self._layout.setContentsMargins(0, 0, 0, 0) - self._layout.addWidget(self.toolbar) + self._layout.addWidget(self.toolbar1) + self._layout.addWidget(self.toolbar2) self._layout.addWidget(self.editor) + for x in ('bold', 'italic', 'underline', 'strikethrough', + 'superscript', 'subscript', 'indent', 'outdent'): + ac = getattr(self.editor, 'action_'+x) + if x in ('superscript', 'indent'): + self.toolbar2.addSeparator() + self.toolbar2.addAction(ac) + self.toolbar2.addSeparator() + + for x in ('left', 'center', 'right', 'justified'): + ac = getattr(self.editor, 'action_align_'+x) + self.toolbar2.addAction(ac) + self.toolbar2.addSeparator() + + self.toolbar1.addAction(self.editor.action_undo) + self.toolbar1.addAction(self.editor.action_redo) + self.toolbar1.addSeparator() + + for x in ('copy', 'cut', 'paste'): + ac = getattr(self.editor, 'action_'+x) + self.toolbar1.addAction(ac) + self.toolbar1.addSeparator() + + for x in ('', 'un'): + ac = getattr(self.editor, 'action_%sordered_list'%x) + self.toolbar1.addAction(ac) + self.toolbar1.addSeparator() + @dynamic_property def html(self): def fset(self, v):