gecko-dev/profile/public/nsIProfile.idl
sspitzer%netscape.com e6fa7cbcf2 more clean up of the profile code. #15402, r=davidm
make profileExists() part of the nsIProfile interface, so I can
get at it from JS.  startCommunicator is now startApprunner.
get RenameProfile() and DeleteProfile() to work better.
make the delete profile dialog size to content.
change the 2nd arg of DeleteProfile() to be a bool, and not a string.
use MakeUnique() to prevent undesired collisions of profiles on disk.
1999-10-08 04:58:32 +00:00

93 lines
2.9 KiB
Plaintext

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#include "nsISupports.idl"
interface nsICmdLineService;
interface nsIFileSpec;
%{C++
#include "nsFileSpec.h"
#include "nsICmdLineService.h"
#define NS_PROFILE_CID \
{ /* {02b0625b-e7f3-11d2-9f5a-006008a6efe9} */ \
0x02b0625b, \
0xe7f3, \
0x11d2, \
{ 0x9f, 0x5a, 0x00, 0x60, 0x08, 0xa6, 0xef, 0xe9 } \
}
#define NS_PROFILE_PROGID \
"component://netscape/profile/manager"
#define PREG_PREF "netcenter.register"
%}
[ptr] native nsFileSpec(nsFileSpec);
[ref] native nsFileSpecRef(nsFileSpec);
[scriptable, uuid(02b0625a-e7f3-11d2-9f5a-006008a6efe9)]
interface nsIProfile : nsISupports {
[noscript] void startupWithArgs(in nsICmdLineService cmdLine);
void startup(in string filename);
[noscript] void getProfileDir(in string profileName,
in nsFileSpec profileDir);
readonly attribute long profileCount;
readonly attribute string currentProfile;
readonly attribute string firstProfile;
// eventually we need to depricate getCurrentProfileDir
[noscript] void getCurrentProfileDir(in nsFileSpec profileDir);
nsIFileSpec getCurrentProfileDirFromJS();
[noscript] void setProfileDir(in string profileName,
in nsFileSpecRef profileDir);
boolean profileExists(in string profileName);
void migrateProfileInfo();
void createNewProfile(in string profileName, in string nativeProfileDir);
void renameProfile(in string oldName, in string newName);
void deleteProfile(in string name, in boolean canDeleteFiles);
string getProfileList();
void startApprunner(in string profileName);
void migrateProfile(in string profileName);
string getCookie();
void ProcessPRegCookie();
string isPregCookieSet();
void processPREGInfo(in string data);
long get4xProfileCount();
void migrateAllProfiles();
void cloneProfile(in string profileName);
void forgetCurrentProfile();
};
#endif /* nsIProfile_h__ */