From f4d2c6ce796bf522ddd8da892b0150f01fc04f74 Mon Sep 17 00:00:00 2001 From: "bienvenu%netscape.com" Date: Mon, 28 Jun 1999 21:56:33 +0000 Subject: [PATCH] make name and pretty name unichar's git-svn-id: svn://10.0.0.236/trunk@37244 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/mailnews/base/public/nsIFolder.idl | 2 +- mozilla/mailnews/base/public/nsIMsgFolder.idl | 4 +- .../base/src/nsMsgFolderDataSource.cpp | 2 +- .../mailnews/base/src/nsMsgImapMailFolder.cpp | 5 ++- mozilla/mailnews/base/util/nsMsgFolder.cpp | 41 ++++++++----------- mozilla/mailnews/base/util/nsMsgFolder.h | 10 ++--- .../base/util/nsMsgIncomingServer.cpp | 2 + .../mailnews/imap/src/nsImapMailFolder.cpp | 23 +++++------ mozilla/mailnews/imap/src/nsImapMailFolder.h | 2 +- .../imap/tests/harness/imapProtocolTest.cpp | 3 +- .../mailnews/local/src/nsLocalMailFolder.cpp | 14 ++++--- .../mailnews/local/src/nsLocalMailFolder.h | 4 +- mozilla/mailnews/local/src/nsParseMailbox.cpp | 7 +++- mozilla/mailnews/local/src/nsParseMailbox.h | 2 +- mozilla/mailnews/news/src/nsNewsFolder.cpp | 24 ++++------- mozilla/mailnews/news/src/nsNewsFolder.h | 4 +- 16 files changed, 70 insertions(+), 79 deletions(-) diff --git a/mozilla/mailnews/base/public/nsIFolder.idl b/mozilla/mailnews/base/public/nsIFolder.idl index fc9d8a5bbd9..15933cbbfc5 100644 --- a/mozilla/mailnews/base/public/nsIFolder.idl +++ b/mozilla/mailnews/base/public/nsIFolder.idl @@ -23,7 +23,7 @@ interface nsIFolder : nsICollection { readonly attribute string URI; - attribute string name; + attribute wstring name; nsISupports GetChildNamed(in string name); attribute nsIFolder parent; diff --git a/mozilla/mailnews/base/public/nsIMsgFolder.idl b/mozilla/mailnews/base/public/nsIMsgFolder.idl index 568cdcdfc99..3c22bcbe930 100644 --- a/mozilla/mailnews/base/public/nsIMsgFolder.idl +++ b/mozilla/mailnews/base/public/nsIMsgFolder.idl @@ -53,8 +53,8 @@ interface nsIMsgFolder : nsIFolder { nsIMsgThread GetThreadForMessage(in nsIMessage message); boolean HasMessage(in nsIMessage message); nsIEnumerator GetVisibleSubFolders(); - attribute string prettyName; - readonly attribute string prettiestName; + attribute wstring prettyName; + readonly attribute wstring prettiestName; string BuildFolderURL(); readonly attribute boolean deleteIsMoveToTrash; diff --git a/mozilla/mailnews/base/src/nsMsgFolderDataSource.cpp b/mozilla/mailnews/base/src/nsMsgFolderDataSource.cpp index 3e922ca3447..5898ecca0ae 100644 --- a/mozilla/mailnews/base/src/nsMsgFolderDataSource.cpp +++ b/mozilla/mailnews/base/src/nsMsgFolderDataSource.cpp @@ -700,7 +700,7 @@ nsresult nsMsgFolderDataSource::createFolderNode(nsIMsgFolder* folder, nsresult nsMsgFolderDataSource::createFolderNameNode(nsIMsgFolder *folder, nsIRDFNode **target) { - char *name; + PRUnichar *name; nsresult rv = folder->GetName(&name); if (NS_FAILED(rv)) return rv; nsString nameString(name); diff --git a/mozilla/mailnews/base/src/nsMsgImapMailFolder.cpp b/mozilla/mailnews/base/src/nsMsgImapMailFolder.cpp index 37a6388f4d7..d4dd8bc036a 100644 --- a/mozilla/mailnews/base/src/nsMsgImapMailFolder.cpp +++ b/mozilla/mailnews/base/src/nsMsgImapMailFolder.cpp @@ -22,11 +22,12 @@ #include "nsMsgFolderFlags.h" #include "nsISupportsArray.h" #include "prprf.h" - +#include "nsMsgDBCID.h" // we need this because of an egcs 1.0 (and possibly gcc) compiler bug // that doesn't allow you to call ::nsISupports::GetIID() inside of a class // that multiply inherits from nsISupports static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID); +static NS_DEFINE_CID(kCMailDB, NS_MAILDB_CID); nsMsgImapMailFolder::nsMsgImapMailFolder(nsString& name) : nsMsgFolder(/*name*/) @@ -148,7 +149,7 @@ nsMsgImapMailFolder::FindChildNamed(const char *name, nsIMsgFolder ** aChild) return NS_OK; } -NS_IMETHODIMP nsMsgImapMailFolder::GetName(char** name) +NS_IMETHODIMP nsMsgImapMailFolder::GetName(PRUnichar** name) { return NS_ERROR_NOT_IMPLEMENTED; } diff --git a/mozilla/mailnews/base/util/nsMsgFolder.cpp b/mozilla/mailnews/base/util/nsMsgFolder.cpp index 8a5bd5c9e40..e3e1d623db2 100644 --- a/mozilla/mailnews/base/util/nsMsgFolder.cpp +++ b/mozilla/mailnews/base/util/nsMsgFolder.cpp @@ -337,39 +337,29 @@ NS_IMETHODIMP nsMsgFolder::GetServer(nsIMsgIncomingServer ** aServer) return rv; } -NS_IMETHODIMP nsMsgFolder::GetPrettyName(char ** name) +NS_IMETHODIMP nsMsgFolder::GetPrettyName(PRUnichar ** name) { - char *cmName = mName.ToNewCString(); - if(cmName) - { - if (name) *name = PL_strdup(cmName); - delete[] cmName; - return NS_OK; - } - else + if (!name) return NS_ERROR_OUT_OF_MEMORY; + *name = mName.ToNewUnicode(); + return (*name) ? NS_OK : NS_ERROR_OUT_OF_MEMORY; } -NS_IMETHODIMP nsMsgFolder::SetPrettyName(char *name) +NS_IMETHODIMP nsMsgFolder::SetPrettyName(PRUnichar *name) { mName = name; return NS_OK; } -NS_IMETHODIMP nsMsgFolder::GetName(char **name) +NS_IMETHODIMP nsMsgFolder::GetName(PRUnichar **name) { - char *cmName = mName.ToNewCString(); - if(cmName) - { - if (name) *name = PL_strdup(cmName); - delete[] cmName; - return NS_OK; - } - else - return NS_ERROR_OUT_OF_MEMORY; + if (!name) + return NS_ERROR_NULL_POINTER; + *name = mName.ToNewUnicode(); + return (*name) ? NS_OK : NS_ERROR_OUT_OF_MEMORY; } -NS_IMETHODIMP nsMsgFolder::SetName(char * name) +NS_IMETHODIMP nsMsgFolder::SetName(PRUnichar * name) { mName = name; return NS_OK; @@ -394,11 +384,11 @@ NS_IMETHODIMP nsMsgFolder::GetChildNamed(const char *name, nsISupports ** aChild folder = do_QueryInterface(supports, &rv); if(NS_SUCCEEDED(rv)) { - char *folderName; + PRUnichar *folderName; folder->GetName(&folderName); // case-insensitive compare is probably LCD across OS filesystems - if (folderName && PL_strcasecmp(name, folderName)!=0) + if (folderName && nsCRT::strcasecmp(folderName, name)!=0) { *aChild = folder; delete[] folderName; @@ -411,7 +401,7 @@ NS_IMETHODIMP nsMsgFolder::GetChildNamed(const char *name, nsISupports ** aChild } -NS_IMETHODIMP nsMsgFolder::GetPrettiestName(char **name) +NS_IMETHODIMP nsMsgFolder::GetPrettiestName(PRUnichar **name) { if (NS_SUCCEEDED(GetPrettyName(name))) return NS_OK; @@ -599,7 +589,8 @@ NS_IMETHODIMP nsMsgFolder::CreateSubfolder(const char *folderName) NS_IMETHODIMP nsMsgFolder::Rename(const char *name) { nsresult status = NS_OK; - status = SetName((char*)name); + nsAutoString2 unicharString(name); + status = SetName((PRUnichar *) unicharString.GetUnicode()); //After doing a SetName we need to make sure that broadcasting this message causes a //new sort to happen. #ifdef HAVE_MASTER diff --git a/mozilla/mailnews/base/util/nsMsgFolder.h b/mozilla/mailnews/base/util/nsMsgFolder.h index 155ef1e26f0..ebe558b9c84 100644 --- a/mozilla/mailnews/base/util/nsMsgFolder.h +++ b/mozilla/mailnews/base/util/nsMsgFolder.h @@ -71,8 +71,8 @@ public: // nsIFolder methods: NS_IMETHOD GetURI(char* *name) { return nsRDFResource::GetValue(name); } - NS_IMETHOD GetName(char **name); - NS_IMETHOD SetName(char *name); + NS_IMETHOD GetName(PRUnichar **name); + NS_IMETHOD SetName(PRUnichar *name); NS_IMETHOD GetChildNamed(const char *name, nsISupports* *result); NS_IMETHOD GetSubFolders(nsIEnumerator* *result); NS_IMETHOD GetHasSubFolders(PRBool *_retval); @@ -95,8 +95,8 @@ public: NS_IMETHOD GetServer(nsIMsgIncomingServer ** aServer); - NS_IMETHOD GetPrettyName(char ** name); - NS_IMETHOD SetPrettyName(char * name); + NS_IMETHOD GetPrettyName(PRUnichar ** name); + NS_IMETHOD SetPrettyName(PRUnichar * name); #if 0 static nsresult GetRoot(nsIMsgFolder* *result); #endif @@ -117,7 +117,7 @@ public: NS_IMETHOD BuildFolderURL(char ** url); - NS_IMETHOD GetPrettiestName(char ** name); + NS_IMETHOD GetPrettiestName(PRUnichar ** name); #ifdef HAVE_ADMINURL NS_IMETHOD GetAdminUrl(MWContext *context, MSG_AdminURLType type); diff --git a/mozilla/mailnews/base/util/nsMsgIncomingServer.cpp b/mozilla/mailnews/base/util/nsMsgIncomingServer.cpp index 0e21af200bd..6a0732531d6 100644 --- a/mozilla/mailnews/base/util/nsMsgIncomingServer.cpp +++ b/mozilla/mailnews/base/util/nsMsgIncomingServer.cpp @@ -296,4 +296,6 @@ NS_IMPL_SERVERPREF_STR(nsMsgIncomingServer, LocalPath, "directory") /* what was this called in 4.x? */ +// pref("mail.pop3_gets_new_mail", true); + NS_IMPL_SERVERPREF_BOOL(nsMsgIncomingServer, DownloadOnBiff, "download_on_biff"); diff --git a/mozilla/mailnews/imap/src/nsImapMailFolder.cpp b/mozilla/mailnews/imap/src/nsImapMailFolder.cpp index 595ca78360d..f132d7941e9 100644 --- a/mozilla/mailnews/imap/src/nsImapMailFolder.cpp +++ b/mozilla/mailnews/imap/src/nsImapMailFolder.cpp @@ -431,12 +431,8 @@ NS_IMETHODIMP nsImapMailFolder::GetMessages(nsIEnumerator* *result) if (NS_FAILED(rv)) return rv; - char *folderName = nsnull; - rv = GetName(&folderName); selectFolder = PR_TRUE; - delete [] folderName; - if (mDepth == 0) { if (!m_haveDiscoverAllFolders) @@ -586,7 +582,7 @@ NS_IMETHODIMP nsImapMailFolder::GetChildNamed(const char * name, nsISupports ** return rv; } -NS_IMETHODIMP nsImapMailFolder::GetName(char ** name) +NS_IMETHODIMP nsImapMailFolder::GetName(PRUnichar ** name) { nsresult result = NS_OK; @@ -599,10 +595,11 @@ NS_IMETHODIMP nsImapMailFolder::GetName(char ** name) { char *hostName = nsnull; GetHostname(&hostName); - SetName(hostName); + nsString2 unicodeHostName(hostName); + SetName((PRUnichar *) unicodeHostName.GetUnicode()); PR_FREEIF(hostName); m_haveReadNameFromDB = PR_TRUE; - *name = mName.ToNewCString(); + *name = mName.ToNewUnicode(); return NS_OK; } #if 0 @@ -630,7 +627,7 @@ NS_IMETHODIMP nsImapMailFolder::GetName(char ** name) } nsAutoString folderName; nsImapURI2Name(kImapRootURI, mURI, folderName); - *name = folderName.ToNewCString(); + *name = folderName.ToNewUnicode(); return result; } @@ -912,9 +909,9 @@ NS_IMETHODIMP nsImapMailFolder::DeleteMessages(nsISupportsArray *messages, nsCOMPtr aMsgFolder(do_QueryInterface(aItem, &rv)); if (NS_SUCCEEDED(rv)) { - char* aName = nsnull; + PRUnichar* aName = nsnull; rv = aMsgFolder->GetName(&aName); - if (NS_SUCCEEDED(rv) && PL_strcmp("Trash", aName) == 0) + if (NS_SUCCEEDED(rv) && nsCRT::strcmp(aName, "Trash") == 0) { delete [] aName; trashFolder = aMsgFolder; @@ -1084,12 +1081,12 @@ NS_IMETHODIMP nsImapMailFolder::PossibleImapMailbox( aFolder = do_QueryInterface(aItem, &rv); if (rv == NS_OK && aFolder) { - char* aName = nsnull; + PRUnichar* aName = nsnull; aFolder->GetName(&aName); PRBool isInbox = PL_strcasecmp("inbox", aSpec->allocatedPathName) == 0; - if (PL_strcmp(aName, aSpec->allocatedPathName) == 0 || - (isInbox && PL_strcasecmp(aName, aSpec->allocatedPathName) == 0)) + if (nsCRT::strcmp(aName, aSpec->allocatedPathName) == 0 || + (isInbox && nsCRT::strcasecmp(aName, aSpec->allocatedPathName) == 0)) { delete [] aName; found = PR_TRUE; diff --git a/mozilla/mailnews/imap/src/nsImapMailFolder.h b/mozilla/mailnews/imap/src/nsImapMailFolder.h index 4a65d56e436..f5340bdd1d3 100644 --- a/mozilla/mailnews/imap/src/nsImapMailFolder.h +++ b/mozilla/mailnews/imap/src/nsImapMailFolder.h @@ -81,7 +81,7 @@ public: NS_IMETHOD GetChildNamed(const char * name, nsISupports ** aChild); // this override pulls the value from the db - NS_IMETHOD GetName(char ** name); // Name of this folder (as presented to user). + NS_IMETHOD GetName(PRUnichar ** name); // Name of this folder (as presented to user). NS_IMETHOD GetPrettyName(char ** prettyName); // Override of the base, for top-level mail folder NS_IMETHOD BuildFolderURL(char **url); diff --git a/mozilla/mailnews/imap/tests/harness/imapProtocolTest.cpp b/mozilla/mailnews/imap/tests/harness/imapProtocolTest.cpp index ccd4af602f4..3644f407120 100644 --- a/mozilla/mailnews/imap/tests/harness/imapProtocolTest.cpp +++ b/mozilla/mailnews/imap/tests/harness/imapProtocolTest.cpp @@ -432,7 +432,8 @@ nsIMAP4TestDriver::SetupInbox() rdfResource(do_QueryInterface(m_inbox, &rv)); if (NS_SUCCEEDED(rv)) rdfResource->Init("imap:/Inbox"); - m_inbox->SetName("Inbox"); + nsString2 inboxName("Inbox", eTwoByte); + m_inbox->SetName((PRUnichar *) inboxName.GetUnicode()); } } } diff --git a/mozilla/mailnews/local/src/nsLocalMailFolder.cpp b/mozilla/mailnews/local/src/nsLocalMailFolder.cpp index 4e09289098f..300c63f858b 100644 --- a/mozilla/mailnews/local/src/nsLocalMailFolder.cpp +++ b/mozilla/mailnews/local/src/nsLocalMailFolder.cpp @@ -728,7 +728,7 @@ NS_IMETHODIMP nsMsgLocalMailFolder::Adopt(nsIMsgFolder *srcFolder, PRUint32 *out } -NS_IMETHODIMP nsMsgLocalMailFolder::GetName(char **name) +NS_IMETHODIMP nsMsgLocalMailFolder::GetName(PRUnichar **name) { if(!name) return NS_ERROR_NULL_POINTER; @@ -737,9 +737,10 @@ NS_IMETHODIMP nsMsgLocalMailFolder::GetName(char **name) { if (mDepth == 1) { - SetName("Local Mail"); + nsString localMailStr("Local Mail"); + SetName((PRUnichar *) localMailStr.GetUnicode()); mHaveReadNameFromDB = TRUE; - *name = mName.ToNewCString(); + *name = mName.ToNewUnicode(); if(!(*name)) return NS_ERROR_OUT_OF_MEMORY; return NS_OK; @@ -751,17 +752,18 @@ NS_IMETHODIMP nsMsgLocalMailFolder::GetName(char **name) } nsAutoString folderName; nsLocalURI2Name(kMailboxRootURI, mURI, folderName); - *name = folderName.ToNewCString(); + *name = folderName.ToNewUnicode(); return NS_OK; } -NS_IMETHODIMP nsMsgLocalMailFolder::GetPrettyName(char ** prettyName) +NS_IMETHODIMP nsMsgLocalMailFolder::GetPrettyName(PRUnichar ** prettyName) { if (mDepth == 1) { // Depth == 1 means we are on the mail server level // override the name here to say "Local Mail" - *prettyName = PL_strdup("Local Mail"); + nsString2 localMailStr("Local Mail"); + *prettyName = localMailStr.ToNewUnicode(); if(!(*prettyName)) return NS_ERROR_OUT_OF_MEMORY; } diff --git a/mozilla/mailnews/local/src/nsLocalMailFolder.h b/mozilla/mailnews/local/src/nsLocalMailFolder.h index 1fee653d6e7..3996a541cac 100644 --- a/mozilla/mailnews/local/src/nsLocalMailFolder.h +++ b/mozilla/mailnews/local/src/nsLocalMailFolder.h @@ -72,8 +72,8 @@ public: NS_IMETHOD Adopt(nsIMsgFolder *srcFolder, PRUint32 *outPos); // this override pulls the value from the db - NS_IMETHOD GetName(char ** name); // Name of this folder (as presented to user). - NS_IMETHOD GetPrettyName(char** prettyName); // Override of the base, for top-level mail folder + NS_IMETHOD GetName(PRUnichar ** name); // Name of this folder (as presented to user). + NS_IMETHOD GetPrettyName(PRUnichar** prettyName); // Override of the base, for top-level mail folder NS_IMETHOD BuildFolderURL(char **url); diff --git a/mozilla/mailnews/local/src/nsParseMailbox.cpp b/mozilla/mailnews/local/src/nsParseMailbox.cpp index 0f87714141f..47904fd96c2 100644 --- a/mozilla/mailnews/local/src/nsParseMailbox.cpp +++ b/mozilla/mailnews/local/src/nsParseMailbox.cpp @@ -1639,8 +1639,9 @@ NS_IMETHODIMP nsParseNewMailState::ApplyFilterHit(nsIMsgFilter *filter, PRBool * { // this sucks - but we need value to live past this scope // so we use an nsString from above. - char *folderName = nsnull; + PRUnichar *folderName = nsnull; rv = trash->GetName(&folderName); + // ### woa, is this right?. will the eOneByte nsString do the right unichar conversion?. trashNameVal = folderName; PR_FREEIF(folderName); value = (void *) trashNameVal.GetBuffer(); @@ -1804,7 +1805,9 @@ nsresult nsParseNewMailState::MoveIncorporatedMessage(nsIMsgDBHdr *mailHdr, nsresult rv = nsComponentManager::CreateInstance(kCMailDB, nsnull, nsIMsgDatabase::GetIID(), (void **) getter_AddRefs(mailDBFactory)); if (NS_SUCCEEDED(rv) && mailDBFactory) { - rv = mailDBFactory->Open(destFolderSpec, PR_TRUE, (nsIMsgDatabase **) getter_AddRefs(destMailDB), PR_TRUE); + nsCOMPtr dbFileSpec; + NS_NewFileSpecWithSpec(destFolderSpec, getter_AddRefs(dbFileSpec)); + rv = mailDBFactory->Open(dbFileSpec, PR_TRUE, (nsIMsgDatabase **) getter_AddRefs(destMailDB), PR_TRUE); } NS_ASSERTION(destMailDB, "failed to open mail db parsing folder"); // don't force upgrade in place - open the db here before we start writing to the diff --git a/mozilla/mailnews/local/src/nsParseMailbox.h b/mozilla/mailnews/local/src/nsParseMailbox.h index da234a898ae..30d48163bcc 100644 --- a/mozilla/mailnews/local/src/nsParseMailbox.h +++ b/mozilla/mailnews/local/src/nsParseMailbox.h @@ -32,7 +32,7 @@ #ifdef DEBUG_bienvenu -//#define DOING_FILTERS +#define DOING_FILTERS #endif #ifdef DOING_FILTERS diff --git a/mozilla/mailnews/news/src/nsNewsFolder.cpp b/mozilla/mailnews/news/src/nsNewsFolder.cpp index c6a3d11f06d..76fdd74c483 100644 --- a/mozilla/mailnews/news/src/nsNewsFolder.cpp +++ b/mozilla/mailnews/news/src/nsNewsFolder.cpp @@ -806,12 +806,12 @@ nsMsgNewsFolder::GetChildNamed(const char *name, nsISupports ** aChild) supports = mSubFolders->ElementAt(i); if(NS_SUCCEEDED(supports->QueryInterface(kISupportsIID, getter_AddRefs(folder)))) { - char *folderName; + PRUnichar *folderName; folder->GetName(&folderName); // case-insensitive compare is probably LCD across OS filesystems - if (folderName && PL_strcasecmp(name, folderName)!=0) { + if (folderName && nsCRT::strcasecmp(folderName, name)!=0) { *aChild = folder; PR_FREEIF(folderName); return NS_OK; @@ -822,32 +822,25 @@ nsMsgNewsFolder::GetChildNamed(const char *name, nsISupports ** aChild) return NS_OK; } -NS_IMETHODIMP nsMsgNewsFolder::GetName(char **name) +NS_IMETHODIMP nsMsgNewsFolder::GetName(PRUnichar **name) { if(!name) return NS_ERROR_NULL_POINTER; nsAutoString folderName; nsNewsURI2Name(kNewsRootURI, mURI, folderName); - *name = folderName.ToNewCString(); + *name = folderName.ToNewUnicode(); return NS_OK; } -NS_IMETHODIMP nsMsgNewsFolder::GetPrettyName(char ** prettyName) +NS_IMETHODIMP nsMsgNewsFolder::GetPrettyName(PRUnichar ** prettyName) { if (!prettyName) return NS_ERROR_NULL_POINTER; nsresult rv = NS_OK;; - char *pName = PL_strdup(*prettyName); - if (pName) { - rv = nsMsgFolder::GetPrettyName(&pName); - delete[] pName; - } - else { - return NS_ERROR_OUT_OF_MEMORY; - } + rv = nsMsgFolder::GetPrettyName(prettyName); return rv; } @@ -1087,14 +1080,15 @@ NS_IMETHODIMP nsMsgNewsFolder::DeleteMessages(nsISupportsArray *messages, char *hostname; rv = GetHostname(&hostname); if (NS_FAILED(rv)) return rv; - char *newsgroupname; + PRUnichar *newsgroupname; rv = GetName(&newsgroupname); + nsString2 asciiName(newsgroupname, eOneByte); if (NS_FAILED(rv)) { PR_FREEIF(hostname); return rv; } - rv = nntpService->CancelMessages(hostname, newsgroupname, messages, nsnull, nsnull, nsnull); + rv = nntpService->CancelMessages(hostname, asciiName.GetBuffer(), messages, nsnull, nsnull, nsnull); PR_FREEIF(hostname); PR_FREEIF(newsgroupname); diff --git a/mozilla/mailnews/news/src/nsNewsFolder.h b/mozilla/mailnews/news/src/nsNewsFolder.h index 9e31d9ac1e1..65cf10f5846 100644 --- a/mozilla/mailnews/news/src/nsNewsFolder.h +++ b/mozilla/mailnews/news/src/nsNewsFolder.h @@ -64,8 +64,8 @@ public: NS_IMETHOD GetChildNamed(const char* name, nsISupports ** aChild); // this override pulls the value from the db - NS_IMETHOD GetName(char ** name); // Name of this folder (as presented to user). - NS_IMETHOD GetPrettyName(char ** prettyName); // Override of the base, for top-level news folder + NS_IMETHOD GetName(PRUnichar ** name); // Name of this folder (as presented to user). + NS_IMETHOD GetPrettyName(PRUnichar ** prettyName); // Override of the base, for top-level news folder NS_IMETHOD BuildFolderURL(char **url);