~ubuntu-branches/ubuntu/lucid/kdebase/lucid

« back to all changes in this revision

Viewing changes to kcontrol/konqhtml/policydlg.h

  • Committer: Bazaar Package Importer
  • Author(s): Ana Beatriz Guerrero Lopez
  • Date: 2009-04-05 05:22:13 UTC
  • mfrom: (0.4.2 experimental) (0.2.2 upstream)
  • mto: This revision was merged to the branch mainline in revision 235.
  • Revision ID: james.westby@ubuntu.com-20090405052213-39thr4l6p2ss07uj
Tags: 4:4.2.2-1
* New upstream release:
  - khtml fixes. (Closes: #290285, #359680)
  - Default konsole sessions can be deleted. (Closes: #286342)
  - Tag widget uses standard application palette. (Closes: #444800)
  - ... and surely many more but we have lost track...

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
// (C) < 2002 to whoever created and edited this file before
2
 
// (C) 2002 Leo Savernik <l.savernik@aon.at>
3
 
//      Generalizing the policy dialog
4
 
 
5
 
#ifndef _POLICYDLG_H
6
 
#define _POLICYDLG_H
7
 
 
8
 
#include <kdialogbase.h>
9
 
 
10
 
#include <qlineedit.h>
11
 
#include <qstringlist.h>
12
 
 
13
 
class QLabel;
14
 
class QComboBox;
15
 
class QString;
16
 
class QVBoxLayout;
17
 
class QPushButton;
18
 
 
19
 
class Policies;
20
 
 
21
 
/**
22
 
 * A dialog for editing domain-specific policies.
23
 
 *
24
 
 * Each dialog must be associated with a relevant Policies instance which
25
 
 * will be updated within this dialog appropriately.
26
 
 *
27
 
 * Additionally you can insert your own widget containing controls for
28
 
 * specific policies with addPolicyPanel.
29
 
 *
30
 
 * @author unknown
31
 
 */
32
 
class PolicyDialog : public KDialogBase
33
 
{
34
 
    Q_OBJECT
35
 
 
36
 
public:
37
 
    /**
38
 
     * Enumerates the possible return values for the "feature enabled"
39
 
     * policy
40
 
     */
41
 
    enum FeatureEnabledPolicy { InheritGlobal = 0, Accept, Reject };
42
 
 
43
 
    /** constructor
44
 
     * @param policies policies object this dialog will write the settings
45
 
     *          into. Note that it always reflects the current settings,
46
 
     *          even if the dialog has been cancelled.
47
 
     * @param parent parent widget this belongs to
48
 
     * @param name internal name
49
 
     */
50
 
    PolicyDialog(Policies *policies, QWidget *parent = 0, const char *name = 0 );
51
 
 
52
 
    virtual ~PolicyDialog() {};
53
 
 
54
 
    /*
55
 
    * @return whether this feature should be activated, deactivated or
56
 
    *   inherited from the respective global policy.
57
 
    */
58
 
    FeatureEnabledPolicy featureEnabledPolicy() const;
59
 
 
60
 
    /**
61
 
     * @return the textual representation of the current "feature enabled"
62
 
     * policy
63
 
     */
64
 
    QString featureEnabledPolicyText() const;
65
 
 
66
 
    /*
67
 
    * @return the hostname for which the policy is being set
68
 
    */
69
 
    QString domain() const { return le_domain->text(); }
70
 
 
71
 
    /*
72
 
    * Sets the line-edit to be enabled/disabled.
73
 
    *
74
 
    * This method will set the text in the lineedit if the
75
 
    * value is not null.
76
 
    *
77
 
    * @param state @p true to enable the line-edit, otherwise disabled.
78
 
    * @param text  the text to be set in the line-edit. Default is NULL.
79
 
    */
80
 
    void setDisableEdit( bool /*state*/, const QString& text = QString::null );
81
 
 
82
 
    /**
83
 
     * Sets the label for the "feature enabled" policy
84
 
     * @param text label text
85
 
     */
86
 
    void setFeatureEnabledLabel(const QString &text);
87
 
 
88
 
    /**
89
 
     * Sets the "What's This" text for the "feature enabled" policy
90
 
     * combo box.
91
 
     * @param text what's-this text
92
 
     */
93
 
    void setFeatureEnabledWhatsThis(const QString &text);
94
 
 
95
 
    /**
96
 
     * Syncs the controls with the current content of the
97
 
     * associated policies object.
98
 
     */
99
 
    void refresh();
100
 
 
101
 
    /**
102
 
     * Adds another panel which contains controls for more policies.
103
 
     *
104
 
     * The widget is inserted between the "feature enabled" combo box and
105
 
     * the dialog buttons at the bottom.
106
 
     *
107
 
     * Currently at most one widget can be added.
108
 
     * @param panel pointer to widget to insert. The dialog takes ownership
109
 
     *          of it, but does not reparent it.
110
 
     */
111
 
    void addPolicyPanel(QWidget *panel);
112
 
 
113
 
protected slots:
114
 
 
115
 
    virtual void accept();
116
 
    void slotTextChanged( const QString &text);
117
 
 
118
 
private:
119
 
    Policies *policies;
120
 
    QVBoxLayout *topl;
121
 
    int insertIdx;
122
 
    QLineEdit *le_domain;
123
 
    QLabel *l_feature_policy;
124
 
    QComboBox *cb_feature_policy;
125
 
    QWidget *panel;
126
 
    QStringList policy_values;
127
 
    QPushButton *okButton;
128
 
};
129
 
 
130
 
#endif