OSDN Git Service

ツールバーの「新規」ボタンを押した時にノートを新しいタブで開けるように変更した
[neighbornote/NeighborNote.git] / src / cx / fbn / nevernote / dialog / ConfigAppearancePage.java
index 19a5a0c..6437567 100644 (file)
@@ -1,5 +1,5 @@
 /*\r
- * This file is part of NeverNote \r
+ * This file is part of NixNote/NeighborNote \r
  * Copyright 2009 Randy Baumgarte\r
  * \r
  * This file may be licensed under the terms of of the\r
@@ -22,6 +22,7 @@ package cx.fbn.nevernote.dialog;
 import java.util.ArrayList;\r
 import java.util.List;\r
 \r
+import com.trolltech.qt.core.Qt;\r
 import com.trolltech.qt.gui.QApplication;\r
 import com.trolltech.qt.gui.QCheckBox;\r
 import com.trolltech.qt.gui.QComboBox;\r
@@ -29,8 +30,10 @@ import com.trolltech.qt.gui.QFormLayout;
 import com.trolltech.qt.gui.QGroupBox;\r
 import com.trolltech.qt.gui.QHBoxLayout;\r
 import com.trolltech.qt.gui.QLabel;\r
+import com.trolltech.qt.gui.QScrollArea;\r
 import com.trolltech.qt.gui.QSpinBox;\r
 import com.trolltech.qt.gui.QStyleFactory;\r
+import com.trolltech.qt.gui.QSystemTrayIcon;\r
 import com.trolltech.qt.gui.QVBoxLayout;\r
 import com.trolltech.qt.gui.QWidget;\r
 \r
@@ -52,6 +55,10 @@ public class ConfigAppearancePage extends QWidget {
        private final QCheckBox mimicEvernote;\r
        private final QCheckBox startMinimized;\r
        private final QCheckBox minimizeOnClose;\r
+       private final QCheckBox includeTagChildren;\r
+       private final QCheckBox displayRightToLeft;\r
+       private final QCheckBox toolBarNewAction;\r
+       private final QComboBox startupNotebook;\r
        private final QSpinBox autoSaveInterval;\r
        \r
        private final List<String> tformats;\r
@@ -136,13 +143,29 @@ public class ConfigAppearancePage extends QWidget {
                mimicEvernote = new QCheckBox(tr("Mimic Evernote Selection Behavior (Requires Restart)"));\r
                showSplashScreen = new QCheckBox(tr("Show Splash Screen on Startup"));\r
                showTrayIcon = new QCheckBox(tr("Minimize To Tray"));\r
-               minimizeOnClose = new QCheckBox(tr("Minimize On Close"));\r
+               minimizeOnClose = new QCheckBox(tr("Close To Tray"));\r
+               if (!QSystemTrayIcon.isSystemTrayAvailable()) { \r
+                       showTrayIcon.setEnabled(false);\r
+                       minimizeOnClose.setEnabled(false);\r
+               }\r
                verifyDelete = new QCheckBox(tr("Verify Deletes"));\r
                startMinimized = new QCheckBox(tr("Start Minimized"));\r
                pdfPreview = new QCheckBox(tr("Display PDF Documents Inline"));\r
                checkForUpdates = new QCheckBox(tr("Check For Updates At Startup"));\r
                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
+               toolBarNewAction = new QCheckBox(tr("Add Note in New Tab When Click Tool Bar New Button"));\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
@@ -151,36 +174,57 @@ public class ConfigAppearancePage extends QWidget {
                autoSaveInterval.setMaximum(1440);\r
                autoSaveInterval.setMinimum(0);\r
                \r
-               QVBoxLayout mainLayout = new QVBoxLayout();\r
+               QVBoxLayout mainLayout = new QVBoxLayout(this);\r
                mainLayout.addWidget(styleGroup);\r
                mainLayout.addWidget(datetimeGroup);\r
                mainLayout.addLayout(autoSaveLayout);\r
                mainLayout.addWidget(tagBehaviorGroup);\r
-               mainLayout.addWidget(mimicEvernote); \r
-               mainLayout.addWidget(showTrayIcon);\r
-               mainLayout.addWidget(minimizeOnClose);\r
-               mainLayout.addWidget(startMinimized);\r
-               mainLayout.addWidget(showSplashScreen);\r
-               mainLayout.addWidget(verifyDelete);\r
-               mainLayout.addWidget(pdfPreview);\r
-               mainLayout.addWidget(newNoteWithTags);\r
-               mainLayout.addWidget(anyTagSelection);\r
-               mainLayout.addWidget(checkForUpdates);\r
-               mainLayout.addStretch(1);\r
+               \r
+               \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
+               checkboxLayout.addWidget(showSplashScreen);\r
+               checkboxLayout.addWidget(verifyDelete);\r
+               checkboxLayout.addWidget(pdfPreview);\r
+               checkboxLayout.addWidget(newNoteWithTags);\r
+               checkboxLayout.addWidget(anyTagSelection);\r
+               checkboxLayout.addWidget(includeTagChildren);\r
+               checkboxLayout.addWidget(displayRightToLeft);\r
+               checkboxLayout.addWidget(checkForUpdates);\r
+               checkboxLayout.addWidget(toolBarNewAction);\r
+               checkboxLayout.addStretch(1);\r
+\r
+               \r
+               QWidget checkBoxGroup = new QWidget();\r
+               checkBoxGroup.setLayout(checkboxLayout);\r
+\r
+               QScrollArea scrollArea = new QScrollArea();\r
+               scrollArea.setHorizontalScrollBarPolicy(Qt.ScrollBarPolicy.ScrollBarAsNeeded);\r
+               scrollArea.setVerticalScrollBarPolicy(Qt.ScrollBarPolicy.ScrollBarAsNeeded);\r
+               scrollArea.setWidgetResizable(true);\r
+               scrollArea.setWidget(checkBoxGroup);\r
+\r
+               mainLayout.addWidget(scrollArea);\r
                setLayout(mainLayout);\r
                \r
                showTrayIcon.clicked.connect(this, "showTrayIconClicked(Boolean)");\r
                showTrayIconClicked(showTrayIcon.isChecked());\r
 \r
-\r
        }\r
        \r
        private void showTrayIconClicked(Boolean checked) {\r
-               if (!checked) {\r
-                       minimizeOnClose.setEnabled(false);\r
-                       minimizeOnClose.setChecked(false);\r
-               } else\r
-                       minimizeOnClose.setEnabled(true);\r
+//             if (!checked) {\r
+//                     minimizeOnClose.setEnabled(false);\r
+//                     minimizeOnClose.setChecked(false);\r
+//             } else\r
+//                     if (QSystemTrayIcon.isSystemTrayAvailable()) \r
+//                             minimizeOnClose.setEnabled(true);\r
+//                     else\r
+//                             minimizeOnClose.setEnabled(false);\r
        }\r
 \r
        \r
@@ -309,17 +353,25 @@ public class ConfigAppearancePage extends QWidget {
        public boolean getCheckForUpdates() {\r
                return checkForUpdates.isChecked();\r
        }\r
+       \r
+       //*******************************************\r
+       //* tool bar new button action get/set\r
+       //*******************************************\r
+       public void setNewAction(boolean val) {\r
+               toolBarNewAction.setChecked(val);\r
+       }\r
+       public boolean getNewAction() {\r
+               return toolBarNewAction.isChecked();\r
+       }\r
 \r
        \r
        //********************************************\r
        //* Listeners for palette & style changes\r
        //********************************************\r
-       \r
        public void styleSelected(String style) {\r
                QApplication.setStyle(style);\r
                QApplication.setPalette(QApplication.style().standardPalette());\r
-       }\r
-       \r
+       }       \r
        public void standardPaletteChanged() {\r
                if (standardPalette.isChecked())\r
                        QApplication.setPalette(QApplication.style().standardPalette());\r
@@ -399,4 +451,40 @@ public class ConfigAppearancePage extends QWidget {
                anyTagSelection.setChecked(val);\r
        }\r
 \r
+\r
+       //*****************************************\r
+       //* Include a tag's child when selecting a parent\r
+       //*****************************************\r
+       public boolean getIncludeTagChildren() {\r
+               return includeTagChildren.isChecked();\r
+       }\r
+       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
+       //* 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