зеркало из https://github.com/mozilla/gecko-dev.git
Split datasources into message and folder datasources and moved them to base.
This commit is contained in:
Родитель
0854186ce7
Коммит
e142b0db9b
|
@ -104,6 +104,7 @@ LINCS=$(LINCS) -I, \
|
|||
-I$(PUBLIC)\netlib \
|
||||
-I$(PUBLIC)\dom \
|
||||
-I$(PUBLIC)\appcores \
|
||||
-I$(PUBLIC)\mime \
|
||||
$(NULL)
|
||||
|
||||
#//------------------------------------------------------------------------
|
||||
|
|
|
@ -33,6 +33,22 @@
|
|||
0xa8f54ee0, 0xd292, 0x11d2, \
|
||||
{0xb7, 0xf6, 0x00, 0x80, 0x5f, 0x05, 0xff, 0xa5}}
|
||||
|
||||
#define NS_MAILNEWSFOLDERDATASOURCE_CID \
|
||||
{ /* 2B8ED4A4-F684-11d2-8A5D-0060B0FC04D2 */ \
|
||||
0x2b8ed4a4, \
|
||||
0xf684, \
|
||||
0x11d2, \
|
||||
{0x8a, 0x5d, 0x0, 0x60, 0xb0, 0xfc, 0x4, 0xd2} \
|
||||
}
|
||||
|
||||
#define NS_MAILNEWSMESSAGEDATASOURCE_CID \
|
||||
{ /* 2B8ED4A5-F684-11d2-8A5D-0060B0FC04D2 */ \
|
||||
0x2b8ed4a5, \
|
||||
0xf684, \
|
||||
0x11d2, \
|
||||
{0x8a, 0x5d, 0x0, 0x60, 0xb0, 0xfc, 0x4, 0xd2} \
|
||||
}
|
||||
|
||||
#define NS_MESSAGEVIEWDATASOURCE_CID \
|
||||
{ /* 14495573-E945-11d2-8A52-0060B0FC04D2 */ \
|
||||
0x14495573, 0xe945, 0x11d2, \
|
||||
|
|
|
@ -43,6 +43,8 @@
|
|||
#include "nsMsgAccountManager.h"
|
||||
#include "nsMsgIdentity.h"
|
||||
#include "nsMessageViewDataSource.h"
|
||||
#include "nsMsgFolderDataSource.h"
|
||||
#include "nsMsgMessageDataSource.h"
|
||||
|
||||
static NS_DEFINE_CID(kComponentManagerCID, NS_COMPONENTMANAGER_CID);
|
||||
|
||||
|
@ -58,6 +60,8 @@ static NS_DEFINE_CID(kCMsgFolderEventCID, NS_MSGFOLDEREVENT_CID);
|
|||
static NS_DEFINE_CID(kCMsgAppCoreCID, NS_MSGAPPCORE_CID);
|
||||
static NS_DEFINE_CID(kCMsgGroupRecordCID, NS_MSGGROUPRECORD_CID);
|
||||
|
||||
static NS_DEFINE_CID(kMailNewsFolderDataSourceCID, NS_MAILNEWSFOLDERDATASOURCE_CID);
|
||||
static NS_DEFINE_CID(kMailNewsMessageDataSourceCID, NS_MAILNEWSMESSAGEDATASOURCE_CID);
|
||||
static NS_DEFINE_CID(kCMessageViewDataSourceCID, NS_MESSAGEVIEWDATASOURCE_CID);
|
||||
|
||||
static NS_DEFINE_CID(kCMsgAccountManagerCID, NS_MSGACCOUNTMANAGER_CID);
|
||||
|
@ -208,8 +212,34 @@ nsMsgFactory::CreateInstance(nsISupports *aOuter,
|
|||
nsMsgIdentity* identity = new nsMsgIdentity();
|
||||
return identity->QueryInterface(aIID, aResult);
|
||||
}
|
||||
|
||||
else if (mClassID.Equals(kCMessageViewDataSourceCID))
|
||||
else if (mClassID.Equals(kMailNewsFolderDataSourceCID))
|
||||
{
|
||||
nsresult rv;
|
||||
nsMsgFolderDataSource * folderDataSource = new nsMsgFolderDataSource();
|
||||
if (folderDataSource)
|
||||
rv = folderDataSource->QueryInterface(aIID, aResult);
|
||||
else
|
||||
rv = NS_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
if (NS_FAILED(rv) && folderDataSource)
|
||||
delete folderDataSource;
|
||||
return rv;
|
||||
}
|
||||
else if (mClassID.Equals(kMailNewsMessageDataSourceCID))
|
||||
{
|
||||
nsresult rv;
|
||||
nsMsgMessageDataSource * messageDataSource = new nsMsgMessageDataSource();
|
||||
if (messageDataSource)
|
||||
rv = messageDataSource->QueryInterface(aIID, aResult);
|
||||
else
|
||||
rv = NS_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
if (NS_FAILED(rv) && messageDataSource)
|
||||
delete messageDataSource;
|
||||
|
||||
return rv;
|
||||
}
|
||||
else if (mClassID.Equals(kCMessageViewDataSourceCID))
|
||||
{
|
||||
nsMessageViewDataSource * msgView = new nsMessageViewDataSource();
|
||||
if (msgView)
|
||||
|
@ -342,6 +372,20 @@ NSRegisterSelf(nsISupports* aServMgr, const char* path)
|
|||
PR_TRUE, PR_TRUE);
|
||||
if (NS_FAILED(rv)) goto done;
|
||||
|
||||
// register our RDF datasources:
|
||||
rv = compMgr->RegisterComponent(kMailNewsFolderDataSourceCID,
|
||||
"Mail/News Folder Data Source",
|
||||
NS_RDF_DATASOURCE_PROGID_PREFIX "mailnewsfolders",
|
||||
path, PR_TRUE, PR_TRUE);
|
||||
if (NS_FAILED(rv)) goto done;
|
||||
|
||||
// register our RDF datasources:
|
||||
rv = compMgr->RegisterComponent(kMailNewsMessageDataSourceCID,
|
||||
"Mail/News Message Data Source",
|
||||
NS_RDF_DATASOURCE_PROGID_PREFIX "mailnewsmessages",
|
||||
path, PR_TRUE, PR_TRUE);
|
||||
if (NS_FAILED(rv)) goto done;
|
||||
|
||||
rv = compMgr->RegisterComponent(kCMessageViewDataSourceCID,
|
||||
"Mail/News Message View Data Source",
|
||||
NS_RDF_DATASOURCE_PROGID_PREFIX "mail-messageview",
|
||||
|
@ -385,6 +429,10 @@ NSUnregisterSelf(nsISupports* aServMgr, const char* path)
|
|||
if (NS_FAILED(rv)) goto done;
|
||||
rv = compMgr->UnregisterComponent(kCMsgMailSessionCID, path);
|
||||
if(NS_FAILED(rv)) goto done;
|
||||
rv = compMgr->UnregisterComponent(kMailNewsFolderDataSourceCID, path);
|
||||
if (NS_FAILED(rv)) goto done;
|
||||
rv = compMgr->UnregisterComponent(kMailNewsMessageDataSourceCID, path);
|
||||
if (NS_FAILED(rv)) goto done;
|
||||
rv = compMgr->UnregisterComponent(kCMessageViewDataSourceCID, path);
|
||||
if(NS_FAILED(rv)) goto done;
|
||||
|
||||
|
|
|
@ -21,6 +21,8 @@ nsMsgKeyArray.h
|
|||
nsUrlListenerManager.h
|
||||
nsMsgMailSession.h
|
||||
nsMsgAppCore.h
|
||||
nsMsgFolderDataSource.h
|
||||
nsMsgMessageDataSource.h
|
||||
nsMessageViewDataSource.h
|
||||
nsMsgAccount.h
|
||||
nsMsgAccountManager.h
|
||||
|
|
|
@ -33,6 +33,8 @@ EXPORTS = \
|
|||
nsMsgAppCore.h \
|
||||
nsMsgAccountManager.h \
|
||||
nsMsgAccount.h \
|
||||
nsMsgFolderDataSource.h \
|
||||
nsMsgMessageDataSource.h \
|
||||
nsMessageViewDataSource.h \
|
||||
$(NULL)
|
||||
|
||||
|
@ -50,6 +52,8 @@ CPPSRCS = \
|
|||
nsMsgAccountManager.cpp \
|
||||
nsMsgAccount.cpp \
|
||||
nsCopyMessageStreamListener.cpp \
|
||||
nsMsgFolderDataSource.cpp \
|
||||
nsMsgMessageDataSource.cpp \
|
||||
nsMessageViewDataSource.cpp \
|
||||
$(NULL)
|
||||
|
||||
|
|
|
@ -40,6 +40,8 @@ CPPSRCS= \
|
|||
nsMessageViewDataSource.cpp \
|
||||
nsMsgAccountManager.cpp \
|
||||
nsMsgAccount.cpp \
|
||||
nsMsgFolderDataSource.cpp \
|
||||
nsMsgMessageDataSource.cpp \
|
||||
$(NULL)
|
||||
|
||||
|
||||
|
@ -58,6 +60,8 @@ CPP_OBJS= \
|
|||
.\$(OBJDIR)\nsMessageViewDataSource.obj \
|
||||
.\$(OBJDIR)\nsMsgAccountManager.obj \
|
||||
.\$(OBJDIR)\nsMsgAccount.obj \
|
||||
.\$(OBJDIR)\nsMsgFolderDataSource.obj \
|
||||
.\$(OBJDIR)\nsMsgMessageDataSource.obj \
|
||||
$(NULL)
|
||||
|
||||
|
||||
|
@ -67,6 +71,8 @@ EXPORTS= \
|
|||
nsUrlListenerManager.h \
|
||||
nsMsgMailSession.h \
|
||||
nsMsgAppCore.h \
|
||||
nsMsgFolderDataSource.h \
|
||||
nsMsgMessageDataSource.h \
|
||||
nsMessageViewDataSource.h \
|
||||
nsMsgAccount.h \
|
||||
nsMsgAccountManager.h \
|
||||
|
@ -84,6 +90,7 @@ LINCS= \
|
|||
-I$(PUBLIC)\dom \
|
||||
-I$(PUBLIC)\appcores \
|
||||
-I$(PUBLIC)\security \
|
||||
-I$(PUBLIC)\mime \
|
||||
$(NULL)
|
||||
|
||||
LCFLAGS = \
|
||||
|
|
|
@ -187,7 +187,7 @@ static nsresult AddView(nsIRDFCompositeDataSource *database, nsIMessageView **me
|
|||
if(NS_SUCCEEDED(rv))
|
||||
{
|
||||
rv = gRDFService->GetDataSource("rdf:mail-messageview", &view);
|
||||
rv = NS_SUCCEEDED(rv) && gRDFService->GetDataSource("rdf:mailnews", &datasource);
|
||||
rv = NS_SUCCEEDED(rv) && gRDFService->GetDataSource("rdf:mailnewsfolders", &datasource);
|
||||
nsServiceManager::ReleaseService(kRDFServiceCID, gRDFService);
|
||||
}
|
||||
|
||||
|
|
|
@ -23,14 +23,6 @@
|
|||
#include "nsIFactory.h"
|
||||
#include "nsIComponentManager.h"
|
||||
|
||||
#define NS_MAILNEWSDATASOURCE_CID \
|
||||
{ /* ddd9d2b2-cd67-11d2-8cca-0060b0fc14a3 */ \
|
||||
0xddd9d2b2, \
|
||||
0xcd67, \
|
||||
0x11d2, \
|
||||
{0x8c, 0xca, 0x00, 0x60, 0xb0, 0xfc, 0x14, 0xa3} \
|
||||
}
|
||||
|
||||
#define NS_MAILNEWSRESOURCE_CID \
|
||||
{ /* e490d22c-cd67-11d2-8cca-0060b0fc14a3 */ \
|
||||
0xe490d22c, \
|
||||
|
|
|
@ -26,7 +26,6 @@
|
|||
// include files for components this factory creates...
|
||||
#include "nsMailboxUrl.h"
|
||||
#include "nsPop3URL.h"
|
||||
#include "nsMSGFolderDataSource.h"
|
||||
#include "nsMailboxService.h"
|
||||
#include "nsLocalMailFolder.h"
|
||||
#include "nsParseMailbox.h"
|
||||
|
@ -38,8 +37,7 @@ static NS_DEFINE_CID(kComponentManagerCID, NS_COMPONENTMANAGER_CID);
|
|||
static NS_DEFINE_CID(kMailboxUrlCID, NS_MAILBOXURL_CID);
|
||||
static NS_DEFINE_CID(kMailboxParserCID, NS_MAILBOXPARSER_CID);
|
||||
static NS_DEFINE_CID(kMailboxServiceCID, NS_MAILBOXSERVICE_CID);
|
||||
static NS_DEFINE_CID(kMailNewsDatasourceCID, NS_MAILNEWSDATASOURCE_CID);
|
||||
static NS_DEFINE_CID(kMailNewsResourceCID, NS_MAILNEWSRESOURCE_CID);
|
||||
static NS_DEFINE_CID(kMailNewsLocalResourceCID, NS_MAILNEWSRESOURCE_CID);
|
||||
static NS_DEFINE_CID(kPop3ServiceCID, NS_POP3SERVICE_CID);
|
||||
static NS_DEFINE_CID(kPop3UrlCID, NS_POP3URL_CID);
|
||||
static NS_DEFINE_CID(kPop3IncomingServerCID, NS_POP3INCOMINGSERVER_CID);
|
||||
|
@ -175,27 +173,16 @@ nsresult nsMsgLocalFactory::CreateInstance(nsISupports *aOuter, const nsIID &aII
|
|||
if (NS_FAILED(rv) && popService)
|
||||
delete popService;
|
||||
}
|
||||
else if (mClassID.Equals(kMailNewsDatasourceCID))
|
||||
else if (mClassID.Equals(kMailNewsLocalResourceCID))
|
||||
{
|
||||
nsMSGFolderDataSource * folderDataSource = new nsMSGFolderDataSource();
|
||||
if (folderDataSource)
|
||||
rv = folderDataSource->QueryInterface(aIID, aResult);
|
||||
nsMsgLocalMailFolder * localFolder = new nsMsgLocalMailFolder();
|
||||
if (localFolder)
|
||||
rv = localFolder->QueryInterface(aIID, aResult);
|
||||
else
|
||||
rv = NS_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
if (NS_FAILED(rv) && folderDataSource)
|
||||
delete folderDataSource;
|
||||
}
|
||||
else if (mClassID.Equals(kMailNewsResourceCID))
|
||||
{
|
||||
nsMsgLocalMailFolder * localDataSource = new nsMsgLocalMailFolder();
|
||||
if (localDataSource)
|
||||
rv = localDataSource->QueryInterface(aIID, aResult);
|
||||
else
|
||||
rv = NS_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
if (NS_FAILED(rv) && localDataSource)
|
||||
delete localDataSource;
|
||||
if (NS_FAILED(rv) && localFolder)
|
||||
delete localFolder;
|
||||
}
|
||||
else if (mClassID.Equals(kPop3IncomingServerCID))
|
||||
rv = NS_NewPop3IncomingServer(nsISupports::GetIID(), aResult);
|
||||
|
@ -275,16 +262,9 @@ NSRegisterSelf(nsISupports* aServMgr, const char* path)
|
|||
path, PR_TRUE, PR_TRUE);
|
||||
if (NS_FAILED(rv)) goto done;
|
||||
|
||||
// register our RDF datasources:
|
||||
rv = compMgr->RegisterComponent(kMailNewsDatasourceCID,
|
||||
"Mail/News Data Source",
|
||||
NS_RDF_DATASOURCE_PROGID_PREFIX "mailnews",
|
||||
path, PR_TRUE, PR_TRUE);
|
||||
if (NS_FAILED(rv)) goto done;
|
||||
|
||||
// register our RDF resource factories:
|
||||
rv = compMgr->RegisterComponent(kMailNewsResourceCID,
|
||||
"Mail/News Resource Factory",
|
||||
rv = compMgr->RegisterComponent(kMailNewsLocalResourceCID,
|
||||
"Mail/News Local Resource Factory",
|
||||
NS_RDF_RESOURCE_FACTORY_PROGID_PREFIX "mailbox",
|
||||
path, PR_TRUE, PR_TRUE);
|
||||
if (NS_FAILED(rv)) goto done;
|
||||
|
@ -330,10 +310,7 @@ NSUnregisterSelf(nsISupports* aServMgr, const char* path)
|
|||
rv = compMgr->UnregisterFactory(kMailboxParserCID, path);
|
||||
if (NS_FAILED(rv)) goto done;
|
||||
|
||||
rv = compMgr->UnregisterComponent(kMailNewsDatasourceCID, path);
|
||||
if (NS_FAILED(rv)) goto done;
|
||||
|
||||
rv = compMgr->UnregisterComponent(kMailNewsResourceCID, path);
|
||||
rv = compMgr->UnregisterComponent(kMailNewsLocalResourceCID, path);
|
||||
if (NS_FAILED(rv)) goto done;
|
||||
|
||||
rv = compMgr->UnregisterComponent(kPop3IncomingServerCID, path);
|
||||
|
|
|
@ -16,7 +16,6 @@
|
|||
# This is a list of local files which get copied to the mozilla:dist:mailnews directory
|
||||
#
|
||||
|
||||
nsIRDFMSGFolderDataSource.h
|
||||
nsIPop3Sink.h
|
||||
nsIPop3URL.h
|
||||
nsIMailboxUrl.h
|
||||
|
|
|
@ -23,7 +23,6 @@ srcdir = @srcdir@
|
|||
include $(DEPTH)/config/autoconf.mk
|
||||
|
||||
EXPORTS= \
|
||||
nsIRDFMSGFolderDataSource.h \
|
||||
nsIPop3Sink.h \
|
||||
nsIPop3URL.h \
|
||||
nsIMailboxUrl.h \
|
||||
|
|
|
@ -19,7 +19,6 @@ DEPTH=..\..\..
|
|||
IGNORE_MANIFEST=1
|
||||
|
||||
EXPORTS = \
|
||||
nsIRDFMSGFolderDataSource.h \
|
||||
nsIPop3Sink.h \
|
||||
nsIPop3URL.h \
|
||||
nsIMailboxUrl.h \
|
||||
|
|
|
@ -25,7 +25,6 @@ MODULE=localmailbase
|
|||
LIBRARY_NAME=localmailbase_s
|
||||
|
||||
CPPSRCS = \
|
||||
nsMSGFolderDataSource.cpp \
|
||||
nsPop3Protocol.cpp \
|
||||
nsPop3URL.cpp \
|
||||
nsPop3Sink.cpp \
|
||||
|
@ -47,7 +46,6 @@ EXPORTS= \
|
|||
nsMailboxProtocol.h \
|
||||
nsMailboxService.h \
|
||||
nsPop3Service.h \
|
||||
nsMSGFolderDataSource.h \
|
||||
nsLocalMailFolder.h \
|
||||
nsPop3IncomingServer.h \
|
||||
$(NULL)
|
||||
|
|
|
@ -29,7 +29,6 @@ REQUIRES=xpcom nspr rdf
|
|||
DEFINES=-D_IMPL_NS_HTML -DWIN32_LEAN_AND_MEAN
|
||||
|
||||
CPPSRCS= \
|
||||
nsMSGFolderDataSource.cpp \
|
||||
nsPop3Protocol.cpp \
|
||||
nsPop3URL.cpp \
|
||||
nsPop3Sink.cpp \
|
||||
|
@ -43,7 +42,6 @@ CPPSRCS= \
|
|||
$(NULL)
|
||||
|
||||
CPP_OBJS= \
|
||||
.\$(OBJDIR)\nsMSGFolderDataSource.obj \
|
||||
.\$(OBJDIR)\nsPop3Protocol.obj \
|
||||
.\$(OBJDIR)\nsPop3URL.obj \
|
||||
.\$(OBJDIR)\nsPop3Sink.obj \
|
||||
|
|
|
@ -65,7 +65,7 @@ nsMsgLocalMailFolder::nsMsgLocalMailFolder(void)
|
|||
(nsISupports**) &rdfService);
|
||||
if(NS_SUCCEEDED(rv))
|
||||
{
|
||||
if(NS_SUCCEEDED(rv = rdfService->GetDataSource("rdf:mailnews", &datasource)))
|
||||
if(NS_SUCCEEDED(rv = rdfService->GetDataSource("rdf:mailnewsfolders", &datasource)))
|
||||
{
|
||||
nsIFolderListener *folderListener;
|
||||
if(NS_SUCCEEDED(datasource->QueryInterface(nsIFolderListener::GetIID(), (void**)&folderListener)))
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
|
||||
|
||||
<tree rdf:datasources="rdf:mailnews" id="folderTree" onclick="return parent.parent.ChangeFolderByDOMNode(event.target.parentNode)">
|
||||
<tree rdf:datasources="rdf:mailnewsfolders" id="folderTree" onclick="return parent.parent.ChangeFolderByDOMNode(event.target.parentNode)">
|
||||
<treecol rdf:resource="http://home.netscape.com/NC-rdf#Name"/>
|
||||
<treecol rdf:resource="http://home.netscape.com/NC-rdf#TotalUnreadMessages"/>
|
||||
<treecol rdf:resource="http://home.netscape.com/NC-rdf#TotalMessages"/>
|
||||
|
|
|
@ -359,10 +359,10 @@
|
|||
</menu>
|
||||
<menuitem name="&editMsgAsNewCmd.label;" onclick="MsgEditMessageAsNew();"/>
|
||||
<separator/>
|
||||
<menu name="&moveMsgMenu.label;" datasources="rdf:mailnews" id="mailbox:/" open="true"
|
||||
<menu name="&moveMsgMenu.label;" datasources="rdf:mailnewsfolders" id="mailbox:/" open="true"
|
||||
onclick="MsgMoveMessage(event.target)">
|
||||
</menu>
|
||||
<menu name="©MsgMenu.label;" datasources="rdf:mailnews" id="mailbox:/" open="true"
|
||||
<menu name="©MsgMenu.label;" datasources="rdf:mailnewsfolders" id="mailbox:/" open="true"
|
||||
onclick="MsgCopyMessage(event.target)">
|
||||
</menu>
|
||||
<separator/>
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
|
||||
|
||||
<tree rdf:datasources="rdf:mailnews" id="threadTree" onclick="return parent.parent.LoadMessage(event.target.parentNode)" rdf:containment="http://home.netscape.com/NC-rdf#MessageChild">
|
||||
<tree rdf:datasources="rdf:mailnewsfolders rdf:mailnewsmessages" id="threadTree" onclick="return parent.parent.LoadMessage(event.target.parentNode)" rdf:containment="http://home.netscape.com/NC-rdf#MessageChild">
|
||||
<treecol id="SubjectColumn" rdf:resource="http://home.netscape.com/NC-rdf#Subject"/>
|
||||
<treecol id="AuthorColumn" rdf:resource="http://home.netscape.com/NC-rdf#Sender"/>
|
||||
<treecol id="DateColumn" rdf:resource="http://home.netscape.com/NC-rdf#Date"/>
|
||||
|
|
Загрузка…
Ссылка в новой задаче