зеркало из https://github.com/mozilla/gecko-dev.git
New files for bug 70380 - not yet part of build. r=valeski, sr=rpotts
This commit is contained in:
Родитель
77435b1a17
Коммит
070ab8891b
|
@ -0,0 +1,96 @@
|
|||
/* -*- 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.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.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 2001 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*/
|
||||
|
||||
#include "nsNonPersistAuthPrompt.h"
|
||||
|
||||
#include "nsReadableUtils.h"
|
||||
|
||||
//*****************************************************************************
|
||||
// nsNonPersistAuthPrompt
|
||||
//*****************************************************************************
|
||||
|
||||
nsNonPersistAuthPrompt::nsNonPersistAuthPrompt()
|
||||
{
|
||||
NS_INIT_REFCNT();
|
||||
}
|
||||
|
||||
nsNonPersistAuthPrompt::~nsNonPersistAuthPrompt()
|
||||
{
|
||||
}
|
||||
|
||||
NS_IMPL_ISUPPORTS2(nsNonPersistAuthPrompt, nsISingleSignOnPrompt, nsIAuthPrompt)
|
||||
|
||||
//*****************************************************************************
|
||||
// nsNonPersistAuthPrompt::nsISingleSignOnPrompt
|
||||
//*****************************************************************************
|
||||
|
||||
NS_IMETHODIMP nsNonPersistAuthPrompt::SetPromptDialogs(nsIPrompt *dialogs)
|
||||
{
|
||||
mPromptDialogs = dialogs;
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
||||
//*****************************************************************************
|
||||
// nsNonPersistAuthPrompt::nsIAuthPrompt
|
||||
//*****************************************************************************
|
||||
|
||||
NS_IMETHODIMP nsNonPersistAuthPrompt::Prompt(const PRUnichar *dialogTitle,
|
||||
const PRUnichar *text,
|
||||
const PRUnichar *passwordRealm,
|
||||
PRUint32 savePassword,
|
||||
const PRUnichar *defaultText,
|
||||
PRUnichar **result,
|
||||
PRBool *_retval)
|
||||
{
|
||||
NS_ENSURE_TRUE(mPromptDialogs, NS_ERROR_NOT_INITIALIZED);
|
||||
NS_ENSURE_ARG_POINTER(result);
|
||||
|
||||
*result = ToNewUnicode(nsLiteralString(defaultText));
|
||||
if (*result == nsnull) return NS_ERROR_OUT_OF_MEMORY;
|
||||
return mPromptDialogs->Prompt(dialogTitle, text, result, nsnull, nsnull, _retval);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsNonPersistAuthPrompt::PromptUsernameAndPassword(const PRUnichar *dialogTitle,
|
||||
const PRUnichar *text,
|
||||
const PRUnichar *passwordRealm,
|
||||
PRUint32 savePassword,
|
||||
PRUnichar **user,
|
||||
PRUnichar **pwd,
|
||||
PRBool *_retval)
|
||||
{
|
||||
NS_ENSURE_TRUE(mPromptDialogs, NS_ERROR_NOT_INITIALIZED);
|
||||
|
||||
return mPromptDialogs->PromptUsernameAndPassword(dialogTitle, text, user, pwd, nsnull, nsnull, _retval);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsNonPersistAuthPrompt::PromptPassword(const PRUnichar *dialogTitle,
|
||||
const PRUnichar *text,
|
||||
const PRUnichar *passwordRealm,
|
||||
PRUint32 savePassword,
|
||||
PRUnichar **pwd,
|
||||
PRBool *_retval)
|
||||
{
|
||||
NS_ENSURE_TRUE(mPromptDialogs, NS_ERROR_NOT_INITIALIZED);
|
||||
|
||||
return mPromptDialogs->PromptPassword(dialogTitle, text, pwd, nsnull, nsnull, _retval);
|
||||
}
|
|
@ -0,0 +1,47 @@
|
|||
/* -*- 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.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.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 2001 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*/
|
||||
|
||||
#ifndef __nsNonPersistAuthPrompt_h__
|
||||
#define __nsNonPersistAuthPrompt_h__
|
||||
|
||||
#include "nsCOMPtr.h"
|
||||
|
||||
#include "nsIWalletService.h"
|
||||
#include "nsIPrompt.h"
|
||||
|
||||
class nsNonPersistAuthPrompt : public nsISingleSignOnPrompt
|
||||
{
|
||||
public:
|
||||
nsNonPersistAuthPrompt();
|
||||
virtual ~nsNonPersistAuthPrompt();
|
||||
|
||||
NS_DECL_ISUPPORTS
|
||||
NS_DECL_NSISINGLESIGNONPROMPT
|
||||
NS_DECL_NSIAUTHPROMPT
|
||||
|
||||
protected:
|
||||
nsCOMPtr<nsIPrompt> mPromptDialogs;
|
||||
};
|
||||
|
||||
|
||||
#endif // __nsNonPersistAuthPrompt_h__
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
||||
*
|
||||
* 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.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*/
|
||||
|
||||
#include "nsISupports.idl"
|
||||
|
||||
interface nsIPrompt;
|
||||
|
||||
[scriptable, uuid(2f977d45-5485-11d4-87e2-0010a4e75ef2)]
|
||||
interface nsIAuthPrompt : nsISupports
|
||||
{
|
||||
const PRUint32 SAVE_PASSWORD_NEVER = 0;
|
||||
const PRUint32 SAVE_PASSWORD_FOR_SESSION = 1;
|
||||
const PRUint32 SAVE_PASSWORD_PERMANENTLY = 2;
|
||||
|
||||
/**
|
||||
* Puts up a text input dialog with OK and Cancel buttons.
|
||||
* @return true for OK, false for Cancel
|
||||
*/
|
||||
boolean prompt(in wstring dialogTitle,
|
||||
in wstring text,
|
||||
in wstring passwordRealm,
|
||||
in PRUint32 savePassword,
|
||||
in wstring defaultText,
|
||||
out wstring result);
|
||||
|
||||
/**
|
||||
* Puts up a username/password dialog with OK and Cancel buttons.
|
||||
* @return true for OK, false for Cancel
|
||||
*/
|
||||
boolean promptUsernameAndPassword(in wstring dialogTitle,
|
||||
in wstring text,
|
||||
in wstring passwordRealm,
|
||||
in PRUint32 savePassword,
|
||||
out wstring user,
|
||||
out wstring pwd);
|
||||
|
||||
/**
|
||||
* Puts up a password dialog with OK and Cancel buttons.
|
||||
* @return true for OK, false for Cancel
|
||||
*/
|
||||
boolean promptPassword(in wstring dialogTitle,
|
||||
in wstring text,
|
||||
in wstring passwordRealm,
|
||||
in PRUint32 savePassword,
|
||||
out wstring pwd);
|
||||
};
|
Загрузка…
Ссылка в новой задаче