mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-09 11:25:00 +00:00
Moved charset folder UI into folder property dialog. bug 65018, r=sspitzer, sr=bienvenu.
This commit is contained in:
parent
b62b903001
commit
135ae1c799
@ -1,72 +0,0 @@
|
||||
/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape Public
|
||||
* License Version 1.1 (the "License"); you may not use this file
|
||||
* except in compliance with the License. You may obtain a copy of
|
||||
* the License at http://www.mozilla.org/NPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is Mozilla Communicator client code, released
|
||||
* March 31, 1998.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 1998-1999 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
*/
|
||||
|
||||
var dialog;
|
||||
|
||||
function onLoad()
|
||||
{
|
||||
var arguments = window.arguments[0];
|
||||
|
||||
dialog = {
|
||||
OKButton: document.getElementById("ok"),
|
||||
okCallback: arguments.okCallback
|
||||
};
|
||||
|
||||
// set override checkbox
|
||||
document.getElementById("folderCharsetOverride").checked = arguments.folderCharsetOverride;
|
||||
// dump("folderCharsetOverride " + arguments.folderCharsetOverride + "\n");
|
||||
|
||||
// get charset title (i.e. localized name), needed in order to set value for the menu
|
||||
var ccm = Components.classes['@mozilla.org/charset-converter-manager;1'];
|
||||
ccm = ccm.getService();
|
||||
ccm = ccm.QueryInterface(Components.interfaces.nsICharsetConverterManager2);
|
||||
// get a localized string
|
||||
var charsetTitle = ccm.GetCharsetTitle(ccm.GetCharsetAtom(arguments.folderCharset));
|
||||
|
||||
// select the menu item
|
||||
var folderCharsetList = document.getElementById("folderCharsetList");
|
||||
folderCharsetList.setAttribute("value", charsetTitle);
|
||||
folderCharsetList.setAttribute("data", arguments.folderCharset);
|
||||
// dump("folderCharset " + arguments.folderCharset + "\n");
|
||||
|
||||
// pre select the folderPicker, based on what they selected in the folder pane
|
||||
dialog.preselectedFolderURI = arguments.preselectedURI;
|
||||
|
||||
doSetOKCancel(onOK, onCancel);
|
||||
}
|
||||
|
||||
function onOK()
|
||||
{
|
||||
var folderCharsetList = document.getElementById("folderCharsetList");
|
||||
var characterSet = folderCharsetList.getAttribute("data");
|
||||
|
||||
dialog.okCallback(document.getElementById("folderCharsetOverride").checked,
|
||||
characterSet, dialog.preselectedFolderURI);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function onCancel()
|
||||
{
|
||||
// close the window
|
||||
return true;
|
||||
}
|
@ -1,64 +0,0 @@
|
||||
<?xml version="1.0"?> <!-- -*- Mode: xml; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- -->
|
||||
<!--
|
||||
- The contents of this file are subject to the Netscape Public
|
||||
- License Version 1.1 (the "License"); you may not use this file
|
||||
- except in compliance with the License. You may obtain a copy of
|
||||
- the License at http://www.mozilla.org/NPL/
|
||||
-
|
||||
- Software distributed under the License is distributed on an "AS
|
||||
- IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
- implied. See the License for the specific language governing
|
||||
- rights and limitations under the License.
|
||||
-
|
||||
- The Original Code is Mozilla Communicator client code, released
|
||||
- March 31, 1998.
|
||||
-
|
||||
- The Initial Developer of the Original Code is Netscape
|
||||
- Communications Corporation. Portions created by Netscape are
|
||||
- Copyright (C) 1998-1999 Netscape Communications Corporation. All
|
||||
- Rights Reserved.
|
||||
-
|
||||
-->
|
||||
|
||||
<?xml-stylesheet href="chrome://messenger/skin/messenger.css" type="text/css"?>
|
||||
|
||||
<?xul-overlay href="chrome://global/content/dialogOverlay.xul"?>
|
||||
<?xul-overlay href="chrome://messenger/content/msgFolderPickerOverlay.xul"?>
|
||||
|
||||
<!DOCTYPE window SYSTEM "chrome://messenger/locale/folderCharsetDialog.dtd">
|
||||
|
||||
<window xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
title="&folderCharsetDialog.title;"
|
||||
align="vertical"
|
||||
class="dialog"
|
||||
onload="onLoad();">
|
||||
|
||||
<script type="text/javascript" src="chrome://global/content/strres.js"/>
|
||||
<script type="text/javascript" src="chrome://messenger/content/mailCommands.js"/>
|
||||
<script type="text/javascript" src="chrome://messenger/content/folderCharsetDialog.js"/>
|
||||
|
||||
<keyset id="keyset"/>
|
||||
|
||||
<box align="vertical">
|
||||
|
||||
<spring flex="100%"/>
|
||||
|
||||
<text value="&folderCharset.label;" class="label" for="folderCharsetList"/>
|
||||
<menulist id="folderCharsetList" ref="NC:DecodersRoot" datasources="rdf:charset-menu">
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://home.netscape.com/NC-rdf#Name" data="..." uri="..."/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
|
||||
<checkbox id="folderCharsetOverride" value="&folderCharsetOverride.label;" />
|
||||
|
||||
<spring flex="100%"/>
|
||||
|
||||
<box id="okCancelButtons"/>
|
||||
|
||||
</box>
|
||||
|
||||
</window>
|
@ -13,6 +13,11 @@ function folderPropsOKButtonCallback()
|
||||
gMsgFolder.setFlag(0x8000000);
|
||||
else
|
||||
gMsgFolder.clearFlag(0x8000000);
|
||||
|
||||
// set charset attributes
|
||||
var folderCharsetList = document.getElementById("folderCharsetList");
|
||||
gMsgFolder.charset = folderCharsetList.getAttribute("data");
|
||||
gMsgFolder.charsetOverride = document.getElementById("folderCharsetOverride").checked;
|
||||
}
|
||||
window.close();
|
||||
}
|
||||
@ -65,7 +70,36 @@ function folderPropsOnLoad()
|
||||
if (!gMsgFolder)
|
||||
dump("no gMsgFolder preselectfolder uri = "+preselectedFolderURI+'\n');
|
||||
|
||||
if (gMsgFolder && (gMsgFolder.flags & 0x8000000))
|
||||
document.getElementById("selectForDownload").checked = true;
|
||||
if (gMsgFolder) {
|
||||
if (gMsgFolder.flags & 0x8000000) {
|
||||
document.getElementById("selectForDownload").checked = true;
|
||||
}
|
||||
|
||||
// get charset title (i.e. localized name), needed in order to set value for the menu
|
||||
var ccm = Components.classes['@mozilla.org/charset-converter-manager;1'];
|
||||
ccm = ccm.getService();
|
||||
ccm = ccm.QueryInterface(Components.interfaces.nsICharsetConverterManager2);
|
||||
// get a localized string
|
||||
var charsetTitle = ccm.GetCharsetTitle(ccm.GetCharsetAtom(gMsgFolder.charset));
|
||||
|
||||
// select the menu item
|
||||
var folderCharsetList = document.getElementById("folderCharsetList");
|
||||
folderCharsetList.setAttribute("value", charsetTitle);
|
||||
folderCharsetList.setAttribute("data", gMsgFolder.charset);
|
||||
|
||||
// set override checkbox
|
||||
document.getElementById("folderCharsetOverride").checked = gMsgFolder.charsetOverride;
|
||||
}
|
||||
|
||||
// select the initial tab
|
||||
if (window.arguments[0].tabID) {
|
||||
// set index for starting panel on the <tabpanel> element
|
||||
var folderPropTabPanel = document.getElementById("folderPropTabPanel");
|
||||
folderPropTabPanel.setAttribute("index", window.arguments[0].tabIndex);
|
||||
|
||||
var tab = document.getElementById(window.arguments[0].tabID);
|
||||
tab.setAttribute("selected", "true");
|
||||
tab = document.getElementById("GeneralTab");
|
||||
tab.setAttribute("selected", "false");
|
||||
}
|
||||
}
|
||||
|
@ -43,10 +43,11 @@
|
||||
|
||||
<tabcontrol orient="vertical">
|
||||
<tabbox>
|
||||
<tab value="&generalInfo.label;" accesskey="&generalInfo.accesskey;"/>
|
||||
<tab id="GeneralTab" value="&generalInfo.label;" accesskey="&generalInfo.accesskey;"/>
|
||||
<tab id="DownloadTab" value="&download.label;" accesskey="&download.accesskey;"/>
|
||||
<tab id="folderCharsetTab" value="&folderCharsetTab.label;" accesskey="&folderCharsetTab.accesskey;"/>
|
||||
</tabbox>
|
||||
<tabpanel>
|
||||
<tabpanel id="folderPropTabPanel">
|
||||
<box orient="vertical">
|
||||
<box id="nameBox" orient="vertical">
|
||||
<text class="label" value="&folderProps.name.label;" />
|
||||
@ -62,6 +63,18 @@
|
||||
<checkbox id="selectForDownload" value="&download.check.label;" />
|
||||
</titledbox>
|
||||
</titledbox>
|
||||
|
||||
<box orient="vertical">
|
||||
<menulist id="folderCharsetList" ref="NC:DecodersRoot" datasources="rdf:charset-menu">
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://home.netscape.com/NC-rdf#Name" data="..." uri="..."/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
<checkbox id="folderCharsetOverride" value="&folderCharsetOverride.label;" />
|
||||
</box>
|
||||
|
||||
</tabpanel>
|
||||
</tabcontrol>
|
||||
|
||||
|
@ -243,9 +243,10 @@ function MsgFolderProperties()
|
||||
var dialog = window.openDialog(
|
||||
"chrome://messenger/content/imapFolderProps.xul",
|
||||
"",
|
||||
"chrome,titlebar,modal",
|
||||
{preselectedURI:preselectedURI, title:windowTitle,
|
||||
okCallback:FolderProperties, name:name});
|
||||
"chrome,centerscreen,titlebar,modal",
|
||||
{preselectedURI:preselectedURI, title:windowTitle,
|
||||
okCallback:FolderProperties,
|
||||
tabID:"", tabIndex:0, name:name});
|
||||
}
|
||||
|
||||
function FolderProperties(name, uri)
|
||||
@ -313,36 +314,14 @@ function LastToClose()
|
||||
function MsgSetFolderCharset()
|
||||
{
|
||||
var preselectedURI = GetSelectedFolderURI();
|
||||
var selectedFolder = GetResourceFromUri(preselectedURI);
|
||||
var msgFolder = selectedFolder.QueryInterface(Components.interfaces.nsIMsgFolder);
|
||||
|
||||
// dump("preselectedURI = " + preselectedURI + "\n");
|
||||
var dialog = window.openDialog(
|
||||
"chrome://messenger/content/folderCharsetDialog.xul",
|
||||
"",
|
||||
"chrome,centerscreen,titlebar,modal",
|
||||
{preselectedURI: preselectedURI,
|
||||
okCallback: SetFolderCharset,
|
||||
folderCharset: msgFolder.charset,
|
||||
folderCharsetOverride: msgFolder.charsetOverride});
|
||||
}
|
||||
|
||||
function SetFolderCharset(override, charset, uri)
|
||||
{
|
||||
// dump("uri,charset,override = " + uri + "," + charset + "," + override + "\n");
|
||||
var folderTree = GetFolderTree();
|
||||
if (folderTree) {
|
||||
if (uri && charset) {
|
||||
var selectedFolder = GetResourceFromUri(uri);
|
||||
var msgFolder = selectedFolder.QueryInterface(Components.interfaces.nsIMsgFolder);
|
||||
if (msgFolder) {
|
||||
msgFolder.charset = charset;
|
||||
msgFolder.charsetOverride = override;
|
||||
}
|
||||
|
||||
ClearThreadPane();
|
||||
ClearMessagePane();
|
||||
folderTree.clearItemSelection();
|
||||
}
|
||||
}
|
||||
var name = GetFolderNameFromUri(preselectedURI, folderTree);
|
||||
var windowTitle = Bundle.GetStringFromName("folderProperties");
|
||||
var dialog = window.openDialog(
|
||||
"chrome://messenger/content/imapFolderProps.xul",
|
||||
"",
|
||||
"chrome,centerscreen,titlebar,modal",
|
||||
{preselectedURI:preselectedURI, title:windowTitle,
|
||||
okCallback:FolderProperties,
|
||||
tabID:"folderCharsetTab", tabIndex:2, name:name});
|
||||
}
|
||||
|
@ -1,24 +0,0 @@
|
||||
<!--
|
||||
- The contents of this file are subject to the Netscape Public
|
||||
- License Version 1.1 (the "License"); you may not use this file
|
||||
- except in compliance with the License. You may obtain a copy of
|
||||
- the License at http://www.mozilla.org/NPL/
|
||||
-
|
||||
- Software distributed under the License is distributed on an "AS
|
||||
- IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
- implied. See the License for the specific language governing
|
||||
- rights and limitations under the License.
|
||||
-
|
||||
- The Original Code is Mozilla Communicator client code, released
|
||||
- March 31, 1998.
|
||||
-
|
||||
- The Initial Developer of the Original Code is Netscape
|
||||
- Communications Corporation. Portions created by Netscape are
|
||||
- Copyright (C) 1998-1999 Netscape Communications Corporation. All
|
||||
- Rights Reserved.
|
||||
-
|
||||
-->
|
||||
|
||||
<!ENTITY folderCharsetDialog.title "Folder Character Coding">
|
||||
<!ENTITY folderCharset.label "Select a character coding for your folder:">
|
||||
<!ENTITY folderCharsetOverride.label "Apply default to all messages (ignore charset specified by MIME header)">
|
@ -26,6 +26,9 @@
|
||||
<!ENTITY download.label "Download">
|
||||
<!ENTITY download.accesskey "d">
|
||||
<!ENTITY download.check.label "Select this folder for download">
|
||||
<!ENTITY folderCharsetTab.label "Character coding">
|
||||
<!ENTITY folderCharsetOverride.label "Apply default to all messages (ignore charset specified by MIME header)">
|
||||
<!ENTITY folderCharsetTab.accesskey "c">
|
||||
|
||||
<!ENTITY folderProps.information.label "Information:">
|
||||
<!ENTITY folderProps.name.label "Name:">
|
||||
|
@ -104,8 +104,6 @@ messenger.jar:
|
||||
content/messenger/msgFolderPickerOverlay.xul (base/resources/content/msgFolderPickerOverlay.xul)
|
||||
content/messenger/renameFolderDialog.xul (base/resources/content/renameFolderDialog.xul)
|
||||
content/messenger/renameFolderDialog.js (base/resources/content/renameFolderDialog.js)
|
||||
content/messenger/folderCharsetDialog.xul (base/resources/content/folderCharsetDialog.xul)
|
||||
content/messenger/folderCharsetDialog.js (base/resources/content/folderCharsetDialog.js)
|
||||
content/messenger/messengerdnd.js (base/resources/content/messengerdnd.js)
|
||||
content/messenger/mailContextMenus.js (base/resources/content/mailContextMenus.js)
|
||||
content/messenger/msgPrintEngine.js (base/resources/content/msgPrintEngine.js)
|
||||
@ -178,7 +176,6 @@ en-US.jar:
|
||||
locale/en-US/messenger/folderpane.dtd (base/resources/locale/en-US/folderpane.dtd)
|
||||
locale/en-US/messenger/newFolderDialog.dtd (base/resources/locale/en-US/newFolderDialog.dtd)
|
||||
locale/en-US/messenger/renameFolderDialog.dtd (base/resources/locale/en-US/renameFolderDialog.dtd)
|
||||
locale/en-US/messenger/folderCharsetDialog.dtd (base/resources/locale/en-US/folderCharsetDialog.dtd)
|
||||
locale/en-US/messenger/folderProps.dtd (base/resources/locale/en-US/folderProps.dtd)
|
||||
locale/en-US/messenger/subscribe.dtd (base/resources/locale/en-US/subscribe.dtd)
|
||||
locale/en-US/messenger/subscribe.properties (base/resources/locale/en-US/subscribe.properties)
|
||||
|
Loading…
Reference in New Issue
Block a user