mirror of
https://invent.kde.org/system/dolphin
synced 2024-09-20 00:41:23 +00:00
- Renamed policydlg.* to kcookiespolicyselectiondlg.*
- Reformatted code to adhere to kde coding style. - Cleaned up code.
This commit is contained in:
parent
b1cb13f556
commit
c5012ab5c4
|
@ -4,17 +4,17 @@ add_subdirectory( uasproviders )
|
|||
########### next target ###############
|
||||
|
||||
set(kcm_kio_PART_SRCS
|
||||
policydlg.cpp
|
||||
main.cpp
|
||||
kcookiesmain.cpp
|
||||
kcookiespolicies.cpp
|
||||
main.cpp
|
||||
kcookiesmanagement.cpp
|
||||
kcookiespolicyselectiondlg.cpp
|
||||
smbrodlg.cpp
|
||||
useragentdlg.cpp
|
||||
kproxydlgbase.cpp
|
||||
kmanualproxydlg.cpp
|
||||
kenvvarproxydlg.cpp
|
||||
kproxydlg.cpp
|
||||
kcookiesmanagement.cpp
|
||||
useragentinfo.cpp
|
||||
useragentselectordlg.cpp
|
||||
netpref.cpp
|
||||
|
@ -22,8 +22,17 @@ set(kcm_kio_PART_SRCS
|
|||
bookmarks.cpp
|
||||
ksaveioconfig.cpp)
|
||||
|
||||
|
||||
kde4_add_ui_files(kcm_kio_PART_SRCS bookmarks.ui cache.ui manualproxy.ui envvarproxy.ui policydlg.ui useragentselectordlg.ui kcookiesmanagementdlg.ui useragentdlg.ui kproxydlg.ui kcookiespoliciesdlg.ui kcookiesmanagementdlg.ui)
|
||||
kde4_add_ui_files(kcm_kio_PART_SRCS
|
||||
bookmarks.ui
|
||||
cache.ui
|
||||
useragentselectordlg.ui
|
||||
useragentdlg.ui
|
||||
manualproxy.ui
|
||||
envvarproxy.ui
|
||||
kproxydlg.ui
|
||||
kcookiespolicies.ui
|
||||
kcookiesmanagement.ui
|
||||
kcookiespolicyselectiondlg.ui)
|
||||
|
||||
kde4_add_plugin(kcm_kio ${kcm_kio_PART_SRCS})
|
||||
|
||||
|
|
|
@ -10,6 +10,10 @@
|
|||
// Own
|
||||
#include "kcookiesmain.h"
|
||||
|
||||
// Local
|
||||
#include "kcookiespolicies.h"
|
||||
#include "kcookiesmanagement.h"
|
||||
|
||||
// Qt
|
||||
#include <QtGui/QLayout>
|
||||
#include <QtGui/QTabWidget>
|
||||
|
@ -22,43 +26,38 @@
|
|||
#include <kdebug.h>
|
||||
#include <kpluginfactory.h>
|
||||
|
||||
// Local
|
||||
#include "kcookiespolicies.h"
|
||||
#include "kcookiesmanagement.h"
|
||||
|
||||
K_PLUGIN_FACTORY_DECLARATION(KioConfigFactory)
|
||||
K_PLUGIN_FACTORY_DECLARATION (KioConfigFactory)
|
||||
|
||||
KCookiesMain::KCookiesMain(QWidget *parent, const QVariantList &)
|
||||
: KCModule(KioConfigFactory::componentData(), parent)
|
||||
KCookiesMain::KCookiesMain (QWidget* parent, const QVariantList&)
|
||||
: KCModule (KioConfigFactory::componentData(), parent)
|
||||
{
|
||||
management = 0;
|
||||
bool managerOK = true;
|
||||
|
||||
QDBusInterface kded("org.kde.kded", "/kded", "org.kde.kded");
|
||||
QDBusReply<bool> reply = kded.call("loadModule",QString( "kcookiejar" ) );
|
||||
QDBusInterface kded ("org.kde.kded", "/kded", "org.kde.kded");
|
||||
QDBusReply<bool> reply = kded.call ("loadModule", QString ("kcookiejar"));
|
||||
|
||||
if( !reply.isValid() )
|
||||
{
|
||||
managerOK = false;
|
||||
kDebug(7103) << "kcm_kio: KDED could not load KCookiejar!";
|
||||
KMessageBox::sorry(0, i18n("Unable to start the cookie handler service.\n"
|
||||
"You will not be able to manage the cookies that "
|
||||
"are stored on your computer."));
|
||||
if (!reply.isValid()) {
|
||||
managerOK = false;
|
||||
kDebug (7103) << "kcm_kio: KDED could not load KCookiejar!";
|
||||
KMessageBox::sorry (0, i18n ("Unable to start the cookie handler service.\n"
|
||||
"You will not be able to manage the cookies that "
|
||||
"are stored on your computer."));
|
||||
}
|
||||
|
||||
QVBoxLayout *layout = new QVBoxLayout(this);
|
||||
tab = new QTabWidget(this);
|
||||
layout->addWidget(tab);
|
||||
QVBoxLayout* layout = new QVBoxLayout (this);
|
||||
tab = new QTabWidget (this);
|
||||
layout->addWidget (tab);
|
||||
|
||||
policies = new KCookiesPolicies(componentData(), this);
|
||||
tab->addTab(policies, i18n("&Policy"));
|
||||
connect(policies, SIGNAL(changed(bool)), SIGNAL(changed(bool)));
|
||||
policies = new KCookiesPolicies (componentData(), this);
|
||||
tab->addTab (policies, i18n ("&Policy"));
|
||||
connect (policies, SIGNAL (changed (bool)), SIGNAL (changed (bool)));
|
||||
|
||||
if( managerOK )
|
||||
{
|
||||
management = new KCookiesManagement(componentData(), this);
|
||||
tab->addTab(management, i18n("&Management"));
|
||||
connect(management, SIGNAL(changed(bool)), SIGNAL(changed(bool)));
|
||||
if (managerOK) {
|
||||
management = new KCookiesManagement (componentData(), this);
|
||||
tab->addTab (management, i18n ("&Management"));
|
||||
connect (management, SIGNAL (changed (bool)), SIGNAL (changed (bool)));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -68,37 +67,37 @@ KCookiesMain::~KCookiesMain()
|
|||
|
||||
void KCookiesMain::save()
|
||||
{
|
||||
policies->save();
|
||||
if ( management )
|
||||
management->save();
|
||||
policies->save();
|
||||
if (management)
|
||||
management->save();
|
||||
}
|
||||
|
||||
void KCookiesMain::defaults()
|
||||
{
|
||||
KCModule* module = static_cast<KCModule*>(tab->currentWidget());
|
||||
KCModule* module = static_cast<KCModule*> (tab->currentWidget());
|
||||
|
||||
if ( module == policies )
|
||||
policies->defaults();
|
||||
else if( management )
|
||||
management->defaults();
|
||||
if (module == policies)
|
||||
policies->defaults();
|
||||
else if (management)
|
||||
management->defaults();
|
||||
}
|
||||
|
||||
QString KCookiesMain::quickHelp() const
|
||||
{
|
||||
return i18n("<p><h1>Cookies</h1> Cookies contain information that Konqueror"
|
||||
" (or other KDE applications using the HTTP protocol) stores on your"
|
||||
" computer, initiated by a remote Internet server. This means that"
|
||||
" a web server can store information about you and your browsing activities"
|
||||
" on your machine for later use. You might consider this an invasion of"
|
||||
" privacy.</p><p> However, cookies are useful in certain situations. For example, they"
|
||||
" are often used by Internet shops, so you can 'put things into a shopping basket'."
|
||||
" Some sites require you have a browser that supports cookies.</p><p>"
|
||||
" Because most people want a compromise between privacy and the benefits cookies offer,"
|
||||
" KDE offers you the ability to customize the way it handles cookies. So you might want"
|
||||
" to set KDE's default policy to ask you whenever a server wants to set a cookie,"
|
||||
" allowing you to decide. For your favorite shopping web sites that you trust, you might"
|
||||
" want to set the policy to accept, then you can access the web sites without being prompted"
|
||||
" every time KDE receives a cookie.</p>" );
|
||||
return i18n ("<p><h1>Cookies</h1> Cookies contain information that Konqueror"
|
||||
" (or other KDE applications using the HTTP protocol) stores on your"
|
||||
" computer, initiated by a remote Internet server. This means that"
|
||||
" a web server can store information about you and your browsing activities"
|
||||
" on your machine for later use. You might consider this an invasion of"
|
||||
" privacy.</p><p> However, cookies are useful in certain situations. For example, they"
|
||||
" are often used by Internet shops, so you can 'put things into a shopping basket'."
|
||||
" Some sites require you have a browser that supports cookies.</p><p>"
|
||||
" Because most people want a compromise between privacy and the benefits cookies offer,"
|
||||
" KDE offers you the ability to customize the way it handles cookies. So you might want"
|
||||
" to set KDE's default policy to ask you whenever a server wants to set a cookie,"
|
||||
" allowing you to decide. For your favorite shopping web sites that you trust, you might"
|
||||
" want to set the policy to accept, then you can access the web sites without being prompted"
|
||||
" every time KDE receives a cookie.</p>");
|
||||
}
|
||||
|
||||
#include "kcookiesmain.moc"
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
#include <QtCore/QHash>
|
||||
|
||||
#include <kcmodule.h>
|
||||
#include "ui_kcookiesmanagementdlg.h"
|
||||
#include "ui_kcookiesmanagement.h"
|
||||
|
||||
struct CookieProp;
|
||||
|
||||
|
@ -83,7 +83,7 @@ private:
|
|||
|
||||
bool mDeleteAllFlag;
|
||||
QWidget* mMainWidget;
|
||||
Ui::KCookiesManagementDlgUI mUi;
|
||||
Ui::KCookiesManagementUI mUi;
|
||||
|
||||
QStringList mDeletedDomains;
|
||||
typedef QList<CookieProp *> CookiePropList;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>KCookiesManagementDlgUI</class>
|
||||
<widget class="QWidget" name="KCookiesManagementDlgUI">
|
||||
<class>KCookiesManagementUI</class>
|
||||
<widget class="QWidget" name="KCookiesManagementUI">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
|
@ -27,6 +27,9 @@
|
|||
// Own
|
||||
#include "kcookiespolicies.h"
|
||||
|
||||
// Local
|
||||
#include "ksaveioconfig.h"
|
||||
|
||||
// Qt
|
||||
#include <QtGui/QLayout>
|
||||
#include <QtGui/QCheckBox>
|
||||
|
@ -44,7 +47,6 @@
|
|||
#include <kurl.h>
|
||||
#include <kdebug.h>
|
||||
|
||||
#include "ksaveioconfig.h"
|
||||
|
||||
// QUrl::fromAce/toAce don't accept a domain that starts with a '.', like we do here.
|
||||
// So we use these wrappers.
|
||||
|
@ -169,7 +171,8 @@ void KCookiesPolicies::autoAcceptSessionCookies (bool enable)
|
|||
|
||||
void KCookiesPolicies::addNewPolicy (const QString& domain)
|
||||
{
|
||||
PolicyDlg pdlg (i18nc ("@title:window", "New Cookie Policy"), this);
|
||||
KCookiesPolicySelectionDlg pdlg (this);
|
||||
pdlg.setWindowTitle (i18nc ("@title:window", "New Cookie Policy"));
|
||||
pdlg.setEnableHostEdit (true, domain);
|
||||
|
||||
if (mUi.rbPolicyAccept->isChecked())
|
||||
|
@ -206,7 +209,8 @@ void KCookiesPolicies::changePressed()
|
|||
|
||||
QString oldDomain = index->text (0);
|
||||
|
||||
PolicyDlg pdlg (i18nc ("@title:window", "Change Cookie Policy"), this);
|
||||
KCookiesPolicySelectionDlg pdlg (this);
|
||||
pdlg.setWindowTitle (i18nc ("@title:window", "Change Cookie Policy"));
|
||||
pdlg.setPolicy (KCookieAdvice::strToAdvice (m_pDomainPolicy[index]));
|
||||
pdlg.setEnableHostEdit (true, oldDomain);
|
||||
|
||||
|
|
|
@ -29,8 +29,9 @@
|
|||
#include <QtCore/QMap>
|
||||
#include <kcmodule.h>
|
||||
|
||||
#include "policydlg.h"
|
||||
#include "ui_kcookiespoliciesdlg.h"
|
||||
#include "kcookiespolicyselectiondlg.h"
|
||||
#include "ui_kcookiespolicies.h"
|
||||
|
||||
|
||||
class QTreeWidgetItem;
|
||||
|
||||
|
@ -71,7 +72,7 @@ private:
|
|||
|
||||
private:
|
||||
int d_itemsSelected;
|
||||
Ui::KCookiesPolicyDlgUI mUi;
|
||||
Ui::KCookiePoliciesUI mUi;
|
||||
QMap<QTreeWidgetItem*, const char*> m_pDomainPolicy;
|
||||
};
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<ui version="4.0" >
|
||||
<class>KCookiesPolicyDlgUI</class>
|
||||
<widget class="QWidget" name="KCookiesPolicyDlgUI" >
|
||||
<class>KCookiePoliciesUI</class>
|
||||
<widget class="QWidget" name="KCookiePoliciesUI" >
|
||||
<property name="geometry" >
|
||||
<rect>
|
||||
<x>0</x>
|
108
konqueror/settings/kio/kcookiespolicyselectiondlg.cpp
Normal file
108
konqueror/settings/kio/kcookiespolicyselectiondlg.cpp
Normal file
|
@ -0,0 +1,108 @@
|
|||
/**
|
||||
* Copyright (c) 2000- Dawit Alemayehu <adawit@kde.org>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, 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 General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU 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.
|
||||
*/
|
||||
|
||||
// Own
|
||||
#include "kcookiespolicyselectiondlg.h"
|
||||
|
||||
// Qt
|
||||
#include <QtGui/QPushButton>
|
||||
#include <QtGui/QWhatsThis>
|
||||
#include <QtGui/QLayout>
|
||||
#include <QtGui/QLabel>
|
||||
#include <QtGui/QValidator>
|
||||
|
||||
// KDE
|
||||
#include <klineedit.h>
|
||||
#include <kcombobox.h>
|
||||
#include <klocale.h>
|
||||
|
||||
class DomainNameValidator : public QValidator
|
||||
{
|
||||
public:
|
||||
DomainNameValidator (QObject* parent)
|
||||
:QValidator(parent)
|
||||
{
|
||||
setObjectName(QLatin1String("domainValidator"));
|
||||
}
|
||||
|
||||
State validate (QString& input, int&) const
|
||||
{
|
||||
if (input.isEmpty() || (input == ".")) {
|
||||
return Intermediate;
|
||||
}
|
||||
|
||||
const int length = input.length();
|
||||
|
||||
for (int i = 0 ; i < length; i++) {
|
||||
if (!input[i].isLetterOrNumber() && input[i] != '.' && input[i] != '-') {
|
||||
return Invalid;
|
||||
}
|
||||
}
|
||||
|
||||
return Acceptable;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
KCookiesPolicySelectionDlg::KCookiesPolicySelectionDlg (QWidget* parent, Qt::WindowFlags flags)
|
||||
: KDialog (parent, flags)
|
||||
{
|
||||
mUi.setupUi(mainWidget());
|
||||
mUi.leDomain->setValidator(new DomainNameValidator (mUi.leDomain));
|
||||
mUi.cbPolicy->setMinimumWidth(mUi.cbPolicy->fontMetrics().maxWidth() * 15);
|
||||
|
||||
enableButtonOk(false);
|
||||
connect(mUi.leDomain, SIGNAL(textEdited(QString)),
|
||||
SLOT(slotTextChanged (QString)));
|
||||
|
||||
mUi.leDomain->setFocus();
|
||||
}
|
||||
|
||||
void KCookiesPolicySelectionDlg::setEnableHostEdit (bool state, const QString& host)
|
||||
{
|
||||
if (!host.isEmpty())
|
||||
mUi.leDomain->setText (host);
|
||||
|
||||
mUi.leDomain->setEnabled (state);
|
||||
}
|
||||
|
||||
void KCookiesPolicySelectionDlg::setPolicy (int policy)
|
||||
{
|
||||
if (policy > -1 && policy <= static_cast<int> (mUi.cbPolicy->count()))
|
||||
mUi.cbPolicy->setCurrentIndex (policy - 1);
|
||||
|
||||
if (!mUi.leDomain->isEnabled())
|
||||
mUi.cbPolicy->setFocus();
|
||||
}
|
||||
|
||||
int KCookiesPolicySelectionDlg::advice () const
|
||||
{
|
||||
return mUi.cbPolicy->currentIndex() + 1;
|
||||
}
|
||||
|
||||
QString KCookiesPolicySelectionDlg::domain () const
|
||||
{
|
||||
return mUi.leDomain->text();
|
||||
}
|
||||
|
||||
void KCookiesPolicySelectionDlg::slotTextChanged (const QString& text)
|
||||
{
|
||||
enableButtonOk (text.length() > 1);
|
||||
}
|
||||
|
||||
#include "kcookiespolicyselectiondlg.moc"
|
80
konqueror/settings/kio/kcookiespolicyselectiondlg.h
Normal file
80
konqueror/settings/kio/kcookiespolicyselectiondlg.h
Normal file
|
@ -0,0 +1,80 @@
|
|||
/**
|
||||
* Copyright (c) 2000- Dawit Alemayehu <adawit@kde.org>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, 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 General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU 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.
|
||||
*/
|
||||
|
||||
#ifndef KCOOKIESPOLICYSELECTIONDLG_H
|
||||
#define KCOOKIESPOLICYSELECTIONDLG_H
|
||||
|
||||
#include <kdialog.h>
|
||||
#include "ui_kcookiespolicyselectiondlg.h"
|
||||
|
||||
class QWidget;
|
||||
|
||||
class KCookieAdvice
|
||||
{
|
||||
public:
|
||||
enum Value {Dunno = 0, Accept, Reject, Ask};
|
||||
|
||||
static const char* adviceToStr (const int& advice) {
|
||||
switch (advice) {
|
||||
case KCookieAdvice::Accept:
|
||||
return I18N_NOOP ("Accept");
|
||||
case KCookieAdvice::Reject:
|
||||
return I18N_NOOP ("Reject");
|
||||
case KCookieAdvice::Ask:
|
||||
return I18N_NOOP ("Ask");
|
||||
default:
|
||||
return I18N_NOOP ("Dunno");
|
||||
}
|
||||
}
|
||||
|
||||
static KCookieAdvice::Value strToAdvice (const QString& advice) {
|
||||
if (advice.isEmpty())
|
||||
return KCookieAdvice::Dunno;
|
||||
|
||||
if (advice.indexOf (QLatin1String ("accept"), 0, Qt::CaseInsensitive) == 0)
|
||||
return KCookieAdvice::Accept;
|
||||
else if (advice.indexOf (QLatin1String ("reject"), 0, Qt::CaseInsensitive) == 0)
|
||||
return KCookieAdvice::Reject;
|
||||
else if (advice.indexOf (QLatin1String ("ask"), 0, Qt::CaseInsensitive) == 0)
|
||||
return KCookieAdvice::Ask;
|
||||
|
||||
return KCookieAdvice::Dunno;
|
||||
}
|
||||
};
|
||||
|
||||
class KCookiesPolicySelectionDlg : public KDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit KCookiesPolicySelectionDlg (QWidget* parent = 0, Qt::WindowFlags f = 0);
|
||||
~KCookiesPolicySelectionDlg () {}
|
||||
|
||||
int advice() const;
|
||||
QString domain() const;
|
||||
|
||||
void setEnableHostEdit (bool, const QString& host = QString());
|
||||
void setPolicy (int policy);
|
||||
|
||||
protected Q_SLOTS:
|
||||
void slotTextChanged (const QString&);
|
||||
|
||||
private:
|
||||
Ui::KCookiesPolicySelectionDlgUI mUi;
|
||||
};
|
||||
#endif
|
110
konqueror/settings/kio/kcookiespolicyselectiondlg.ui
Normal file
110
konqueror/settings/kio/kcookiespolicyselectiondlg.ui
Normal file
|
@ -0,0 +1,110 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>KCookiesPolicySelectionDlgUI</class>
|
||||
<widget class="QWidget" name="KCookiesPolicySelectionDlgUI">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>287</width>
|
||||
<height>81</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QFormLayout" name="formLayout">
|
||||
<property name="fieldGrowthPolicy">
|
||||
<enum>QFormLayout::ExpandingFieldsGrow</enum>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="lbDomain">
|
||||
<property name="whatsThis">
|
||||
<string><qt>
|
||||
Enter the host or domain to which this policy applies, e.g. <b>www.kde.org</b> or <b>.kde.org</b>.
|
||||
</qt></string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Site name:</string>
|
||||
</property>
|
||||
<property name="wordWrap">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>leDomain</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="KLineEdit" name="leDomain">
|
||||
<property name="whatsThis">
|
||||
<string>Enter the host or domain name, e.g. .kde.org, this policy applies to.</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="lbPolicy">
|
||||
<property name="whatsThis">
|
||||
<string><qt>
|
||||
Select the desired policy:
|
||||
<ul>
|
||||
<li><b>Accept</b> - Allows this site to set cookies</li>
|
||||
<li><b>Reject</b> - Refuse all cookies sent from this site</li>
|
||||
<li><b>Ask</b> - Prompt when cookies are received from this site</li>
|
||||
</ul>
|
||||
</qt></string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Policy:</string>
|
||||
</property>
|
||||
<property name="wordWrap">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>cbPolicy</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="KComboBox" name="cbPolicy">
|
||||
<property name="whatsThis">
|
||||
<string><qt>
|
||||
Select the desired policy:
|
||||
<ul>
|
||||
<li><b>Accept</b> - Allows this site to set cookies</li>
|
||||
<li><b>Reject</b> - Refuse all cookies sent from this site</li>
|
||||
<li><b>Ask</b> - Prompt when cookies are received from this site</li>
|
||||
</ul>
|
||||
</qt></string>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Accept</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Reject</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Ask</string>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>KComboBox</class>
|
||||
<extends>QComboBox</extends>
|
||||
<header>kcombobox.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>KLineEdit</class>
|
||||
<extends>QLineEdit</extends>
|
||||
<header>klineedit.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
|
@ -1,114 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) 2000- Dawit Alemayehu <adawit@kde.org>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, 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 General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU 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.
|
||||
*/
|
||||
|
||||
// Own
|
||||
#include "policydlg.h"
|
||||
|
||||
// Qt
|
||||
#include <QtGui/QPushButton>
|
||||
#include <QtGui/QWhatsThis>
|
||||
#include <QtGui/QLayout>
|
||||
#include <QtGui/QLabel>
|
||||
#include <QtGui/QValidator>
|
||||
|
||||
// KDE
|
||||
#include <klineedit.h>
|
||||
#include <kcombobox.h>
|
||||
#include <klocale.h>
|
||||
|
||||
class DomainLineValidator : public QValidator
|
||||
{
|
||||
public:
|
||||
DomainLineValidator(QObject *parent)
|
||||
:QValidator(parent)
|
||||
{
|
||||
setObjectName( QLatin1String("domainValidator" ));
|
||||
}
|
||||
|
||||
State validate(QString &input, int &) const
|
||||
{
|
||||
if (input.isEmpty() || (input == "."))
|
||||
return Intermediate;
|
||||
|
||||
int length = input.length();
|
||||
|
||||
for(int i = 0 ; i < length; i++)
|
||||
{
|
||||
if (!input[i].isLetterOrNumber() && input[i] != '.' && input[i] != '-')
|
||||
return Invalid;
|
||||
}
|
||||
|
||||
return Acceptable;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
PolicyDlg::PolicyDlg (const QString& caption, QWidget *parent,
|
||||
const char *name)
|
||||
: KDialog( parent )
|
||||
{
|
||||
setObjectName( name );
|
||||
setModal( true );
|
||||
setCaption( caption );
|
||||
setButtons( Ok|Cancel );
|
||||
|
||||
m_dlgUI = new PolicyDlgUI (this);
|
||||
setMainWidget(m_dlgUI);
|
||||
|
||||
m_dlgUI->leDomain->setValidator(new DomainLineValidator(m_dlgUI->leDomain));
|
||||
m_dlgUI->cbPolicy->setMinimumWidth( m_dlgUI->cbPolicy->fontMetrics().maxWidth() * 25 );
|
||||
|
||||
enableButtonOk( false );
|
||||
connect(m_dlgUI->leDomain, SIGNAL(textChanged(QString)),
|
||||
SLOT(slotTextChanged(QString)));
|
||||
|
||||
setFixedSize (sizeHint());
|
||||
m_dlgUI->leDomain->setFocus ();
|
||||
}
|
||||
|
||||
void PolicyDlg::setEnableHostEdit( bool state, const QString& host )
|
||||
{
|
||||
if ( !host.isEmpty() )
|
||||
m_dlgUI->leDomain->setText( host );
|
||||
m_dlgUI->leDomain->setEnabled( state );
|
||||
}
|
||||
|
||||
void PolicyDlg::setPolicy (int policy)
|
||||
{
|
||||
if ( policy > -1 && policy <= static_cast<int>(m_dlgUI->cbPolicy->count()) )
|
||||
m_dlgUI->cbPolicy->setCurrentIndex(policy-1);
|
||||
|
||||
if ( !m_dlgUI->leDomain->isEnabled() )
|
||||
m_dlgUI->cbPolicy->setFocus();
|
||||
}
|
||||
|
||||
int PolicyDlg::advice () const
|
||||
{
|
||||
return m_dlgUI->cbPolicy->currentIndex() + 1;
|
||||
}
|
||||
|
||||
QString PolicyDlg::domain () const
|
||||
{
|
||||
return m_dlgUI->leDomain->text();
|
||||
}
|
||||
|
||||
void PolicyDlg::slotTextChanged( const QString& text )
|
||||
{
|
||||
enableButtonOk( text.length() > 1 );
|
||||
}
|
||||
#include "policydlg.moc"
|
|
@ -1,94 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) 2000- Dawit Alemayehu <adawit@kde.org>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, 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 General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU 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.
|
||||
*/
|
||||
|
||||
#ifndef _POLICYDLG_H
|
||||
#define _POLICYDLG_H
|
||||
|
||||
|
||||
|
||||
#include <kdialog.h>
|
||||
#include "ui_policydlg.h"
|
||||
|
||||
|
||||
class PolicyDlgUI : public QWidget, public Ui::PolicyDlgUI
|
||||
{
|
||||
public:
|
||||
PolicyDlgUI( QWidget *parent ) : QWidget( parent ) {
|
||||
setupUi( this );
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
class KCookieAdvice
|
||||
{
|
||||
public:
|
||||
enum Value {Dunno=0, Accept, Reject, Ask};
|
||||
|
||||
static const char * adviceToStr (const int& advice)
|
||||
{
|
||||
switch (advice)
|
||||
{
|
||||
case KCookieAdvice::Accept:
|
||||
return I18N_NOOP("Accept");
|
||||
case KCookieAdvice::Reject:
|
||||
return I18N_NOOP("Reject");
|
||||
case KCookieAdvice::Ask:
|
||||
return I18N_NOOP("Ask");
|
||||
default:
|
||||
return I18N_NOOP("Dunno");
|
||||
}
|
||||
}
|
||||
|
||||
static KCookieAdvice::Value strToAdvice (const QString& advice)
|
||||
{
|
||||
if (advice.isEmpty())
|
||||
return KCookieAdvice::Dunno;
|
||||
|
||||
if (advice.indexOf (QLatin1String("accept"), 0, Qt::CaseInsensitive) == 0)
|
||||
return KCookieAdvice::Accept;
|
||||
else if (advice.indexOf (QLatin1String("reject"), 0, Qt::CaseInsensitive) == 0)
|
||||
return KCookieAdvice::Reject;
|
||||
else if (advice.indexOf (QLatin1String("ask"), 0, Qt::CaseInsensitive) == 0)
|
||||
return KCookieAdvice::Ask;
|
||||
|
||||
return KCookieAdvice::Dunno;
|
||||
}
|
||||
};
|
||||
|
||||
class PolicyDlg : public KDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit PolicyDlg (const QString& caption, QWidget *parent = 0,
|
||||
const char *name = 0);
|
||||
~PolicyDlg (){}
|
||||
|
||||
int advice() const;
|
||||
QString domain() const;
|
||||
|
||||
void setEnableHostEdit( bool, const QString& host = QString() );
|
||||
void setPolicy (int policy);
|
||||
|
||||
protected Q_SLOTS:
|
||||
void slotTextChanged( const QString& );
|
||||
|
||||
private:
|
||||
PolicyDlgUI* m_dlgUI;
|
||||
};
|
||||
#endif
|
|
@ -1,121 +0,0 @@
|
|||
<ui version="4.0" >
|
||||
<class>PolicyDlgUI</class>
|
||||
<widget class="QWidget" name="PolicyDlgUI" >
|
||||
<property name="geometry" >
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>301</width>
|
||||
<height>125</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QFormLayout" name="formLayout" >
|
||||
<item row="0" column="0" >
|
||||
<widget class="QLabel" name="lbDomain" >
|
||||
<property name="whatsThis" >
|
||||
<string><qt>
|
||||
Enter the host or domain to which this policy applies, e.g. <b>www.kde.org</b> or <b>.kde.org</b>.
|
||||
</qt></string>
|
||||
</property>
|
||||
<property name="text" >
|
||||
<string>&Domain name:</string>
|
||||
</property>
|
||||
<property name="wordWrap" >
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="buddy" >
|
||||
<cstring>leDomain</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1" >
|
||||
<widget class="KLineEdit" name="leDomain" >
|
||||
<property name="whatsThis" >
|
||||
<string><qt>
|
||||
Enter the host or domain to which this policy applies, e.g. <b>www.kde.org</b> or <b>.kde.org</b>.
|
||||
</qt></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0" >
|
||||
<widget class="QLabel" name="lbPolicy" >
|
||||
<property name="whatsThis" >
|
||||
<string><qt>
|
||||
Select the desired policy:
|
||||
<ul>
|
||||
<li><b>Accept</b> - Allows this site to set cookies</li>
|
||||
<li><b>Reject</b> - Refuse all cookies sent from this site</li>
|
||||
<li><b>Ask</b> - Prompt when cookies are received from this site</li>
|
||||
</ul>
|
||||
</qt></string>
|
||||
</property>
|
||||
<property name="text" >
|
||||
<string>&Policy:</string>
|
||||
</property>
|
||||
<property name="wordWrap" >
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="buddy" >
|
||||
<cstring>cbPolicy</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1" >
|
||||
<widget class="KComboBox" name="cbPolicy" >
|
||||
<property name="whatsThis" >
|
||||
<string><qt>
|
||||
Select the desired policy:
|
||||
<ul>
|
||||
<li><b>Accept</b> - Allows this site to set cookies</li>
|
||||
<li><b>Reject</b> - Refuse all cookies sent from this site</li>
|
||||
<li><b>Ask</b> - Prompt when cookies are received from this site</li>
|
||||
</ul>
|
||||
</qt></string>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text" >
|
||||
<string>Accept</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text" >
|
||||
<string>Reject</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text" >
|
||||
<string>Ask</string>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0" >
|
||||
<spacer>
|
||||
<property name="orientation" >
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0" >
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>KComboBox</class>
|
||||
<extends>QComboBox</extends>
|
||||
<header>kcombobox.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>KLineEdit</class>
|
||||
<extends>QLineEdit</extends>
|
||||
<header>klineedit.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
|
@ -47,21 +47,21 @@
|
|||
#include <kpluginfactory.h>
|
||||
|
||||
|
||||
K_PLUGIN_FACTORY_DECLARATION(KioConfigFactory)
|
||||
K_PLUGIN_FACTORY_DECLARATION (KioConfigFactory)
|
||||
|
||||
typedef QList<QTreeWidgetItem*> SiteList;
|
||||
typedef SiteList::iterator SiteListIterator;
|
||||
|
||||
UserAgentDlg::UserAgentDlg(QWidget *parent, const QVariantList &)
|
||||
:KCModule(KioConfigFactory::componentData(), parent),
|
||||
m_userAgentInfo(0),
|
||||
m_config(0)
|
||||
UserAgentDlg::UserAgentDlg (QWidget* parent, const QVariantList&)
|
||||
: KCModule (KioConfigFactory::componentData(), parent),
|
||||
m_userAgentInfo (0),
|
||||
m_config (0)
|
||||
{
|
||||
ui.setupUi(this);
|
||||
ui.newButton->setIcon(KIcon("list-add"));
|
||||
ui.changeButton->setIcon(KIcon("edit-rename"));
|
||||
ui.deleteButton->setIcon(KIcon("list-remove"));
|
||||
ui.deleteAllButton->setIcon(KIcon("edit-delete"));
|
||||
ui.setupUi (this);
|
||||
ui.newButton->setIcon (KIcon ("list-add"));
|
||||
ui.changeButton->setIcon (KIcon ("edit-rename"));
|
||||
ui.deleteButton->setIcon (KIcon ("list-remove"));
|
||||
ui.deleteAllButton->setIcon (KIcon ("edit-delete"));
|
||||
}
|
||||
|
||||
UserAgentDlg::~UserAgentDlg()
|
||||
|
@ -72,335 +72,322 @@ UserAgentDlg::~UserAgentDlg()
|
|||
|
||||
void UserAgentDlg::on_sendUACheckBox_clicked()
|
||||
{
|
||||
configChanged();
|
||||
configChanged();
|
||||
}
|
||||
|
||||
void UserAgentDlg::on_newButton_clicked()
|
||||
{
|
||||
const QPointer<UserAgentSelectorDlg> pdlg( new UserAgentSelectorDlg( i18nc("@title:window", "Add Identification"), m_userAgentInfo, this ) );
|
||||
const QPointer<UserAgentSelectorDlg> pdlg (new UserAgentSelectorDlg (m_userAgentInfo, this));
|
||||
pdlg->setWindowTitle(i18nc ("@title:window", "Add Identification"));
|
||||
|
||||
if ( pdlg->exec() == QDialog::Accepted && pdlg )
|
||||
{
|
||||
if ( !handleDuplicate( pdlg->siteName(), pdlg->identity(), pdlg->alias() ) )
|
||||
{
|
||||
QTreeWidgetItem* item = new QTreeWidgetItem( ui.sitePolicyTreeWidget);
|
||||
item->setText(0, pdlg->siteName());
|
||||
item->setText(1, pdlg->identity());
|
||||
item->setText(2, pdlg->alias());
|
||||
ui.sitePolicyTreeWidget->setCurrentItem( item );
|
||||
configChanged();
|
||||
if (pdlg->exec() == QDialog::Accepted && pdlg) {
|
||||
if (!handleDuplicate (pdlg->siteName(), pdlg->identity(), pdlg->alias())) {
|
||||
QTreeWidgetItem* item = new QTreeWidgetItem (ui.sitePolicyTreeWidget);
|
||||
item->setText (0, pdlg->siteName());
|
||||
item->setText (1, pdlg->identity());
|
||||
item->setText (2, pdlg->alias());
|
||||
ui.sitePolicyTreeWidget->setCurrentItem (item);
|
||||
configChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
delete pdlg;
|
||||
delete pdlg;
|
||||
}
|
||||
|
||||
void UserAgentDlg::on_changeButton_clicked()
|
||||
{
|
||||
on_sitePolicyTreeWidget_itemDoubleClicked(ui.sitePolicyTreeWidget->currentItem(), -1);
|
||||
on_sitePolicyTreeWidget_itemDoubleClicked (ui.sitePolicyTreeWidget->currentItem(), -1);
|
||||
}
|
||||
|
||||
void UserAgentDlg::on_deleteButton_clicked()
|
||||
{
|
||||
SiteList selectedItems = ui.sitePolicyTreeWidget->selectedItems();
|
||||
SiteListIterator endIt = selectedItems.end();
|
||||
SiteList selectedItems = ui.sitePolicyTreeWidget->selectedItems();
|
||||
SiteListIterator endIt = selectedItems.end();
|
||||
|
||||
QString siteName;
|
||||
for(SiteListIterator it = selectedItems.begin(); it != endIt; ++it)
|
||||
delete (*it);
|
||||
QString siteName;
|
||||
for (SiteListIterator it = selectedItems.begin(); it != endIt; ++it)
|
||||
delete (*it);
|
||||
|
||||
updateButtons();
|
||||
configChanged();
|
||||
updateButtons();
|
||||
configChanged();
|
||||
}
|
||||
|
||||
void UserAgentDlg::on_deleteAllButton_clicked()
|
||||
{
|
||||
ui.sitePolicyTreeWidget->clear();
|
||||
updateButtons();
|
||||
configChanged();
|
||||
ui.sitePolicyTreeWidget->clear();
|
||||
updateButtons();
|
||||
configChanged();
|
||||
}
|
||||
|
||||
void UserAgentDlg::on_osNameCheckBox_clicked()
|
||||
{
|
||||
changeDefaultUAModifiers();
|
||||
changeDefaultUAModifiers();
|
||||
}
|
||||
|
||||
void UserAgentDlg::on_osVersionCheckBox_clicked()
|
||||
{
|
||||
changeDefaultUAModifiers();
|
||||
changeDefaultUAModifiers();
|
||||
}
|
||||
|
||||
void UserAgentDlg::on_processorTypeCheckBox_clicked()
|
||||
{
|
||||
changeDefaultUAModifiers();
|
||||
changeDefaultUAModifiers();
|
||||
}
|
||||
|
||||
void UserAgentDlg::on_languageCheckBox_clicked()
|
||||
{
|
||||
changeDefaultUAModifiers();
|
||||
changeDefaultUAModifiers();
|
||||
}
|
||||
|
||||
void UserAgentDlg::on_sitePolicyTreeWidget_itemDoubleClicked(QTreeWidgetItem* item, int)
|
||||
void UserAgentDlg::on_sitePolicyTreeWidget_itemDoubleClicked (QTreeWidgetItem* item, int)
|
||||
{
|
||||
if(item)
|
||||
{
|
||||
// Store the current site name...
|
||||
const QString currentSiteName = item->text(0);
|
||||
if (item) {
|
||||
// Store the current site name...
|
||||
const QString currentSiteName = item->text (0);
|
||||
|
||||
UserAgentSelectorDlg pdlg ( i18nc("@title:window", "Modify Identification"), m_userAgentInfo, this );
|
||||
pdlg.setSiteName( currentSiteName );
|
||||
pdlg.setIdentity( item->text(1) );
|
||||
UserAgentSelectorDlg pdlg (m_userAgentInfo, this);
|
||||
pdlg.setWindowTitle (i18nc ("@title:window", "Modify Identification"));
|
||||
pdlg.setSiteName (currentSiteName);
|
||||
pdlg.setIdentity (item->text (1));
|
||||
|
||||
if ( pdlg.exec() == QDialog::Accepted )
|
||||
{
|
||||
if ( pdlg.siteName() == currentSiteName ||
|
||||
!handleDuplicate( pdlg.siteName(), pdlg.identity(), pdlg.alias() ) )
|
||||
{
|
||||
item->setText( 0, pdlg.siteName() );
|
||||
item->setText( 1, pdlg.identity() );
|
||||
item->setText( 2, pdlg.alias() );
|
||||
configChanged();
|
||||
}
|
||||
if (pdlg.exec() == QDialog::Accepted) {
|
||||
if (pdlg.siteName() == currentSiteName ||
|
||||
!handleDuplicate (pdlg.siteName(), pdlg.identity(), pdlg.alias())) {
|
||||
item->setText (0, pdlg.siteName());
|
||||
item->setText (1, pdlg.identity());
|
||||
item->setText (2, pdlg.alias());
|
||||
configChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void UserAgentDlg::changeDefaultUAModifiers()
|
||||
{
|
||||
m_ua_keys = ':'; // Make sure it's not empty
|
||||
m_ua_keys = ':'; // Make sure it's not empty
|
||||
|
||||
if ( ui.osNameCheckBox->isChecked() )
|
||||
m_ua_keys += 'o';
|
||||
if (ui.osNameCheckBox->isChecked())
|
||||
m_ua_keys += 'o';
|
||||
|
||||
if ( ui.osVersionCheckBox->isChecked() )
|
||||
m_ua_keys += 'v';
|
||||
if (ui.osVersionCheckBox->isChecked())
|
||||
m_ua_keys += 'v';
|
||||
|
||||
if ( ui.processorTypeCheckBox->isChecked() )
|
||||
m_ua_keys += 'm';
|
||||
if (ui.processorTypeCheckBox->isChecked())
|
||||
m_ua_keys += 'm';
|
||||
|
||||
if ( ui.languageCheckBox->isChecked() )
|
||||
m_ua_keys += 'l';
|
||||
if (ui.languageCheckBox->isChecked())
|
||||
m_ua_keys += 'l';
|
||||
|
||||
ui.osVersionCheckBox->setEnabled(m_ua_keys.contains('o'));
|
||||
ui.osVersionCheckBox->setEnabled (m_ua_keys.contains ('o'));
|
||||
|
||||
QString modVal = KProtocolManager::defaultUserAgent( m_ua_keys );
|
||||
if ( ui.defaultIdLineEdit->text() != modVal )
|
||||
{
|
||||
ui.defaultIdLineEdit->setText(modVal);
|
||||
configChanged();
|
||||
}
|
||||
QString modVal = KProtocolManager::defaultUserAgent (m_ua_keys);
|
||||
if (ui.defaultIdLineEdit->text() != modVal) {
|
||||
ui.defaultIdLineEdit->setText (modVal);
|
||||
configChanged();
|
||||
}
|
||||
}
|
||||
|
||||
bool UserAgentDlg::handleDuplicate( const QString& site,
|
||||
bool UserAgentDlg::handleDuplicate (const QString& site,
|
||||
const QString& identity,
|
||||
const QString& alias )
|
||||
const QString& alias)
|
||||
{
|
||||
SiteList list = ui.sitePolicyTreeWidget->findItems(site, Qt::MatchExactly, 0);
|
||||
SiteList list = ui.sitePolicyTreeWidget->findItems (site, Qt::MatchExactly, 0);
|
||||
|
||||
if (!list.isEmpty())
|
||||
{
|
||||
QString msg = i18n("<qt><center>Found an existing identification for"
|
||||
"<br/><b>%1</b><br/>"
|
||||
"Do you want to replace it?</center>"
|
||||
"</qt>", site);
|
||||
int res = KMessageBox::warningContinueCancel(this, msg,
|
||||
i18nc("@title:window", "Duplicate Identification"),
|
||||
KGuiItem(i18n("Replace")));
|
||||
if ( res == KMessageBox::Continue )
|
||||
{
|
||||
list[0]->setText(0, site);
|
||||
list[0]->setText(1, identity);
|
||||
list[0]->setText(2, alias);
|
||||
configChanged();
|
||||
if (!list.isEmpty()) {
|
||||
QString msg = i18n ("<qt><center>Found an existing identification for"
|
||||
"<br/><b>%1</b><br/>"
|
||||
"Do you want to replace it?</center>"
|
||||
"</qt>", site);
|
||||
int res = KMessageBox::warningContinueCancel (this, msg,
|
||||
i18nc ("@title:window", "Duplicate Identification"),
|
||||
KGuiItem (i18n ("Replace")));
|
||||
if (res == KMessageBox::Continue) {
|
||||
list[0]->setText (0, site);
|
||||
list[0]->setText (1, identity);
|
||||
list[0]->setText (2, alias);
|
||||
configChanged();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
return false;
|
||||
}
|
||||
|
||||
void UserAgentDlg::configChanged(bool enable)
|
||||
void UserAgentDlg::configChanged (bool enable)
|
||||
{
|
||||
emit changed(enable);
|
||||
emit changed (enable);
|
||||
}
|
||||
|
||||
void UserAgentDlg::updateButtons()
|
||||
{
|
||||
const int selectedItemCount = ui.sitePolicyTreeWidget->selectedItems().count();
|
||||
const bool hasItems = ui.sitePolicyTreeWidget->topLevelItemCount() > 0;
|
||||
const int selectedItemCount = ui.sitePolicyTreeWidget->selectedItems().count();
|
||||
const bool hasItems = ui.sitePolicyTreeWidget->topLevelItemCount() > 0;
|
||||
|
||||
ui.changeButton->setEnabled ((hasItems && selectedItemCount == 1));
|
||||
ui.deleteButton->setEnabled ((hasItems && selectedItemCount > 0));
|
||||
ui.deleteAllButton->setEnabled ( hasItems );
|
||||
ui.changeButton->setEnabled ( (hasItems && selectedItemCount == 1));
|
||||
ui.deleteButton->setEnabled ( (hasItems && selectedItemCount > 0));
|
||||
ui.deleteAllButton->setEnabled (hasItems);
|
||||
}
|
||||
|
||||
void UserAgentDlg::on_sitePolicyTreeWidget_itemSelectionChanged()
|
||||
{
|
||||
updateButtons();
|
||||
updateButtons();
|
||||
}
|
||||
|
||||
void UserAgentDlg::load()
|
||||
{
|
||||
ui.sitePolicyTreeWidget->clear();
|
||||
ui.sitePolicyTreeWidget->clear();
|
||||
|
||||
if (!m_config)
|
||||
m_config = new KConfig("kio_httprc", KConfig::NoGlobals);
|
||||
else
|
||||
m_config->reparseConfiguration();
|
||||
if (!m_config)
|
||||
m_config = new KConfig ("kio_httprc", KConfig::NoGlobals);
|
||||
else
|
||||
m_config->reparseConfiguration();
|
||||
|
||||
if (!m_userAgentInfo)
|
||||
m_userAgentInfo = new UserAgentInfo();
|
||||
if (!m_userAgentInfo)
|
||||
m_userAgentInfo = new UserAgentInfo();
|
||||
|
||||
const QStringList list = m_config->groupList();
|
||||
QStringList::ConstIterator endIt = list.end();
|
||||
QString agentStr;
|
||||
const QStringList list = m_config->groupList();
|
||||
QStringList::ConstIterator endIt = list.end();
|
||||
QString agentStr;
|
||||
|
||||
for ( QStringList::ConstIterator it = list.begin(); it != endIt; ++it )
|
||||
{
|
||||
if ( (*it) == "<default>")
|
||||
continue;
|
||||
for (QStringList::ConstIterator it = list.begin(); it != endIt; ++it) {
|
||||
if ( (*it) == "<default>")
|
||||
continue;
|
||||
|
||||
KConfigGroup cg(m_config, *it);
|
||||
agentStr = cg.readEntry("UserAgent");
|
||||
if (!agentStr.isEmpty())
|
||||
{
|
||||
QTreeWidgetItem* item = new QTreeWidgetItem(ui.sitePolicyTreeWidget);
|
||||
item->setText(0, (*it).toLower());
|
||||
item->setText(1, m_userAgentInfo->aliasStr(agentStr));
|
||||
item->setText(2, agentStr);
|
||||
KConfigGroup cg (m_config, *it);
|
||||
agentStr = cg.readEntry ("UserAgent");
|
||||
if (!agentStr.isEmpty()) {
|
||||
QTreeWidgetItem* item = new QTreeWidgetItem (ui.sitePolicyTreeWidget);
|
||||
item->setText (0, (*it).toLower());
|
||||
item->setText (1, m_userAgentInfo->aliasStr (agentStr));
|
||||
item->setText (2, agentStr);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Update buttons and checkboxes...
|
||||
KConfigGroup cg2(m_config, QString());
|
||||
bool b = cg2.readEntry("SendUserAgent", true);
|
||||
ui.sendUACheckBox->setChecked( b );
|
||||
m_ua_keys = cg2.readEntry("UserAgentKeys", DEFAULT_USER_AGENT_KEYS).toLower();
|
||||
ui.defaultIdLineEdit->setText( KProtocolManager::defaultUserAgent( m_ua_keys ) );
|
||||
ui.osNameCheckBox->setChecked( m_ua_keys.contains('o') );
|
||||
ui.osVersionCheckBox->setChecked( m_ua_keys.contains('v') );
|
||||
ui.processorTypeCheckBox->setChecked( m_ua_keys.contains('m') );
|
||||
ui.languageCheckBox->setChecked( m_ua_keys.contains('l') );
|
||||
// Update buttons and checkboxes...
|
||||
KConfigGroup cg2 (m_config, QString());
|
||||
bool b = cg2.readEntry ("SendUserAgent", true);
|
||||
ui.sendUACheckBox->setChecked (b);
|
||||
m_ua_keys = cg2.readEntry ("UserAgentKeys", DEFAULT_USER_AGENT_KEYS).toLower();
|
||||
ui.defaultIdLineEdit->setText (KProtocolManager::defaultUserAgent (m_ua_keys));
|
||||
ui.osNameCheckBox->setChecked (m_ua_keys.contains ('o'));
|
||||
ui.osVersionCheckBox->setChecked (m_ua_keys.contains ('v'));
|
||||
ui.processorTypeCheckBox->setChecked (m_ua_keys.contains ('m'));
|
||||
ui.languageCheckBox->setChecked (m_ua_keys.contains ('l'));
|
||||
|
||||
updateButtons();
|
||||
configChanged(false);
|
||||
updateButtons();
|
||||
configChanged (false);
|
||||
}
|
||||
|
||||
void UserAgentDlg::defaults()
|
||||
{
|
||||
ui.sitePolicyTreeWidget->clear();
|
||||
m_ua_keys = DEFAULT_USER_AGENT_KEYS;
|
||||
ui.defaultIdLineEdit->setText( KProtocolManager::defaultUserAgent(m_ua_keys) );
|
||||
ui.osNameCheckBox->setChecked( m_ua_keys.contains('o') );
|
||||
ui.osVersionCheckBox->setChecked( m_ua_keys.contains('v') );
|
||||
ui.processorTypeCheckBox->setChecked( m_ua_keys.contains('m') );
|
||||
ui.languageCheckBox->setChecked( m_ua_keys.contains('l') );
|
||||
ui.sendUACheckBox->setChecked( true );
|
||||
ui.sitePolicyTreeWidget->clear();
|
||||
m_ua_keys = DEFAULT_USER_AGENT_KEYS;
|
||||
ui.defaultIdLineEdit->setText (KProtocolManager::defaultUserAgent (m_ua_keys));
|
||||
ui.osNameCheckBox->setChecked (m_ua_keys.contains ('o'));
|
||||
ui.osVersionCheckBox->setChecked (m_ua_keys.contains ('v'));
|
||||
ui.processorTypeCheckBox->setChecked (m_ua_keys.contains ('m'));
|
||||
ui.languageCheckBox->setChecked (m_ua_keys.contains ('l'));
|
||||
ui.sendUACheckBox->setChecked (true);
|
||||
|
||||
updateButtons();
|
||||
configChanged();
|
||||
updateButtons();
|
||||
configChanged();
|
||||
}
|
||||
|
||||
void UserAgentDlg::save()
|
||||
{
|
||||
Q_ASSERT(m_config);
|
||||
Q_ASSERT (m_config);
|
||||
|
||||
// Put all the groups except the default into the delete list.
|
||||
QStringList deleteList = m_config->groupList();
|
||||
// Put all the groups except the default into the delete list.
|
||||
QStringList deleteList = m_config->groupList();
|
||||
|
||||
//Remove all the groups that DO NOT contain a "UserAgent" entry...
|
||||
QStringList::ConstIterator endIt = deleteList.constEnd();
|
||||
for (QStringList::ConstIterator it = deleteList.constBegin(); it != endIt; ++it)
|
||||
{
|
||||
if ( (*it) == QLatin1String("<default>") )
|
||||
continue;
|
||||
//Remove all the groups that DO NOT contain a "UserAgent" entry...
|
||||
QStringList::ConstIterator endIt = deleteList.constEnd();
|
||||
for (QStringList::ConstIterator it = deleteList.constBegin(); it != endIt; ++it) {
|
||||
if ( (*it) == QLatin1String ("<default>"))
|
||||
continue;
|
||||
|
||||
KConfigGroup cg(m_config, *it);
|
||||
if (!cg.hasKey("UserAgent"))
|
||||
deleteList.removeAll(*it);
|
||||
}
|
||||
|
||||
QString domain;
|
||||
QTreeWidgetItem* item;
|
||||
int itemCount = ui.sitePolicyTreeWidget->topLevelItemCount();
|
||||
|
||||
// Save and remove from the delete list all the groups that were
|
||||
// not deleted by the end user.
|
||||
for(int i = 0; i < itemCount; i++)
|
||||
{
|
||||
item = ui.sitePolicyTreeWidget->topLevelItem(i);
|
||||
domain = item->text(0);
|
||||
KConfigGroup cg(m_config, domain);
|
||||
cg.writeEntry("UserAgent", item->text(2));
|
||||
deleteList.removeAll(domain);
|
||||
qDebug("UserAgentDlg::save: Removed [%s] from delete list", domain.toLatin1().constData());
|
||||
}
|
||||
|
||||
// Write the global configuration information...
|
||||
KConfigGroup cg(m_config, QString());
|
||||
cg.writeEntry("SendUserAgent", ui.sendUACheckBox->isChecked());
|
||||
cg.writeEntry("UserAgentKeys", m_ua_keys );
|
||||
|
||||
// Sync up all the changes so far...
|
||||
m_config->sync();
|
||||
|
||||
// If delete list is not empty, delete the specified domains.
|
||||
if (!deleteList.isEmpty())
|
||||
{
|
||||
// Remove entries from local file.
|
||||
endIt = deleteList.constEnd();
|
||||
KConfig cfg ("kio_httprc", KConfig::SimpleConfig);
|
||||
|
||||
for ( QStringList::ConstIterator it = deleteList.constBegin(); it != endIt; ++it )
|
||||
{
|
||||
KConfigGroup cg(&cfg, *it);
|
||||
cg.deleteEntry("UserAgent");
|
||||
qDebug("UserAgentDlg::save: Deleting UserAgent of group [%s]", (*it).toLatin1().constData());
|
||||
if (cg.keyList().count() < 1)
|
||||
cg.deleteGroup();
|
||||
KConfigGroup cg (m_config, *it);
|
||||
if (!cg.hasKey ("UserAgent"))
|
||||
deleteList.removeAll (*it);
|
||||
}
|
||||
|
||||
// Sync up the configuration...
|
||||
cfg.sync();
|
||||
QString domain;
|
||||
QTreeWidgetItem* item;
|
||||
int itemCount = ui.sitePolicyTreeWidget->topLevelItemCount();
|
||||
|
||||
// Check everything is gone, reset to blank otherwise.
|
||||
m_config->reparseConfiguration();
|
||||
endIt = deleteList.constEnd();
|
||||
for (QStringList::ConstIterator it = deleteList.constBegin(); it != endIt; ++it )
|
||||
{
|
||||
KConfigGroup cg(m_config, *it);
|
||||
if (cg.hasKey("UserAgent"))
|
||||
cg.writeEntry("UserAgent", QString());
|
||||
// Save and remove from the delete list all the groups that were
|
||||
// not deleted by the end user.
|
||||
for (int i = 0; i < itemCount; i++) {
|
||||
item = ui.sitePolicyTreeWidget->topLevelItem (i);
|
||||
domain = item->text (0);
|
||||
KConfigGroup cg (m_config, domain);
|
||||
cg.writeEntry ("UserAgent", item->text (2));
|
||||
deleteList.removeAll (domain);
|
||||
qDebug ("UserAgentDlg::save: Removed [%s] from delete list", domain.toLatin1().constData());
|
||||
}
|
||||
|
||||
// Sync up the configuration...
|
||||
// Write the global configuration information...
|
||||
KConfigGroup cg (m_config, QString());
|
||||
cg.writeEntry ("SendUserAgent", ui.sendUACheckBox->isChecked());
|
||||
cg.writeEntry ("UserAgentKeys", m_ua_keys);
|
||||
|
||||
// Sync up all the changes so far...
|
||||
m_config->sync();
|
||||
}
|
||||
|
||||
KSaveIOConfig::updateRunningIOSlaves (this);
|
||||
configChanged( false );
|
||||
// If delete list is not empty, delete the specified domains.
|
||||
if (!deleteList.isEmpty()) {
|
||||
// Remove entries from local file.
|
||||
endIt = deleteList.constEnd();
|
||||
KConfig cfg ("kio_httprc", KConfig::SimpleConfig);
|
||||
|
||||
for (QStringList::ConstIterator it = deleteList.constBegin(); it != endIt; ++it) {
|
||||
KConfigGroup cg (&cfg, *it);
|
||||
cg.deleteEntry ("UserAgent");
|
||||
qDebug ("UserAgentDlg::save: Deleting UserAgent of group [%s]", (*it).toLatin1().constData());
|
||||
if (cg.keyList().count() < 1)
|
||||
cg.deleteGroup();
|
||||
}
|
||||
|
||||
// Sync up the configuration...
|
||||
cfg.sync();
|
||||
|
||||
// Check everything is gone, reset to blank otherwise.
|
||||
m_config->reparseConfiguration();
|
||||
endIt = deleteList.constEnd();
|
||||
for (QStringList::ConstIterator it = deleteList.constBegin(); it != endIt; ++it) {
|
||||
KConfigGroup cg (m_config, *it);
|
||||
if (cg.hasKey ("UserAgent"))
|
||||
cg.writeEntry ("UserAgent", QString());
|
||||
}
|
||||
|
||||
// Sync up the configuration...
|
||||
m_config->sync();
|
||||
}
|
||||
|
||||
KSaveIOConfig::updateRunningIOSlaves (this);
|
||||
configChanged (false);
|
||||
}
|
||||
|
||||
QString UserAgentDlg::quickHelp() const
|
||||
{
|
||||
return i18n( "<p><h1>Browser Identification</h1> "
|
||||
"The browser-identification module allows you to have full "
|
||||
"control over how Konqueror will identify itself to web "
|
||||
"sites you browse.</p>"
|
||||
"<p>This ability to fake identification is necessary because "
|
||||
"some web sites do not display properly when they detect that "
|
||||
"they are not talking to current versions of either Netscape "
|
||||
"Navigator or Internet Explorer, even if the browser actually "
|
||||
"supports all the necessary features to render those pages "
|
||||
"properly. "
|
||||
"For such sites, you can use this feature to try to browse "
|
||||
"them. Please understand that this might not always work, since "
|
||||
"such sites might be using non-standard web protocols and or "
|
||||
"specifications.</p>"
|
||||
"<p><u>NOTE:</u> To obtain specific help on a particular section "
|
||||
"of the dialog box, simply click on the quick help button on "
|
||||
"the window title bar, then click on the section "
|
||||
"for which you are seeking help.</p>" );
|
||||
return i18n ("<p><h1>Browser Identification</h1> "
|
||||
"The browser-identification module allows you to have full "
|
||||
"control over how Konqueror will identify itself to web "
|
||||
"sites you browse.</p>"
|
||||
"<p>This ability to fake identification is necessary because "
|
||||
"some web sites do not display properly when they detect that "
|
||||
"they are not talking to current versions of either Netscape "
|
||||
"Navigator or Internet Explorer, even if the browser actually "
|
||||
"supports all the necessary features to render those pages "
|
||||
"properly. "
|
||||
"For such sites, you can use this feature to try to browse "
|
||||
"them. Please understand that this might not always work, since "
|
||||
"such sites might be using non-standard web protocols and or "
|
||||
"specifications.</p>"
|
||||
"<p><u>NOTE:</u> To obtain specific help on a particular section "
|
||||
"of the dialog box, simply click on the quick help button on "
|
||||
"the window title bar, then click on the section "
|
||||
"for which you are seeking help.</p>");
|
||||
}
|
||||
|
||||
#include "useragentdlg.moc"
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
// Own
|
||||
#include "useragentselectordlg.h"
|
||||
#include "ui_useragentselectordlg.h"
|
||||
|
||||
// Local
|
||||
#include "useragentinfo.h"
|
||||
|
@ -40,131 +39,114 @@
|
|||
#include <kurllabel.h>
|
||||
|
||||
|
||||
class UserAgentSelectorWidget : public QWidget, public Ui::UserAgentSelectorWidget
|
||||
{
|
||||
public:
|
||||
UserAgentSelectorWidget(QWidget * parent = 0, Qt::WindowFlags f = 0)
|
||||
:QWidget(parent, f)
|
||||
{
|
||||
setupUi(this);
|
||||
}
|
||||
};
|
||||
|
||||
class UserAgentSiteNameValidator : public QValidator
|
||||
{
|
||||
public:
|
||||
UserAgentSiteNameValidator(QObject *parent)
|
||||
:QValidator(parent)
|
||||
{
|
||||
setObjectName( QLatin1String("UserAgentSiteNameValidator" ));
|
||||
}
|
||||
|
||||
State validate(QString &input, int &) const
|
||||
{
|
||||
if (input.isEmpty())
|
||||
return Intermediate;
|
||||
|
||||
if (input.startsWith(QChar('.')))
|
||||
return Invalid;
|
||||
|
||||
const int length = input.length();
|
||||
|
||||
for(int i = 0 ; i < length; i++)
|
||||
UserAgentSiteNameValidator (QObject* parent)
|
||||
: QValidator (parent)
|
||||
{
|
||||
if (!input[i].isLetterOrNumber() && input[i] != '.' && input[i] != '-')
|
||||
return Invalid;
|
||||
setObjectName (QLatin1String ("UserAgentSiteNameValidator"));
|
||||
}
|
||||
|
||||
return Acceptable;
|
||||
}
|
||||
State validate (QString& input, int&) const
|
||||
{
|
||||
if (input.isEmpty())
|
||||
return Intermediate;
|
||||
|
||||
if (input.startsWith (QChar ('.')))
|
||||
return Invalid;
|
||||
|
||||
const int length = input.length();
|
||||
|
||||
for (int i = 0 ; i < length; i++) {
|
||||
if (!input[i].isLetterOrNumber() && input[i] != '.' && input[i] != '-')
|
||||
return Invalid;
|
||||
}
|
||||
|
||||
return Acceptable;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
UserAgentSelectorDlg::UserAgentSelectorDlg( const QString& caption, UserAgentInfo* info,
|
||||
QWidget *parent, Qt::WindowFlags f )
|
||||
:KDialog(parent, f),
|
||||
m_userAgentInfo(info)
|
||||
UserAgentSelectorDlg::UserAgentSelectorDlg (UserAgentInfo* info, QWidget* parent, Qt::WindowFlags f)
|
||||
: KDialog (parent, f),
|
||||
mUserAgentInfo (info)
|
||||
{
|
||||
m_widget = new UserAgentSelectorWidget(this);
|
||||
setMainWidget(m_widget);
|
||||
mUi.setupUi (mainWidget());
|
||||
|
||||
setModal( true );
|
||||
setWindowTitle ( caption );
|
||||
setButtons( Ok|Cancel );
|
||||
if (!mUserAgentInfo) {
|
||||
setEnabled (false);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!m_userAgentInfo)
|
||||
{
|
||||
setEnabled( false );
|
||||
return;
|
||||
}
|
||||
mUi.aliasComboBox->clear();
|
||||
mUi.aliasComboBox->addItems (mUserAgentInfo->userAgentAliasList());
|
||||
mUi.aliasComboBox->insertItem (0, QString());
|
||||
mUi.aliasComboBox->model()->sort (0);
|
||||
mUi.aliasComboBox->setCurrentIndex (0);
|
||||
|
||||
m_widget->aliasComboBox->clear();
|
||||
m_widget->aliasComboBox->addItems( m_userAgentInfo->userAgentAliasList() );
|
||||
m_widget->aliasComboBox->insertItem(0, QString());
|
||||
m_widget->aliasComboBox->model()->sort(0);
|
||||
m_widget->aliasComboBox->setCurrentIndex(0);
|
||||
UserAgentSiteNameValidator* validator = new UserAgentSiteNameValidator(this);
|
||||
m_widget->siteLineEdit->setValidator(validator);
|
||||
m_widget->siteLineEdit->setFocus();
|
||||
UserAgentSiteNameValidator* validator = new UserAgentSiteNameValidator (this);
|
||||
mUi.siteLineEdit->setValidator (validator);
|
||||
mUi.siteLineEdit->setFocus();
|
||||
|
||||
connect(m_widget->siteLineEdit, SIGNAL(textChanged(QString)),
|
||||
SLOT(onHostNameChanged(QString)));
|
||||
connect (mUi.siteLineEdit, SIGNAL (textEdited (QString)),
|
||||
SLOT (onHostNameChanged (QString)));
|
||||
connect (mUi.aliasComboBox, SIGNAL (activated (QString)),
|
||||
SLOT (onAliasChanged (QString)));
|
||||
|
||||
connect(m_widget->aliasComboBox, SIGNAL(activated(QString)),
|
||||
SLOT(onAliasChanged(QString)));
|
||||
|
||||
enableButtonOk(false);
|
||||
enableButtonOk (false);
|
||||
}
|
||||
|
||||
UserAgentSelectorDlg::~UserAgentSelectorDlg()
|
||||
{
|
||||
}
|
||||
|
||||
void UserAgentSelectorDlg::onAliasChanged( const QString& text )
|
||||
void UserAgentSelectorDlg::onAliasChanged (const QString& text)
|
||||
{
|
||||
if ( text.isEmpty() )
|
||||
m_widget->identityLineEdit->setText( QString() );
|
||||
else
|
||||
m_widget->identityLineEdit->setText( m_userAgentInfo->agentStr(text) );
|
||||
if (text.isEmpty())
|
||||
mUi.identityLineEdit->setText (QString());
|
||||
else
|
||||
mUi.identityLineEdit->setText (mUserAgentInfo->agentStr (text));
|
||||
|
||||
const bool enable = (!m_widget->siteLineEdit->text().isEmpty() && !text.isEmpty());
|
||||
enableButtonOk(enable);
|
||||
const bool enable = (!mUi.siteLineEdit->text().isEmpty() && !text.isEmpty());
|
||||
enableButtonOk (enable);
|
||||
}
|
||||
|
||||
void UserAgentSelectorDlg::onHostNameChanged( const QString& text )
|
||||
void UserAgentSelectorDlg::onHostNameChanged (const QString& text)
|
||||
{
|
||||
const bool enable = (!text.isEmpty() && !m_widget->aliasComboBox->currentText().isEmpty());
|
||||
enableButtonOk(enable);
|
||||
const bool enable = (!text.isEmpty() && !mUi.aliasComboBox->currentText().isEmpty());
|
||||
enableButtonOk (enable);
|
||||
}
|
||||
|
||||
void UserAgentSelectorDlg::setSiteName( const QString& text )
|
||||
void UserAgentSelectorDlg::setSiteName (const QString& text)
|
||||
{
|
||||
m_widget->siteLineEdit->setText( text );
|
||||
mUi.siteLineEdit->setText (text);
|
||||
}
|
||||
|
||||
void UserAgentSelectorDlg::setIdentity( const QString& text )
|
||||
void UserAgentSelectorDlg::setIdentity (const QString& text)
|
||||
{
|
||||
int id = m_widget->aliasComboBox->findText( text );
|
||||
if ( id != -1 )
|
||||
m_widget->aliasComboBox->setCurrentIndex( id );
|
||||
m_widget->identityLineEdit->setText(m_userAgentInfo->agentStr(m_widget->aliasComboBox->currentText() ));
|
||||
if ( !m_widget->siteLineEdit->isEnabled() )
|
||||
m_widget->aliasComboBox->setFocus();
|
||||
const int id = mUi.aliasComboBox->findText (text);
|
||||
if (id != -1)
|
||||
mUi.aliasComboBox->setCurrentIndex (id);
|
||||
|
||||
mUi.identityLineEdit->setText (mUserAgentInfo->agentStr (mUi.aliasComboBox->currentText()));
|
||||
if (!mUi.siteLineEdit->isEnabled())
|
||||
mUi.aliasComboBox->setFocus();
|
||||
}
|
||||
|
||||
QString UserAgentSelectorDlg::siteName()
|
||||
{
|
||||
return m_widget->siteLineEdit->text().toLower();
|
||||
return mUi.siteLineEdit->text().toLower();
|
||||
}
|
||||
|
||||
QString UserAgentSelectorDlg::identity()
|
||||
{
|
||||
return m_widget->aliasComboBox->currentText();
|
||||
return mUi.aliasComboBox->currentText();
|
||||
}
|
||||
|
||||
QString UserAgentSelectorDlg::alias()
|
||||
{
|
||||
return m_widget->identityLineEdit->text();
|
||||
return mUi.identityLineEdit->text();
|
||||
}
|
||||
|
||||
#include "useragentselectordlg.moc"
|
||||
|
|
|
@ -22,33 +22,33 @@
|
|||
// KDE
|
||||
#include <kdialog.h>
|
||||
|
||||
#include "ui_useragentselectordlg.h"
|
||||
|
||||
// Forward declarations
|
||||
class UserAgentInfo;
|
||||
class UserAgentSelectorWidget;
|
||||
|
||||
class UserAgentSelectorDlg : public KDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit UserAgentSelectorDlg( const QString& caption, UserAgentInfo* info,
|
||||
QWidget *parent = 0, Qt::WindowFlags f = 0 );
|
||||
~UserAgentSelectorDlg();
|
||||
explicit UserAgentSelectorDlg (UserAgentInfo* info, QWidget* parent = 0, Qt::WindowFlags f = 0);
|
||||
~UserAgentSelectorDlg();
|
||||
|
||||
void setSiteName( const QString& );
|
||||
void setIdentity( const QString& );
|
||||
void setSiteName (const QString&);
|
||||
void setIdentity (const QString&);
|
||||
|
||||
QString siteName();
|
||||
QString identity();
|
||||
QString alias();
|
||||
QString siteName();
|
||||
QString identity();
|
||||
QString alias();
|
||||
|
||||
protected Q_SLOTS:
|
||||
void onHostNameChanged( const QString& );
|
||||
void onAliasChanged( const QString& );
|
||||
void onHostNameChanged (const QString&);
|
||||
void onAliasChanged (const QString&);
|
||||
|
||||
private:
|
||||
UserAgentInfo* m_userAgentInfo;
|
||||
UserAgentSelectorWidget* m_widget;
|
||||
UserAgentInfo* mUserAgentInfo;
|
||||
Ui::UserAgentSelectorUI mUi;
|
||||
};
|
||||
|
||||
#endif // USERAGENTSELECTORDLG_H
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<ui version="4.0" >
|
||||
<class>UserAgentSelectorWidget</class>
|
||||
<widget class="QWidget" name="UserAgentSelectorWidget" >
|
||||
<class>UserAgentSelectorUI</class>
|
||||
<widget class="QWidget" name="UserAgentSelectorUI" >
|
||||
<property name="geometry" >
|
||||
<rect>
|
||||
<x>0</x>
|
||||
|
|
Loading…
Reference in a new issue