OSDN Git Service

Add some of the context menu options to the main menu bar.
[neighbornote/NeighborNote.git] / src / cx / fbn / nevernote / gui / BrowserWindow.java
index 2425fbb..879f899 100644 (file)
@@ -167,7 +167,7 @@ public class BrowserWindow extends QWidget {
        private boolean extendedOn;\r
        public boolean buttonsVisible;\r
        private final String iconPath;\r
-       private final ContentView browser;\r
+       public final ContentView browser;\r
        private final QTextEdit sourceEdit;\r
        private String sourceEditHeader;\r
        Highlighter syntaxHighlighter;\r
@@ -711,6 +711,7 @@ public class BrowserWindow extends QWidget {
                alteredTime.setEnabled(!v);\r
                subjectTime.setEnabled(!v);\r
                getBrowser().setEnabled(true);\r
+               getBrowser().page().setContentEditable(!v);\r
 //             getBrowser().setEnabled(!v);\r
        }\r
        \r
@@ -1518,7 +1519,7 @@ public class BrowserWindow extends QWidget {
        public void editLatex(String guid) {\r
                logger.log(logger.EXTREME, "Inserting latex");\r
                String text = browser.selectedText();\r
-               if (text.trim().equalsIgnoreCase(" ") || text.trim().equalsIgnoreCase("")) {\r
+               if (text.trim().equalsIgnoreCase("\n") || text.trim().equalsIgnoreCase("")) {\r
                        InsertLatexImage dialog = new InsertLatexImage();\r
                        if (guid != null) {\r
                                String formula = conn.getNoteTable().noteResourceTable.getNoteSourceUrl(guid).replace("http://latex.codecogs.com/gif.latex?", "");\r
@@ -2037,9 +2038,12 @@ public class BrowserWindow extends QWidget {
                        return;\r
                \r
                // If we have a real change, we need to save it.\r
-               noteSignal.titleChanged.emit(currentNote.getGuid(), titleLabel.text().trim());\r
-               currentNote.setTitle(titleLabel.text().trim());\r
-               saveNoteTitle = titleLabel.text().trim();\r
+               String text = titleLabel.text().trim();\r
+               if (text.equals("")) \r
+                       text = tr("Untitled Note");\r
+               noteSignal.titleChanged.emit(currentNote.getGuid(), text);\r
+               currentNote.setTitle(text);\r
+               saveNoteTitle = text;\r
                checkNoteTitle();\r
        }\r
 \r
@@ -2144,28 +2148,30 @@ public class BrowserWindow extends QWidget {
                String text = browser.page().currentFrame().toPlainText();\r
                if (saveNoteTitle == null)\r
                        saveNoteTitle = new String();\r
+               text = text.trim();\r
+               if (!saveNoteTitle.trim().equals("") && !saveNoteTitle.trim().equals("Untitled Note"))\r
+                       text = saveNoteTitle.trim();\r
+               int newLine = text.indexOf("\n");\r
+               if (newLine > 0)\r
+                       text = text.substring(0,newLine);\r
                if (saveNoteTitle.trim().equals("") || saveNoteTitle.trim().equals("Untitled Note")) {\r
-                       int newLine = text.indexOf("\n");\r
-                       if (newLine > 0) {\r
-                               text = text.substring(0, newLine);\r
-                               if (text.trim().equals(""))\r
-                                       text = tr("Untitled Note");\r
+                       if (text.trim().equals(""))\r
+                               text = tr("Untitled Note");\r
                                titleLabel.setText(text);\r
-                       } else {\r
-                               if (text.length() > Constants.EDAM_NOTE_TITLE_LEN_MAX)\r
-                                       titleLabel.setText(text.substring(0, Constants.EDAM_NOTE_TITLE_LEN_MAX));\r
-                               else {\r
-                                       titleLabel.blockSignals(true);\r
-                                       if (text.trim().equals(""))\r
-                                               titleLabel.setText(tr("Untitled Note"));\r
-                                       else\r
-                                               titleLabel.setText(text);\r
-                                       titleLabel.blockSignals(false);\r
-                               }\r
+               } else {\r
+                       if (text.length() > Constants.EDAM_NOTE_TITLE_LEN_MAX)\r
+                               titleLabel.setText(text.substring(0, Constants.EDAM_NOTE_TITLE_LEN_MAX));\r
+                       else {\r
+                               titleLabel.blockSignals(true);\r
+                               if (text.trim().equals(""))\r
+                                       titleLabel.setText(tr("Untitled Note"));\r
+                               else\r
+                                       titleLabel.setText(text);\r
+                               titleLabel.blockSignals(false);\r
                        }\r
-                       if (currentNote != null && titleLabel != null)\r
-                               noteSignal.titleChanged.emit(currentNote.getGuid(), titleLabel.text());\r
                }\r
+               if (currentNote != null && titleLabel != null && !currentNote.getTitle().equals(text))\r
+                       noteSignal.titleChanged.emit(currentNote.getGuid(), text);\r
        }\r
 \r
        // Return the note contents so we can email them\r
@@ -2426,19 +2432,25 @@ public class BrowserWindow extends QWidget {
                QFile resourceFile; \r
                //These two lines are added to handle odd characters in the name like #.  Without it\r
                // toLocalFile() chokes and returns the wrong name.\r
-               url = url.replace("file:///", "");\r
-               url = url.replace("file://", "");\r
+               logger.log(logger.EXTREME, "File URL:" +url);\r
+               String whichOS = System.getProperty("os.name");\r
+               if (whichOS.contains("Windows")) \r
+                       url = url.replace("file:///", "");\r
+               else\r
+                       url = url.replace("file://", "");\r
                String urlTest = new QUrl(url).toLocalFile();\r
+               logger.log(logger.EXTREME, "File URL toLocalFile():" +urlTest);\r
                urlTest = url;\r
                if (!urlTest.equals(""))\r
                        url = urlTest;\r
 //             url = url.replace("/", File.separator);\r
-               logger.log(logger.EXTREME, "Reading from file to create resource");\r
+               logger.log(logger.EXTREME, "Reading from file to create resource:" +url);\r
                resourceFile = new QFile(url); \r
        resourceFile.open(new QIODevice.OpenMode(QIODevice.OpenModeFlag.ReadOnly));\r
-//     logger.log(logger.EXTREME, "Error opening file "+url.toString()  +": "+resourceFile.errorString());\r
+       logger.log(logger.EXTREME, "Error opening file "+url.toString()  +": "+resourceFile.errorString());\r
        byte[] fileData = resourceFile.readAll().toByteArray();\r
        resourceFile.close();\r
+       logger.log(logger.EXTREME, "File Length: " +fileData.length);\r
        if (fileData.length == 0)\r
                return null;\r
        MessageDigest md;\r