ginebra2/chrome/bedrockchrome/bookmarkview.superpage/bookmarkDialog.js
changeset 3 0954f5dd2cd0
child 12 afcd8e6d025b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ginebra2/chrome/bedrockchrome/bookmarkview.superpage/bookmarkDialog.js	Tue Jun 29 00:46:29 2010 -0400
@@ -0,0 +1,138 @@
+var _dailogFlag = 0;
+var _OriginalTitle = 0;
+
+function bookmarkDialog()
+{
+   this.write = writeBookmarkDialog;
+
+   // do setup
+    this.write();
+}
+
+function writeBookmarkDialog()
+{
+    var html =
+               '<div class="top"></div>'+
+                '<div class="body">'+
+                   '<div class="bookmarkTextLabel" id="bookmarkDialogTitle">Add Bookmark</div>'+
+                   '<div class="GinebraSnippet" id="BookmarkDialogTitleId" data-GinebraNativeClass="TextEditSnippet" data-GinebraVisible="true"></div>'+ 
+                   '<div class="GinebraSnippet" id="BookmarkDialogUrlId" data-GinebraNativeClass="TextEditSnippet" data-GinebraVisible="true"></div>'+
+                   '<div class="controls">' +
+                      '<div type="button"  onmouseup="bookmarkOperation();" class="bookmarkDoneButton"></div>'+     
+                       '<div type="button" onmouseup="bookmarkDialogIdHide();" class="bookmarkCancelButton"></div>'+  
+                    '</div>'+ /*controls*/
+                '</div>'+  /*body*/
+                '<div class="bottom"></div>';
+  document.write(html);
+}
+
+function bookmarkDialogIdHide(){
+    window.snippets.BookmarkDialogId.hide();
+    snippets.BookmarkViewToolbarId.enabled = true;
+    snippets.WebViewToolbarId.enabled = true;
+}
+
+function launchBookmarkDialog(bmtitle, bmurl, dialogFlag)
+{
+    try{
+        snippets.BookmarkViewToolbarId.enabled = false;
+        snippets.WebViewToolbarId.enabled = false;
+
+        if (dialogFlag == 0) {
+                var dlgTitle = document.getElementById("bookmarkDialogTitle");
+                  dlgTitle.firstChild.nodeValue= window.localeDelegate.translateText("txt_browser_input_dial_add_bm");                 
+           }
+           else if (dialogFlag == 1) {
+                var dlgTitle = document.getElementById("bookmarkDialogTitle");
+                dlgTitle.firstChild.nodeValue= window.localeDelegate.translateText("txt_browser_input_dial_edit_bm");
+           }
+
+        _dailogFlag = dialogFlag;
+        _OriginalTitle = bmtitle;
+        window.snippets.BookmarkDialogTitleId.lostFocus.connect(titleFieldLostFocus);
+        window.snippets.BookmarkDialogUrlId.lostFocus.connect(urlFieldLostFocus);
+        window.snippets.BookmarkDialogTitleId.gainedFocus.connect(titleFieldGainedFocus);
+        window.snippets.BookmarkDialogUrlId.gainedFocus.connect(urlFieldGainedFocus);
+        // set max text length
+        // window.snippets.BookmarkDialogTitleId.setMaxTextLength(30);
+        var hints = window.snippets.BookmarkDialogUrlId.getTextOptions();
+        hints |= 2; // Qt::ImhNoAutoUppercase 0x2
+        window.snippets.BookmarkDialogUrlId.setTextOptions(hints);
+        if (bmtitle == "")
+            window.snippets.BookmarkDialogTitleId.text = "Title";
+        else
+            window.snippets.BookmarkDialogTitleId.text = bmtitle;    
+  
+        if (bmurl == "")
+            window.snippets.BookmarkDialogUrlId.text = "Url";
+        else
+           window.snippets.BookmarkDialogUrlId.text = bmurl; 
+
+        window.snippets.BookmarkDialogId.show(false);
+
+        window.snippets.BookmarkDialogTitleId.selectAll();
+        
+       }catch(e){ alert(e); }
+
+}
+
+
+function bookmarkOperation()
+{
+    snippets.BookmarkViewToolbarId.enabled = true;
+    snippets.WebViewToolbarId.enabled = true;
+    //get title and url from the dialog
+    var bmtitle = window.snippets.BookmarkDialogTitleId.text;
+    var bmurl = window.snippets.BookmarkDialogUrlId.text;
+    //Hide the dialog
+    window.snippets.BookmarkDialogId.hide();
+    //Update the database
+    var errCode;
+
+    if (_dailogFlag == 0)
+       errCode = window.bookmarksManager.addBookmark(bmtitle,bmurl);
+    else if (_dailogFlag == 1)
+       errCode = window.bookmarksManager.modifyBookmark(_OriginalTitle,bmtitle,bmurl);
+    
+    
+    if (errCode == -3){
+	     alert("Bookmark Url Is Empty");
+	     return;
+    }
+    else if (errCode != -0){
+	       alert("General Error");
+	       return;
+    }
+     
+	
+}
+
+function titleFieldLostFocus()
+{
+    var bmtitle = window.snippets.BookmarkDialogTitleId.text;
+    if (bmtitle == "")
+       window.snippets.BookmarkDialogTitleId.text = "Title";
+}
+
+function urlFieldLostFocus()
+{
+    var bmurl= window.snippets.BookmarkDialogUrlId.text;
+    if (bmurl == "")
+       window.snippets.BookmarkDialogUrlId.text = "Url";
+}
+
+
+function titleFieldGainedFocus()
+{
+    window.snippets.BookmarkDialogUrlId.unselect();
+}
+
+function urlFieldGainedFocus()
+{
+    window.snippets.BookmarkDialogTitleId.unselect();
+}
+
+
+function showBookmarkEditDialog(bmtitle,bmurl) {
+    launchBookmarkDialog(bmtitle,bmurl,1);
+}