Article dialog formatting controls implemented
authorHarishankar <v.harishankar@gmail.com>
Sun, 28 Nov 2010 09:12:09 +0000 (14:42 +0530)
committerHarishankar <v.harishankar@gmail.com>
Sun, 28 Nov 2010 09:12:09 +0000 (14:42 +0530)
Implemented all the text formatting controls of the article
dialog.

article_dialog.py
article_dialog.ui
ui_article_dialog.py

index 3494138..02c0771 100644 (file)
@@ -9,23 +9,33 @@ class ArticleDialog (PyQt4.QtGui.QDialog, ui_article_dialog.Ui_ArticleDialog):
                PyQt4.QtGui.QDialog.__init__ (self, parent)
                self.setupUi (self)
 
+       # when rejected, confirm first
+       def reject (self):
+               ans = PyQt4.QtGui.QMessageBox.question (self, "Confirm",
+                                       "Are you sure you wish to cancel all changes?",
+                                       PyQt4.QtGui.QMessageBox.Yes, PyQt4.QtGui.QMessageBox.No)
+               if ans == PyQt4.QtGui.QMessageBox.Yes:
+                       PyQt4.QtGui.QDialog.reject (self)
+
+
        # when bold is clicked
        def onBold (self):
                textcur = self.content.textCursor ()
                sel = textcur.selectedText ()
-               boldsel = "<b>" + str (sel) + "</b>"
+               boldsel = "<b>" + sel + "</b>"
                textcur.insertText (boldsel)
 
        # when block quote is clicked
        def onBQuote (self):
                textcur = self.content.textCursor ()
                sel = textcur.selectedText ()
-               quotesel = "<blockquote>\n" + str (sel) + "\n</blockquote>"
+               quotesel = "<blockquote>\n" + sel + "\n</blockquote>"
                textcur.insertText (quotesel)
 
        # when bullet is clicked
        def onBullet (self):
-               pass
+               # insert bulleted list
+               self.insert_list_items ()
 
        # when code is clicked
        def onCode (self):
@@ -36,52 +46,166 @@ class ArticleDialog (PyQt4.QtGui.QDialog, ui_article_dialog.Ui_ArticleDialog):
 
        # when horiz rule is clicked
        def onHRule (self):
-               pass
+               textcur = self.content.textCursor ()
+               hrule = "\n<hr />\n"
+               textcur.clearSelection ()
+               textcur.insertText (hrule)
 
        # when image is clicked
        def onImage (self):
-               pass
+               img_url, ok = PyQt4.QtGui.QInputDialog.getText (self, "Image URL", "URL of the image to insert")
+               if not ok or img_url.isEmpty ():
+                       return
+               alt_txt, ok = PyQt4.QtGui.QInputDialog.getText (self, "Alt text", "Alternate text of the image")
+               if not ok or alt_txt.isEmpty ():
+                       return
+
+               textcur = self.content.textCursor ()
+               imgtag = '<img src="' + img_url + '" alt="' + alt_txt + '" />'
+               textcur.clearSelection ()
+               textcur.insertText (imgtag)
 
        # when italic is clicked
        def onItalic (self):
-               pass
+               textcur = self.content.textCursor ()
+               sel = textcur.selectedText ()
+               italsel = "<i>" + sel + "</i>"
+               textcur.insertText (italsel)
 
        # when link is clicked
        def onLink (self):
-               pass
+               linkhref, ok = PyQt4.QtGui.QInputDialog.getText (self, "Link URL", "URL of the link to insert")
+               if not ok or linkhref.isEmpty ():
+                       return
+               textcur = self.content.textCursor ()
+               sel = textcur.selectedText ()
+               linksel = '<a href="' + linkhref + '">' + sel + "</a>"
+               textcur.insertText (linksel)
 
        # when numbered is clicked
        def onNumber (self):
-               pass
+               # numbered list
+               self.insert_list_items (True)
+
+       # get a list of items in numbered or bulleted list
+       def insert_list_items (self, numbered = False):
+               if numbered == True:
+                       title = "Numbered list"
+                       otag = "<ol>\n"
+                       ctag = "</ol>\n"
+               else:
+                       title = "Bulleted list"
+                       otag = "<ul>\n"
+                       ctag = "</ul>\n"
+
+               itemlist = [ otag ]
+               while True:
+                       num_item, ok = PyQt4.QtGui.QInputDialog.getText (self, title,
+                                                       "List item content (leave blank to finish the list)")
+                       # if cancelled quit
+                       if not ok:
+                               return
+                       # if item is empty then close the list
+                       if num_item.isEmpty ():
+                               break
+                       itemlist.append ("   <li>" + num_item + "</li>\n")
+               itemlist.append (ctag)
+
+               textcur = self.content.textCursor ()
+               textcur.clearSelection ()
+               for item in itemlist:
+                       textcur.insertText (item)
+
 
        # when center is clicked
        def onCenter (self):
-               pass
+               textcur = self.content.textCursor ()
+               sel = textcur.selectedText ()
+               paracentersel = '<p style="text-align:center;">' + sel + "</p>"
+               textcur.insertText (paracentersel)
 
        # when justify is clicked
        def onJustify (self):
-               pass
+               textcur = self.content.textCursor ()
+               sel = textcur.selectedText ()
+               parajustsel = '<p style="text-align:justify;">' + sel + "</p>"
+               textcur.insertText (parajustsel)
 
        # when left is clicked
        def onLeft (self):
-               pass
+               textcur = self.content.textCursor ()
+               sel = textcur.selectedText ()
+               paraleftsel = '<p style="text-align:left;">' + sel + "</p>"
+               textcur.insertText (paraleftsel)
 
        # when right is clicked
        def onRight (self):
-               pass
+               textcur = self.content.textCursor ()
+               sel = textcur.selectedText ()
+               pararightsel = '<p style="text-align:right;">' + sel + "</p>"
+               textcur.insertText (pararightsel)
 
        # when pre is clicked
        def onPre (self):
-               pass
+               textcur = self.content.textCursor ()
+               sel = textcur.selectedText ()
+               presel = "<pre>" + sel + "</pre>"
+               textcur.insertText (presel)
 
        # when para is clicked
        def onPara (self):
-               pass
+               textcur = self.content.textCursor ()
+               sel = textcur.selectedText ()
+               parasel = "<p>" + sel + "</p>"
+               textcur.insertText (parasel)
 
        # when table is clicked
        def onTable (self):
-               pass
+               # get the number of rows
+               rows, ok = PyQt4.QtGui.QInputDialog.getInt (self, "Table", "Number of table rows")
+               if not ok:
+                       return
+               # get the number of columns
+               cols, ok = PyQt4.QtGui.QInputDialog.getInt (self, "Table", "Number of table columns")
+               if not ok:
+                       return
+               # should there be a header row?
+               headerflag = PyQt4.QtGui.QMessageBox.question (self, "Header", "Do you want additional header row?",
+                                                                                                       PyQt4.QtGui.QMessageBox.Yes, PyQt4.QtGui.QMessageBox.No,
+                                                                                                       PyQt4.QtGui.QMessageBox.Cancel)
+               if headerflag == PyQt4.QtGui.QMessageBox.Cancel:
+                       return
+
+               # build the table tag
+               tablelist = ["\n<table>\n"]
+               if headerflag == PyQt4.QtGui.QMessageBox.Yes:
+                       tablelist.append (" <thead>\n")
+                       tablelist.append ("  <tr>\n")
+                       for i in range (cols):
+                               tablelist.append ("   <th></th>\n")
+                       tablelist.append ("  </tr>\n")
+                       tablelist.append (" </thead>\n")
+
+               tablelist.append (" <tbody>\n")
+               for j in range (rows):
+                       tablelist.append ("  <tr>\n")
+                       for i in range (cols):
+                               tablelist.append ("   <td></td>\n")
+                       tablelist.append ("  </tr>\n")
+               tablelist.append (" </tbody>\n")
+               tablelist.append ("</table>\n")
+
+               # insert the table
+               textcur = self.content.textCursor ()
+               textcur.clearSelection ()
+               for item in tablelist:
+                       textcur.insertText (item)
+
+
 
        # when break is clicked
        def onBreak (self):
-               pass
+               textcur = self.content.textCursor ()
+               breaktxt = "\n<br />\n"
+               textcur.clearSelection ()
+               textcur.insertText (breaktxt)
index e1124b9..a4259ef 100644 (file)
@@ -6,7 +6,7 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>624</width>
+    <width>654</width>
     <height>544</height>
    </rect>
   </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Bold</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:600; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Bold&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-weight:400; font-style:italic;&quot;&gt;Shortcut: Ctrl+B&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Italic</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:italic;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Italic&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Shortcut: Ctrl+I&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/italic.gif</normaloff>:/bia/resources/italic.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+I</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Preformatted text</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Preformatted text&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+F&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/pre.gif</normaloff>:/bia/resources/pre.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+F</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Right align para</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Right align para&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+R&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/right.gif</normaloff>:/bia/resources/right.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+R</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Justify para</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Justify para&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+J&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/justify.gif</normaloff>:/bia/resources/justify.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+J</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Bulleted list</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Bulleted list&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+. &lt;/span&gt;(Ctrl+dot)&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/bullets.gif</normaloff>:/bia/resources/bullets.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+.</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Numbered list</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Numbered list&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+1 &lt;/span&gt;(Ctrl+One)&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/numbers.gif</normaloff>:/bia/resources/numbers.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+1</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Code block</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Code block&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+= &lt;/span&gt;(Ctrl+Equals)&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/code.gif</normaloff>:/bia/resources/code.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+=</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Table</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Table&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+T&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/table.gif</normaloff>:/bia/resources/table.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+T</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Horizontal rule</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Horizontal rule&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+H&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/hr.gif</normaloff>:/bia/resources/hr.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+H</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
      <property name="focusPolicy">
       <enum>Qt::NoFocus</enum>
      </property>
+     <property name="toolTip">
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Paragraph&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+P&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+     </property>
      <property name="text">
       <string/>
      </property>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/par.gif</normaloff>:/bia/resources/par.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+P</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Line break</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Line break&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+Enter&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/br.gif</normaloff>:/bia/resources/br.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+Return</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Insert image</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Insert image&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+Shift+I&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/img.gif</normaloff>:/bia/resources/img.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+Shift+I</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Insert link</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Insert link&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+Shift+L&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/link.gif</normaloff>:/bia/resources/link.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+Shift+L</string>
+     </property>
     </widget>
    </item>
    <item row="4" column="7">
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Center para</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Center para&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+C&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/center.gif</normaloff>:/bia/resources/center.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+C</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Left align para</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Left align para&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+L&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/left.gif</normaloff>:/bia/resources/left.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+L</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
       <enum>Qt::NoFocus</enum>
      </property>
      <property name="toolTip">
-      <string>Blockquote</string>
+      <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Blockquote&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Shortcut: Ctrl+Q&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
      </property>
      <property name="text">
       <string/>
       <iconset resource="../../projects/BiaWeb_Qt/biaweb_rc.qrc">
        <normaloff>:/bia/resources/bquote.gif</normaloff>:/bia/resources/bquote.gif</iconset>
      </property>
+     <property name="shortcut">
+      <string>Ctrl+Q</string>
+     </property>
      <property name="autoRaise">
       <bool>false</bool>
      </property>
index fd2f8b0..7e42cc7 100644 (file)
@@ -2,7 +2,7 @@
 
 # Form implementation generated from reading ui file 'article_dialog.ui'
 #
-# Created: Sun Nov 28 10:26:53 2010
+# Created: Sun Nov 28 13:59:41 2010
 #      by: PyQt4 UI code generator 4.7.4
 #
 # WARNING! All changes made in this file will be lost!
@@ -12,7 +12,7 @@ from PyQt4 import QtCore, QtGui
 class Ui_ArticleDialog(object):
     def setupUi(self, ArticleDialog):
         ArticleDialog.setObjectName("ArticleDialog")
-        ArticleDialog.resize(624, 544)
+        ArticleDialog.resize(654, 544)
         ArticleDialog.setAutoFillBackground(False)
         ArticleDialog.setSizeGripEnabled(True)
         ArticleDialog.setModal(True)
@@ -286,24 +286,127 @@ class Ui_ArticleDialog(object):
         self.label_2.setText(QtGui.QApplication.translate("ArticleDialog", "Keywords", None, QtGui.QApplication.UnicodeUTF8))
         self.label_3.setText(QtGui.QApplication.translate("ArticleDialog", "Summary", None, QtGui.QApplication.UnicodeUTF8))
         self.label_5.setText(QtGui.QApplication.translate("ArticleDialog", "Article content", None, QtGui.QApplication.UnicodeUTF8))
-        self.bold.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Bold", None, QtGui.QApplication.UnicodeUTF8))
-        self.italic.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Italic", None, QtGui.QApplication.UnicodeUTF8))
-        self.preformat.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Preformatted text", None, QtGui.QApplication.UnicodeUTF8))
-        self.pararight.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Right align para", None, QtGui.QApplication.UnicodeUTF8))
-        self.parajustify.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Justify para", None, QtGui.QApplication.UnicodeUTF8))
-        self.bullets.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Bulleted list", None, QtGui.QApplication.UnicodeUTF8))
-        self.numbered.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Numbered list", None, QtGui.QApplication.UnicodeUTF8))
-        self.codeblock.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Code block", None, QtGui.QApplication.UnicodeUTF8))
-        self.table.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Table", None, QtGui.QApplication.UnicodeUTF8))
-        self.hrule.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Horizontal rule", None, QtGui.QApplication.UnicodeUTF8))
-        self.linebreak.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Line break", None, QtGui.QApplication.UnicodeUTF8))
+        self.bold.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:600; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Bold</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:400; font-style:italic;\">Shortcut: Ctrl+B</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.bold.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+B", None, QtGui.QApplication.UnicodeUTF8))
+        self.italic.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:italic;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Italic</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Shortcut: Ctrl+I</p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.italic.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+I", None, QtGui.QApplication.UnicodeUTF8))
+        self.preformat.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Preformatted text</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+F</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.preformat.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+F", None, QtGui.QApplication.UnicodeUTF8))
+        self.pararight.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Right align para</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+R</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.pararight.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+R", None, QtGui.QApplication.UnicodeUTF8))
+        self.parajustify.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Justify para</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+J</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.parajustify.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+J", None, QtGui.QApplication.UnicodeUTF8))
+        self.bullets.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Bulleted list</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+. </span>(Ctrl+dot)</p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.bullets.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+.", None, QtGui.QApplication.UnicodeUTF8))
+        self.numbered.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Numbered list</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+1 </span>(Ctrl+One)</p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.numbered.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+1", None, QtGui.QApplication.UnicodeUTF8))
+        self.codeblock.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Code block</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+= </span>(Ctrl+Equals)</p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.codeblock.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+=", None, QtGui.QApplication.UnicodeUTF8))
+        self.table.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Table</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+T</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.table.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+T", None, QtGui.QApplication.UnicodeUTF8))
+        self.hrule.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Horizontal rule</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+H</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.hrule.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+H", None, QtGui.QApplication.UnicodeUTF8))
+        self.paragraph.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Paragraph</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+P</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.paragraph.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+P", None, QtGui.QApplication.UnicodeUTF8))
+        self.linebreak.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Line break</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+Enter</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.linebreak.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+Return", None, QtGui.QApplication.UnicodeUTF8))
         self.label_4.setText(QtGui.QApplication.translate("ArticleDialog", "Category", None, QtGui.QApplication.UnicodeUTF8))
         self.label_6.setText(QtGui.QApplication.translate("ArticleDialog", "Rating", None, QtGui.QApplication.UnicodeUTF8))
         self.label_7.setText(QtGui.QApplication.translate("ArticleDialog", "Stub (file name without HTML extension)", None, QtGui.QApplication.UnicodeUTF8))
-        self.image.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Insert image", None, QtGui.QApplication.UnicodeUTF8))
-        self.link.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Insert link", None, QtGui.QApplication.UnicodeUTF8))
-        self.paracenter.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Center para", None, QtGui.QApplication.UnicodeUTF8))
-        self.paraleft.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Left align para", None, QtGui.QApplication.UnicodeUTF8))
-        self.blockquote.setToolTip(QtGui.QApplication.translate("ArticleDialog", "Blockquote", None, QtGui.QApplication.UnicodeUTF8))
+        self.image.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Insert image</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+Shift+I</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.image.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+Shift+I", None, QtGui.QApplication.UnicodeUTF8))
+        self.link.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Insert link</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+Shift+L</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.link.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+Shift+L", None, QtGui.QApplication.UnicodeUTF8))
+        self.paracenter.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Center para</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+C</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.paracenter.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+C", None, QtGui.QApplication.UnicodeUTF8))
+        self.paraleft.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Left align para</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+L</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.paraleft.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+L", None, QtGui.QApplication.UnicodeUTF8))
+        self.blockquote.setToolTip(QtGui.QApplication.translate("ArticleDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Blockquote</p>\n"
+"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic;\">Shortcut: Ctrl+Q</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
+        self.blockquote.setShortcut(QtGui.QApplication.translate("ArticleDialog", "Ctrl+Q", None, QtGui.QApplication.UnicodeUTF8))
 
 import biaweb_rc_rc