if the news server or imap server is "secure", show the secure icon

in the folder pane.  the work is done in the data source, so eventually
I'll have to change other xul (like the folder picker and the messenger menus)
to show the right icons, too.  r=mscott
This commit is contained in:
sspitzer%netscape.com 2000-01-28 08:01:27 +00:00
parent bcc06d52e9
commit bb7cf9ada6
10 changed files with 69 additions and 1 deletions

View File

@ -48,6 +48,7 @@
SpecialFolder="rdf:http://home.netscape.com/NC-rdf#SpecialFolder"
BiffState="rdf:http://home.netscape.com/NC-rdf#BiffState"
IsServer="rdf:http://home.netscape.com/NC-rdf#IsServer"
IsSecure="rdf:http://home.netscape.com/NC-rdf#IsSecure"
ServerType="rdf:http://home.netscape.com/NC-rdf#ServerType"
HasUnreadMessages="rdf:http://home.netscape.com/NC-rdf#HasUnreadMessages"
SubfoldersHaveUnreadMessages="rdf:http://home.netscape.com/NC-rdf#SubfoldersHaveUnreadMessages"

View File

@ -88,3 +88,4 @@ server.gif
server-news.gif
server-news-lock.gif
server-remote.gif
server-remote-lock.gif

View File

@ -97,6 +97,7 @@ EXPORT_RESOURCE_SAMPLES = \
server-news.gif \
server-remote.gif \
server-news-lock.gif \
server-remote-lock.gif \
$(NULL)
include $(topsrcdir)/config/rules.mk

View File

@ -111,6 +111,11 @@ treeitem[ServerType="imap"][open="true"] > treerow > treecell > .tree-icon
list-style-image: url("chrome://messenger/skin/folder-server-open.gif");
}
treeitem[IsServer="true"][ServerType="imap"][IsSecure="true"] > treerow > treecell > .tree-icon
{
list-style-image: url("chrome://messenger/skin/server-remote-lock.gif");
}
treeitem[IsServer="true"][ServerType="imap"] > treerow > treecell > .tree-icon
{
list-style-image: url("chrome://messenger/skin/server-remote.gif");
@ -123,11 +128,17 @@ treeitem[ServerType="nntp"] > treerow > treecell > .tree-icon
list-style-image: url("chrome://messenger/skin/folder-newsgroup.gif");
}
treeitem[IsServer="true"][ServerType="nntp"][IsSecure="true"] > treerow > treecell > .tree-icon
{
list-style-image: url("chrome://messenger/skin/server-news-lock.gif");
}
treeitem[IsServer="true"][ServerType="nntp"] > treerow > treecell > .tree-icon
{
list-style-image: url("chrome://messenger/skin/server-news.gif");
}
/*All Servers*/
treeitem[IsServer="true"] > treerow > treecell
{

View File

@ -92,6 +92,7 @@ install::
$(MAKE_INSTALL) server-news.gif $(DIST)\bin\chrome\messenger\skin\default
$(MAKE_INSTALL) server-news-lock.gif $(DIST)\bin\chrome\messenger\skin\default
$(MAKE_INSTALL) server-remote.gif $(DIST)\bin\chrome\messenger\skin\default
$(MAKE_INSTALL) server-remote-lock.gif $(DIST)\bin\chrome\messenger\skin\default
clobber::
rm -f $(DIST)\chrome\messenger\skin\default\messenger.css
@ -121,6 +122,11 @@ clobber::
rm -f $(DIST)\chrome\messenger\skin\default\unthreadcol.gif
rm -f $(DIST)\chrome\messenger\skin\default\flagcol.gif
rm -f $(DIST)\chrome\messenger\skin\default\flaggedmail.gif
rm -f $(DIST)\chrome\messenger\skin\default\server.gif
rm -f $(DIST)\chrome\messenger\skin\default\server-news.gif
rm -f $(DIST)\chrome\messenger\skin\default\server-remote.gif
rm -f $(DIST)\chrome\messenger\skin\default\server-remote-lock.gif
rm -f $(DIST)\chrome\messenger\skin\default\server-news-lock.gif

View File

@ -187,16 +187,23 @@ iframe {
list-style-image: url("chrome://messenger/skin/folder-server-open.gif");
}
.folderMenuItem[IsServer="true"][ServerType="imap"][IsSecure="true"] > .menu-left {
list-style-image: url("chrome://messenger/skin/server-remote-lock.gif");
}
.folderMenuItem[IsServer="true"][ServerType="imap"] > .menu-left {
list-style-image: url("chrome://messenger/skin/server-remote.gif");
}
/* News folders */
.folderMenuItem[ServerType="nntp"] > .menu-left {
list-style-image: url("chrome://messenger/skin/folder-newsgroup.gif");
}
.folderMenuItem[IsServer="true"][ServerType="nntp"][IsSecure="true"] > .menu-left {
list-style-image: url("chrome://messenger/skin/server-news-lock.gif");
}
.folderMenuItem[IsServer="true"][ServerType="nntp"] > .menu-left {
list-style-image: url("chrome://messenger/skin/server-news.gif");
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 157 B

View File

@ -62,6 +62,7 @@ nsIRDFResource* nsMsgFolderDataSource::kNC_FolderTreeNameSort= nsnull;
nsIRDFResource* nsMsgFolderDataSource::kNC_SpecialFolder= nsnull;
nsIRDFResource* nsMsgFolderDataSource::kNC_ServerType = nsnull;
nsIRDFResource* nsMsgFolderDataSource::kNC_IsServer = nsnull;
nsIRDFResource* nsMsgFolderDataSource::kNC_IsSecure = nsnull;
nsIRDFResource* nsMsgFolderDataSource::kNC_CanSubscribe = nsnull;
nsIRDFResource* nsMsgFolderDataSource::kNC_CanFileMessages = nsnull;
nsIRDFResource* nsMsgFolderDataSource::kNC_CanCreateSubfolders = nsnull;
@ -119,6 +120,7 @@ nsMsgFolderDataSource::~nsMsgFolderDataSource (void)
NS_RELEASE2(kNC_SpecialFolder, refcnt);
NS_RELEASE2(kNC_ServerType, refcnt);
NS_RELEASE2(kNC_IsServer, refcnt);
NS_RELEASE2(kNC_IsSecure, refcnt);
NS_RELEASE2(kNC_CanSubscribe, refcnt);
NS_RELEASE2(kNC_CanFileMessages, refcnt);
NS_RELEASE2(kNC_CanCreateSubfolders, refcnt);
@ -173,6 +175,7 @@ nsresult nsMsgFolderDataSource::Init()
rdf->GetResource(NC_RDF_SPECIALFOLDER, &kNC_SpecialFolder);
rdf->GetResource(NC_RDF_SERVERTYPE, &kNC_ServerType);
rdf->GetResource(NC_RDF_ISSERVER, &kNC_IsServer);
rdf->GetResource(NC_RDF_ISSECURE, &kNC_IsSecure);
rdf->GetResource(NC_RDF_CANSUBSCRIBE, &kNC_CanSubscribe);
rdf->GetResource(NC_RDF_CANFILEMESSAGES, &kNC_CanFileMessages);
rdf->GetResource(NC_RDF_CANCREATESUBFOLDERS, &kNC_CanCreateSubfolders);
@ -406,6 +409,7 @@ NS_IMETHODIMP nsMsgFolderDataSource::GetTargets(nsIRDFResource* source,
(kNC_FolderTreeName == property) ||
(kNC_SpecialFolder == property) ||
(kNC_IsServer == property) ||
(kNC_IsSecure == property) ||
(kNC_CanSubscribe == property) ||
(kNC_CanFileMessages == property) ||
(kNC_CanCreateSubfolders == property) ||
@ -525,6 +529,7 @@ nsMsgFolderDataSource::getFolderArcLabelsOut(nsISupportsArray **arcs)
(*arcs)->AppendElement(kNC_SpecialFolder);
(*arcs)->AppendElement(kNC_ServerType);
(*arcs)->AppendElement(kNC_IsServer);
(*arcs)->AppendElement(kNC_IsSecure);
(*arcs)->AppendElement(kNC_CanSubscribe);
(*arcs)->AppendElement(kNC_CanFileMessages);
(*arcs)->AppendElement(kNC_CanCreateSubfolders);
@ -885,6 +890,8 @@ nsresult nsMsgFolderDataSource::createFolderNode(nsIMsgFolder* folder,
rv = createFolderServerTypeNode(folder, target);
else if ((kNC_IsServer == property))
rv = createFolderIsServerNode(folder, target);
else if ((kNC_IsSecure == property))
rv = createFolderIsSecureNode(folder, target);
else if ((kNC_CanSubscribe == property))
rv = createFolderCanSubscribeNode(folder, target);
else if ((kNC_CanFileMessages == property))
@ -1051,6 +1058,35 @@ nsMsgFolderDataSource::createFolderIsServerNode(nsIMsgFolder* folder,
return NS_OK;
}
nsresult
nsMsgFolderDataSource::createFolderIsSecureNode(nsIMsgFolder* folder,
nsIRDFNode **target)
{
nsresult rv;
PRBool isSecure;
nsCOMPtr<nsIMsgIncomingServer> server;
rv = folder->GetServer(getter_AddRefs(server));
if (NS_FAILED(rv) || !server) {
// this could be a folder, not a server, so that's ok;
isSecure = PR_FALSE;
}
else {
rv = server->GetIsSecure(&isSecure);
if (NS_FAILED(rv)) return rv;
}
*target = nsnull;
if (isSecure)
*target = kTrueLiteral;
else
*target = kFalseLiteral;
NS_IF_ADDREF(*target);
return NS_OK;
}
nsresult
nsMsgFolderDataSource::createFolderCanSubscribeNode(nsIMsgFolder* folder,
nsIRDFNode **target)
@ -1560,6 +1596,7 @@ nsresult nsMsgFolderDataSource::DoFolderHasAssertion(nsIMsgFolder *folder,
(kNC_SpecialFolder == property) ||
(kNC_ServerType == property) ||
(kNC_IsServer == property) ||
(kNC_IsSecure == property) ||
(kNC_CanSubscribe == property) ||
(kNC_CanFileMessages == property) ||
(kNC_CanCreateSubfolders == property) ||

View File

@ -120,6 +120,8 @@ protected:
nsIRDFNode **target);
nsresult createFolderIsServerNode(nsIMsgFolder *folder,
nsIRDFNode **target);
nsresult createFolderIsSecureNode(nsIMsgFolder *folder,
nsIRDFNode **target);
nsresult createFolderCanSubscribeNode(nsIMsgFolder *folder,
nsIRDFNode **target);
nsresult createFolderCanFileMessagesNode(nsIMsgFolder *folder,
@ -188,6 +190,7 @@ protected:
static nsIRDFResource* kNC_SpecialFolder;
static nsIRDFResource* kNC_ServerType;
static nsIRDFResource* kNC_IsServer;
static nsIRDFResource* kNC_IsSecure;
static nsIRDFResource* kNC_CanSubscribe;
static nsIRDFResource* kNC_CanFileMessages;
static nsIRDFResource* kNC_CanCreateSubfolders;

View File

@ -55,6 +55,7 @@ typedef struct _nsMsgRDFNotification {
#define NC_RDF_SPECIALFOLDER NC_NAMESPACE_URI "SpecialFolder"
#define NC_RDF_SERVERTYPE NC_NAMESPACE_URI "ServerType"
#define NC_RDF_ISSERVER NC_NAMESPACE_URI "IsServer"
#define NC_RDF_ISSECURE NC_NAMESPACE_URI "IsSecure"
#define NC_RDF_CANSUBSCRIBE NC_NAMESPACE_URI "CanSubscribe"
#define NC_RDF_CANFILEMESSAGES NC_NAMESPACE_URI "CanFileMessages"
#define NC_RDF_CANCREATESUBFOLDERS NC_NAMESPACE_URI "CanCreateSubfolders"