亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? msgmail3panewindow.js

?? 現(xiàn)在很火的郵件客戶(hù)端軟件thunderbird的源碼
?? JS
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
    // the Folder or Thread Pane.    if (event.button == 2)    {      gRightMouseButtonDown = true;      ChangeSelectionWithoutContentLoad(event, event.target.parentNode);    }    else      gRightMouseButtonDown = false;}function FolderPaneOnClick(event){    // we only care about button 0 (left click) events    if (event.button != 0)        return;    var folderTree = GetFolderTree();    var row = {};    var col = {};    var elt = {};    folderTree.treeBoxObject.getCellAt(event.clientX, event.clientY, row, col, elt);    if (row.value == -1) {      if (event.originalTarget.localName == "treecol") {        // clicking on the name column in the folder pane should not sort        event.stopPropagation();      }    }    else if ((event.originalTarget.localName == "slider") ||             (event.originalTarget.localName == "scrollbarbutton")) {      event.stopPropagation();    }    else if ((event.detail == 2) && (elt.value != "twisty") &&             (folderTree.view.getLevel(row.value) != 0)) {      FolderPaneDoubleClick(row.value, event);    }}function FolderPaneDoubleClick(folderIndex, event){    if (!pref.getBoolPref("mailnews.reuse_thread_window2"))    {      var folderResource = GetFolderResource(GetFolderTree(), folderIndex);      // Open a new msg window only if we are double clicking on       // folders or newsgroups.      MsgOpenNewWindowForFolder(folderResource.Value, -1 /* key */);      // double clicking should not toggle the open / close state of the      // folder.  this will happen if we don't prevent the event from      // bubbling to the default handler in tree.xml      event.stopPropagation();    }}function ChangeSelection(tree, newIndex){    if(newIndex >= 0)    {        tree.view.selection.select(newIndex);        tree.treeBoxObject.ensureRowIsVisible(newIndex);    }}function GetSelectedFolders(){    var folderArray = [];    var k = 0;    var folderTree = GetFolderTree();    var rangeCount = folderTree.view.selection.getRangeCount();    for(var i = 0; i < rangeCount; i++)    {        var startIndex = {};        var endIndex = {};        folderTree.view.selection.getRangeAt(i, startIndex, endIndex);        for (var j = startIndex.value; j <= endIndex.value; j++)        {            var folderResource = GetFolderResource(folderTree, j);            folderArray[k++] = folderResource.Value;        }    }    return folderArray;}function GetSelectedMsgFolders(){    var folderArray = [];    var k = 0;    var folderTree = GetFolderTree();    var rangeCount = folderTree.view.selection.getRangeCount();    for(var i = 0; i < rangeCount; i++)    {        var startIndex = {};        var endIndex = {};        folderTree.view.selection.getRangeAt(i, startIndex, endIndex);        for (var j = startIndex.value; j <= endIndex.value; j++)        {          var folderResource = GetFolderResource(folderTree, j);           if (folderResource.Value != "http://home.netscape.com/NC-rdf#PageTitleFakeAccount") {            var msgFolder = folderResource.QueryInterface(Components.interfaces.nsIMsgFolder);            if(msgFolder)              folderArray[k++] = msgFolder;          }        }    }    return folderArray;}function GetFirstSelectedMessage(){    try {        return gDBView.URIForFirstSelectedMessage;    }    catch (ex) {        return null;    }}function GetSelectedIndices(dbView){  try {    var indicesArray = {};     var length = {};    dbView.getIndicesForSelection(indicesArray,length);    return indicesArray.value;  }  catch (ex) {    dump("ex = " + ex + "\n");    return null;  }}function GetSelectedMessages(){  try {    var messageArray = {};     var length = {};    var view = GetDBView();    view.getURIsForSelection(messageArray,length);    if (length.value)      return messageArray.value;    else       return null;  }  catch (ex) {    dump("ex = " + ex + "\n");    return null;  }}function GetLoadedMsgFolder(){    if (!gDBView) return null;    return gDBView.msgFolder;}function GetLoadedMessage(){    try {        return gDBView.URIForFirstSelectedMessage;    }    catch (ex) {        return null;    }}//Clear everything related to the current message. called after load start page.function ClearMessageSelection(){  ClearThreadPaneSelection();}function GetCompositeDataSource(command){	if (command == "GetNewMessages" || command == "NewFolder" || command == "MarkAllMessagesRead")        return GetFolderDatasource();	return null;}// Figures out how many messages are selected (hilighted - does not necessarily// have the dotted outline) above a given index row value in the thread pane.function NumberOfSelectedMessagesAboveCurrentIndex(index){  var numberOfMessages = 0;  var indicies = GetSelectedIndices(gDBView);  if (indicies && indicies.length)  {    for (var i = 0; i < indicies.length; i++)    {      if (indicies[i] < index)        ++numberOfMessages;      else        break;    }  }  return numberOfMessages;}function SetNextMessageAfterDelete(){  var treeSelection = GetThreadTree().view.selection;  if (treeSelection.isSelected(treeSelection.currentIndex))  {    gNextMessageViewIndexAfterDelete = gDBView.msgToSelectAfterDelete;    gSelectedIndexWhenDeleting = treeSelection.currentIndex;  }  else if(gDBView.removeRowOnMoveOrDelete)  {    // Only set gThreadPaneDeleteOrMoveOccurred to true if the message was    // truly moved to the trash or deleted, as opposed to an IMAP delete    // (where it is only "marked as deleted".  This will prevent bug 142065.    //    // If it's an IMAP delete, then just set gNextMessageViewIndexAfterDelete    // to treeSelection.currentIndex (where the outline is at) because nothing    // was moved or deleted from the folder.    gThreadPaneDeleteOrMoveOccurred = true;    gNextMessageViewIndexAfterDelete = treeSelection.currentIndex - NumberOfSelectedMessagesAboveCurrentIndex(treeSelection.currentIndex);  }  else    gNextMessageViewIndexAfterDelete = treeSelection.currentIndex;}function EnsureFolderIndex(builder, msgFolder){  // try to get the index of the folder in the tree  var index = builder.getIndexOfResource(msgFolder);  if (index == -1) {    // if we couldn't find the folder, open the parent    builder.toggleOpenState(EnsureFolderIndex(builder, msgFolder.parent));    index = builder.getIndexOfResource(msgFolder);  }  return index;}function SelectFolder(folderUri){  dump("selecting folder " + folderUri + "\n");  var folderTree = GetFolderTree();  var folderResource = RDF.GetResource(folderUri);  var msgFolder = folderResource.QueryInterface(Components.interfaces.nsIMsgFolder);  // before we can select a folder, we need to make sure it is "visible"  // in the tree.  to do that, we need to ensure that all its  // ancestors are expanded  var folderIndex = EnsureFolderIndex(folderTree.builderView, msgFolder);  ChangeSelection(folderTree, folderIndex);}function SelectMessage(messageUri){  var msgHdr = messenger.messageServiceFromURI(messageUri).messageURIToMsgHdr(messageUri);  if (msgHdr)    gDBView.selectMsgByKey(msgHdr.messageKey);}function ReloadWithAllParts(){  gDBView.reloadMessageWithAllParts();}function ReloadMessage(){  gDBView.reloadMessage();}function GetDBView(){  return gDBView;}function GetFolderResource(tree, index){  return tree.builderView.getResourceAtIndex(index);}function GetFolderIndex(tree, resource){  return tree.builderView.getIndexOfResource(resource);}function GetFolderAttribute(tree, source, attribute){  var property = RDF.GetResource("http://home.netscape.com/NC-rdf#" + attribute);  var target = tree.database.GetTarget(source, property, true);  if (target)    target = target.QueryInterface(Components.interfaces.nsIRDFLiteral).Value;  return target;}// Some of the per account junk mail settings have been// converted to global prefs. Let's try to migrate some// of those settings from the default account.function MigrateJunkMailSettings(){  var junkMailSettingsVersion = pref.getIntPref("mail.spam.version");  if (!junkMailSettingsVersion)  {    // get the default account, check to see if we have values for our     // globally migrated prefs.    var defaultAccount = accountManager.defaultAccount;    if (defaultAccount && defaultAccount.incomingServer)    {      // we only care about      var prefix = "mail.server." + defaultAccount.incomingServer.key + ".";      if (pref.prefHasUserValue(prefix + "manualMark"))        pref.setBoolPref("mail.spam.manualMark", pref.getBoolPref(prefix + "manualMark"));      if (pref.prefHasUserValue(prefix + "manualMarkMode"))        pref.setIntPref("mail.spam.manualMarkMode", pref.getIntPref(prefix + "manualMarkMode"));      if (pref.prefHasUserValue(prefix + "spamLoggingEnabled"))        pref.setBoolPref("mail.spam.logging.enabled", pref.getBoolPref(prefix + "spamLoggingEnabled"));      if (pref.prefHasUserValue(prefix + "markAsReadOnSpam"))        pref.setBoolPref("mail.spam.markAsReadOnSpam", pref.getBoolPref(prefix + "markAsReadOnSpam"));    }      // bump the version so we don't bother doing this again.    pref.setIntPref("mail.spam.version", 1);  }}// The first time a user runs a build that supports folder views, pre-populate the favorite folders list// with the existing INBOX folders.function MigrateFolderViews(){  var folderViewsVersion = pref.getIntPref("mail.folder.views.version");  if (!folderViewsVersion)  {     var servers = accountManager.allServers;     var server;     var inbox;     for (var index = 0; index < servers.Count(); index++)     {       server = servers.QueryElementAt(index, Components.interfaces.nsIMsgIncomingServer);       if (server)       {         inbox = GetInboxFolder(server);         if (inbox)           inbox.setFlag(MSG_FOLDER_FLAG_FAVORITE);       }     }    pref.setIntPref("mail.folder.views.version", 1);  }}// Thunderbird has been storing old attachment download meta data in downloads.rdf // even though there was no way to show or clean up this data. Now that we are using // the new download manager in toolkit, we don't want to present this old data.// To migrate to the new download manager, remove downloads.rdf.function MigrateAttachmentDownloadStore(){  var attachmentStoreVersion = pref.getIntPref("mail.attachment.store.version");  if (!attachmentStoreVersion)  {    var dirService = Components.classes["@mozilla.org/file/directory_service;1"]                     .getService(Components.interfaces.nsIProperties);    var downloadsFile = dirService.get("DLoads", Components.interfaces.nsIFile);    if (downloadsFile && downloadsFile.exists())      downloadsFile.remove(false);        // bump the version so we don't bother doing this again.    pref.setIntPref("mail.attachment.store.version", 1);   }}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品黑人性xxxx| 亚洲女厕所小便bbb| 麻豆一区二区在线| 4438成人网| 日本免费新一区视频| 欧美大尺度电影在线| 老司机精品视频线观看86| 日韩午夜小视频| 国产精品系列在线观看| 国产视频在线观看一区二区三区 | 日韩欧美激情一区| 麻豆精品一区二区三区| 久久精品亚洲乱码伦伦中文| 99久久久免费精品国产一区二区| 亚洲黄色av一区| 制服丝袜av成人在线看| 国产一区二区三区综合| 亚洲私人影院在线观看| 欧美日韩日日夜夜| 国产美女一区二区| 国产精品福利影院| 欧美视频中文字幕| 久久国产精品色婷婷| 国产精品狼人久久影院观看方式| 欧美中文字幕一区| 久久国产日韩欧美精品| 中文字幕中文字幕一区| 精品1区2区3区| 国产乱码一区二区三区| 亚洲乱码国产乱码精品精小说| 欧美精品九九99久久| 成人一区二区在线观看| 午夜欧美电影在线观看| 久久久国产精华| 欧美日韩国产免费一区二区| 国产99精品国产| 日精品一区二区三区| 国产精品成人一区二区三区夜夜夜| 欧美精选午夜久久久乱码6080| 福利电影一区二区| 日韩国产在线观看一区| 国产欧美日韩久久| 欧美精品日韩综合在线| 成人ar影院免费观看视频| 日韩精品一二区| 亚洲男帅同性gay1069| 日韩一本二本av| 欧美影院一区二区| 成人三级在线视频| 蜜桃视频在线一区| 亚洲狠狠丁香婷婷综合久久久| 国产欧美久久久精品影院| 欧美日本高清视频在线观看| 色综合久久综合网97色综合| 国产精品主播直播| 免费观看30秒视频久久| 亚洲一二三四区| 亚洲素人一区二区| 国产欧美一区二区精品性| 日韩欧美区一区二| 这里只有精品视频在线观看| 日本精品视频一区二区| 成人中文字幕合集| 国产精品一二三四五| 精品在线一区二区三区| 日韩一区欧美二区| 亚洲午夜久久久久久久久久久| 日韩理论片中文av| 中文字幕免费不卡| 国产亚洲欧美日韩俺去了| 久久综合狠狠综合久久综合88 | 国产在线不卡一卡二卡三卡四卡| 五月天精品一区二区三区| 夜夜嗨av一区二区三区中文字幕 | 国产午夜精品久久久久久免费视| 91精品国产色综合久久不卡电影| 欧美精品丝袜中出| 欧美日韩一区不卡| 欧美日韩午夜在线视频| 欧美性受xxxx黑人xyx性爽| 色综合久久久网| 91电影在线观看| 欧美性大战久久| 欧美日韩精品是欧美日韩精品| 欧美日韩一级片在线观看| 欧美系列亚洲系列| 欧美猛男超大videosgay| 欧美日本精品一区二区三区| 日韩亚洲国产中文字幕欧美| 欧美成人精品高清在线播放| 久久色成人在线| 欧美激情中文字幕| 亚洲人成精品久久久久| 一卡二卡欧美日韩| 日韩国产在线观看一区| 久久99国产精品尤物| 国产乱码精品一区二区三| 成人免费观看av| 色狠狠综合天天综合综合| 欧美在线不卡一区| 91.com视频| 久久久综合视频| 最新日韩在线视频| 亚洲成人自拍一区| 蜜臀精品久久久久久蜜臀| 精品亚洲免费视频| 成人18视频日本| 欧美精品99久久久**| 精品国精品自拍自在线| 国产精品久久久久一区| 午夜不卡av在线| 国产精品一二三四五| 91蜜桃网址入口| 91精品国产综合久久精品性色| 精品久久久久久久久久久院品网| 欧美极品另类videosde| 一区二区高清免费观看影视大全| 蜜桃av一区二区三区| 波多野结衣在线一区| 欧美日韩国产一区| 久久精品一区二区| 亚洲综合激情另类小说区| 狠狠v欧美v日韩v亚洲ⅴ| 色综合激情五月| 久久一日本道色综合| 一区二区三区电影在线播| 麻豆91免费观看| 色噜噜狠狠一区二区三区果冻| 久久综合久久综合亚洲| 一区二区三区自拍| 国产一区二区调教| 欧美日韩久久一区二区| 久久精品欧美一区二区三区不卡 | 蜜臀精品久久久久久蜜臀| 99久久国产综合色|国产精品| 6080亚洲精品一区二区| 国产精品视频第一区| 日韩一区精品字幕| 日本韩国一区二区三区视频| 国产欧美一区在线| 青青草成人在线观看| 91麻豆福利精品推荐| 久久久久久97三级| 日韩福利电影在线观看| 色综合欧美在线视频区| 久久一留热品黄| 日本亚洲天堂网| 欧美日韩亚洲高清一区二区| 亚洲欧美中日韩| 国产九色sp调教91| 日韩欧美电影在线| 亚洲在线中文字幕| 色哟哟在线观看一区二区三区| 国产精品视频第一区| 国产精品白丝jk白祙喷水网站| 这里只有精品视频在线观看| 中文字幕一区三区| 成人精品国产免费网站| 精品美女在线播放| 青青草91视频| 欧美区视频在线观看| 亚洲成人在线网站| 欧美在线你懂的| 亚洲黄色小视频| 在线观看av一区| 亚洲1区2区3区视频| 欧美天堂一区二区三区| 亚洲国产一二三| 欧美日韩一区二区三区高清| 亚洲最新在线观看| 色噜噜偷拍精品综合在线| 亚洲三级久久久| 色吧成人激情小说| 亚洲色图丝袜美腿| 欧美亚洲高清一区| 亚洲123区在线观看| 欧美日韩国产一级片| 日本不卡一二三| 26uuu国产电影一区二区| 国产精品一区二区在线观看不卡 | 成人免费视频一区| 国产精品久久99| 日本电影欧美片| 日韩国产欧美在线播放| 欧美一区日韩一区| 精品一区二区三区欧美| 久久欧美中文字幕| av电影在线观看完整版一区二区| 亚洲黄色av一区| 777午夜精品免费视频| 久久精品国产亚洲a| 国产亚洲一区字幕| 99久久er热在这里只有精品66| 一区二区成人在线视频| 91精品国产综合久久精品性色| 国产乱一区二区| 亚洲免费观看高清完整版在线观看 | 自拍偷拍亚洲综合| 欧美三电影在线| 精品一区二区三区免费视频|