OSDN Git Service

Add global option to display note right-to-left
authorRandy Baumgarte <randy@fbn.cx>
Mon, 26 Sep 2011 17:22:00 +0000 (13:22 -0400)
committerRandy Baumgarte <randy@fbn.cx>
Mon, 26 Sep 2011 17:22:00 +0000 (13:22 -0400)
src/cx/fbn/nevernote/Global.java
src/cx/fbn/nevernote/NeverNote.java
src/cx/fbn/nevernote/dialog/ConfigAppearancePage.java
src/cx/fbn/nevernote/dialog/ConfigDialog.java
src/cx/fbn/nevernote/xml/NoteFormatter.java

index a6646c0..6808570 100644 (file)
@@ -2008,5 +2008,27 @@ public class Global {
                settings.endGroup();    \r
     }\r
 \r
+    // If we should automatically select the children of any tag\r
+    public static boolean displayRightToLeft() {\r
+               settings.beginGroup("General");\r
+               try {\r
+                       String value = (String)settings.value("displayRightToLeft", "false");\r
+                       settings.endGroup();\r
+                       if (value.equals("true"))\r
+                               return true;\r
+                       else\r
+                               return false;\r
+               } catch (java.lang.ClassCastException e) {\r
+                       Boolean value = (Boolean) settings.value("displayRightToLeft", false);\r
+                       settings.endGroup();\r
+                       return value;\r
+               }\r
+\r
+    }\r
+    public static void setDisplayRightToLeft(boolean value) {\r
+               settings.beginGroup("General");\r
+               settings.setValue("displayRightToLeft", value);\r
+               settings.endGroup();    \r
+    }\r
 }\r
 \r
index df4546a..6138ae4 100644 (file)
@@ -4410,6 +4410,8 @@ public class NeverNote extends QMainWindow{
                        js.append("<style type=\"text/css\">.en-crypt-temp { border-collapse:collapse; border-style:solid; border-color:blue; padding:0.0mm 0.0mm 0.0mm 0.0mm; }</style>");
                        js.append("<style type=\"text/css\">en-hilight { background-color: rgb(255,255,0) }</style>");
                        js.append("<style> img { max-width:100%; }</style>");
+                       if (Global.displayRightToLeft())
+                               js.append("<style> body { direction:rtl; }</style>");
                        js.append("<style type=\"text/css\">en-spell { text-decoration: none; border-bottom: dotted 1px #cc0000; }</style>");
                        js.append("</head>");
                        formatter.setNote(note, Global.pdfPreview());
index da6e660..0a65632 100644 (file)
@@ -55,6 +55,7 @@ public class ConfigAppearancePage extends QWidget {
        private final QCheckBox startMinimized;\r
        private final QCheckBox minimizeOnClose;\r
        private final QCheckBox includeTagChildren;\r
+       private final QCheckBox displayRightToLeft;\r
        private final QSpinBox autoSaveInterval;\r
        \r
        private final List<String> tformats;\r
@@ -147,6 +148,7 @@ public class ConfigAppearancePage extends QWidget {
                newNoteWithTags = new QCheckBox(tr("Create New Notes With Selected Tags"));\r
                anyTagSelection = new QCheckBox(tr("Display Notes Matching Any Selected Tags"));\r
                includeTagChildren = new QCheckBox(tr("Include Children In Tag Selection"));\r
+               displayRightToLeft = new QCheckBox(tr("Display Notes Right-To-Left"));\r
                \r
                QHBoxLayout autoSaveLayout = new QHBoxLayout();\r
                autoSaveLayout.addWidget(new QLabel(tr("Automatic Save Interval (in Minutes)")));\r
@@ -173,6 +175,7 @@ public class ConfigAppearancePage extends QWidget {
                checkboxLayout.addWidget(newNoteWithTags);\r
                checkboxLayout.addWidget(anyTagSelection);\r
                checkboxLayout.addWidget(includeTagChildren);\r
+               checkboxLayout.addWidget(displayRightToLeft);\r
                checkboxLayout.addWidget(checkForUpdates);\r
                checkboxLayout.addStretch(1);\r
 \r
@@ -427,6 +430,15 @@ public class ConfigAppearancePage extends QWidget {
        public void setIncludeTagChildren(boolean val) {\r
                includeTagChildren.setChecked(val);\r
        }\r
+       //*****************************************\r
+       //* Include a tag's child when selecting a parent\r
+       //*****************************************\r
+       public boolean getDisplayRightToLeft() {\r
+               return displayRightToLeft.isChecked();\r
+       }\r
+       public void setDisplayRightToLeft(boolean val) {\r
+               displayRightToLeft.setChecked(val);\r
+       }\r
 \r
 \r
 }\r
index 9be08dc..38c51c3 100644 (file)
@@ -179,6 +179,7 @@ public class ConfigDialog extends QDialog {
                Global.setAutomaticWildcardSearches(indexPage.getAutomaticWildcardSearches());\r
                Global.setSpecialIndexCharacters(indexPage.getSpecialCharacters());\r
                Global.setIncludeTagChildren(appearancePage.getIncludeTagChildren());\r
+               Global.setDisplayRightToLeft(appearancePage.getDisplayRightToLeft());\r
                \r
        FileOutputStream out = null;\r
                try {\r
@@ -344,6 +345,7 @@ public class ConfigDialog extends QDialog {
                appearancePage.setTagBehavior(Global.tagBehavior());\r
                appearancePage.setMinimizeOnClose(Global.minimizeOnClose());\r
                appearancePage.setIncludeTagChildren(Global.includeTagChildren());\r
+               appearancePage.setDisplayRightToLeft(Global.displayRightToLeft());\r
                \r
                indexPage.setRegex(Global.getWordRegex());\r
                indexPage.setSleepInterval(Global.getIndexThreadSleepInterval());\r
index f93a523..17674e1 100644 (file)
@@ -198,7 +198,7 @@ public class NoteFormatter {
                                html.deleteCharAt(j);\r
                } \r
 \r
-               return html.toString();\r
+               return html.toString(); //.replace("<Body", "<Body dir=\"rtl\"");\r
        }       \r
 \r
        private void addImageHilight(String resGuid, QFile f) {\r