OSDN Git Service

Added configuration option to automatically assign the currently selected tags to...
authorRandy Baumgarte <randy@fbn.cx>
Thu, 19 Aug 2010 17:31:22 +0000 (13:31 -0400)
committerRandy Baumgarte <randy@fbn.cx>
Sun, 22 Aug 2010 22:48:42 +0000 (18:48 -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 5ae003b..67043f9 100644 (file)
@@ -508,6 +508,23 @@ public class Global {
                        settings.setValue("pdfPreview", "false");\r
                settings.endGroup();\r
     }\r
+    public static boolean newNoteWithSelectedTags() {\r
+               settings.beginGroup("General");\r
+               String text = (String)settings.value("newNoteWithSelectedTags", "false");\r
+               settings.endGroup();\r
+               if (text.equalsIgnoreCase("true"))\r
+                       return true;\r
+               else\r
+                       return false;\r
+    }\r
+    public static void setNewNoteWithSelectedTags(boolean val) {\r
+               settings.beginGroup("General");\r
+               if (val)\r
+                       settings.setValue("newNoteWithSelectedTags", "true");\r
+               else\r
+                       settings.setValue("newNoteWithSelectedTags", "false");\r
+               settings.endGroup();\r
+    }\r
     public static void setMinimumWordLength(int len) {\r
                settings.beginGroup("General");\r
                settings.setValue("minimumWordLength", len);\r
index 884a8cc..6b8615c 100644 (file)
@@ -1242,7 +1242,7 @@ public class NeverNote extends QMainWindow{
                notebookTreeSelection();
                listManager.loadNotesIndex();
                notebookIndexUpdated();
-               noteIndexUpdated(true);
+               noteIndexUpdated(false);
 //             noteIndexUpdated(false);
                
                // Build a list of non-closed notebooks
@@ -1392,11 +1392,7 @@ public class NeverNote extends QMainWindow{
     // Listener when a tag is selected
        private void tagTreeSelection() {
        logger.log(logger.HIGH, "Entering NeverNote.tagTreeSelection");
-       
-       List<QTreeWidgetItem> x = tagTree.selectedItems();
-       for (int i=0; i<x.size(); i++) {
-       }
-       
+               
        clearTrashFilter();
        clearAttributeFilter();
        clearSavedSearchFilter();
@@ -3236,7 +3232,7 @@ public class NeverNote extends QMainWindow{
                "<en-note>\n<br clear=\"none\" /></en-note>");
        
        Long l = new Long(currentTime.getTimeInMillis());
-       String randint = new String(Long.toString(l));
+       String randint = new String(Long.toString(l));          
        
        // Find a notebook.  We first look for a selected notebook (the "All Notebooks" one doesn't count).  
        // Then we look
@@ -3294,6 +3290,20 @@ public class NeverNote extends QMainWindow{
        na.setLongitude(0.0);
        na.setAltitude(0.0);
        newNote.setAttributes(new NoteAttributes());
+
+       // If new notes are to be created based upon the selected tags, then we need to assign the tags
+       if (Global.newNoteWithSelectedTags()) { 
+               newNote.setTagGuids(new ArrayList<String>());
+               newNote.setTagNames(new ArrayList<String>());
+               List<QTreeWidgetItem> selections = tagTree.selectedItems();
+               QTreeWidgetItem currentSelection;
+               for (int i=0; i<selections.size(); i++) {
+                       currentSelection = selections.get(i);
+                       newNote.getTagGuids().add(currentSelection.text(2));
+                       newNote.getTagNames().add(currentSelection.text(0));
+               }
+       }
+       
        conn.getNoteTable().addNote(newNote, true);
        listManager.getUnsynchronizedNotes().add(newNote.getGuid());
        listManager.addNote(newNote);
index f467374..72d706b 100644 (file)
@@ -46,6 +46,7 @@ public class ConfigAppearancePage extends QWidget {
        private final QCheckBox showTrayIcon;\r
        private final QCheckBox verifyDelete;\r
        private final QCheckBox pdfPreview;\r
+       private final QCheckBox newNoteWithTags;\r
        private final QCheckBox mimicEvernote;\r
        private final QSpinBox autoSaveInterval;\r
        \r
@@ -123,6 +124,7 @@ public class ConfigAppearancePage extends QWidget {
                showTrayIcon = new QCheckBox("Show Tray Icon");\r
                verifyDelete = new QCheckBox("Verify Deletes");\r
                pdfPreview = new QCheckBox("Display PDF Documents Inline");\r
+               newNoteWithTags = new QCheckBox("Create New Notes With Selected Tags");\r
                \r
                QHBoxLayout autoSaveLayout = new QHBoxLayout();\r
                autoSaveLayout.addWidget(new QLabel("Automatic Save Interval (in Minutes)"));\r
@@ -141,6 +143,7 @@ public class ConfigAppearancePage extends QWidget {
                mainLayout.addWidget(showSplashScreen);\r
                mainLayout.addWidget(verifyDelete);\r
                mainLayout.addWidget(pdfPreview);\r
+               mainLayout.addWidget(newNoteWithTags);\r
                mainLayout.addStretch(1);\r
                setLayout(mainLayout);\r
 \r
@@ -333,4 +336,16 @@ public class ConfigAppearancePage extends QWidget {
        public void setMimicEvernote(boolean val) {\r
                mimicEvernote.setChecked(val);\r
        }\r
+\r
+\r
+       //*****************************************\r
+       //* Create Note With Selected Tags\r
+       //*****************************************\r
+       public boolean getNewNoteWithTags() {\r
+               return newNoteWithTags.isChecked();\r
+       }\r
+       public void setNewNoteWithTags(boolean val) {\r
+               newNoteWithTags.setChecked(val);\r
+       }\r
+\r
 }\r
index ab985b8..f932532 100644 (file)
@@ -122,6 +122,11 @@ public class ConfigDialog extends QDialog {
                else\r
                        Global.setPdfPreview(false);\r
                \r
+               if (appearancePage.getNewNoteWithTags())\r
+                       Global.setNewNoteWithSelectedTags(true);\r
+               else\r
+                       Global.setNewNoteWithSelectedTags(false);\r
+               \r
                Global.setAutoSaveInterval(appearancePage.getAutoSaveInterval());\r
                                                \r
                Global.setAutomaticLogin(connectionPage.getAutomaticLogin());\r
@@ -300,6 +305,7 @@ public class ConfigDialog extends QDialog {
                connectionPage.setSyncronizeDeletedContent(Global.synchronizeDeletedContent());\r
                appearancePage.setVerifyDelete(Global.verifyDelete());\r
                appearancePage.setPdfPreview(Global.pdfPreview());\r
+               appearancePage.setNewNoteWithTags(Global.newNoteWithSelectedTags());\r
                appearancePage.setShowSplashScreen(Global.isWindowVisible("SplashScreen"));\r
                appearancePage.setTagBehavior(Global.tagBehavior());\r
                \r