include(FeatureSummary)
# Load the Qt components.
-find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core Gui Widgets)
+find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
+ Core
+ Gui
+ WebEngineWidgets
+ Widgets
+)
# Load the KDE Frameworks components.
find_package(KF5 ${KDE_FRAMEWORKS_MIN_VERSION} REQUIRED COMPONENTS
mainview.cpp
)
-# Add the Qt logging category. This will create the `privacybrowserdebug.h` header file.
+# Add the Qt logging category. This will create the `debug.h` header file.
ecm_qt_declare_logging_category(privacy-browser
- HEADER privacybrowserdebug.h
+ HEADER debug.h
IDENTIFIER PRIVACYBROWSER
CATEGORY_NAME "privacybrowser"
)
KF5::I18n
KF5::XmlGui
Qt5::Widgets
+ Qt5::WebEngineWidgets
)
# Install Privacy Browser using the default KDE arguments.
install(FILES privacybrowserui.rc DESTINATION ${KDE_INSTALL_KXMLGUI5DIR}/privacybrowser)
# Install Privacy Browser's icon.
-ecm_install_icons(ICONS icons/sc-apps-privacy_browser.svg DESTINATION ${KDE_INSTALL_ICONDIR})
+ecm_install_icons(ICONS icons/sc-apps-privacy-browser.svg DESTINATION ${KDE_INSTALL_ICONDIR})
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-
-<!--
- Copyright © 2016-2017,2021-2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from `security` and `language`, which are part of the Android Material icon set. They are released under the Apache License 2.0. <https://fonts.google.com/icons>
-
- This file is part of Privacy Browser PC <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser PC 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 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser PC 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 Privacy Browser PC. If not, see <http://www.gnu.org/licenses/>. -->
-
-<svg
- xmlns="http://www.w3.org/2000/svg"
- viewBox="0 0 256 256" >
-
- <!-- Inner Shield. -->
- <g transform="translate(0,160)" >
- <path
- style="fill:#0d47a1"
- d="m 128,-147.2 -94.254546,41.89091 v 62.836368 c 0,58.123635 40.215273,112.477091 94.254546,125.672721 54.03928,-13.19563 94.25454,-67.549086 94.25454,-125.672721 v -62.836368 z" />
- </g>
-
- <!-- Outer Shield. -->
- <g transform="translate(0,160)" >
- <path
- style="fill:#1976d2"
- d="m 128,-160 -104.727273,46.54546 v 69.818182 C 23.272727,20.945459 67.956363,81.338188 128,95.999999 188.04364,81.338188 232.72727,20.945459 232.72727,-43.636358 v -69.818182 z m 0,127.883641 h 81.45454 C 203.28728,15.825464 171.28727,58.530919 128,71.912739 V -31.999996 H 46.545455 V -98.327268 L 128,-134.51636 Z" />
- </g>
-
- <!-- Globe. -->
- <g transform="translate(0,232)" >
- <path
- style="fill:#ffffff"
- d="m 127.92021,-183.78553 c -44.041614,0 -79.705747,35.74391 -79.705747,79.78553 0,44.041617 35.664133,79.785537 79.705747,79.785537 44.1214,0 79.86533,-35.74392 79.86533,-79.785537 0,-44.04162 -35.74393,-79.78553 -79.86533,-79.78553 z m 55.29138,47.87132 h -23.53674 c -2.55313,-9.9732 -6.22326,-19.54746 -11.0104,-28.40365 14.68055,5.02648 26.88773,15.23903 34.54714,28.40365 z M 128,-167.50929 c 6.6222,9.57427 11.80825,20.18574 15.23903,31.59508 h -30.47807 c 3.43078,-11.40934 8.61684,-22.02081 15.23904,-31.59508 z M 66.245993,-88.042889 C 64.969425,-93.149168 64.171571,-98.494798 64.171571,-104 c 0,-5.5052 0.797855,-10.85083 2.074422,-15.95711 h 26.96751 c -0.63829,5.26585 -1.117,10.5317 -1.117,15.95711 0,5.425417 0.47872,10.691263 1.117,15.957111 z m 6.542412,15.957108 H 96.32514 c 2.553137,9.973191 6.22327,19.547449 11.0104,28.403644 C 92.655006,-48.708619 80.44782,-58.841391 72.788405,-72.085781 Z M 96.32514,-135.91421 H 72.788405 c 7.659415,-13.2444 19.866601,-23.37717 34.547135,-28.40365 -4.78713,8.85619 -8.457263,18.43045 -11.0104,28.40365 z M 128,-40.49071 c -6.6222,-9.574268 -11.80826,-20.185747 -15.23904,-31.595071 h 30.47807 C 139.80825,-60.676457 134.6222,-50.064978 128,-40.49071 Z m 18.66982,-47.552179 h -37.33964 c -0.71801,-5.265848 -1.27656,-10.531694 -1.27656,-15.957111 0,-5.42541 0.55854,-10.77105 1.27656,-15.95711 h 37.33964 c 0.71811,5.18606 1.27656,10.5317 1.27656,15.95711 0,5.425417 -0.55844,10.691263 -1.27656,15.957111 z m 1.99463,44.360752 c 4.78714,-8.856195 8.45727,-18.430453 11.0104,-28.403644 h 23.53674 c -7.65941,13.164605 -19.86659,23.377162 -34.54714,28.403644 z m 14.12204,-44.360752 c 0.63828,-5.265848 1.117,-10.531694 1.117,-15.957111 0,-5.42541 -0.47871,-10.69126 -1.117,-15.95711 h 26.96752 c 1.27656,5.10628 2.07441,10.45191 2.07441,15.95711 0,5.505202 -0.79784,10.850832 -2.07441,15.957111 z" />
- </g>
-</svg>
// KDE Frameworks headers.
#include <KAboutData>
#include <KCrash>
+#include <KLocalizedString>
#include <KDBusService>
// Qt headers.
+#include <QApplication>
#include <QCommandLineParser>
#include <QFile>
KCrash::initialize();
// Instantiate about data, setting the component name, the display name, and the version.
- KAboutData aboutData(QStringLiteral("privacy-browser"), i18n("Privacy Browser"), QStringLiteral("0.1"));
+ KAboutData aboutData(QStringLiteral("privacybrowser"), i18n("Privacy Browser"), QStringLiteral("0.1"));
// Add the author name, job description, email address, and website.
aboutData.addAuthor(i18n("Soren Stoutner"),i18n("Principal developer"), QStringLiteral("soren@stoutner.com"), QStringLiteral("https://www.stoutner.com/"));
KAboutData::setApplicationData(aboutData);
// Set the window icon.
- application.setWindowIcon(QIcon::fromTheme(QStringLiteral("privacy-browser"), QIcon(":/icons/sc-apps-privacy_browser.svg")));
+ application.setWindowIcon(QIcon::fromTheme(QStringLiteral("privacy-browser"), QIcon(":/icons/sc-apps-privacy-browser.svg")));
// Create a command line parser.
QCommandLineParser commandLineParser;
/*
- SPDX-FileCopyrightText: %{CURRENT_YEAR} %{AUTHOR} <%{EMAIL}>
-
- SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
-*/
-
-// application headers
+ * Copyright © 2022 Soren Stoutner <soren@stoutner.com>.
+ *
+ * This file is part of Privacy Browser PC <https://www.stoutner.com/privacy-browser-pc>.
+ *
+ * Privacy Browser PC 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 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Privacy Browser PC 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 Privacy Browser PC. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+// Application headers
#include "mainview.h"
-
#include "settings.h"
-#include "privacybrowserdebug.h"
-
-
-MainView::MainView(QWidget *parent)
- : QWidget(parent)
-{
- m_ui.setupUi(this);
- handleSettingsChanged();
-}
-MainView::~MainView()
-{
-}
+// Qt framework headers.
+#include <QWebEngineView>
-void MainView::switchColors()
+MainView::MainView(QWidget *parent) : QWidget(parent)
{
- // switch the foreground/background colors of the label
- QColor color = Settings::colorBackground();
- Settings::setColorBackground(Settings::colorForeground());
- Settings::setColorForeground(color);
+ // Setup the UI.
+ mainViewUi.setupUi(this);
- handleSettingsChanged();
-}
-
-void MainView::handleSettingsChanged()
-{
- qCDebug(PRIVACYBROWSER) << "MainView::handleSettingsChanged()";
- QPalette palette = m_ui.templateLabel->palette();
- palette.setColor(QPalette::Window, Settings::colorBackground());
- palette.setColor(QPalette::WindowText, Settings::colorForeground());
- m_ui.templateLabel->setPalette(palette);
+ // Get a handle for the web engine view.
+ QWebEngineView *webEngineViewPointer = mainViewUi.webEngineView;
- // i18n : internationalization
- m_ui.templateLabel->setText(i18n("This project is %1 days old", Settings::ageInDays()));
+ // Load a website.
+ webEngineViewPointer->setUrl(QUrl(QStringLiteral("https://www.stoutner.com/")));
}
/*
- SPDX-FileCopyrightText: %{CURRENT_YEAR} %{AUTHOR} <%{EMAIL}>
-
- SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
-*/
+ * Copyright © 2022 Soren Stoutner <soren@stoutner.com>.
+ *
+ * This file is part of Privacy Browser PC <https://www.stoutner.com/privacy-browser-pc>.
+ *
+ * Privacy Browser PC 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 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Privacy Browser PC 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 Privacy Browser PC. If not, see <http://www.gnu.org/licenses/>.
+ */
#ifndef MAINVIEW_H
#define MAINVIEW_H
+// Application headers.
#include "ui_mainview.h"
-
-/**
- * This class serves as the main window for privacybrowserpc. It handles the
- * menus, toolbars and status bars.
- *
- * @short Main window class
- * @author %{AUTHOR} <%{EMAIL}>
- * @version %{VERSION}
- */
class MainView : public QWidget
{
+ // Include the Q_OBJECT macro.
Q_OBJECT
+
public:
- /**
- * Default Constructor
- */
+ // The default contructor.
explicit MainView(QWidget *parent);
- /**
- * Default Destructor
- */
- ~MainView() override;
-
-public Q_SLOTS:
- void switchColors();
- void handleSettingsChanged();
-
private:
- // this is the name of the root widget inside our Ui file
- // you can rename it in designer and then change it here
- Ui::MainView m_ui;
+ // Declare the private variables.
+ Ui::MainView mainViewUi;
};
-
#endif
<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ Copyright © 2022 Soren Stoutner <soren@stoutner.com>.
+
+ This file is part of Privacy Browser PC <https://www.stoutner.com/privacy-browser-android>.
+
+ Privacy Browser PC 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 3 of the License, or
+ (at your option) any later version.
+
+ Privacy Browser PC 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 Privacy Browser PC. If not, see <http://www.gnu.org/licenses/>. -->
+
<ui version="4.0">
- <class>MainView</class>
- <widget class="QWidget" name="MainView">
- <property name="geometry">
- <rect>
- <x>0</x>
- <y>0</y>
- <width>315</width>
- <height>233</height>
- </rect>
- </property>
- <property name="autoFillBackground">
- <bool>true</bool>
- </property>
- <layout class="QGridLayout">
- <property name="leftMargin">
- <number>0</number>
- </property>
- <property name="topMargin">
- <number>0</number>
- </property>
- <property name="rightMargin">
- <number>0</number>
- </property>
- <property name="bottomMargin">
- <number>0</number>
- </property>
- <item row="0" column="0">
- <widget class="QLabel" name="templateLabel">
- <property name="palette">
- <palette>
- <active>
- <colorrole role="WindowText">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>255</red>
- <green>255</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="Button">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="Base">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="Window">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="AlternateBase">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- </active>
- <inactive>
- <colorrole role="WindowText">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>255</red>
- <green>255</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="Button">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="Base">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="Window">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="AlternateBase">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- </inactive>
- <disabled>
- <colorrole role="WindowText">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>119</red>
- <green>119</green>
- <blue>119</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="Button">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="Base">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="Window">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="AlternateBase">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- </disabled>
- </palette>
- </property>
- <property name="font">
- <font>
- <family>Sans Serif</family>
- <pointsize>12</pointsize>
- </font>
- </property>
- <property name="autoFillBackground">
- <bool>true</bool>
- </property>
- <property name="text">
- <string>hello, world</string>
- </property>
- <property name="scaledContents">
- <bool>true</bool>
- </property>
- <property name="alignment">
- <set>Qt::AlignCenter</set>
- </property>
- <property name="wordWrap">
- <bool>false</bool>
- </property>
+ <class>MainView</class>
+
+ <widget class="QWidget" name="MainView">
+ <!-- TODO. Make this maximized by default. -->
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>315</width>
+ <height>233</height>
+ </rect>
+ </property>
+
+ <layout class="QGridLayout">
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
+
+ <item row="0" column="0">
+ <widget class="QWebEngineView" name="webEngineView">
+ </widget>
+ </item>
+ </layout>
</widget>
- </item>
- </layout>
- </widget>
- <resources/>
- <connections/>
+
+ <resources/>
+
+ <connections/>
</ui>
// Application headers.
#include "mainview.h"
#include "mainwindow.h"
-#include "privacybrowserdebug.h"
#include "settings.h"
+#include "ui_settings.h"
// KDE Frameworks headers.
#include <KActionCollection>
MainWindow::MainWindow() : KXmlGuiWindow()
{
// Instantiate the main view pointer.
- mainViewPointer = new MainView(this);
+ MainView *mainViewPointer = new MainView(this);
// Set the main view as the central widget.
setCentralWidget(mainViewPointer);
// Connect the signals to the slots.
connect(switchColorsActionPointer, &QAction::triggered, mainViewPointer, &MainView::switchColors);
+ // Add the standard actions.
KStandardAction::openNew(this, SLOT(fileNew()), actionCollectionPointer);
KStandardAction::quit(qApp, SLOT(closeAllWindows()), actionCollectionPointer);
KStandardAction::preferences(this, SLOT(settingsConfigure()), actionCollectionPointer);
+ // Setup the GUI based on the privacybrowserui.rc file.
setupGUI();
}
void MainWindow::fileNew()
{
- qCDebug(PRIVACYBROWSER) << "MainWindow::fileNew()";
+ // Display a new instance of Privacy Browser.
(new MainWindow)->show();
}
void MainWindow::settingsConfigure()
{
- qCDebug(PRIVACYBROWSER) << "MainWindow::settingsConfigure()";
- // The preference dialog is derived from prefs_base.ui
- //
- // compare the names of the widgets in the .ui file
- // to the names of the variables in the .kcfg file
- //avoid to have 2 dialogs shown
- if (KConfigDialog::showDialog(QStringLiteral("settings"))) {
- return;
- }
+ // Check to make sure the dialog box isn't already displayed.
+ if (!KConfigDialog::exists(QStringLiteral("settings")))
+ {
+ // Create a general settings page.
+ QWidget *generalSettingsWidgetPointer = new QWidget;
+
+ // Instantiate the settings UI.
+ Ui::Settings settingsUi;
+
+ // Setup the UI to display the general settings widget.
+ settingsUi.setupUi(generalSettingsWidgetPointer);
+
+ // Instantiate a settings config dialog from the settings.kcfg file.
+ KConfigDialog *configDialogPointer = new KConfigDialog(this, QStringLiteral("settings"), Settings::self());
- KConfigDialog *dialog = new KConfigDialog(this, QStringLiteral("settings"), Settings::self());
- QWidget *generalSettingsPage = new QWidget;
- settingsWidget.setupUi(generalSettingsPage);
- dialog->addPage(generalSettingsPage, i18nc("@title:tab", "General"), QStringLiteral("package_setting"));
- connect(dialog, &KConfigDialog::settingsChanged, mainViewPointer, &MainView::handleSettingsChanged);
- dialog->setAttribute(Qt::WA_DeleteOnClose);
- dialog->show();
+ // Add the general settings widget page.
+ configDialogPointer->addPage(generalSettingsWidgetPointer, i18nc("@title:tab", "General"), QStringLiteral("package_setting"));
+
+ // Delete the config dialog when it is closed.
+ configDialogPointer->setAttribute(Qt::WA_DeleteOnClose);
+
+ // Make it so.
+ configDialogPointer->show();
+ }
}
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
-// Application headers.
-#include "settings.h"
-#include "ui_settings.h"
-
// KDE Frameworks headers.
#include <KXmlGuiWindow>
-class MainView;
-
class MainWindow : public KXmlGuiWindow
{
// Include the Q_OBJECT macro.
// Define the private slots.
void fileNew();
void settingsConfigure();
-
-private:
- // Define the private variables.
- Ui::Settings settingsWidget;
- MainView *mainViewPointer;
};
#endif
<?xml version="1.0" encoding="UTF-8"?>
-<gui name="privacybrowser"
- version="1"
- xmlns="http://www.kde.org/standards/kxmlgui/1.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.kde.org/standards/kxmlgui/1.0
- http://www.kde.org/standards/kxmlgui/1.0/kxmlgui.xsd">
-<MenuBar>
- <Menu name="edit">
- <Action name="switch_action"/>
- </Menu>
-</MenuBar>
-
-<ToolBar name="mainToolBar" noMerge="1">
- <text>Main Toolbar</text>
- <Action name="switch_action"/>
- <Separator/>
- <Action name="options_configure"/>
-</ToolBar>
+
+<!--
+ Copyright © 2022 Soren Stoutner <soren@stoutner.com>.
+
+ This file is part of Privacy Browser PC <https://www.stoutner.com/privacy-browser-android>.
+
+ Privacy Browser PC 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 3 of the License, or
+ (at your option) any later version.
+
+ Privacy Browser PC 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 Privacy Browser PC. If not, see <http://www.gnu.org/licenses/>. -->
+
+<gui
+ name="privacybrowser"
+ version="1"
+ xmlns="http://www.kde.org/standards/kxmlgui/1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.kde.org/standards/kxmlgui/1.0 http://www.kde.org/standards/kxmlgui/1.0/kxmlgui.xsd" >
+
+ <MenuBar>
+ <Menu name="edit">
+ <Action name="switch_action"/>
+ </Menu>
+ </MenuBar>
+
+ <ToolBar name="mainToolBar" noMerge="1">
+ <text>Main Toolbar</text>
+
+ <Action name="switch_action"/>
+
+ <Separator/>
+
+ <Action name="options_configure"/>
+ </ToolBar>
</gui>
<!DOCTYPE RCC>
<RCC version="1.0">
<qresource>
- <file>icons/sc-apps-privacy_browser.svg</file>
+ <file>icons/sc-apps-privacy-browser.svg</file>
<file>licenses/GPLv3+.txt</file>
</qresource>
</RCC>
<?xml version="1.0" encoding="UTF-8"?>
-<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
- http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
- <kcfgfile name="privacybrowserpcrc"/>
- <group name="Preferences">
- <entry name="colorBackground" type="Color">
- <label>color of the background</label>
- <default>black</default>
- </entry>
- <entry name="colorForeground" type="Color">
- <label>color of the foreground</label>
- <default>yellow</default>
- </entry>
- <entry name="ageInDays" type="Int">
- <label>age of the project</label>
- <default>2</default>
- </entry>
- </group>
+
+<!--
+ Copyright © 2022 Soren Stoutner <soren@stoutner.com>.
+
+ This file is part of Privacy Browser PC <https://www.stoutner.com/privacy-browser-android>.
+
+ Privacy Browser PC 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 3 of the License, or
+ (at your option) any later version.
+
+ Privacy Browser PC 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 Privacy Browser PC. If not, see <http://www.gnu.org/licenses/>. -->
+
+<kcfg
+ xmlns="http://www.kde.org/standards/kcfg/1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0 http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
+
+ <kcfgfile name="privacybrowserpc"/>
+
+ <group name="Preferences">
+ <entry name="colorBackground" type="Color">
+ <label>color of the background</label>
+ <default>black</default>
+ </entry>
+
+ <entry name="colorForeground" type="Color">
+ <label>color of the foreground</label>
+ <default>yellow</default>
+ </entry>
+
+ <entry name="ageInDays" type="Int">
+ <label>age of the project</label>
+ <default>2</default>
+ </entry>
+ </group>
</kcfg>
# Make the generated class a singleton. TODO, the default is false. This may not be needed.
Singleton=true
-# Create code for mutating (making changes to) the listed variables. TODO, the default is false. These may not be needed.
+# Allow mutating (making changes to) the listed variables.
Mutators=colorBackground,colorForeground
<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ Copyright © 2022 Soren Stoutner <soren@stoutner.com>.
+
+ This file is part of Privacy Browser PC <https://www.stoutner.com/privacy-browser-android>.
+
+ Privacy Browser PC 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 3 of the License, or
+ (at your option) any later version.
+
+ Privacy Browser PC 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 Privacy Browser PC. If not, see <http://www.gnu.org/licenses/>. -->
+
<ui version="4.0">
- <class>Settings</class>
- <widget class="QWidget" name="Settings">
- <property name="geometry">
- <rect>
- <x>0</x>
- <y>0</y>
- <width>374</width>
- <height>200</height>
- </rect>
- </property>
- <layout class="QFormLayout">
- <item row="0" column="0">
- <widget class="QLabel" name="backgroundLabel">
- <property name="text">
- <string>Background color:</string>
- </property>
+ <class>Settings</class>
+
+ <widget class="QWidget" name="Settings">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>374</width>
+ <height>200</height>
+ </rect>
+ </property>
+
+ <layout class="QFormLayout">
+ <item row="0" column="0">
+ <widget class="QLabel" name="backgroundLabel">
+ <property name="text">
+ <string>Background color:</string>
+ </property>
+ </widget>
+ </item>
+
+ <item row="0" column="1">
+ <widget class="KColorButton" name="kcfg_colorBackground">
+ <property name="toolTip">
+ <string>Choose a new background color</string>
+ </property>
+
+ <property name="whatsThis">
+ <string><html><head><meta name="qrichtext" content="1" /><style type="text/css">
+ p, li { white-space: pre-wrap; }
+ </style></head><body style=" font-family:'DejaVu Serif'; font-size:9pt; font-weight:400; font-style:normal;">
+ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Change the <span style=" font-weight:600;">background</span> color by clicking here and choose the new <span style=" color:#ff0000;">color</span> in the <span style=" font-style:italic;">color dialog</span>.</p></body></html></string>
+ </property>
+
+ <property name="text">
+ <string/>
+ </property>
+ </widget>
+ </item>
+
+ <item row="1" column="0">
+ <widget class="QLabel" name="foregroundLabel">
+ <property name="text">
+ <string>Foreground color:</string>
+ </property>
+ </widget>
+ </item>
+
+ <item row="1" column="1">
+ <widget class="KColorButton" name="kcfg_colorForeground">
+ <property name="toolTip">
+ <string>Choose a new foreground color</string>
+ </property>
+
+ <property name="whatsThis">
+ <string><html><head><meta name="qrichtext" content="1" /><style type="text/css">
+ p, li { white-space: pre-wrap; }
+ </style></head><body style=" font-family:'DejaVu Serif'; font-size:9pt; font-weight:400; font-style:normal;">
+ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Change the <span style=" font-weight:600;">foreground</span> color by clicking here and choose the new <span style=" color:#ff0000;">color</span> in the <span style=" font-style:italic;">color dialog</span>.</p></body></html></string>
+ </property>
+
+ <property name="text">
+ <string/>
+ </property>
+ </widget>
+ </item>
+
+ <item row="2" column="0">
+ <widget class="QLabel" name="projectLabel">
+ <property name="text">
+ <string>Project age:</string>
+ </property>
+ </widget>
+ </item>
+
+ <item row="2" column="1">
+ <widget class="QSpinBox" name="kcfg_ageInDays">
+ <property name="toolTip">
+ <string>Set the project age (in days)</string>
+ </property>
+
+ <property name="whatsThis">
+ <string>Change the project age (in days) by choosing a new number of days.</string>
+ </property>
+
+ <property name="minimum">
+ <number>1</number>
+ </property>
+
+ <property name="value">
+ <number>2</number>
+ </property>
+ </widget>
+ </item>
+ </layout>
</widget>
- </item>
- <item row="0" column="1">
- <widget class="KColorButton" name="kcfg_colorBackground">
- <property name="toolTip">
- <string>Choose a new background color</string>
- </property>
- <property name="whatsThis">
- <string><html><head><meta name="qrichtext" content="1" /><style type="text/css">
-p, li { white-space: pre-wrap; }
-</style></head><body style=" font-family:'DejaVu Serif'; font-size:9pt; font-weight:400; font-style:normal;">
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Change the <span style=" font-weight:600;">background</span> color by clicking here and choose the new <span style=" color:#ff0000;">color</span> in the <span style=" font-style:italic;">color dialog</span>.</p></body></html></string>
- </property>
- <property name="text">
- <string/>
- </property>
- </widget>
- </item>
- <item row="1" column="0">
- <widget class="QLabel" name="foregroundLabel">
- <property name="text">
- <string>Foreground color:</string>
- </property>
- </widget>
- </item>
- <item row="1" column="1">
- <widget class="KColorButton" name="kcfg_colorForeground">
- <property name="toolTip">
- <string>Choose a new foreground color</string>
- </property>
- <property name="whatsThis">
- <string><html><head><meta name="qrichtext" content="1" /><style type="text/css">
-p, li { white-space: pre-wrap; }
-</style></head><body style=" font-family:'DejaVu Serif'; font-size:9pt; font-weight:400; font-style:normal;">
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Change the <span style=" font-weight:600;">foreground</span> color by clicking here and choose the new <span style=" color:#ff0000;">color</span> in the <span style=" font-style:italic;">color dialog</span>.</p></body></html></string>
- </property>
- <property name="text">
- <string/>
- </property>
- </widget>
- </item>
- <item row="2" column="0">
- <widget class="QLabel" name="projectLabel">
- <property name="text">
- <string>Project age:</string>
- </property>
- </widget>
- </item>
- <item row="2" column="1">
- <widget class="QSpinBox" name="kcfg_ageInDays">
- <property name="toolTip">
- <string>Set the project age (in days)</string>
- </property>
- <property name="whatsThis">
- <string>Change the project age (in days) by choosing a new number of days.</string>
- </property>
- <property name="minimum">
- <number>1</number>
- </property>
- <property name="value">
- <number>2</number>
- </property>
- </widget>
- </item>
- </layout>
- </widget>
- <customwidgets>
- <customwidget>
- <class>KColorButton</class>
- <extends>QPushButton</extends>
- <header>kcolorbutton.h</header>
- </customwidget>
- </customwidgets>
- <resources/>
- <connections/>
+
+ <customwidgets>
+ <customwidget>
+ <class>KColorButton</class>
+
+ <extends>QPushButton</extends>
+
+ <header>kcolorbutton.h</header>
+ </customwidget>
+ </customwidgets>
+
+ <resources/>
+
+ <connections/>
</ui>