aboutsummaryrefslogtreecommitdiffstats
path: root/embed/mozilla/EphyPromptService.h
blob: 0c2b1fa02c3bca2d276800ca3229026272b3428d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
/*
 *  Copyright © 2005, 2006 Christian Persch
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU Lesser General Public License as published by
 *  the Free Software Foundation; either version 2.1, or (at your option)
 *  any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU Lesser General Public License for more details.
 *
 *  You should have received a copy of the GNU Lesser General Public License
 *  along with this program; if not, write to the Free Software
 *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 *
 *  $Id$
 */

#ifndef EPHY_PROMPT_SERVICE_H
#define EPHY_PROMPT_SERVICE_H

#include <nsIPromptService.h>

#if HAVE_NSINONBLOCKINGALERTSERVICE_H
#include <nsINonBlockingAlertService.h>
#endif

#ifdef ENABLE_AUTHPROMPT2
#include <nsIPromptService2.h>
#endif

#define EPHY_PROMPT_SERVICE_IID             \
{ /* 6e8b90d4-78a6-41c5-98da-b1559a40d30d */        \
  0x6e8b90d4, 0x78a6, 0x41c5,               \
  { 0x98, 0xda, 0xb1, 0x55, 0x9a, 0x40, 0xd3, 0x0d } }

#define EPHY_PROMPT_SERVICE_CLASSNAME   "Epiphany Prompt Service"

class EphyPromptService :
#ifdef ENABLE_AUTHPROMPT2
                          public nsIPromptService2
#else
                          public nsIPromptService
#endif
#if HAVE_NSINONBLOCKINGALERTSERVICE_H
            , public nsINonBlockingAlertService
#endif
{
public:
    NS_DECL_ISUPPORTS
    NS_DECL_NSIPROMPTSERVICE
#ifdef ENABLE_AUTHPROMPT2
    NS_DECL_NSIPROMPTSERVICE2
#endif
#if HAVE_NSINONBLOCKINGALERTSERVICE_H
    NS_DECL_NSINONBLOCKINGALERTSERVICE
#endif

    EphyPromptService();
    virtual ~EphyPromptService();

 protected:
#ifdef ENABLE_AUTHPROMPT2
    static nsresult PromptPasswordAdapter(nsIPromptService* aService,
                          nsIDOMWindow* aParent,
                          nsIChannel* aChannel,
                          PRUint32 aLevel,
                          nsIAuthInformation* aAuthInfo,
                          const PRUnichar* aCheckLabel,
                          PRBool* aCheckValue,
                          PRBool* retval);
#endif /* ENABLE_AUTHPROMPT2 */
};

#endif /* EPHY_PROMPT_SERVICE_H */