OSDN Git Service

Add the option to startup using the default notebook (as opposed to all notebooks).
authorRandy Baumgarte <randy@fbn.cx>
Tue, 20 Mar 2012 14:52:18 +0000 (10:52 -0400)
committerRandy Baumgarte <randy@fbn.cx>
Tue, 20 Mar 2012 14:52:18 +0000 (10:52 -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

index 59ebe87..d7b7491 100644 (file)
@@ -2030,5 +2030,22 @@ public class Global {
                settings.setValue("displayRightToLeft", value);\r
                settings.endGroup();    \r
     }\r
+\r
+\r
+    //***********************\r
+    //* Startup Notebook\r
+    //***********************\r
+    public static String getStartupNotebook() {\r
+               settings.beginGroup("General");\r
+               String text = (String)settings.value("startupNotebook", "");\r
+               settings.endGroup();    \r
+               return text;\r
+    }\r
+    public static void setStartupNotebook(String value) {\r
+               settings.beginGroup("General");\r
+               settings.setValue("startupNotebook", value);\r
+               settings.endGroup();    \r
+               databaseCache = value;\r
+    }\r
 }\r
 \r
index f75a985..f9df752 100644 (file)
@@ -771,6 +771,18 @@ public class NeverNote extends QMainWindow{
                noteTableView.proxyModel.blocked = false;
                noteTableView.proxyModel.sortChanged.connect(this, "tableSortOrderChanged(Integer,Integer)");
                
+               // Set the startup notebook
+       String defaultNotebook = Global.getStartupNotebook();
+       if (!defaultNotebook.equals("AllNotebooks") && !defaultNotebook.equals("")) {
+               for (int k=0; k<listManager.getNotebookIndex().size(); k++) {
+                       if (listManager.getNotebookIndex().get(k).isDefaultNotebook()) {
+                               notebookTree.clearSelection();
+                               notebookTree.selectGuid(listManager.getNotebookIndex().get(k).getGuid());
+                               notebookTree.selectionSignal.emit();
+                       }
+               }
+       }
+               
                if (Global.checkVersionUpgrade())
                        checkForUpdates();
        }
index 0a65632..9281279 100644 (file)
@@ -56,6 +56,7 @@ public class ConfigAppearancePage extends QWidget {
        private final QCheckBox minimizeOnClose;\r
        private final QCheckBox includeTagChildren;\r
        private final QCheckBox displayRightToLeft;\r
+       private final QComboBox startupNotebook;\r
        private final QSpinBox autoSaveInterval;\r
        \r
        private final List<String> tformats;\r
@@ -150,6 +151,15 @@ public class ConfigAppearancePage extends QWidget {
                includeTagChildren = new QCheckBox(tr("Include Children In Tag Selection"));\r
                displayRightToLeft = new QCheckBox(tr("Display Notes Right-To-Left"));\r
                \r
+               QHBoxLayout startupNotebookLayout = new QHBoxLayout();\r
+               startupNotebook = new QComboBox();\r
+               startupNotebook.addItem(tr("All Notebooks"), "AllNotebooks");\r
+               startupNotebook.addItem(tr("Default Notebook"), "DefaultNotebook");\r
+               startupNotebookLayout.addWidget(new QLabel(tr("Startup Notebook")));\r
+               startupNotebookLayout.addWidget(startupNotebook);\r
+               startupNotebookLayout.addStretch();\r
+       \r
+               \r
                QHBoxLayout autoSaveLayout = new QHBoxLayout();\r
                autoSaveLayout.addWidget(new QLabel(tr("Automatic Save Interval (in Minutes)")));\r
                autoSaveInterval = new QSpinBox();\r
@@ -166,6 +176,7 @@ public class ConfigAppearancePage extends QWidget {
                \r
                QVBoxLayout checkboxLayout = new QVBoxLayout();\r
                checkboxLayout.addWidget(mimicEvernote); \r
+               checkboxLayout.addLayout(startupNotebookLayout);\r
                checkboxLayout.addWidget(showTrayIcon);\r
                checkboxLayout.addWidget(minimizeOnClose);\r
                checkboxLayout.addWidget(startMinimized);\r
@@ -440,5 +451,20 @@ public class ConfigAppearancePage extends QWidget {
                displayRightToLeft.setChecked(val);\r
        }\r
 \r
+       \r
+       //**************************************************\r
+       //* Get/Set startup notebook\r
+       //**************************************************\r
+       public void setStartupNotebook(String value) {\r
+               for (int i=0; i<startupNotebook.count(); i++) {\r
+                       String d = startupNotebook.itemData(i).toString();\r
+                       if (d.equals(value))\r
+                               startupNotebook.setCurrentIndex(i);\r
+               }\r
+       }\r
+       public String getStartupNotebook() {\r
+               int index = startupNotebook.currentIndex();\r
+               return startupNotebook.itemData(index).toString();      \r
+       }\r
 \r
 }\r
index 38c51c3..d59f402 100644 (file)
@@ -214,6 +214,7 @@ public class ConfigDialog extends QDialog {
                        QApplication.setPalette(QApplication.style().standardPalette());\r
                else\r
                        QApplication.setPalette(Global.originalPalette);\r
+               Global.setStartupNotebook(appearancePage.getStartupNotebook());\r
                \r
                String dateFmt = appearancePage.getDateFormat();\r
                String timeFmt = appearancePage.getTimeFormat();\r
@@ -346,6 +347,7 @@ public class ConfigDialog extends QDialog {
                appearancePage.setMinimizeOnClose(Global.minimizeOnClose());\r
                appearancePage.setIncludeTagChildren(Global.includeTagChildren());\r
                appearancePage.setDisplayRightToLeft(Global.displayRightToLeft());\r
+               appearancePage.setStartupNotebook(Global.getStartupNotebook());\r
                \r
                indexPage.setRegex(Global.getWordRegex());\r
                indexPage.setSleepInterval(Global.getIndexThreadSleepInterval());\r