imported everything from kde-runtime
|
@ -3,6 +3,11 @@ project(KDEBASE_WORKSPACE)
|
|||
# TODO: Remove when kdelibs >= 4.10 will be required
|
||||
cmake_minimum_required(VERSION 2.8.6 FATAL_ERROR)
|
||||
|
||||
include(CTest)
|
||||
include(CTestConfig.cmake)
|
||||
include(CheckIncludeFiles)
|
||||
include(CheckFunctionExists)
|
||||
|
||||
# Used e.g. in KDE4WorkspaceConfig.cmake, Alex
|
||||
set(KDE4WORKSPACE_VERSION_MAJOR 4)
|
||||
set(KDE4WORKSPACE_VERSION_MINOR 11)
|
||||
|
@ -15,7 +20,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules ${CMAKE_MODULE_P
|
|||
#search packages used by KDE
|
||||
set(QT_MIN_VERSION "4.8.0")
|
||||
|
||||
find_package(KDE4 4.9.4 REQUIRED)
|
||||
find_package(KDE4 4.9.95 REQUIRED)
|
||||
include(KDE4Defaults)
|
||||
|
||||
option(WITH_XINERAMA "Xinerama support for multi-headed X displays" ON)
|
||||
|
@ -55,7 +60,7 @@ find_package(KDeclarative QUIET CONFIG)
|
|||
set_package_properties(KDeclarative PROPERTIES DESCRIPTION "KDE Declarative (QML) support from kdelibs"
|
||||
URL "http://www.kde.org"
|
||||
TYPE REQUIRED
|
||||
PURPOSE "Required for building ksmserver"
|
||||
PURPOSE "Required for building ksmserver and corebindingsplugin (org.kde.plasma.core)"
|
||||
)
|
||||
|
||||
macro_optional_find_package(OpenGL)
|
||||
|
@ -157,8 +162,38 @@ set_package_properties(QJSON PROPERTIES DESCRIPTION "Library to manage JSON obje
|
|||
PURPOSE "Required to build Chrome/Chromium support for Plasma Bookmarks Runners"
|
||||
)
|
||||
|
||||
find_package(LibGcrypt 1.5.0 REQUIRED QUIET)
|
||||
set_package_properties(LibGcrypt PROPERTIES DESCRIPTION "Libgcrypt is a general purpose cryptographic library based on the code from GnuPG."
|
||||
URL "http://www.gnu.org/software/libgcrypt/"
|
||||
TYPE REQUIRED
|
||||
PURPOSE "kwalletd needs libgcrypt to perform PBKDF2-SHA512 hashing"
|
||||
)
|
||||
|
||||
macro_optional_find_package(SLP)
|
||||
set_package_properties(SLP PROPERTIES DESCRIPTION "SLP (Service Location Protocol) implementation"
|
||||
URL "http://www.openslp.org/"
|
||||
TYPE OPTIONAL
|
||||
PURPOSE "Provides SLP support in the network:/ kioslave."
|
||||
)
|
||||
|
||||
find_package(LibAttica 0.1.4)
|
||||
set_package_properties(LibAttica PROPERTIES DESCRIPTION "A library to access Open Collaboration Service providers"
|
||||
URL "https://projects.kde.org/attica"
|
||||
TYPE REQUIRED
|
||||
PURPOSE "Attica is needed for the Get Hot New Stuff support"
|
||||
)
|
||||
|
||||
macro_optional_find_package(QCA2 2.0.0)
|
||||
set_package_properties(QCA2 PROPERTIES DESCRIPTION "Support for remote plasma widgets"
|
||||
URL "http://delta.affinix.com/qca"
|
||||
TYPE OPTIONAL
|
||||
)
|
||||
|
||||
check_include_files(sys/wait.h HAVE_SYS_WAIT_H)
|
||||
check_include_files(sys/time.h HAVE_SYS_TIME_H)
|
||||
|
||||
include(ConfigureChecks.cmake)
|
||||
configure_file (config-runtime.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-runtime.h )
|
||||
if(NOT WIN32)
|
||||
configure_file(config-unix.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-unix.h )
|
||||
configure_file(config-X11.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-X11.h )
|
||||
|
@ -171,7 +206,7 @@ configure_file(config-workspace.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-works
|
|||
|
||||
add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS} -DHAVE_CONFIG_H=1)
|
||||
add_definitions(-DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS)
|
||||
include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${KDE4_INCLUDES} ${KACTIVITIES_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/libs)
|
||||
include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_BINARY_DIR} ${KDE4_INCLUDES} ${KACTIVITIES_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/libs)
|
||||
|
||||
# libs
|
||||
add_subdirectory(cmake)
|
||||
|
@ -187,7 +222,6 @@ if(NOT WIN32)
|
|||
macro_optional_add_subdirectory( kcheckpass )
|
||||
macro_optional_add_subdirectory( kwin )
|
||||
macro_optional_add_subdirectory( ksmserver )
|
||||
macro_optional_add_subdirectory( kdesu )
|
||||
|
||||
find_package(JPEG REQUIRED)
|
||||
find_package(PNG REQUIRED)
|
||||
|
@ -242,7 +276,61 @@ macro_optional_add_subdirectory(plasma)
|
|||
macro_optional_add_subdirectory(statusnotifierwatcher)
|
||||
macro_optional_add_subdirectory(kstyles)
|
||||
|
||||
# imported from kde-runtime
|
||||
macro_optional_add_subdirectory(kdesu)
|
||||
macro_optional_add_subdirectory(phonon)
|
||||
macro_optional_add_subdirectory(menu)
|
||||
macro_optional_add_subdirectory(khelpcenter)
|
||||
macro_optional_add_subdirectory(kwalletd)
|
||||
macro_optional_add_subdirectory(knotify)
|
||||
macro_optional_add_subdirectory(kuiserver)
|
||||
macro_optional_add_subdirectory(soliduiserver)
|
||||
macro_optional_add_subdirectory(solidautoeject)
|
||||
macro_optional_add_subdirectory(solid-device-automounter)
|
||||
macro_optional_add_subdirectory(solid-networkstatus)
|
||||
macro_optional_add_subdirectory(kdebugdialog)
|
||||
macro_optional_add_subdirectory(kcmshell)
|
||||
macro_optional_add_subdirectory(kioslave)
|
||||
macro_optional_add_subdirectory(kurifilter-plugins)
|
||||
macro_optional_add_subdirectory(kimgio)
|
||||
macro_optional_add_subdirectory(renamedlgplugins)
|
||||
if (Q_WS_X11)
|
||||
macro_optional_add_subdirectory(kstart)
|
||||
endif (Q_WS_X11)
|
||||
macro_optional_add_subdirectory(kquitapp)
|
||||
# Background processes
|
||||
macro_optional_add_subdirectory(kpasswdserver)
|
||||
macro_optional_add_subdirectory(kdontchangethehostname)
|
||||
macro_optional_add_subdirectory(kglobalaccel)
|
||||
macro_optional_add_subdirectory(ktimezoned)
|
||||
# Command-line tools (e.g. for shell scripts)
|
||||
if ( UNIX )
|
||||
macro_optional_add_subdirectory(kdeeject)
|
||||
endif ( UNIX )
|
||||
macro_optional_add_subdirectory(kfile)
|
||||
macro_optional_add_subdirectory(kiconfinder)
|
||||
macro_optional_add_subdirectory(kioclient)
|
||||
macro_optional_add_subdirectory(kioexec)
|
||||
macro_optional_add_subdirectory(ktraderclient)
|
||||
macro_optional_add_subdirectory(kreadconfig)
|
||||
macro_optional_add_subdirectory(kmimetypefinder)
|
||||
# UI Helper applications
|
||||
macro_optional_add_subdirectory(drkonqi)
|
||||
macro_optional_add_subdirectory(khelpcenter)
|
||||
macro_optional_add_subdirectory(knetattach)
|
||||
macro_optional_add_subdirectory(knewstuff)
|
||||
macro_optional_add_subdirectory(keditfiletype)
|
||||
# Default settings, content and config
|
||||
macro_optional_add_subdirectory(l10n)
|
||||
macro_optional_add_subdirectory(localization)
|
||||
macro_optional_add_subdirectory(kde-menu)
|
||||
# KDE integration for attica
|
||||
if(LIBATTICA_FOUND)
|
||||
macro_optional_add_subdirectory(attica)
|
||||
endif(LIBATTICA_FOUND)
|
||||
|
||||
########### install files ###############
|
||||
install(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/kde4 DESTINATION ${BIN_INSTALL_DIR})
|
||||
if(NOT WIN32)
|
||||
install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/startkde DESTINATION ${BIN_INSTALL_DIR})
|
||||
endif(NOT WIN32)
|
||||
|
|
5
attica/CMakeLists.txt
Normal file
|
@ -0,0 +1,5 @@
|
|||
include_directories(${LIBATTICA_INCLUDE_DIR})
|
||||
|
||||
add_subdirectory(kdeplugin)
|
||||
add_subdirectory(kcm)
|
||||
|
14
attica/kcm/CMakeLists.txt
Normal file
|
@ -0,0 +1,14 @@
|
|||
set(kcm_attica_PART_SRCS
|
||||
providerconfigwidget.cpp
|
||||
atticamodule.cpp
|
||||
)
|
||||
|
||||
kde4_add_ui_files(kcm_attica_PART_SRCS providermanagement.ui providerconfigwidget.ui)
|
||||
|
||||
kde4_add_plugin(kcm_attica ${kcm_attica_PART_SRCS})
|
||||
|
||||
target_link_libraries(kcm_attica ${LIBATTICA_LIBRARIES} ${KDE4_KDEUI_LIBS} ${KDE4_KIO_LIBS})
|
||||
|
||||
install(TARGETS kcm_attica DESTINATION ${PLUGIN_INSTALL_DIR})
|
||||
install(FILES kcm_attica.desktop DESTINATION ${SERVICES_INSTALL_DIR})
|
||||
|
3
attica/kcm/Messages.sh
Normal file
|
@ -0,0 +1,3 @@
|
|||
#! /bin/sh
|
||||
$EXTRACTRC `find . -name \*.rc -o -name \*.ui -o -name \*.kcfg` >> rc.cpp
|
||||
$XGETTEXT *.cpp -o $podir/kcm_attica.pot
|
3
attica/kcm/TODO
Normal file
|
@ -0,0 +1,3 @@
|
|||
KDE4.5:
|
||||
- Check that password is more than 8 chars in length (something server should do)
|
||||
- Rename "Login" tab to "Login Settings" to not confuse user
|
158
attica/kcm/atticamodule.cpp
Normal file
|
@ -0,0 +1,158 @@
|
|||
/*
|
||||
This file is part of KDE.
|
||||
|
||||
Copyright (c) 2009 Eckhart Wörner <ewoerner@kde.org>
|
||||
Copyright (c) 2010 Frederik Gladhorn <gladhorn@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.
|
||||
*/
|
||||
|
||||
#include "atticamodule.h"
|
||||
|
||||
|
||||
#include <KPluginFactory>
|
||||
#include <KAboutData>
|
||||
#include <KDebug>
|
||||
#include <kicon.h>
|
||||
#include <kurlrequesterdialog.h>
|
||||
|
||||
#include <attica/providermanager.h>
|
||||
|
||||
#include "providerconfigwidget.h"
|
||||
|
||||
|
||||
K_PLUGIN_FACTORY(AtticaModuleFactory, registerPlugin<AtticaModule>();)
|
||||
K_EXPORT_PLUGIN(AtticaModuleFactory("kcm_attica"))
|
||||
|
||||
AtticaModule::AtticaModule(QWidget* parent, const QVariantList&)
|
||||
: KCModule(AtticaModuleFactory::componentData(), parent)
|
||||
{
|
||||
KAboutData *about = new KAboutData(
|
||||
"kcm_attica", 0, ki18n("Social Desktop"),
|
||||
KDE_VERSION_STRING, KLocalizedString(), KAboutData::License_GPL,
|
||||
ki18n("Copyright 2009 Eckhart Wörner"));
|
||||
about->addAuthor(ki18n("Eckhart Wörner"), KLocalizedString(), "ewoerner@kde.org");
|
||||
about->addAuthor(ki18n("Dmitry Suzdalev"), KLocalizedString(), "dimsuz@gmail.com");
|
||||
about->addAuthor(ki18n("Frederik Gladhorn"), KLocalizedString(), "gladhorn@kde.org");
|
||||
setAboutData(about);
|
||||
|
||||
m_ui.setupUi(this);
|
||||
|
||||
m_ui.addProviderButton->setIcon(KIcon("list-add"));
|
||||
m_ui.removeProviderButton->setIcon(KIcon("list-remove"));
|
||||
|
||||
// FIXME
|
||||
m_ui.removeProviderButton->setEnabled(false);
|
||||
|
||||
connect(m_ui.addProviderButton, SIGNAL(clicked()), this, SLOT(addProvider()));
|
||||
connect(m_ui.removeProviderButton, SIGNAL(clicked()), this, SLOT(removeProvider()));
|
||||
|
||||
connect(m_ui.providerComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(providerSelected(int)));
|
||||
|
||||
connect(m_ui.providerConfigWidget, SIGNAL(changed(bool)),
|
||||
this, SIGNAL(changed(bool)));
|
||||
|
||||
m_manager.setAuthenticationSuppressed(true);
|
||||
|
||||
connect(&m_manager, SIGNAL(providerAdded(const Attica::Provider&)), SLOT(providerAdded(const Attica::Provider&)));
|
||||
connect(&m_manager, SIGNAL(defaultProvidersLoaded()), SLOT(onDefaultProvidersLoaded()));
|
||||
|
||||
startLoadingDefaultProviders();
|
||||
}
|
||||
|
||||
AtticaModule::~AtticaModule()
|
||||
{
|
||||
}
|
||||
|
||||
void AtticaModule::defaults()
|
||||
{
|
||||
}
|
||||
|
||||
void AtticaModule::load()
|
||||
{
|
||||
startLoadingDefaultProviders();
|
||||
}
|
||||
|
||||
|
||||
void AtticaModule::save()
|
||||
{
|
||||
m_ui.providerConfigWidget->saveData();
|
||||
}
|
||||
|
||||
void AtticaModule::startLoadingDefaultProviders()
|
||||
{
|
||||
emit changed(true);
|
||||
m_manager.clear();
|
||||
m_manager.loadDefaultProviders();
|
||||
m_ui.lblProviderList->setText(i18n("Loading provider list..."));
|
||||
m_ui.providerComboBox->hide();
|
||||
m_ui.providerConfigWidget->setEnabled(false);
|
||||
}
|
||||
|
||||
void AtticaModule::providerAdded(const Attica::Provider& provider)
|
||||
{
|
||||
// Add new provider
|
||||
QString baseUrl = provider.baseUrl().toString();
|
||||
int idx = m_ui.providerComboBox->findData(baseUrl);
|
||||
|
||||
if ( idx == -1)
|
||||
{
|
||||
kDebug() << "Adding provider" << baseUrl;
|
||||
QString name = provider.name();
|
||||
if (name.isEmpty())
|
||||
name = baseUrl;
|
||||
m_ui.providerComboBox->addItem(KIcon("system-users"), name, provider.baseUrl());
|
||||
}
|
||||
|
||||
// set only if this is a first provider, otherwise it will be
|
||||
// set on explicit selection
|
||||
if (m_ui.providerComboBox->count() == 1) {
|
||||
m_ui.providerConfigWidget->setProvider(provider);
|
||||
}
|
||||
}
|
||||
|
||||
void AtticaModule::providerSelected(int providerNumber)
|
||||
{
|
||||
QUrl providerUrl = m_ui.providerComboBox->itemData(providerNumber).toUrl();
|
||||
m_ui.providerConfigWidget->setProvider(m_manager.providerByUrl(providerUrl));
|
||||
}
|
||||
|
||||
void AtticaModule::onDefaultProvidersLoaded()
|
||||
{
|
||||
m_ui.lblProviderList->setText(i18n("Choose a provider to manage:"));
|
||||
m_ui.providerComboBox->show();
|
||||
m_ui.providerConfigWidget->setEnabled(true);
|
||||
|
||||
// at least now set it to not changed
|
||||
emit changed(false);
|
||||
}
|
||||
|
||||
void AtticaModule::addProvider()
|
||||
{
|
||||
KUrlRequesterDialog dialog("http://", i18nc("addition of an attica/knewstuff provider by entering its url", "URL of the provider file (provider.xml)"), this);
|
||||
if (dialog.exec() == KDialog::Accepted) {
|
||||
kDebug() << "Add provider: " << dialog.selectedUrl();
|
||||
m_manager.addProviderFileToDefaultProviders(dialog.selectedUrl());
|
||||
}
|
||||
}
|
||||
|
||||
void AtticaModule::removeProvider()
|
||||
{
|
||||
//m_manager.removeProviderFileToDefaultProviders(url);
|
||||
}
|
||||
|
||||
|
||||
#include "atticamodule.moc"
|
64
attica/kcm/atticamodule.h
Normal file
|
@ -0,0 +1,64 @@
|
|||
/*
|
||||
This file is part of KDE.
|
||||
|
||||
Copyright (c) 2009 Eckhart Wörner <ewoerner@kde.org>
|
||||
Copyright (c) 2010 Frederik Gladhorn <gladhorn@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 ATTICAMODULE_H
|
||||
#define ATTICAMODULE_H
|
||||
|
||||
#include <KDE/KCModule>
|
||||
|
||||
#include <attica/providermanager.h>
|
||||
|
||||
#include "ui_providermanagement.h"
|
||||
|
||||
|
||||
namespace KWallet {
|
||||
class Wallet;
|
||||
}
|
||||
|
||||
class AtticaModule : public KCModule
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
AtticaModule(QWidget* parent, const QVariantList&);
|
||||
~AtticaModule();
|
||||
void save();
|
||||
void load();
|
||||
void defaults();
|
||||
|
||||
private Q_SLOTS:
|
||||
void providerAdded(const Attica::Provider&);
|
||||
void onDefaultProvidersLoaded();
|
||||
void addProvider();
|
||||
void removeProvider();
|
||||
void providerSelected(int);
|
||||
|
||||
private:
|
||||
void startLoadingDefaultProviders();
|
||||
|
||||
private:
|
||||
Ui::ProviderManagement m_ui;
|
||||
Attica::ProviderManager m_manager;
|
||||
};
|
||||
|
||||
|
||||
#endif
|
148
attica/kcm/kcm_attica.desktop
Normal file
|
@ -0,0 +1,148 @@
|
|||
[Desktop Entry]
|
||||
Exec=kcmshell4 kcm_attica
|
||||
Type=Service
|
||||
Icon=get-hot-new-stuff
|
||||
|
||||
X-KDE-ServiceTypes=KCModule
|
||||
X-KDE-Library=kcm_attica
|
||||
X-KDE-ParentApp=kcontrol
|
||||
X-KDE-System-Settings-Parent-Category=account-details
|
||||
X-DocPath=kcontrol/attica/index.html
|
||||
|
||||
Name=Social Desktop
|
||||
Name[ar]=سطح المكتب اجتماعي
|
||||
Name[ast]=Escritoriu social
|
||||
Name[bg]=Социален работен плот
|
||||
Name[bn]=সামাজিক ডেস্কটপ
|
||||
Name[bs]=Društvena površ
|
||||
Name[ca]=Escriptori social
|
||||
Name[ca@valencia]=Escriptori social
|
||||
Name[cs]=Sociální pracovní prostředí
|
||||
Name[da]=Social desktop
|
||||
Name[de]=Social-Desktop
|
||||
Name[el]=Κοινωνική επιφάνεια εργασίας
|
||||
Name[en_GB]=Social Desktop
|
||||
Name[eo]=Socia labortablo
|
||||
Name[es]=Escritorio social
|
||||
Name[et]=Sotsiaalne töölaud
|
||||
Name[eu]=Mahaigain soziala
|
||||
Name[fa]=رومیزی اجتماعی
|
||||
Name[fi]=Sosiaalinen työpöytä
|
||||
Name[fr]=Bureau social
|
||||
Name[ga]=Deasc Shóisialta
|
||||
Name[gl]=Escritorio social
|
||||
Name[gu]=સોશિયલ ડેસ્કટોપ
|
||||
Name[he]=שולחן עבודה חברתי
|
||||
Name[hi]=सामुहिक डेस्कटॉप
|
||||
Name[hr]=Društvena radna površina
|
||||
Name[hu]=Közösségi asztal
|
||||
Name[ia]=Scriptorio social
|
||||
Name[id]=Desktop Sosial
|
||||
Name[is]=Samskiptaskjáborð
|
||||
Name[it]=Desktop sociale
|
||||
Name[ja]=ソーシャルデスクトップ
|
||||
Name[kk]=Қоғамдық үстел
|
||||
Name[km]=ផ្ទៃតុសង្គម
|
||||
Name[kn]=ಸಾಮಾಜಿಕ ಗಣಕತೆರೆ
|
||||
Name[ko]=사회적 데스크톱
|
||||
Name[lt]=Socialinis darbastalis
|
||||
Name[lv]=Sociālā darbvirsma
|
||||
Name[mai]=समाज डेस्कटाप
|
||||
Name[ml]=സാമൂഹിക പണിയിടം
|
||||
Name[mr]=सामाजिक डेस्कटॉप
|
||||
Name[nb]=Sosialt skrivebord
|
||||
Name[nds]=Meenschap-Schriefdisch
|
||||
Name[nl]=Sociale bureaublad
|
||||
Name[nn]=Sosialt skrivebord
|
||||
Name[pa]=ਸਮਾਜਕ ਡੈਸਕਟਾਪ
|
||||
Name[pl]=Pulpit społecznościowy
|
||||
Name[pt]=Ambiente de Trabalho Social
|
||||
Name[pt_BR]=Área de Trabalho Social
|
||||
Name[ro]=Birou social
|
||||
Name[ru]=Social Desktop
|
||||
Name[si]=සමාජීය වැඩතලය
|
||||
Name[sk]=Sociálne pracovné prostredie
|
||||
Name[sl]=Družabno namizje
|
||||
Name[sr]=Друштвена површ
|
||||
Name[sr@ijekavian]=Друштвена површ
|
||||
Name[sr@ijekavianlatin]=Društvena površ
|
||||
Name[sr@latin]=Društvena površ
|
||||
Name[sv]=Socialt skrivbord
|
||||
Name[tg]=Мизи кории ҷамъиятӣ
|
||||
Name[th]=แวดวงสังคมออนไลน์
|
||||
Name[tr]=Sosyal Masaüstü
|
||||
Name[ug]=ئىجتىمائىي ئۈستەلئۈستى
|
||||
Name[uk]=Соціальна стільниця
|
||||
Name[vi]=Máy làm việc xã hội
|
||||
Name[wa]=Sicribanne sociå
|
||||
Name[x-test]=xxSocial Desktopxx
|
||||
Name[zh_CN]=社会化桌面
|
||||
Name[zh_TW]=Social 桌面
|
||||
Comment=Manage Social Desktop Providers
|
||||
Comment[ar]=أدر مزودي سطح المكتب الاجتماعي
|
||||
Comment[ast]=Xestionar fornidores del escritoriu social
|
||||
Comment[bg]=Управление на доставчици на социален работен плот
|
||||
Comment[bn]=সামাজিক ডেস্কটপ সরবরাহকারী ব্যবস্থাপনা
|
||||
Comment[bs]=Upravljanje dobavljačima društvene površi
|
||||
Comment[ca]=Gestiona els proveïdors de l'escriptori social
|
||||
Comment[ca@valencia]=Gestiona els proveïdors de l'escriptori social
|
||||
Comment[cs]=Spravovat poskytovatele sociálního pracovního prostředí
|
||||
Comment[da]=Håndtér udbydere af social desktop
|
||||
Comment[de]=Social-Desktop-Anbieter verwalten
|
||||
Comment[el]=Διαχείριση παρόχων κοινωνικής επιφάνειας εργασίας
|
||||
Comment[en_GB]=Manage Social Desktop Providers
|
||||
Comment[eo]=Mastrumi provizantojn de socia labortablo
|
||||
Comment[es]=Gestionar proveedores del escritorio social
|
||||
Comment[et]=Sotsiaalse töölaua pakkujate haldamine
|
||||
Comment[eu]=Mahaigain sozialen hornitzaileak kudeatzea
|
||||
Comment[fa]=مدیریت ارائه دهندگان میزکارهای اجتماعی
|
||||
Comment[fi]=Sosiaalisen työpöydän tarjoajien asetukset
|
||||
Comment[fr]=Gérer les fournisseurs de bureaux sociaux
|
||||
Comment[ga]=Bainistigh Soláthraithe na Deisce Shóisialta
|
||||
Comment[gl]=Xestión dos provedores de escritorio social
|
||||
Comment[gu]=સોશિઅલ ડેસ્કટોપ પૂરા પાડનારાઓનું સંચાલન કરો
|
||||
Comment[he]=משמש לניהול ספקי שולחן עבודה חברתי
|
||||
Comment[hi]=सामाजिक डेस्कटॉप प्रदाता को प्रबंधित करें
|
||||
Comment[hr]=Upravljanje pružateljima društvene radne površine
|
||||
Comment[hu]=Közösségiasztal-szolgáltatók kezelése
|
||||
Comment[ia]=Gere fornitores de Scriptorio Social
|
||||
Comment[id]=Atur Penyedia Desktop Sosial
|
||||
Comment[is]=Sýsla með efnisveitur fyrir samskiptaveftengt efni fyrir skjáborð
|
||||
Comment[it]=Gestisci i fornitori del desktop sociale
|
||||
Comment[ja]=ソーシャルデスクトッププロバイダを管理
|
||||
Comment[kk]=Әлеуметтік үстел провайдерлерін басқару
|
||||
Comment[km]=គ្រប់គ្រងក្រុមហ៊ុនផ្ដល់ផ្ទៃតុសង្គម
|
||||
Comment[kn]=ಸಾಮಾಜಿಕ ಗಣಕತೆರೆ ಪೂರೈಕೆದಾರರನ್ನು ನಿರ್ವಹಿಸು
|
||||
Comment[ko]=사회적 데스크톱 프로바이더 관리
|
||||
Comment[lt]=Tvarkyti socialinio darbastalio tiekėjus
|
||||
Comment[lv]=Pārvaldīt sociālās darbvirsmas sniedzējus
|
||||
Comment[ml]=സാമൂഹിക പണിയിട ദാതാക്കളെ കൈകാര്യം ചെയ്യുക
|
||||
Comment[mr]=सामाजिक डेस्कटॉप पुरवठाकर्ते नियंत्रीत करा
|
||||
Comment[nb]=Håndter sosialt skrivebord-leverandører
|
||||
Comment[nds]=Anbeders vun Meenschap-Schriefdischen plegen
|
||||
Comment[nl]=Leveranciers van sociale bureaubladen beheren
|
||||
Comment[nn]=Handsam sosialt skrivebord-leverandørar
|
||||
Comment[pa]=ਸਮਾਜਿਕ ਡੈਸਕਟਾਪ ਪਰੋਵਾਇਡਰ ਪਰਬੰਧ
|
||||
Comment[pl]=Zarządzanie dostawcami dla pulpitu społecznościowego
|
||||
Comment[pt]=Gerir os Fornecedores do Ambiente de Trabalho Social
|
||||
Comment[pt_BR]=Gerencia os fornecedores da Área de Trabalho Social
|
||||
Comment[ro]=Gestionează furnizorii de birou social
|
||||
Comment[ru]=Настройка Social Desktop
|
||||
Comment[si]=සමාජීය වැඩපත් සපයන්නන් කළමනාකරනය කරන්
|
||||
Comment[sk]=Správa poskytovateľov sociálneho pracovného prostredia
|
||||
Comment[sl]=Upravljanje s ponudniki družabnega namizja
|
||||
Comment[sr]=Управљање добављачима друштвене површи
|
||||
Comment[sr@ijekavian]=Управљање добављачима друштвене површи
|
||||
Comment[sr@ijekavianlatin]=Upravljanje dobavljačima društvene površi
|
||||
Comment[sr@latin]=Upravljanje dobavljačima društvene površi
|
||||
Comment[sv]=Hantera leverantörer av socialt skrivbord
|
||||
Comment[tg]=Идоракунии провайдерҳои мизи кории ҷамъиятӣ
|
||||
Comment[th]=จัดการผู้ให้บริการแวดวงสังคมออนไลน์
|
||||
Comment[tr]=Sosyal Masaüstü Hizmetlerini Yönet
|
||||
Comment[ug]=ئىجتىمائىي ئۈستەلئۈستى تەمىنلىگۈچىنى باشقۇرىدۇ
|
||||
Comment[uk]=Керування постачальниками даних соціальної стільниці
|
||||
Comment[vi]=Quản lý các nhà cung cấp máy làm việc xã hội
|
||||
Comment[wa]=Manaedjî des ahesseus d' sicribanne sociå
|
||||
Comment[x-test]=xxManage Social Desktop Providersxx
|
||||
Comment[zh_CN]=管理社会化桌面信息提供方
|
||||
Comment[zh_TW]=管理 Social 桌面提供者
|
320
attica/kcm/providerconfigwidget.cpp
Normal file
|
@ -0,0 +1,320 @@
|
|||
/*
|
||||
This file is part of KDE.
|
||||
|
||||
Copyright (c) 2009 Eckhart Wörner <ewoerner@kde.org>
|
||||
Copyright (c) 2009 Dmitry Suzdalev <dimsuz@gmail.com>
|
||||
Copyright (c) 2010 Frederik Gladhorn <gladhorn@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.
|
||||
*/
|
||||
|
||||
#include "providerconfigwidget.h"
|
||||
|
||||
#include <KDebug>
|
||||
#include <KMessageBox>
|
||||
#include <KColorScheme>
|
||||
#include <kicon.h>
|
||||
|
||||
#include <attica/person.h>
|
||||
|
||||
static const int loginTabIdx = 0;
|
||||
static const int registerTabIdx = 1;
|
||||
|
||||
ProviderConfigWidget::ProviderConfigWidget(QWidget* parent)
|
||||
: QWidget(parent)
|
||||
{
|
||||
m_ui.setupUi(this);
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::setProvider(const Attica::Provider& provider)
|
||||
{
|
||||
m_provider = provider;
|
||||
|
||||
// TODO ensure that it reinits all fields nicely for new provider!
|
||||
initLoginPage();
|
||||
initRegisterPage();
|
||||
|
||||
m_ui.userEditLP->setFocus();
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::initLoginPage()
|
||||
{
|
||||
QString header;
|
||||
if (m_provider.name().isEmpty()) {
|
||||
header = i18n("Account details");
|
||||
} else {
|
||||
header = i18n("Account details for %1", m_provider.name());
|
||||
}
|
||||
m_ui.titleWidgetLogin->setText(header);
|
||||
m_ui.tabWidget->setTabIcon(loginTabIdx, KIcon("applications-internet"));
|
||||
|
||||
if (m_provider.hasCredentials()) {
|
||||
QString user;
|
||||
QString password;
|
||||
m_provider.loadCredentials(user, password);
|
||||
kDebug() << "cred for: " << user;
|
||||
m_ui.userEditLP->setText(user);
|
||||
m_ui.passwordEditLP->setText(password);
|
||||
} else {
|
||||
m_ui.userEditLP->clear();
|
||||
m_ui.passwordEditLP->clear();
|
||||
}
|
||||
m_ui.enableProviderCheckBox->setChecked(m_provider.isEnabled());
|
||||
m_ui.testLoginButton->setIcon(KIcon("network-connect"));
|
||||
m_ui.iconLabelLP->setPixmap(KIcon("help-about").pixmap(24,24));
|
||||
|
||||
connect(m_ui.userEditLP, SIGNAL(textChanged(const QString&)), this, SLOT(onLoginChanged()));
|
||||
connect(m_ui.passwordEditLP, SIGNAL(textChanged(const QString&)), this, SLOT(onLoginChanged()));
|
||||
connect(m_ui.testLoginButton, SIGNAL(clicked()), this, SLOT(onTestLogin()));
|
||||
connect(m_ui.infoLabelLP, SIGNAL(linkActivated(const QString&)), this, SLOT(onInfoLinkActivated()));
|
||||
connect(m_ui.enableProviderCheckBox, SIGNAL(clicked(bool)), this, SLOT(enableToggled(bool)));
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::initRegisterPage()
|
||||
{
|
||||
QString header;
|
||||
if (m_provider.name().isEmpty()) {
|
||||
header = i18n("Register new account");
|
||||
} else {
|
||||
header = i18n("Register new account at %1", m_provider.name());
|
||||
}
|
||||
m_ui.titleWidgetRegister->setText(header);
|
||||
m_ui.tabWidget->setTabIcon(registerTabIdx, KIcon("list-add-user"));
|
||||
|
||||
m_ui.infoLabelRP->setFont(KGlobalSettings::smallestReadableFont());
|
||||
|
||||
connect(m_ui.userEditRP, SIGNAL(textChanged(QString)), SLOT(onRegisterDataChanged()));
|
||||
connect(m_ui.mailEdit, SIGNAL(textChanged(QString)), SLOT(onRegisterDataChanged()));
|
||||
connect(m_ui.firstNameEdit, SIGNAL(textChanged(QString)), SLOT(onRegisterDataChanged()));
|
||||
connect(m_ui.lastNameEdit, SIGNAL(textChanged(QString)), SLOT(onRegisterDataChanged()));
|
||||
connect(m_ui.passwordEditRP, SIGNAL(textChanged(QString)), SLOT(onRegisterDataChanged()));
|
||||
connect(m_ui.passwordRepeatEdit, SIGNAL(textChanged(QString)), SLOT(onRegisterDataChanged()));
|
||||
|
||||
connect(m_ui.registerButton, SIGNAL(clicked()), SLOT(onRegisterClicked()));
|
||||
|
||||
onRegisterDataChanged();
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::onLoginChanged()
|
||||
{
|
||||
m_ui.testLoginButton->setText(i18n("Test login"));
|
||||
m_ui.testLoginButton->setEnabled(true);
|
||||
emit changed(true);
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::onTestLogin()
|
||||
{
|
||||
m_ui.testLoginButton->setEnabled(false);
|
||||
m_ui.testLoginButton->setText(i18n("Testing login..."));
|
||||
|
||||
Attica::PostJob* postJob = m_provider.checkLogin(m_ui.userEditLP->text(), m_ui.passwordEditLP->text());
|
||||
connect(postJob, SIGNAL(finished(Attica::BaseJob*)), SLOT(onTestLoginFinished(Attica::BaseJob*)));
|
||||
postJob->start();
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::onTestLoginFinished(Attica::BaseJob* job)
|
||||
{
|
||||
Attica::PostJob* postJob = static_cast<Attica::PostJob*>(job);
|
||||
|
||||
if (postJob->metadata().error() == Attica::Metadata::NoError) {
|
||||
m_ui.testLoginButton->setText(i18n("Success"));
|
||||
}
|
||||
|
||||
if (postJob->metadata().error() == Attica::Metadata::OcsError) {
|
||||
m_ui.testLoginButton->setText(i18n("Login failed"));
|
||||
}
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::enableToggled(bool enabled)
|
||||
{
|
||||
m_provider.setEnabled(enabled);
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::onInfoLinkActivated()
|
||||
{
|
||||
m_ui.tabWidget->setCurrentIndex(registerTabIdx);
|
||||
m_ui.userEditRP->setFocus();
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::onRegisterDataChanged()
|
||||
{
|
||||
QString login = m_ui.userEditRP->text();
|
||||
QString mail = m_ui.mailEdit->text();
|
||||
QString firstName = m_ui.firstNameEdit->text();
|
||||
QString lastName = m_ui.lastNameEdit->text();
|
||||
QString password = m_ui.passwordEditRP->text();
|
||||
QString passwordRepeat = m_ui.passwordRepeatEdit->text();
|
||||
|
||||
bool isDataValid = (!login.isEmpty() && !mail.isEmpty() && !firstName.isEmpty() &&
|
||||
!lastName.isEmpty() && !password.isEmpty());
|
||||
bool isPasswordLengthValid = password.size() > 7;
|
||||
bool isPasswordEqual = password == passwordRepeat;
|
||||
|
||||
if (!isDataValid) {
|
||||
showRegisterHint("dialog-cancel", i18n("Not all required fields are filled"));
|
||||
} else if (!isPasswordLengthValid) {
|
||||
showRegisterHint("dialog-cancel", i18n("Password is too short"));
|
||||
} else if (!isPasswordEqual) {
|
||||
showRegisterHint("dialog-cancel", i18n("Passwords do not match"));
|
||||
} else {
|
||||
showRegisterHint("dialog-ok-apply", i18n("All required information is provided"));
|
||||
}
|
||||
|
||||
m_ui.registerButton->setEnabled(isDataValid && isPasswordLengthValid && isPasswordEqual);
|
||||
|
||||
emit changed(true);
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::showRegisterHint(const QString& iconName, const QString& hint)
|
||||
{
|
||||
m_ui.iconLabelRP->setPixmap(KIcon(iconName).pixmap(16,16));
|
||||
m_ui.infoLabelRP->setText(hint);
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::showRegisterError(const Attica::Metadata& metadata)
|
||||
{
|
||||
if (metadata.error() == Attica::Metadata::NetworkError) {
|
||||
showRegisterHint("dialog-close", i18n("Failed to register new account."));
|
||||
} else {
|
||||
/*
|
||||
# 100 - successful / valid account
|
||||
# 101 - please specify all mandatory fields
|
||||
# 102 - please specify a valid password
|
||||
# 103 - please specify a valid login
|
||||
# 104 - login already exists
|
||||
# 105 - email already taken
|
||||
*/
|
||||
// TODO: Looks like more correct place for this stuff is in libattica,
|
||||
// for example metadata().statusString() or smth like that.
|
||||
// So here will be only showRegisterHint("dialog-close", statusString);
|
||||
// no switch.
|
||||
QWidget* widgetToHighlight = 0;
|
||||
QString hint;
|
||||
switch (metadata.statusCode()) {
|
||||
case 102:
|
||||
hint = i18n("Failed to register new account: invalid password.");
|
||||
widgetToHighlight = m_ui.passwordEditRP;
|
||||
break;
|
||||
case 103:
|
||||
hint = i18n("Failed to register new account: invalid username.");
|
||||
widgetToHighlight = m_ui.userEditRP;
|
||||
break;
|
||||
case 104:
|
||||
hint = i18n("Failed to register new account: the requested username is already taken.");
|
||||
widgetToHighlight = m_ui.userEditRP;
|
||||
break;
|
||||
case 105:
|
||||
hint = i18n("Failed to register new account: the specified email address is already taken.");
|
||||
widgetToHighlight = m_ui.mailEdit;
|
||||
break;
|
||||
case 106:
|
||||
hint = i18n("Failed to register new account: the specified email address is invalid.");
|
||||
widgetToHighlight = m_ui.mailEdit;
|
||||
default:
|
||||
hint = i18n("Failed to register new account.");
|
||||
break;
|
||||
}
|
||||
|
||||
if (!hint.isEmpty())
|
||||
showRegisterHint("dialog-close", hint);
|
||||
|
||||
if (widgetToHighlight) {
|
||||
QPalette pal = widgetToHighlight->palette();
|
||||
KColorScheme::adjustBackground(pal, KColorScheme::NegativeBackground, QPalette::Base);
|
||||
widgetToHighlight->setPalette(pal);
|
||||
widgetToHighlight->setFocus();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::clearHighlightedErrors()
|
||||
{
|
||||
QList<QWidget*> widList = allRegisterWidgets();
|
||||
foreach (QWidget* wid, widList) {
|
||||
QPalette pal = wid->palette();
|
||||
KColorScheme::adjustBackground(pal, KColorScheme::NormalBackground, QPalette::Base);
|
||||
wid->setPalette(pal);
|
||||
}
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::onRegisterClicked()
|
||||
{
|
||||
// here we assume that all data has been checked in onRegisterDataChanged()
|
||||
|
||||
clearHighlightedErrors();
|
||||
|
||||
QString login = m_ui.userEditRP->text();
|
||||
QString mail = m_ui.mailEdit->text();
|
||||
QString firstName = m_ui.firstNameEdit->text();
|
||||
QString lastName = m_ui.lastNameEdit->text();
|
||||
QString password = m_ui.passwordEditRP->text();
|
||||
//QString passwordRepeat = m_ui.passwordRepeatEdit->text();
|
||||
|
||||
Attica::PostJob* postJob = m_provider.registerAccount(login, password, mail, firstName, lastName);
|
||||
connect(postJob, SIGNAL(finished(Attica::BaseJob*)), SLOT(onRegisterAccountFinished(Attica::BaseJob*)));
|
||||
postJob->start();
|
||||
showRegisterHint("help-about", i18n("Registration is in progress..."));
|
||||
m_ui.registerButton->setEnabled(false); // should be disabled while registering
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::onRegisterAccountFinished(Attica::BaseJob* job)
|
||||
{
|
||||
Attica::PostJob* postJob = static_cast<Attica::PostJob*>(job);
|
||||
|
||||
// this will enable "register" button if possible
|
||||
onRegisterDataChanged();
|
||||
|
||||
if (postJob->metadata().error() == Attica::Metadata::NoError)
|
||||
{
|
||||
KMessageBox::information(this, i18n("Registration complete. New account was successfully registered. Please <b>check your Email</b> to <b>activate</b> the account."));
|
||||
|
||||
QString user = m_ui.userEditRP->text();
|
||||
QString password = m_ui.passwordEditRP->text();
|
||||
m_ui.userEditLP->setText(user);
|
||||
m_ui.passwordEditLP->setText(password);
|
||||
|
||||
// clear register fields and switch to login page
|
||||
foreach (QWidget* wid, allRegisterWidgets())
|
||||
{
|
||||
QLineEdit* le = qobject_cast<QLineEdit*>(wid);
|
||||
if (le)
|
||||
le->clear();
|
||||
}
|
||||
m_ui.tabWidget->setCurrentIndex(loginTabIdx);
|
||||
m_ui.userEditLP->setFocus();
|
||||
}
|
||||
else
|
||||
{
|
||||
kDebug() << "register error:" << postJob->metadata().error() << "statusCode:" << postJob->metadata().statusCode();
|
||||
showRegisterError( postJob->metadata() );
|
||||
}
|
||||
}
|
||||
|
||||
void ProviderConfigWidget::saveData()
|
||||
{
|
||||
m_provider.saveCredentials(m_ui.userEditLP->text(), m_ui.passwordEditLP->text());
|
||||
}
|
||||
|
||||
QList<QWidget*> ProviderConfigWidget::allRegisterWidgets() const
|
||||
{
|
||||
QList<QWidget*> widList;
|
||||
widList << m_ui.userEditRP << m_ui.mailEdit << m_ui.firstNameEdit
|
||||
<< m_ui.lastNameEdit << m_ui.passwordEditRP << m_ui.passwordRepeatEdit;
|
||||
|
||||
return widList;
|
||||
}
|
||||
|
||||
#include "providerconfigwidget.moc"
|
78
attica/kcm/providerconfigwidget.h
Normal file
|
@ -0,0 +1,78 @@
|
|||
/*
|
||||
This file is part of KDE.
|
||||
|
||||
Copyright (c) 2009 Eckhart Wörner <ewoerner@kde.org>
|
||||
Copyright (c) 2009 Dmitry Suzdalev <dimsuz@gmail.com>
|
||||
Copyright (c) 2010 Frederik Gladhorn <gladhorn@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 PROVIDERCONFIGWIDGET_H
|
||||
#define PROVIDERCONFIGWIDGET_H
|
||||
|
||||
#include <QWidget>
|
||||
|
||||
#include <attica/provider.h>
|
||||
|
||||
#include "ui_providerconfigwidget.h"
|
||||
|
||||
namespace Attica
|
||||
{
|
||||
class Metadata;
|
||||
}
|
||||
|
||||
class ProviderConfigWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit ProviderConfigWidget(QWidget* parent = 0);
|
||||
void setProvider(const Attica::Provider& provider);
|
||||
void saveData();
|
||||
|
||||
Q_SIGNALS:
|
||||
void changed(bool hasChanged);
|
||||
|
||||
private Q_SLOTS:
|
||||
// login page
|
||||
void onLoginChanged();
|
||||
void onTestLogin();
|
||||
void onTestLoginFinished(Attica::BaseJob* job);
|
||||
void enableToggled(bool enabled);
|
||||
|
||||
// register page
|
||||
void onInfoLinkActivated();
|
||||
void onRegisterDataChanged();
|
||||
void onRegisterClicked();
|
||||
void onRegisterAccountFinished(Attica::BaseJob* job);
|
||||
|
||||
|
||||
private:
|
||||
void initLoginPage();
|
||||
void initRegisterPage();
|
||||
void showRegisterHint(const QString&, const QString&);
|
||||
void showRegisterError(const Attica::Metadata&);
|
||||
void clearHighlightedErrors();
|
||||
|
||||
QList<QWidget*> allRegisterWidgets() const;
|
||||
|
||||
private:
|
||||
Attica::Provider m_provider;
|
||||
Ui::ProviderConfigWidget m_ui;
|
||||
};
|
||||
|
||||
#endif
|
572
attica/kcm/providerconfigwidget.ui
Normal file
|
@ -0,0 +1,572 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>ProviderConfigWidget</class>
|
||||
<widget class="QWidget" name="ProviderConfigWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>467</width>
|
||||
<height>453</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<widget class="QTabWidget" name="tabWidget">
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="loginTab">
|
||||
<attribute name="title">
|
||||
<string>Login</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout_2">
|
||||
<item row="0" column="0">
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<property name="leftMargin">
|
||||
<number>10</number>
|
||||
</property>
|
||||
<item row="3" column="1">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>&Username:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>userEditLP</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="2">
|
||||
<widget class="KLineEdit" name="userEditLP"/>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>&Password:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>passwordEditLP</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="2">
|
||||
<widget class="KLineEdit" name="passwordEditLP">
|
||||
<property name="echoMode">
|
||||
<enum>QLineEdit::Password</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="2">
|
||||
<widget class="QPushButton" name="testLoginButton">
|
||||
<property name="text">
|
||||
<string>&Test Login</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="3" rowspan="3">
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="3" column="0" rowspan="3">
|
||||
<spacer name="horizontalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="0" colspan="4">
|
||||
<spacer name="verticalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>10</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="1" column="0" colspan="4">
|
||||
<widget class="QLabel" name="titleWidgetLogin">
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0" colspan="4">
|
||||
<spacer name="verticalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>10</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="6" column="2">
|
||||
<widget class="QCheckBox" name="enableProviderCheckBox">
|
||||
<property name="toolTip">
|
||||
<string>If a provider is not enabled, it will be ignored by the applications using the social desktop</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Enabled</string>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="2" column="0" colspan="2">
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>443</width>
|
||||
<height>174</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="4" column="0" colspan="2">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QLabel" name="iconLabelLP">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>16</width>
|
||||
<height>16</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignHCenter|Qt::AlignTop</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="infoLabelLP">
|
||||
<property name="text">
|
||||
<string>Do not have an account? Create one on the <a href="register">Register tab</a></string>
|
||||
</property>
|
||||
<property name="wordWrap">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="5" column="0">
|
||||
<widget class="QLabel" name="infoLabelLP_2">
|
||||
<property name="text">
|
||||
<string>The Social Desktop Providers are used for "Get Hot New Stuff" and the "Community" and "Social News" Plasma applets.</string>
|
||||
</property>
|
||||
<property name="wordWrap">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="registerTab">
|
||||
<attribute name="title">
|
||||
<string>Register</string>
|
||||
</attribute>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout_3">
|
||||
<property name="leftMargin">
|
||||
<number>10</number>
|
||||
</property>
|
||||
<item row="3" column="1" colspan="2">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Fill in the details below and click <b>Register...</b> button</string>
|
||||
</property>
|
||||
<property name="wordWrap">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<spacer name="verticalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="6" column="0" colspan="2">
|
||||
<spacer name="verticalSpacer_6">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="7" column="1">
|
||||
<spacer name="verticalSpacer_7">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>29</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="5" column="1">
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>&User name:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>userEditRP</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="KLineEdit" name="userEditRP"/>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>&Email:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>mailEdit</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="KLineEdit" name="mailEdit"/>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_6">
|
||||
<property name="text">
|
||||
<string>&Password:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>passwordEditRP</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="KLineEdit" name="passwordEditRP">
|
||||
<property name="passwordMode">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="0">
|
||||
<widget class="QLabel" name="label_7">
|
||||
<property name="text">
|
||||
<string>Repeat password:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>passwordRepeatEdit</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="1">
|
||||
<widget class="KLineEdit" name="passwordRepeatEdit">
|
||||
<property name="passwordMode">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_8">
|
||||
<property name="text">
|
||||
<string>&First name:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>firstNameEdit</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="QLineEdit" name="firstNameEdit"/>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_9">
|
||||
<property name="text">
|
||||
<string>&Last name:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>lastNameEdit</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<widget class="QLineEdit" name="lastNameEdit"/>
|
||||
</item>
|
||||
<item row="7" column="1" colspan="2">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_3">
|
||||
<item>
|
||||
<widget class="QLabel" name="iconLabelRP">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>16</width>
|
||||
<height>16</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignHCenter|Qt::AlignTop</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="infoLabelRP">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="textFormat">
|
||||
<enum>Qt::RichText</enum>
|
||||
</property>
|
||||
<property name="wordWrap">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="8" column="1" colspan="2">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<item>
|
||||
<widget class="QPushButton" name="registerButton">
|
||||
<property name="text">
|
||||
<string>&Register...</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="6" column="0" colspan="2">
|
||||
<spacer name="verticalSpacer_5">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="2" rowspan="6">
|
||||
<spacer name="horizontalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="1" column="0" colspan="2">
|
||||
<widget class="QLabel" name="titleWidgetRegister">
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0" colspan="2">
|
||||
<spacer name="verticalSpacer_8">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>10</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="0" colspan="2">
|
||||
<spacer name="verticalSpacer_9">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>10</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="3" column="0" rowspan="3">
|
||||
<spacer name="horizontalSpacer_5">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>KLineEdit</class>
|
||||
<extends>QLineEdit</extends>
|
||||
<header>klineedit.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<tabstops>
|
||||
<tabstop>tabWidget</tabstop>
|
||||
<tabstop>userEditLP</tabstop>
|
||||
<tabstop>passwordEditLP</tabstop>
|
||||
<tabstop>testLoginButton</tabstop>
|
||||
<tabstop>userEditRP</tabstop>
|
||||
<tabstop>mailEdit</tabstop>
|
||||
<tabstop>firstNameEdit</tabstop>
|
||||
<tabstop>lastNameEdit</tabstop>
|
||||
<tabstop>passwordEditRP</tabstop>
|
||||
<tabstop>passwordRepeatEdit</tabstop>
|
||||
<tabstop>registerButton</tabstop>
|
||||
</tabstops>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
119
attica/kcm/providermanagement.ui
Normal file
|
@ -0,0 +1,119 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>ProviderManagement</class>
|
||||
<widget class="QWidget" name="ProviderManagement">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>585</width>
|
||||
<height>492</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="1" column="0">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QLabel" name="lblProviderList">
|
||||
<property name="text">
|
||||
<string>Choose a provider to manage:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QComboBox" name="providerComboBox">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="sizeAdjustPolicy">
|
||||
<enum>QComboBox::AdjustToContents</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="addProviderButton">
|
||||
<property name="text">
|
||||
<string>Add Provider</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="removeProviderButton">
|
||||
<property name="text">
|
||||
<string>Remove Provider</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<spacer name="verticalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="ProviderConfigWidget" name="providerConfigWidget" native="true">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>1</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>ProviderConfigWidget</class>
|
||||
<extends>QWidget</extends>
|
||||
<header>providerconfigwidget.h</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
10
attica/kdeplugin/CMakeLists.txt
Normal file
|
@ -0,0 +1,10 @@
|
|||
################# KDE PLUGIN for LibAttica #################
|
||||
|
||||
set(attica_kde_SRCS
|
||||
kdeplatformdependent.cpp
|
||||
)
|
||||
|
||||
kde4_add_plugin(attica_kde ${attica_kde_SRCS})
|
||||
target_link_libraries(attica_kde ${KDE4_KIO_LIBS} ${QT_QTMAIN_LIBRARY} ${QT_QTCORE_LIBRARY} ${KDE4_KCMUTILS_LIBS} )
|
||||
install(TARGETS attica_kde EXPORT kdelibsLibraryTargets ${INSTALL_TARGETS_DEFAULT_ARGS})
|
||||
|
2
attica/kdeplugin/Messages.sh
Normal file
|
@ -0,0 +1,2 @@
|
|||
#! /bin/sh
|
||||
$XGETTEXT *.cpp -o $podir/attica_kde.pot
|
279
attica/kdeplugin/kdeplatformdependent.cpp
Normal file
|
@ -0,0 +1,279 @@
|
|||
/*
|
||||
This file is part of KDE.
|
||||
|
||||
Copyright (c) 2009 Eckhart Wörner <ewoerner@kde.org>
|
||||
Copyright (c) 2010 Frederik Gladhorn <gladhorn@kde.org>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) version 3, or any
|
||||
later version accepted by the membership of KDE e.V. (or its
|
||||
successor approved by the membership of KDE e.V.), which shall
|
||||
act as a proxy defined in Section 6 of version 3 of the license.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
*/
|
||||
|
||||
#include "kdeplatformdependent.h"
|
||||
|
||||
#include <QtCore/QDebug>
|
||||
|
||||
#include <KConfigGroup>
|
||||
#include <kcomponentdata.h>
|
||||
#include <KDebug>
|
||||
#include <KWallet/Wallet>
|
||||
#include <kcmultidialog.h>
|
||||
#include <klocale.h>
|
||||
#include <KStringHandler>
|
||||
#include <KMessageBox>
|
||||
|
||||
using namespace Attica;
|
||||
|
||||
KdePlatformDependent::KdePlatformDependent()
|
||||
: m_config(KSharedConfig::openConfig("atticarc")), m_accessManager(0), m_wallet(0)
|
||||
{
|
||||
// when a plain Qt application loads this plugin, it needs a valid KGlobal object
|
||||
if (!KGlobal::hasMainComponent()) {
|
||||
KComponentData componentData("attica_kde");
|
||||
}
|
||||
|
||||
KLocale* locale = KGlobal::locale();
|
||||
if (locale) {
|
||||
locale->insertCatalog("attica_kde");
|
||||
}
|
||||
|
||||
m_accessManager = new KIO::Integration::AccessManager(this);
|
||||
}
|
||||
|
||||
KdePlatformDependent::~KdePlatformDependent()
|
||||
{
|
||||
delete m_wallet;
|
||||
}
|
||||
|
||||
bool KdePlatformDependent::openWallet(bool force)
|
||||
{
|
||||
if (m_wallet) {
|
||||
return true;
|
||||
}
|
||||
|
||||
QString networkWallet = KWallet::Wallet::NetworkWallet();
|
||||
// if not forced, or the folder doesn't exist, don't try to open the wallet
|
||||
if (force || (!KWallet::Wallet::folderDoesNotExist(networkWallet, "Attica"))) {
|
||||
m_wallet = KWallet::Wallet::openWallet(networkWallet, 0);
|
||||
}
|
||||
|
||||
if (m_wallet) {
|
||||
m_wallet->createFolder("Attica");
|
||||
m_wallet->setFolder("Attica");
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
QNetworkReply* KdePlatformDependent::post(const QNetworkRequest& request, const QByteArray& data)
|
||||
{
|
||||
return m_accessManager->post(removeAuthFromRequest(request), data);
|
||||
}
|
||||
|
||||
QNetworkReply* KdePlatformDependent::post(const QNetworkRequest& request, QIODevice* data)
|
||||
{
|
||||
return m_accessManager->post(removeAuthFromRequest(request), data);
|
||||
}
|
||||
|
||||
QNetworkReply* KdePlatformDependent::get(const QNetworkRequest& request)
|
||||
{
|
||||
return m_accessManager->get(removeAuthFromRequest(request));
|
||||
}
|
||||
|
||||
QNetworkRequest KdePlatformDependent::removeAuthFromRequest(const QNetworkRequest& request)
|
||||
{
|
||||
QStringList noauth;
|
||||
noauth << "no-auth-prompt" << "true";
|
||||
QNetworkRequest notConstReq = const_cast<QNetworkRequest&>(request);
|
||||
notConstReq.setAttribute(QNetworkRequest::User, noauth);
|
||||
return notConstReq;
|
||||
}
|
||||
|
||||
bool KdePlatformDependent::saveCredentials(const QUrl& baseUrl, const QString& user, const QString& password)
|
||||
{
|
||||
m_passwords[baseUrl.toString()] = QPair<QString, QString> (user, password);
|
||||
|
||||
if (!m_wallet && !openWallet(true)) {
|
||||
|
||||
if (KMessageBox::warningContinueCancel(0, i18n("Should the password be stored in the configuration file? This is unsafe.")
|
||||
, i18n("Social Desktop Configuration"))
|
||||
== KMessageBox::Cancel) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// use kconfig
|
||||
KConfigGroup group(m_config, baseUrl.toString());
|
||||
group.writeEntry("user", user);
|
||||
group.writeEntry("password", KStringHandler::obscure(password));
|
||||
kDebug() << "Saved credentials in KConfig";
|
||||
return true;
|
||||
}
|
||||
|
||||
// Remove the entry when user name is empty
|
||||
if (user.isEmpty()) {
|
||||
m_wallet->removeEntry(baseUrl.toString());
|
||||
return true;
|
||||
}
|
||||
|
||||
QMap<QString, QString> entries;
|
||||
entries.insert("user", user);
|
||||
entries.insert("password", password);
|
||||
kDebug() << "Saved credentials in KWallet";
|
||||
|
||||
return !m_wallet->writeMap(baseUrl.toString(), entries);
|
||||
}
|
||||
|
||||
|
||||
bool KdePlatformDependent::hasCredentials(const QUrl& baseUrl) const
|
||||
{
|
||||
if (m_passwords.contains(baseUrl.toString())) {
|
||||
return true;
|
||||
}
|
||||
|
||||
QString networkWallet = KWallet::Wallet::NetworkWallet();
|
||||
if (!KWallet::Wallet::folderDoesNotExist(networkWallet, "Attica") &&
|
||||
!KWallet::Wallet::keyDoesNotExist(networkWallet, "Attica", baseUrl.toString())) {
|
||||
kDebug() << "Found credentials in KWallet";
|
||||
return true;
|
||||
}
|
||||
|
||||
KConfigGroup group(m_config, baseUrl.toString());
|
||||
QString user;
|
||||
user = group.readEntry("user", QString());
|
||||
if (!user.isEmpty()) {
|
||||
kDebug() << "Found credentials in KConfig";
|
||||
return true;
|
||||
}
|
||||
|
||||
kDebug() << "No credentials found";
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
bool KdePlatformDependent::loadCredentials(const QUrl& baseUrl, QString& user, QString& password)
|
||||
{
|
||||
QString networkWallet = KWallet::Wallet::NetworkWallet();
|
||||
if (KWallet::Wallet::folderDoesNotExist(networkWallet, "Attica") &&
|
||||
KWallet::Wallet::keyDoesNotExist(networkWallet, "Attica", baseUrl.toString())) {
|
||||
// use KConfig
|
||||
KConfigGroup group(m_config, baseUrl.toString());
|
||||
user = group.readEntry("user", QString());
|
||||
password = KStringHandler::obscure(group.readEntry("password", QString()));
|
||||
if (!user.isEmpty()) {
|
||||
kDebug() << "Successfully loaded credentials from kconfig";
|
||||
m_passwords[baseUrl.toString()] = QPair<QString, QString> (user, password);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!m_wallet && !openWallet(true)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
QMap<QString, QString> entries;
|
||||
if (m_wallet->readMap(baseUrl.toString(), entries) != 0) {
|
||||
return false;
|
||||
}
|
||||
user = entries.value("user");
|
||||
password = entries.value("password");
|
||||
kDebug() << "Successfully loaded credentials.";
|
||||
|
||||
m_passwords[baseUrl.toString()] = QPair<QString, QString> (user, password);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool Attica::KdePlatformDependent::askForCredentials(const QUrl& baseUrl, QString& user, QString& password)
|
||||
{
|
||||
Q_UNUSED(baseUrl);
|
||||
Q_UNUSED(user);
|
||||
Q_UNUSED(password);
|
||||
kDebug() << "Attempting to start KCM for credentials";
|
||||
KCMultiDialog KCM;
|
||||
KCM.setWindowTitle( i18n( "Open Collaboration Providers" ) );
|
||||
KCM.addModule( "kcm_attica" );
|
||||
|
||||
KCM.exec();
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
QList<QUrl> KdePlatformDependent::getDefaultProviderFiles() const
|
||||
{
|
||||
KConfigGroup group(m_config, "General");
|
||||
QStringList pathStrings = group.readPathEntry("providerFiles", QStringList("http://download.kde.org/ocs/providers.xml"));
|
||||
QList<QUrl> paths;
|
||||
foreach (const QString& pathString, pathStrings) {
|
||||
paths.append(QUrl(pathString));
|
||||
}
|
||||
qDebug() << "Loaded paths from config:" << paths;
|
||||
return paths;
|
||||
}
|
||||
|
||||
void KdePlatformDependent::addDefaultProviderFile(const QUrl& url)
|
||||
{
|
||||
KConfigGroup group(m_config, "General");
|
||||
QStringList pathStrings = group.readPathEntry("providerFiles", QStringList("http://download.kde.org/ocs/providers.xml"));
|
||||
QString urlString = url.toString();
|
||||
if(!pathStrings.contains(urlString)) {
|
||||
pathStrings.append(urlString);
|
||||
group.writeEntry("providerFiles", pathStrings);
|
||||
group.sync();
|
||||
kDebug() << "wrote providers: " << pathStrings;
|
||||
}
|
||||
}
|
||||
|
||||
void KdePlatformDependent::removeDefaultProviderFile(const QUrl& url)
|
||||
{
|
||||
KConfigGroup group(m_config, "General");
|
||||
QStringList pathStrings = group.readPathEntry("providerFiles", QStringList("http://download.kde.org/ocs/providers.xml"));
|
||||
pathStrings.removeAll(url.toString());
|
||||
group.writeEntry("providerFiles", pathStrings);
|
||||
}
|
||||
|
||||
void KdePlatformDependent::enableProvider(const QUrl& baseUrl, bool enabled) const
|
||||
{
|
||||
KConfigGroup group(m_config, "General");
|
||||
QStringList pathStrings = group.readPathEntry("disabledProviders", QStringList());
|
||||
if (enabled) {
|
||||
pathStrings.removeAll(baseUrl.toString());
|
||||
} else {
|
||||
if (!pathStrings.contains(baseUrl.toString())) {
|
||||
pathStrings.append(baseUrl.toString());
|
||||
}
|
||||
}
|
||||
group.writeEntry("disabledProviders", pathStrings);
|
||||
group.sync();
|
||||
}
|
||||
|
||||
bool KdePlatformDependent::isEnabled(const QUrl& baseUrl) const
|
||||
{
|
||||
KConfigGroup group(m_config, "General");
|
||||
return !group.readPathEntry("disabledProviders", QStringList()).contains(baseUrl.toString());
|
||||
}
|
||||
|
||||
QNetworkAccessManager* Attica::KdePlatformDependent::nam()
|
||||
{
|
||||
return m_accessManager;
|
||||
}
|
||||
|
||||
|
||||
Q_EXPORT_PLUGIN2(attica_kde, Attica::KdePlatformDependent)
|
||||
|
||||
|
||||
#include "kdeplatformdependent.moc"
|
79
attica/kdeplugin/kdeplatformdependent.h
Normal file
|
@ -0,0 +1,79 @@
|
|||
/*
|
||||
This file is part of KDE.
|
||||
|
||||
Copyright (c) 2009 Eckhart Wörner <ewoerner@kde.org>
|
||||
Copyright (c) 2010 Frederik Gladhorn <gladhorn@kde.org>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) version 3, or any
|
||||
later version accepted by the membership of KDE e.V. (or its
|
||||
successor approved by the membership of KDE e.V.), which shall
|
||||
act as a proxy defined in Section 6 of version 3 of the license.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
*/
|
||||
|
||||
#ifndef ATTICA_KDEPLATFORMDEPENDENT_H
|
||||
#define ATTICA_KDEPLATFORMDEPENDENT_H
|
||||
|
||||
#include <attica/platformdependent.h>
|
||||
|
||||
#include <QtCore/QHash>
|
||||
|
||||
#include <KSharedConfig>
|
||||
#include <KIO/AccessManager>
|
||||
|
||||
|
||||
namespace KWallet {
|
||||
class Wallet;
|
||||
}
|
||||
|
||||
namespace Attica {
|
||||
|
||||
class KdePlatformDependent : public QObject, public Attica::PlatformDependent
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_INTERFACES(Attica::PlatformDependent)
|
||||
|
||||
public:
|
||||
KdePlatformDependent();
|
||||
virtual ~KdePlatformDependent();
|
||||
virtual QList<QUrl> getDefaultProviderFiles() const;
|
||||
virtual void addDefaultProviderFile(const QUrl& url);
|
||||
virtual void removeDefaultProviderFile(const QUrl& url);
|
||||
virtual void enableProvider(const QUrl& baseUrl, bool enabled) const;
|
||||
virtual bool isEnabled(const QUrl& baseUrl) const;
|
||||
|
||||
virtual QNetworkReply* post(const QNetworkRequest& request, const QByteArray& data);
|
||||
virtual QNetworkReply* post(const QNetworkRequest& request, QIODevice* data);
|
||||
virtual QNetworkReply* get(const QNetworkRequest& request);
|
||||
virtual bool saveCredentials(const QUrl& baseUrl, const QString& user, const QString& password);
|
||||
virtual bool hasCredentials(const QUrl& baseUrl) const;
|
||||
virtual bool loadCredentials(const QUrl& baseUrl, QString& user, QString& password);
|
||||
virtual bool askForCredentials(const QUrl& baseUrl, QString& user, QString& password);
|
||||
virtual QNetworkAccessManager* nam();
|
||||
|
||||
private:
|
||||
bool openWallet(bool force);
|
||||
QNetworkRequest removeAuthFromRequest(const QNetworkRequest& request);
|
||||
|
||||
KSharedConfigPtr m_config;
|
||||
//QNetworkAccessManager m_qnam;
|
||||
KIO::Integration::AccessManager* m_accessManager;
|
||||
KWallet::Wallet* m_wallet;
|
||||
QHash<QString, QPair <QString, QString> > m_passwords;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
||||
#endif
|
|
@ -2,7 +2,9 @@
|
|||
|
||||
# don't glob for the files, since we don't want to
|
||||
# install e.g. FindLibKNotification-1.cmake
|
||||
set(cmakeFiles FindDBus.cmake
|
||||
set(cmakeFiles FindCLucene.cmake
|
||||
FindSLP.cmake
|
||||
FindDBus.cmake
|
||||
FindLibXKlavier.cmake
|
||||
FindOpenGLES.cmake
|
||||
FindPAM.cmake
|
||||
|
|
97
cmake/modules/FindCLucene.cmake
Normal file
|
@ -0,0 +1,97 @@
|
|||
#
|
||||
# This module looks for clucene (http://clucene.sf.net) support
|
||||
# It will define the following values
|
||||
#
|
||||
# CLUCENE_INCLUDE_DIR = where CLucene/StdHeader.h can be found
|
||||
# CLUCENE_LIBRARY_DIR = where CLucene/clucene-config.h can be found
|
||||
# CLUCENE_LIBRARY = the library to link against CLucene
|
||||
# CLUCENE_VERSION = The CLucene version string
|
||||
# CLucene_FOUND = set to 1 if clucene is found
|
||||
#
|
||||
|
||||
INCLUDE(CheckSymbolExists)
|
||||
INCLUDE(FindLibraryWithDebug)
|
||||
|
||||
if(NOT CLUCENE_MIN_VERSION)
|
||||
set(CLUCENE_MIN_VERSION "0.9.19")
|
||||
endif(NOT CLUCENE_MIN_VERSION)
|
||||
|
||||
IF(EXISTS ${PROJECT_CMAKE}/CLuceneConfig.cmake)
|
||||
INCLUDE(${PROJECT_CMAKE}/CLuceneConfig.cmake)
|
||||
ENDIF(EXISTS ${PROJECT_CMAKE}/CLuceneConfig.cmake)
|
||||
|
||||
SET(TRIAL_LIBRARY_PATHS
|
||||
$ENV{CLUCENE_HOME}/lib${LIB_SUFFIX}
|
||||
${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}
|
||||
/usr/local/lib${LIB_SUFFIX}
|
||||
/usr/lib${LIB_SUFFIX}
|
||||
/sw/lib${LIB_SUFFIX}
|
||||
/usr/pkg/lib${LIB_SUFFIX}
|
||||
)
|
||||
SET(TRIAL_INCLUDE_PATHS
|
||||
$ENV{CLUCENE_HOME}/include
|
||||
${CMAKE_INSTALL_PREFIX}/include
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/sw/include
|
||||
/usr/pkg/include
|
||||
)
|
||||
FIND_LIBRARY_WITH_DEBUG(CLUCENE_LIBRARY
|
||||
WIN32_DEBUG_POSTFIX d
|
||||
NAMES clucene clucene-core
|
||||
PATHS ${TRIAL_LIBRARY_PATHS})
|
||||
IF (CLUCENE_LIBRARY)
|
||||
MESSAGE(STATUS "Found CLucene library: ${CLUCENE_LIBRARY}")
|
||||
ENDIF (CLUCENE_LIBRARY)
|
||||
FIND_PATH(CLUCENE_INCLUDE_DIR
|
||||
NAMES CLucene.h
|
||||
PATHS ${TRIAL_INCLUDE_PATHS})
|
||||
|
||||
IF (CLUCENE_INCLUDE_DIR)
|
||||
MESSAGE(STATUS "Found CLucene include dir: ${CLUCENE_INCLUDE_DIR}")
|
||||
ENDIF (CLUCENE_INCLUDE_DIR)
|
||||
|
||||
IF(WIN32)
|
||||
SET(TRIAL_LIBRARY_PATHS ${CLUCENE_INCLUDE_DIR})
|
||||
ENDIF(WIN32)
|
||||
|
||||
SET(CLUCENE_GOOD_VERSION TRUE)
|
||||
|
||||
FIND_PATH(CLUCENE_LIBRARY_DIR
|
||||
NAMES CLucene/clucene-config.h PATHS ${TRIAL_LIBRARY_PATHS} ${TRIAL_INCLUDE_PATHS} NO_DEFAULT_PATH)
|
||||
IF (CLUCENE_LIBRARY_DIR)
|
||||
MESSAGE(STATUS "Found CLucene library dir: ${CLUCENE_LIBRARY_DIR}")
|
||||
FILE(READ ${CLUCENE_LIBRARY_DIR}/CLucene/clucene-config.h CLCONTENT)
|
||||
STRING(REGEX MATCH "_CL_VERSION +\".*\"" CLMATCH ${CLCONTENT})
|
||||
IF (CLMATCH)
|
||||
STRING(REGEX REPLACE "_CL_VERSION +\"(.*)\"" "\\1" CLUCENE_VERSION ${CLMATCH})
|
||||
IF (CLUCENE_VERSION STRLESS "${CLUCENE_MIN_VERSION}")
|
||||
MESSAGE(ERROR " CLucene version ${CLUCENE_VERSION} is less than the required minimum ${CLUCENE_MIN_VERSION}")
|
||||
SET(CLUCENE_GOOD_VERSION FALSE)
|
||||
ENDIF (CLUCENE_VERSION STRLESS "${CLUCENE_MIN_VERSION}")
|
||||
IF (CLUCENE_VERSION STREQUAL "0.9.17")
|
||||
MESSAGE(ERROR "CLucene version 0.9.17 is not supported.")
|
||||
SET(CLUCENE_GOOD_VERSION FALSE)
|
||||
ENDIF (CLUCENE_VERSION STREQUAL "0.9.17")
|
||||
ENDIF (CLMATCH)
|
||||
ENDIF (CLUCENE_LIBRARY_DIR)
|
||||
|
||||
IF(CLUCENE_INCLUDE_DIR AND CLUCENE_LIBRARY AND CLUCENE_LIBRARY_DIR AND CLUCENE_GOOD_VERSION)
|
||||
SET(CLucene_FOUND TRUE)
|
||||
ENDIF(CLUCENE_INCLUDE_DIR AND CLUCENE_LIBRARY AND CLUCENE_LIBRARY_DIR AND CLUCENE_GOOD_VERSION)
|
||||
|
||||
IF(CLucene_FOUND)
|
||||
IF(NOT CLucene_FIND_QUIETLY)
|
||||
MESSAGE(STATUS "Found CLucene: ${CLUCENE_LIBRARY} version ${CLUCENE_VERSION}")
|
||||
ENDIF(NOT CLucene_FIND_QUIETLY)
|
||||
ELSE(CLucene_FOUND)
|
||||
IF(CLucene_FIND_REQUIRED)
|
||||
MESSAGE(FATAL_ERROR "Could not find CLucene.")
|
||||
ENDIF(CLucene_FIND_REQUIRED)
|
||||
ENDIF(CLucene_FOUND)
|
||||
|
||||
MARK_AS_ADVANCED(
|
||||
CLUCENE_INCLUDE_DIR
|
||||
CLUCENE_LIBRARY_DIR
|
||||
CLUCENE_LIBRARY
|
||||
)
|
81
cmake/modules/FindLibGcrypt.cmake
Normal file
|
@ -0,0 +1,81 @@
|
|||
#.rst
|
||||
# FindLibGcrypt
|
||||
# -------------
|
||||
#
|
||||
# Finds the Libgcrypt library.
|
||||
#
|
||||
# This will define the following variables:
|
||||
#
|
||||
# ``LIBGCRYPT_FOUND``
|
||||
# True if the requested version of gcrypt was found
|
||||
# ``LIBGCRYPT_VERSION``
|
||||
# The version of gcrypt that was found
|
||||
# ``LIBGCRYPT_INCLUDE_DIRS``
|
||||
# The gcrypt include directories
|
||||
# ``LIBGCRYPT_LIBRARIES``
|
||||
# The linker libraries needed to use the gcrypt library
|
||||
|
||||
# Copyright 2014 Nicolás Alvarez <nicolas.alvarez@gmail.com>
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions
|
||||
# are met:
|
||||
#
|
||||
# 1. Redistributions of source code must retain the copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
# 2. Redistributions in binary form must reproduce the copyright
|
||||
# notice, this list of conditions and the following disclaimer in the
|
||||
# documentation and/or other materials provided with the distribution.
|
||||
# 3. The name of the author may not be used to endorse or promote products
|
||||
# derived from this software without specific prior written permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
find_program(LIBGCRYPTCONFIG_SCRIPT NAMES libgcrypt-config)
|
||||
if(LIBGCRYPTCONFIG_SCRIPT)
|
||||
execute_process(COMMAND "${LIBGCRYPTCONFIG_SCRIPT}" --prefix OUTPUT_VARIABLE PREFIX)
|
||||
set(LIBGCRYPT_LIB_HINT "${PREFIX}/lib")
|
||||
set(LIBGCRYPT_INCLUDE_HINT "${PREFIX}/include")
|
||||
endif()
|
||||
|
||||
find_library(LIBGCRYPT_LIBRARY
|
||||
NAMES gcrypt
|
||||
HINTS ${LIBGCRYPT_LIB_HINT}
|
||||
)
|
||||
find_path(LIBGCRYPT_INCLUDE_DIR
|
||||
NAMES gcrypt.h
|
||||
HINTS ${LIBGCRYPT_INCLUDE_HINT}
|
||||
)
|
||||
|
||||
if(LIBGCRYPT_INCLUDE_DIR)
|
||||
file(STRINGS ${LIBGCRYPT_INCLUDE_DIR}/gcrypt.h GCRYPT_H REGEX "^#define GCRYPT_VERSION ")
|
||||
string(REGEX REPLACE "^#define GCRYPT_VERSION \"(.*)\".*$" "\\1" LIBGCRYPT_VERSION "${GCRYPT_H}")
|
||||
endif()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
|
||||
find_package_handle_standard_args(LibGcrypt
|
||||
REQUIRED_VARS LIBGCRYPT_LIBRARY LIBGCRYPT_INCLUDE_DIR
|
||||
VERSION_VAR LIBGCRYPT_VERSION
|
||||
)
|
||||
if(LIBGCRYPT_FOUND)
|
||||
set(LIBGCRYPT_LIBRARIES ${LIBGCRYPT_LIBRARY})
|
||||
set(LIBGCRYPT_INCLUDE_DIRS ${LIBGCRYPT_INCLUDE_DIR})
|
||||
endif()
|
||||
|
||||
mark_as_advanced(LIBGCRYPT_LIBRARY LIBGCRYPT_INCLUDE_DIR)
|
||||
|
||||
include(FeatureSummary)
|
||||
set_package_properties(LibGcrypt PROPERTIES
|
||||
DESCRIPTION "A general purpose cryptographic library based on the code from GnuPG."
|
||||
URL "http://www.gnu.org/software/libgcrypt/"
|
||||
)
|
80
cmake/modules/FindLibSSH.cmake
Normal file
|
@ -0,0 +1,80 @@
|
|||
# - Try to find LibSSH
|
||||
# Once done this will define
|
||||
#
|
||||
# LIBSSH_FOUND - system has LibSSH
|
||||
# LIBSSH_INCLUDE_DIRS - the LibSSH include directory
|
||||
# LIBSSH_LIBRARIES - Link these to use LibSSH
|
||||
# LIBSSH_DEFINITIONS - Compiler switches required for using LibSSH
|
||||
#
|
||||
# Copyright (c) 2009-2014 Andreas Schneider <asn@cryptomilk.org>
|
||||
#
|
||||
# Redistribution and use is allowed according to the terms of the New
|
||||
# BSD license.
|
||||
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
#
|
||||
|
||||
find_path(LIBSSH_INCLUDE_DIR
|
||||
NAMES
|
||||
libssh/libssh.h
|
||||
PATHS
|
||||
/usr/include
|
||||
/usr/local/include
|
||||
/opt/local/include
|
||||
/sw/include
|
||||
${CMAKE_INCLUDE_PATH}
|
||||
${CMAKE_INSTALL_PREFIX}/include
|
||||
)
|
||||
|
||||
find_library(SSH_LIBRARY
|
||||
NAMES
|
||||
ssh
|
||||
libssh
|
||||
PATHS
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/opt/local/lib
|
||||
/sw/lib
|
||||
${CMAKE_LIBRARY_PATH}
|
||||
${CMAKE_INSTALL_PREFIX}/lib
|
||||
)
|
||||
|
||||
set(LIBSSH_LIBRARIES
|
||||
${LIBSSH_LIBRARIES}
|
||||
${SSH_LIBRARY}
|
||||
)
|
||||
|
||||
if (LIBSSH_INCLUDE_DIR AND LibSSH_FIND_VERSION)
|
||||
file(STRINGS ${LIBSSH_INCLUDE_DIR}/libssh/libssh.h LIBSSH_VERSION_MAJOR
|
||||
REGEX "#define[ ]+LIBSSH_VERSION_MAJOR[ ]+[0-9]+")
|
||||
|
||||
# Older versions of libssh like libssh-0.2 have LIBSSH_VERSION but not LIBSSH_VERSION_MAJOR
|
||||
if (LIBSSH_VERSION_MAJOR)
|
||||
string(REGEX MATCH "[0-9]+" LIBSSH_VERSION_MAJOR ${LIBSSH_VERSION_MAJOR})
|
||||
file(STRINGS ${LIBSSH_INCLUDE_DIR}/libssh/libssh.h LIBSSH_VERSION_MINOR
|
||||
REGEX "#define[ ]+LIBSSH_VERSION_MINOR[ ]+[0-9]+")
|
||||
string(REGEX MATCH "[0-9]+" LIBSSH_VERSION_MINOR ${LIBSSH_VERSION_MINOR})
|
||||
file(STRINGS ${LIBSSH_INCLUDE_DIR}/libssh/libssh.h LIBSSH_VERSION_PATCH
|
||||
REGEX "#define[ ]+LIBSSH_VERSION_MICRO[ ]+[0-9]+")
|
||||
string(REGEX MATCH "[0-9]+" LIBSSH_VERSION_PATCH ${LIBSSH_VERSION_PATCH})
|
||||
|
||||
set(LIBSSH_VERSION ${LIBSSH_VERSION_MAJOR}.${LIBSSH_VERSION_MINOR}.${LIBSSH_VERSION_PATCH})
|
||||
|
||||
else (LIBSSH_VERSION_MAJOR)
|
||||
message(STATUS "LIBSSH_VERSION_MAJOR not found in ${LIBSSH_INCLUDE_DIR}/libssh/libssh.h, assuming libssh is too old")
|
||||
set(LIBSSH_FOUND FALSE)
|
||||
endif (LIBSSH_VERSION_MAJOR)
|
||||
endif (LIBSSH_INCLUDE_DIR AND LibSSH_FIND_VERSION)
|
||||
|
||||
# If the version is too old, but libs and includes are set,
|
||||
# find_package_handle_standard_args will set LIBSSH_FOUND to TRUE again,
|
||||
# so we need this if() here.
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(LibSSH
|
||||
REQUIRED_VARS
|
||||
LIBSSH_LIBRARIES
|
||||
LIBSSH_INCLUDE_DIR
|
||||
VERSION_VAR
|
||||
LIBSSH_VERSION)
|
||||
|
||||
# show the LIBSSH_INCLUDE_DIRS and LIBSSH_LIBRARIES variables only in the advanced view
|
||||
mark_as_advanced(LIBSSH_INCLUDE_DIR LIBSSH_LIBRARIES)
|
70
cmake/modules/FindQNtrack.cmake
Normal file
|
@ -0,0 +1,70 @@
|
|||
# - Try to find the QNtrack library
|
||||
# Once done this will define
|
||||
#
|
||||
# QNTRACK_FOUND - system has the CK Connector
|
||||
# QNTRACK_INCLUDE_DIR - the CK Connector include directory
|
||||
# QNTRACK_LIBRARIES - the libraries needed to use CK Connector
|
||||
|
||||
# Copyright (C) 2010 Sune Vuorela <sune@debian.org>
|
||||
# modeled after FindCkConnector.cmake:
|
||||
# Copyright (c) 2008, Kevin Kofler, <kevin.kofler@chello.at>
|
||||
# modeled after FindLibArt.cmake:
|
||||
# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
|
||||
#
|
||||
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
|
||||
|
||||
if(QNTRACK_INCLUDE_DIR AND QNTRACK_LIBRARIES)
|
||||
|
||||
# in cache already
|
||||
SET(QNTRACK_FOUND TRUE)
|
||||
|
||||
else (QNTRACK_INCLUDE_DIR AND QNTRACK_LIBRARIES)
|
||||
|
||||
IF (NOT WIN32)
|
||||
FIND_PACKAGE(PkgConfig)
|
||||
IF (PKG_CONFIG_FOUND)
|
||||
# use pkg-config to get the directories and then use these values
|
||||
# in the FIND_PATH() and FIND_LIBRARY() calls
|
||||
pkg_check_modules(_QNTRACK_PC QUIET libntrack-qt4 )
|
||||
ENDIF (PKG_CONFIG_FOUND)
|
||||
ENDIF (NOT WIN32)
|
||||
|
||||
FIND_PATH(QNTRACK_QT_INCLUDE_DIR QNtrack.h
|
||||
${_QNTRACK_PC_INCLUDE_DIRS}
|
||||
)
|
||||
#Hide from cmake user interfaces
|
||||
SET(QNTRACK_QT_INCLUDE_DIR ${QNTRACK_QT_INCLUDE_DIR} CACHE INTERNAL "" FORCE)
|
||||
|
||||
FIND_PATH(NTRACK_INCLUDE_DIR ntrackmonitor.h
|
||||
${_QNTRACK_PC_INCLUDE_DIRS}
|
||||
)
|
||||
#Hide from cmake user interfaces
|
||||
SET(NTRACK_INCLUDE_DIR ${NTRACK_INCLUDE_DIR} CACHE INTERNAL "" FORCE)
|
||||
|
||||
FIND_LIBRARY(QNTRACK_LIBRARIES NAMES ntrack-qt4
|
||||
PATHS
|
||||
${_QNTRACK_PC_LIBDIR}
|
||||
)
|
||||
|
||||
|
||||
if (QNTRACK_QT_INCLUDE_DIR AND NTRACK_INCLUDE_DIR AND QNTRACK_LIBRARIES)
|
||||
set(QNTRACK_FOUND TRUE)
|
||||
set(QNTRACK_INCLUDE_DIR ${QNTRACK_QT_INCLUDE_DIR} ${NTRACK_INCLUDE_DIR})
|
||||
endif (QNTRACK_QT_INCLUDE_DIR AND NTRACK_INCLUDE_DIR AND QNTRACK_LIBRARIES)
|
||||
|
||||
|
||||
if (QNTRACK_FOUND)
|
||||
if (NOT QNtrack_FIND_QUIETLY)
|
||||
message(STATUS "Found QNtrack: ${QNTRACK_LIBRARIES}")
|
||||
endif (NOT QNtrack_FIND_QUIETLY)
|
||||
else (QNTRACK_FOUND)
|
||||
if (QNtrack_FIND_REQUIRED)
|
||||
message(FATAL_ERROR "Could NOT find QNtrack")
|
||||
endif (QNtrack_FIND_REQUIRED)
|
||||
endif (QNTRACK_FOUND)
|
||||
|
||||
MARK_AS_ADVANCED(QNTRACK_INCLUDE_DIR QNTRACK_LIBRARIES)
|
||||
|
||||
endif (QNTRACK_INCLUDE_DIR AND QNTRACK_LIBRARIES)
|
22
cmake/modules/FindSLP.cmake
Normal file
|
@ -0,0 +1,22 @@
|
|||
# cmake macro to test SLP LIB
|
||||
|
||||
# Copyright (c) 2006, 2007 Laurent Montel, <montel@kde.org>
|
||||
#
|
||||
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
|
||||
|
||||
if (SLP_INCLUDE_DIR AND SLP_LIBRARIES)
|
||||
# Already in cache, be silent
|
||||
set(SLP_FIND_QUIETLY TRUE)
|
||||
endif (SLP_INCLUDE_DIR AND SLP_LIBRARIES)
|
||||
|
||||
|
||||
FIND_PATH(SLP_INCLUDE_DIR slp.h)
|
||||
|
||||
FIND_LIBRARY(SLP_LIBRARIES NAMES slp libslp)
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(SLP DEFAULT_MSG SLP_LIBRARIES SLP_INCLUDE_DIR )
|
||||
|
||||
MARK_AS_ADVANCED(SLP_INCLUDE_DIR SLP_LIBRARIES)
|
9
cmake/modules/MacroDBusAddActivationService.cmake
Normal file
|
@ -0,0 +1,9 @@
|
|||
macro(dbus_add_activation_service _sources)
|
||||
foreach (_i ${_sources})
|
||||
get_filename_component(_service_file ${_i} ABSOLUTE)
|
||||
string(REGEX REPLACE "\\.service.*$" ".service" _output_file ${_i})
|
||||
set(_target ${CMAKE_CURRENT_BINARY_DIR}/${_output_file})
|
||||
configure_file(${_service_file} ${_target})
|
||||
install(FILES ${_target} DESTINATION ${DBUS_SERVICES_INSTALL_DIR} )
|
||||
endforeach (_i ${ARGN})
|
||||
endmacro(dbus_add_activation_service _sources)
|
47
config-runtime.h.cmake
Normal file
|
@ -0,0 +1,47 @@
|
|||
/* config-runtime.h. Generated by cmake from config-runtime.h.cmake */
|
||||
|
||||
/* media HAL backend compilation */
|
||||
#undef COMPILE_HALBACKEND
|
||||
|
||||
/* Define if you have long long as datatype */
|
||||
#cmakedefine HAVE_LONG_LONG 1
|
||||
|
||||
/* Define to 1 if you have the `nice' function. */
|
||||
#cmakedefine HAVE_NICE 1
|
||||
|
||||
/* Define to 1 if you have the `sigaction' function. */
|
||||
#cmakedefine HAVE_SIGACTION 1
|
||||
|
||||
/* Define to 1 if you have the `sigset' function. */
|
||||
#cmakedefine HAVE_SIGSET 1
|
||||
|
||||
/* Define to 1 if you have the <string.h> header file. */
|
||||
#cmakedefine HAVE_STRING_H 1
|
||||
|
||||
/* Define to 1 if you have the <sys/select.h> header file. */
|
||||
#cmakedefine HAVE_SYS_SELECT_H 1
|
||||
|
||||
/* Define to 1 if you have the <sys/socket.h> header file. */
|
||||
#cmakedefine HAVE_SYS_SOCKET_H 1
|
||||
|
||||
/* Define to 1 if you have the <sys/time.h> header file. */
|
||||
#cmakedefine HAVE_SYS_TIME_H 1
|
||||
|
||||
/* Define to 1 if you have the <sys/types.h> header file. */
|
||||
#cmakedefine HAVE_SYS_TYPES_H 1
|
||||
|
||||
/* Define to 1 if you have the <sys/wait.h> header file. */
|
||||
#cmakedefine HAVE_SYS_WAIT_H 1
|
||||
|
||||
/* Define to 1 if you have the <unistd.h> header file. */
|
||||
#cmakedefine HAVE_UNISTD_H 1
|
||||
|
||||
/* Number of bits in a file offset, on hosts where this is settable. */
|
||||
#define _FILE_OFFSET_BITS 64
|
||||
|
||||
/*
|
||||
* On HP-UX, the declaration of vsnprintf() is needed every time !
|
||||
*/
|
||||
|
||||
/* type to use in place of socklen_t if not defined */
|
||||
#define kde_socklen_t socklen_t
|
|
@ -7,6 +7,22 @@ add_subdirectory(plasma-desktop)
|
|||
add_subdirectory(kcontrol)
|
||||
add_subdirectory(systemsettings)
|
||||
add_subdirectory(kinfocenter)
|
||||
|
||||
if(POLKITQT_FOUND)
|
||||
add_subdirectory(PolicyKit-kde)
|
||||
endif(POLKITQT_FOUND)
|
||||
|
||||
if ( UNIX )
|
||||
add_subdirectory(kdesu)
|
||||
endif ( UNIX )
|
||||
|
||||
add_subdirectory(kcontrol)
|
||||
add_subdirectory(glossary)
|
||||
add_subdirectory(kdebugdialog)
|
||||
add_subdirectory(khelpcenter)
|
||||
add_subdirectory(kioslave)
|
||||
add_subdirectory(knetattach)
|
||||
add_subdirectory(onlinehelp)
|
||||
add_subdirectory(documentationnotfound)
|
||||
add_subdirectory(fundamentals)
|
||||
add_subdirectory(plasmapkg)
|
25
doc/api/Doxyfile.local
Normal file
|
@ -0,0 +1,25 @@
|
|||
## Warn about everything, just like in kdelibs.
|
||||
WARN_IF_UNDOCUMENTED = YES
|
||||
## Be strict, we want all parameters
|
||||
## to be documented as well.
|
||||
WARN_NO_PARAMDOC = YES
|
||||
|
||||
## Sort methods to make 'same as above' easier.
|
||||
SORT_MEMBER_DOCS = YES
|
||||
|
||||
## Remove unsightly export macros
|
||||
PREDEFINED = Q_EXPORT="" \
|
||||
Q_GUI_EXPORT="" \
|
||||
KWIN_EXPORT="" \
|
||||
KFONTINST_EXPORT="" \
|
||||
PLASMA_EXPORT="" \
|
||||
LIBDOLPHINPRIVATE_EXPORT="" \
|
||||
KONQSIDEBAR_EXPORT="" \
|
||||
KONQSIDEBARPLUGIN_EXPORT="" \
|
||||
SOLIDCONTROL_EXPORT="" \
|
||||
SOLIDCONTROLIFACES_EXPORT="" \
|
||||
KNEPREGCORE_EXPORT= "" \
|
||||
KDEUI_EXPORT="" \
|
||||
KDE_EXPORT="" \
|
||||
Q_SLOTS="slots" \
|
||||
Q_SIGNALS="signals"
|
2
doc/documentationnotfound/CMakeLists.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
########### install files ###############
|
||||
kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR khelpcenter/documentationnotfound)
|
66
doc/documentationnotfound/index.docbook
Normal file
|
@ -0,0 +1,66 @@
|
|||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE article PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
|
||||
"dtd/kdex.dtd" [
|
||||
<!ENTITY % addindex "IGNORE">
|
||||
<!ENTITY % English "INCLUDE">
|
||||
]>
|
||||
<article id="documentationnotfound" lang="&language;">
|
||||
<title>Documentation not Found</title>
|
||||
<articleinfo>
|
||||
<authorgroup>
|
||||
<author><firstname>Jack</firstname>
|
||||
<surname>Ostroff</surname>
|
||||
<affiliation>
|
||||
<address><email>ostroffjh@users.sourceforge.net</email></address>
|
||||
</affiliation>
|
||||
</author>
|
||||
<!-- TRANS:ROLES_OF_TRANSLATORS -->
|
||||
</authorgroup>
|
||||
|
||||
<date>2010-09-21</date>
|
||||
<releaseinfo>&kde; 4.5</releaseinfo>
|
||||
|
||||
</articleinfo>
|
||||
|
||||
<para>The requested documentation was not found on your computer.
|
||||
Normally, &kde; looks for application handbooks in a location that depends
|
||||
on how &kde; was installed on your computer. There are a number of
|
||||
possible reasons why it could not find the documentation you
|
||||
requested. The document might not exist, or it may not have been
|
||||
installed along with the application.</para>
|
||||
|
||||
<para>How to solve this issue:</para>
|
||||
|
||||
<para>Start by searching the <ulink url="http://docs.kde.org/">KDE
|
||||
Documentation site</ulink> for the requested documentation. If you find
|
||||
the documentation on that site, your distribution might ship a separate
|
||||
package for documentation (⪚ called kdepim-doc for all applications
|
||||
from the kdepim module, like &kmail;, &kontact;, &etc;). Please use the
|
||||
package manager of your distribution to find and install the missing
|
||||
documentation.</para>
|
||||
|
||||
<para>If you use a source based distribution, such as Gentoo, be sure that
|
||||
there are not any configuration settings (USE flags in Gentoo) that
|
||||
might have disabled the installation of the documentation.
|
||||
</para>
|
||||
|
||||
<para>If you have done that, but still get this page displayed instead of the
|
||||
application handbook, you probably found a bug in the &kde; help
|
||||
system. In this case, please report this on the <ulink
|
||||
url="http://bugs.kde.org/">KDE Bug Tracker</ulink>.
|
||||
</para>
|
||||
|
||||
<para>If you do not find any documentation on the <ulink
|
||||
url="http://docs.kde.org/">KDE Documentation site</ulink>, the
|
||||
application may not have offline documentation. Please report this on
|
||||
the <ulink url="http://bugs.kde.org/">KDE Bug Tracker</ulink>.
|
||||
</para>
|
||||
|
||||
<para>In case the application does not have offline documentation, you should
|
||||
use the online resources <ulink
|
||||
url="http://userbase.kde.org/">UserBase Documentation</ulink> and
|
||||
<ulink url="http://forum.kde.org/">KDE Community Forums</ulink> to get
|
||||
help.
|
||||
</para>
|
||||
|
||||
</article>
|
1
doc/fundamentals/CMakeLists.txt
Normal file
|
@ -0,0 +1 @@
|
|||
kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en)
|
BIN
doc/fundamentals/colors.png
Normal file
After Width: | Height: | Size: 48 KiB |
391
doc/fundamentals/config.docbook
Normal file
|
@ -0,0 +1,391 @@
|
|||
<chapter id="config">
|
||||
<title>Customizing &kde; software</title>
|
||||
|
||||
<sect1 id="toolbars">
|
||||
<sect1info>
|
||||
<authorgroup>
|
||||
<author>&TC.Hollingsworth; &TC.Hollingsworth.mail;</author>
|
||||
<!-- TRANS:ROLES_OF_TRANSLATORS -->
|
||||
</authorgroup>
|
||||
</sect1info>
|
||||
<title>Customizing Toolbars</title>
|
||||
|
||||
<!--FIXME link from korganizer config-toolbars section-->
|
||||
<!--FIXME link from <sect2 id="configtoolbars"> in sheets/config.docbook> -->
|
||||
<!--FIXME link from <sect2 id="configuration-toolbars"> in extragear/multimedia-git/kplayer/doc/en_US/configuration.docbook -->
|
||||
<screenshot id="screenshot-toolbars-toolbar">
|
||||
<screeninfo>The &gwenview; Toolbar</screeninfo>
|
||||
<mediaobject>
|
||||
<imageobject><imagedata fileref="toolbars-toolbar.png" format="PNG"/></imageobject>
|
||||
<textobject><phrase>The &gwenview; toolbar.</phrase></textobject>
|
||||
<caption><para>The toolbar in
|
||||
<ulink url="http://kde.org/applications/graphics/gwenview/">&gwenview;</ulink>.
|
||||
</para></caption>
|
||||
</mediaobject>
|
||||
</screenshot>
|
||||
|
||||
<sect2 id="toolbars-items">
|
||||
<title>Modifying Toolbar Items</title>
|
||||
|
||||
<para>To customize an application's toolbars, go to
|
||||
<menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
|
||||
Toolbars...</guimenuitem></menuchoice> or right-click on a toolbar and select
|
||||
<guimenuitem>Configure Toolbars...</guimenuitem>.</para>
|
||||
|
||||
<para>On the left side of the toolbar configuration panel, the available items
|
||||
that you can put in your toolbar are shown. On the right, the ones that already
|
||||
appear on the toolbar are shown. At the top, you can select the toolbar
|
||||
you wish to modify or view.</para>
|
||||
|
||||
<para>Above each side of the panel there is a <guilabel>Filter</guilabel> text
|
||||
box you can use to easily find items in the list.</para>
|
||||
|
||||
<screenshot id="screenshot-toolbars-customize">
|
||||
<screeninfo>The Customize Toolbars Window</screeninfo>
|
||||
<mediaobject>
|
||||
<imageobject><imagedata fileref="toolbars-configure.png" format="PNG"/></imageobject>
|
||||
<textobject><phrase>The Customize Toolbars window.</phrase></textobject>
|
||||
<caption><para>The Customize Toolbars window in &gwenview; with the
|
||||
<guibutton>Previous</guibutton> button selected.</para></caption>
|
||||
</mediaobject>
|
||||
</screenshot>
|
||||
|
||||
<sect3 id="toolbars-items-add">
|
||||
<title>Adding an Item</title>
|
||||
<para>You can add an item to your toolbar by selecting it from the left side and
|
||||
clicking on the right arrow button.</para>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="toolbars-items-remove">
|
||||
<title>Removing an Item</title>
|
||||
<para>You can remove an item by selecting it and clicking the left arrow
|
||||
button.</para>
|
||||
</sect3>
|
||||
|
||||
|
||||
<sect3 id="toolbars-items-rearrange">
|
||||
<title>Changing the Position of Items</title>
|
||||
|
||||
<para>You can change the position of the items by moving them lower or higher in
|
||||
the list. To move items lower, press the down arrow button, while to move items
|
||||
higher press the up arrow button. You can also change items' position by
|
||||
dragging and dropping them.</para>
|
||||
|
||||
<para>On horizontal toolbars, the item that's on top will be the one on the left.
|
||||
On vertical toolbars, items are arranged as they appear in the toolbar.</para>
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3 id="toolbars-items-separator">
|
||||
<title>Adding a Separator</title>
|
||||
<para>You can add separator lines between items by adding a
|
||||
<guilabel>--- separator ---</guilabel> item to the toolbar.</para>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="toolbars-items-defaults">
|
||||
<title>Restoring Defaults</title>
|
||||
|
||||
<para>You can restore your toolbar to the way it was when you installed the
|
||||
application by pressing the <guibutton>Defaults</guibutton> button at the bottom
|
||||
of the window and then confirming your decision.</para>
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3 id="toolbars-items-text-icons">
|
||||
<title>Changing Text and Icons</title>
|
||||
|
||||
<para>You can change the icon and text of individual toolbar items by selecting
|
||||
an item and clicking either the <guibutton>Change Icon...</guibutton> or
|
||||
<guibutton>Change Text...</guibutton> button.</para>
|
||||
<!--FIXME Icon selection and icon categories -> own section?
|
||||
Change Text -> Option "Hide text when toolbar shows text alongside icons"
|
||||
-->
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="toolbars-appearance">
|
||||
<title>Customizing Toolbar Appearance</title>
|
||||
|
||||
<para>You can change the appearance of toolbars by right-clicking on a toolbar
|
||||
to access it's context menu.</para>
|
||||
<!-- settings for each toolbar separately-->
|
||||
<sect3 id="toolbars-appearance-text-position">
|
||||
<title>Text Position</title>
|
||||
|
||||
<para>You can change the appearance of text on toolbars in the
|
||||
<guisubmenu>Text Position</guisubmenu> submenu of a toolbar's context menu.</para>
|
||||
|
||||
<para>You can choose from:</para>
|
||||
<itemizedlist>
|
||||
|
||||
<listitem><para>
|
||||
<guimenuitem>Icons</guimenuitem> -
|
||||
only the icon for each toolbar item will appear.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<guimenuitem>Text</guimenuitem> -
|
||||
only the text label for each toolbar item will appear.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<guimenuitem>Text Alongside Icons</guimenuitem> -
|
||||
<!--this may need to be changed to 'left' for RTL languages-->
|
||||
the text label will appear to the right of each toolbar item's icon
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<guimenuitem>Text Under Icons</guimenuitem> -
|
||||
the text label will appear underneath each toolbar item's icon
|
||||
</para></listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
<para>You can also show or hide text for individual toolbar items by
|
||||
right-clicking on an item and checking or unchecking the item under
|
||||
<guilabel>Show Text</guilabel>.</para>
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3 id="toolbars-appearance-icon-size">
|
||||
<title>Icon Size</title>
|
||||
|
||||
<para>You can change the size of toolbar items' icons by selecting
|
||||
<guisubmenu>Icon Size</guisubmenu> from the toolbar's context menu.</para>
|
||||
|
||||
<para>You can choose from the following options: (each lists the icon size
|
||||
in pixels)</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para><guimenuitem>Small (16x16)</guimenuitem></para></listitem>
|
||||
<listitem><para><guimenuitem>Medium (22x22)</guimenuitem>
|
||||
[the default value]</para></listitem>
|
||||
<listitem><para><guimenuitem>Large (32x32)</guimenuitem></para></listitem>
|
||||
<listitem><para><guimenuitem>Huge (48x48)</guimenuitem></para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3 id="toolbars-appearance-move">
|
||||
<title>Moving Toolbars</title>
|
||||
|
||||
<para>In order to move toolbars, you must <quote>unlock</quote> them. To do
|
||||
so, uncheck <guimenuitem>Lock Toolbar Positions</guimenuitem> from a toolbar's
|
||||
context menu. To restore the lock, simply recheck this menu item.</para>
|
||||
|
||||
<para>You can change a toolbar's position from the
|
||||
<guisubmenu>Orientation</guisubmenu> submenu of its context menu.</para>
|
||||
|
||||
<para>You can choose from:</para>
|
||||
<itemizedlist>
|
||||
<listitem><para><guimenuitem>Top</guimenuitem>
|
||||
[the default in many applications]</para></listitem>
|
||||
<listitem><para><guimenuitem>Left</guimenuitem></para></listitem>
|
||||
<listitem><para><guimenuitem>Right</guimenuitem></para></listitem>
|
||||
<listitem><para><guimenuitem>Bottom</guimenuitem></para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>You can also move a toolbar by clicking and holding onto the dotted line
|
||||
at the left of horizontal toolbars or the top of vertical toolbars and dragging
|
||||
it to your desired location.</para>
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3 id="toolbars-appearance-show-hide">
|
||||
<title>Show/Hide Toolbars</title>
|
||||
|
||||
<para>If your application has only one toolbar, you can hide a toolbar by
|
||||
deselecting <guimenuitem>Show Toolbar</guimenuitem> from either the toolbar's
|
||||
context menu or the <guimenu>Settings</guimenu> menu. To restore the toolbar,
|
||||
select <guimenuitem>Show Toolbar</guimenuitem> from the <guimenu>Settings</guimenu>
|
||||
menu. Note that toolbars must be <quote>unlocked</quote> to hide them from their
|
||||
context menu; see <xref linkend="toolbars-appearance-move"/> for more
|
||||
information.</para>
|
||||
|
||||
<para>If your application has more than one toolbar, a submenu called
|
||||
<guisubmenu>Toolbars Shown</guisubmenu> will appear in the context menu and
|
||||
<guimenu>Settings</guimenu> menu instead of the above menu entry. From that
|
||||
menu you may select individual toolbars to hide and show.</para>
|
||||
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="toolbars-ack">
|
||||
<title>Thanks and Acknowledgments</title>
|
||||
<para>Thanks to an anonymous Google Code-In 2011 participant for writing much
|
||||
of this section.</para>
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
|
||||
|
||||
<sect1 id="shortcuts">
|
||||
<sect1info>
|
||||
<authorgroup>
|
||||
<author><firstname>Alexey</firstname> <surname>Subach</surname></author>
|
||||
<author>&TC.Hollingsworth; &TC.Hollingsworth.mail;</author>
|
||||
<!-- TRANS:ROLES_OF_TRANSLATORS -->
|
||||
</authorgroup>
|
||||
</sect1info>
|
||||
|
||||
<!--FIXME link from
|
||||
<sect2 id="configshort"> in tables/config.docbook>
|
||||
<sect2 id="configuration-shortcuts"> in extragear/multimedia-git/kplayer/doc/en_US/configuration.docbook
|
||||
-->
|
||||
<!--FIXME explain Alternate + Global shortcuts in Screenshot and
|
||||
another place to change Global Shortcuts (Systemsettings)-->
|
||||
<title>Using and Customizing Shortcuts</title>
|
||||
|
||||
<sect2 id="shortcuts-intro">
|
||||
<title>Introduction</title>
|
||||
|
||||
<para>Many &kde; applications allow you to configure keyboard shortcuts. To open
|
||||
the standard keyboard shortcuts configuration panel, go to
|
||||
<menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
|
||||
Shortcuts...</guimenuitem></menuchoice>.</para>
|
||||
|
||||
<para>In the Configure Shortcuts window, you will see a list of all the shortcuts
|
||||
available in the current application. You can use the search box at the top to
|
||||
search for the shortcut you want.</para>
|
||||
|
||||
<screenshot id="screenshot-shortcuts-search">
|
||||
<screeninfo>The Customize Shortcuts Window</screeninfo>
|
||||
<mediaobject>
|
||||
<imageobject><imagedata fileref="shortcuts-search.png" format="PNG"/></imageobject>
|
||||
<textobject><phrase>The Customize Shortcuts window.</phrase></textobject>
|
||||
<caption><para>Searching for shortcuts with <userinput>file</userinput> in
|
||||
<ulink url="http://kde.org/applications/system/dolphin/">&dolphin;</ulink>.
|
||||
</para></caption>
|
||||
</mediaobject>
|
||||
</screenshot>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="shortcuts-change">
|
||||
<title>Changing a Shortcut</title>
|
||||
|
||||
<para>To change a shortcut, first click on the name of a shortcut you want to change.
|
||||
You will see a radio group where you can choose whether to set the shortcut to its
|
||||
default value, or select a new shortcut for the selected action. To set a new shortcut,
|
||||
choose <guilabel>Custom</guilabel> and click on the button next to it. Then just
|
||||
type the shortcut you would like to use, and your changes will be saved.</para>
|
||||
|
||||
<screenshot id="screenshot-shortcuts-set">
|
||||
<screeninfo>Setting a Shortcut</screeninfo>
|
||||
<mediaobject>
|
||||
<imageobject><imagedata fileref="shortcuts-set.png" format="PNG"/></imageobject>
|
||||
<textobject><phrase>The Customize Shortcuts window demonstrating how to
|
||||
set a shortcut.</phrase></textobject>
|
||||
</mediaobject>
|
||||
</screenshot>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="shortcuts-reset">
|
||||
<title>Resetting Shortcuts</title>
|
||||
<para>There is a button at the bottom of the window, called <guibutton>Reset to
|
||||
Defaults</guibutton>. Clicking on this button will reset all your custom shortcuts
|
||||
to their default values.</para>
|
||||
|
||||
<para>You can also reset an individual shortcut to its default value by selecting
|
||||
it, and choosing the <guilabel>Default</guilabel> radio button.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="shortcuts-delete">
|
||||
<title>Removing a Shortcut</title>
|
||||
|
||||
<para>To remove a shortcut, select it from the list, then click the remove icon (a
|
||||
black arrow with a cross) to the right of the button that allows you to select
|
||||
a shortcut.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id ="shortcuts-schemes">
|
||||
<title>Working with Schemes</title>
|
||||
|
||||
<para>Schemes are keyboard shortcuts configuration profiles, so you can create
|
||||
several profiles with different shortcuts and switch between these profiles
|
||||
easily.</para>
|
||||
|
||||
<warning><para>This feature is under development. It is not possible to import
|
||||
schemes using a &GUI; at this time.</para></warning>
|
||||
|
||||
<screenshot id="screenshot-shortcuts-schemes">
|
||||
<screeninfo>Working with Schemes</screeninfo>
|
||||
<mediaobject>
|
||||
<imageobject><imagedata fileref="shortcuts-schemes.png" format="PNG"/></imageobject>
|
||||
<textobject><phrase>The Customize Shortcuts window displaying the scheme
|
||||
editing tools.</phrase></textobject>
|
||||
<caption><para>Editing a scheme called <userinput>work</userinput>.</para></caption>
|
||||
</mediaobject>
|
||||
</screenshot>
|
||||
|
||||
<para>To see a menu allowing you to edit schemes, click on the
|
||||
<guibutton>Details</guibutton> button at the bottom of the form. The following
|
||||
options will appear:</para>
|
||||
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><guilabel>Current Scheme</guilabel></term>
|
||||
<listitem><para>Allows you to switch between your schemes.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><guibutton>New...</guibutton></term>
|
||||
<listitem><para>Creates a new scheme. This opens a window that lets you select
|
||||
a name for your new scheme.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><guibutton>Delete</guibutton></term>
|
||||
<listitem><para>Deletes the current scheme.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><guibutton>More Actions</guibutton></term>
|
||||
<listitem>
|
||||
<para>Opens the following menu:</para>
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><guimenuitem>Save as Scheme Defaults</guimenuitem></term>
|
||||
<listitem><para>Sets the current scheme as the default for all new schemes.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><guimenuitem>Export Scheme...</guimenuitem></term>
|
||||
<listitem><para>Exports the current scheme to a file named <filename><replaceable>applicationname</replaceable><replaceable>schemename</replaceable>shortcuts.rc</filename>.</para>
|
||||
<para>
|
||||
Move this file to the folder <filename class="directory">$KDEDIR/apps/applicationname/</filename>
|
||||
and the exported scheme will be available in the drop down box labelled <guilabel>Current Scheme</guilabel>
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="shortcuts-print">
|
||||
<title>Printing Shortcuts</title>
|
||||
|
||||
<para>You can print out a list of shortcuts for easy reference by clicking the
|
||||
<guibutton>Print</guibutton> button at the bottom of the window.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="shortcuts-ack">
|
||||
<title>Thanks and Acknowledgments</title>
|
||||
|
||||
<para>Special thanks to Google Code-In 2011 participant Alexey Subach for
|
||||
writing much of this section.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
|
||||
</chapter>
|
BIN
doc/fundamentals/files-locationbar-breadcrumb.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
doc/fundamentals/files-locationbar-context-menu.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
doc/fundamentals/files-locationbar-editable.png
Normal file
After Width: | Height: | Size: 2.5 KiB |
BIN
doc/fundamentals/files-locationbar-places-icon.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
doc/fundamentals/files-open.png
Normal file
After Width: | Height: | Size: 43 KiB |
BIN
doc/fundamentals/files-save.png
Normal file
After Width: | Height: | Size: 48 KiB |
BIN
doc/fundamentals/find-find-inline.png
Normal file
After Width: | Height: | Size: 6.5 KiB |
BIN
doc/fundamentals/find-find.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
doc/fundamentals/find-found.png
Normal file
After Width: | Height: | Size: 47 KiB |
BIN
doc/fundamentals/find-replace-inline.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
doc/fundamentals/find-replace.png
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
doc/fundamentals/fonts.png
Normal file
After Width: | Height: | Size: 33 KiB |
147
doc/fundamentals/index.docbook
Normal file
|
@ -0,0 +1,147 @@
|
|||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
|
||||
"dtd/kdex.dtd" [
|
||||
<!ENTITY kappname "&kde-sc;">
|
||||
<!ENTITY % addindex "IGNORE">
|
||||
<!--FIXME: these entities should be added to kdoctools-->
|
||||
<!ENTITY kde-sc "&i18n-kde-sc;">
|
||||
<!ENTITY plasma-workspaces "&i18n-plasma-workspaces;">
|
||||
<!ENTITY plasma-desktop "&i18n-plasma-desktop;">
|
||||
<!ENTITY plasma-active "&i18n-plasma-active;">
|
||||
<!ENTITY gwenview '<application>Gwenview</application>'>
|
||||
<!ENTITY Meta "&i18n-Meta;">
|
||||
<!--/end entities that need to be added to kdoctools-->
|
||||
<!--make some of the above entities translatable in the interim-->
|
||||
<!ENTITY i18n-kde-sc "&kde; Software Collection">
|
||||
<!ENTITY i18n-plasma-workspaces "&kde; &plasma; Workspaces">
|
||||
<!ENTITY i18n-plasma-desktop "<application>&kde; &plasma; Desktop</application>">
|
||||
<!ENTITY i18n-plasma-active "<application>&plasma; Active</application>">
|
||||
<!ENTITY i18n-Meta "<keysym>Meta</keysym>">
|
||||
<!--/end temporary translatable entities-->
|
||||
<!ENTITY ui-chapter SYSTEM "ui.docbook">
|
||||
<!ENTITY tasks-chapter SYSTEM "tasks.docbook">
|
||||
<!ENTITY config-chapter SYSTEM "config.docbook">
|
||||
<!ENTITY install-chapter SYSTEM "install.docbook">
|
||||
<!ENTITY % English "INCLUDE"><!-- change language only here -->
|
||||
]>
|
||||
|
||||
<book id="fundamentals" lang="&language;">
|
||||
<title>&kde; Fundamentals</title>
|
||||
|
||||
<bookinfo>
|
||||
<authorgroup>
|
||||
<author>&TC.Hollingsworth; &TC.Hollingsworth.mail;</author>
|
||||
|
||||
<!-- TRANS:ROLES_OF_TRANSLATORS -->
|
||||
</authorgroup>
|
||||
|
||||
<copyright>
|
||||
<year>2011</year><year>2012</year><year>2013</year>
|
||||
<holder>&TC.Hollingsworth;</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
<year>2011</year>
|
||||
<holder>Alexey Subach</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
<year>2011</year>
|
||||
<holder>Salma Sultana</holder>
|
||||
</copyright>
|
||||
<legalnotice>&FDLNotice;</legalnotice>
|
||||
|
||||
<date>2013-12-08</date>
|
||||
<releaseinfo>&kde; 4.12</releaseinfo>
|
||||
|
||||
<abstract>
|
||||
<para>This guide provides an introduction to the &kde-sc; and describes many
|
||||
common tasks that can be performed in all &kde; applications.</para>
|
||||
</abstract>
|
||||
|
||||
<keywordset>
|
||||
<keyword>KDE</keyword>
|
||||
<keyword>introduction</keyword>
|
||||
<keyword>user interface</keyword>
|
||||
<keyword>menus</keyword>
|
||||
<keyword>files</keyword>
|
||||
<keyword>open</keyword>
|
||||
<keyword>save</keyword>
|
||||
<keyword>spelling</keyword>
|
||||
<keyword>spellcheck</keyword>
|
||||
<keyword>find</keyword>
|
||||
<keyword>replace</keyword>
|
||||
<keyword>colors</keyword>
|
||||
<keyword>configuration</keyword>
|
||||
<keyword>customization</keyword>
|
||||
<keyword>toolbars</keyword>
|
||||
<keyword>installation</keyword>
|
||||
<keyword>compiling</keyword>
|
||||
</keywordset>
|
||||
|
||||
</bookinfo>
|
||||
|
||||
<chapter id="introduction">
|
||||
<title>Introduction</title>
|
||||
<para>Welcome to &kde;!</para>
|
||||
|
||||
<para>This guide will introduce you to the many features of the &kde-sc; and
|
||||
describe many common tasks you can perform in all &kde; applications.</para>
|
||||
|
||||
<para>For more information on &kde;, visit the
|
||||
<ulink url="http://www.kde.org/">KDE website</ulink>.</para>
|
||||
|
||||
</chapter>
|
||||
|
||||
&install-chapter;
|
||||
|
||||
&ui-chapter;
|
||||
|
||||
&tasks-chapter;
|
||||
|
||||
&config-chapter;
|
||||
|
||||
<chapter id="credits">
|
||||
|
||||
<title>Credits and License</title>
|
||||
|
||||
<para>The original idea for this guide was proposed by Chusslove Illich and
|
||||
brought to fruition with input from &Burkhard.Lueck;, Yuri Chornoivan, and
|
||||
&TC.Hollingsworth;</para>
|
||||
|
||||
<para>Much of it was written by participants of
|
||||
<ulink url="http://code.google.com/opensource/gci/2011-12/index.html">Google
|
||||
Code-In 2011</ulink>. Thanks to Google for sponsoring their excellent work!</para>
|
||||
|
||||
<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
|
||||
|
||||
&underFDL; <!-- FDL: do not remove -->
|
||||
&underGPL; <!-- GPL License -->
|
||||
|
||||
</chapter>
|
||||
|
||||
&documentation.index;
|
||||
|
||||
</book>
|
||||
|
||||
<!-- Comments, ideas, policy etc
|
||||
|
||||
Use default appearance + settings of kde compiled from sources
|
||||
|
||||
Style issues:
|
||||
Task oriented
|
||||
Avoid variablelist for obvious terms like e. g. Left/Right
|
||||
|
||||
FIXME missing stuff:
|
||||
|
||||
add a11y docbooks from koffice 1.6?
|
||||
|
||||
-->
|
||||
<!--
|
||||
Local Variables:
|
||||
mode: sgml
|
||||
sgml-namecase-general: t
|
||||
sgml-namecase-entity: nil
|
||||
sgml-general-insert-case: lower
|
||||
sgml-minimize-attributes: nil
|
||||
sgml-omittag: nil
|
||||
End:
|
||||
-->
|
127
doc/fundamentals/install.docbook
Normal file
|
@ -0,0 +1,127 @@
|
|||
<chapter id="install">
|
||||
<title>Installing the &kde-sc;</title>
|
||||
|
||||
<para>You can install the &kde-sc; on a variety of different platforms, ranging from
|
||||
smartphones and tablets to computers running &Microsoft; &Windows;, &MacOS;,
|
||||
&UNIX;, &BSD; or &Linux;. Binary packages are available for many different
|
||||
platforms and distributions, or advanced users may build the source code.</para>
|
||||
|
||||
<sect1 id="install-packages">
|
||||
<title>Installing Packages</title>
|
||||
|
||||
<para>Hundreds of developers worldwide have done a lot of work to make it easy
|
||||
to install &kde; on a variety of different devices and platforms.</para>
|
||||
|
||||
<sect2 id="install-linux">
|
||||
<title>&Linux;</title>
|
||||
|
||||
<para>Nearly every &Linux; distribution provides binary packages for individual
|
||||
&kde-sc; applications and the &plasma-workspaces; as a whole.</para>
|
||||
|
||||
<para>To install an individual application, look for its name in your
|
||||
distribution's package collection. To install one of the &plasma-workspaces;,
|
||||
like &plasma-desktop;, look for a metapackage or package
|
||||
group, typically <literal>kde-desktop</literal>.</para>
|
||||
|
||||
<note>
|
||||
<para>Some core applications may be installed together with other core
|
||||
applications in a combined package named after the &kde; package they are
|
||||
provided in. For instance, &dolphin; might be found in the
|
||||
<literal>kde-baseapps</literal> package.</para>
|
||||
</note>
|
||||
|
||||
<para>If you have trouble locating &kde; packages for your distribution, please
|
||||
contact their support resources. Many distributions also have a team dedicated
|
||||
to packaging &kde; that can provide assistance specific to &kde;</para>
|
||||
|
||||
<!--FIXME: provide steps for common distributions?-->
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="install-windows">
|
||||
<title>&Microsoft; &Windows;</title>
|
||||
|
||||
<para>The &kde; on Windows Initiative provides binary packages of &kde-sc;
|
||||
applications for &Microsoft; &Windows;. They also provide a special installer
|
||||
application that permits you to install individual applications or groups and
|
||||
all necessary dependencies easily.</para>
|
||||
|
||||
<para>For more information on the initiative and to download the installer,
|
||||
visit <ulink url="http://windows.kde.org/">the KDE on Windows Initiative</ulink>.
|
||||
</para>
|
||||
|
||||
<!--FIXME: describe how to use the installer?-->
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="install-mac">
|
||||
<title>&MacOS;</title>
|
||||
|
||||
<para>Individual &kde-sc; applications can be installed through several
|
||||
different <quote>ports</quote> systems available for &MacOS;. Several different
|
||||
&kde; applications also provide their own binary builds for &MacOS;.</para>
|
||||
|
||||
<para>For more information, visit
|
||||
<ulink url="http://mac.kde.org/">&kde; on &MacOS;X</ulink>.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="install-bsd">
|
||||
<title>&BSD;</title>
|
||||
|
||||
<para>Most &BSD; distributions allows you to install &kde-sc; applications
|
||||
and the &plasma-workspaces; as a whole through their <quote>ports</quote>
|
||||
system.</para>
|
||||
|
||||
<para>For more information on installing ports, see your &BSD; distribution's
|
||||
documentation.</para>
|
||||
|
||||
<!--FIXME: provide steps/links for common BSDs?-->
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="install-mobile">
|
||||
<title>Mobile Devices</title>
|
||||
|
||||
<para>&plasma-active; is an exciting initiative to bring a new &kde;
|
||||
experience to mobile devices like smartphones or tablets. Binary releases are
|
||||
provided for several different devices.</para>
|
||||
|
||||
<para>For more information, visit
|
||||
<ulink url="http://plasma-active.org/">&plasma-active;</ulink>.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="install-live">
|
||||
<title>Live Media</title>
|
||||
|
||||
<para>Several &Linux; and &BSD; distributions offer live media. This permits you
|
||||
to try out the &plasma-workspaces; without installing anything to your system.
|
||||
All you have to do insert a CD or connect a USB drive and boot from it. If you
|
||||
like what you see, most offer an option to install it to your hard drive.</para>
|
||||
|
||||
<para>There is <ulink url="http://www.kde.org/download/distributions.php">a list
|
||||
of distributions that offer the &kde-sc; on live media</ulink> on the &kde; website.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="install-source">
|
||||
<title>Building from Source Code</title>
|
||||
|
||||
<para>For detailed information on how to compile and install &kde;
|
||||
applications see
|
||||
<ulink url="http://techbase.kde.org/Getting_Started#Building_and_Running_KDE_Software_From_Source">
|
||||
Building and Running &kde; Software From Source on &kde; TechBase</ulink>.</para>
|
||||
|
||||
<para>Since &kde; software uses <command>cmake</command> you should
|
||||
have no trouble compiling it. Should you run into problems please report them to the
|
||||
&kde; mailing lists.</para>
|
||||
</sect2>
|
||||
<!--Fixme more info:
|
||||
Where to get sources (git split)
|
||||
where to get help building from souces
|
||||
kdesrc-build
|
||||
-->
|
||||
|
||||
</sect1>
|
||||
|
||||
</chapter>
|
BIN
doc/fundamentals/menus.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
doc/fundamentals/shortcuts-schemes.png
Normal file
After Width: | Height: | Size: 55 KiB |
BIN
doc/fundamentals/shortcuts-search.png
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
doc/fundamentals/shortcuts-set.png
Normal file
After Width: | Height: | Size: 57 KiB |
BIN
doc/fundamentals/spellcheck-check.png
Normal file
After Width: | Height: | Size: 41 KiB |
1198
doc/fundamentals/tasks.docbook
Normal file
BIN
doc/fundamentals/toolbars-configure.png
Normal file
After Width: | Height: | Size: 64 KiB |
BIN
doc/fundamentals/toolbars-toolbar.png
Normal file
After Width: | Height: | Size: 19 KiB |
1983
doc/fundamentals/ui.docbook
Normal file
BIN
doc/fundamentals/visualdict-breadcrumb.png
Normal file
After Width: | Height: | Size: 2.9 KiB |
BIN
doc/fundamentals/visualdict-button.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
doc/fundamentals/visualdict-central-widget.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
doc/fundamentals/visualdict-check-box.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
doc/fundamentals/visualdict-color-selector.png
Normal file
After Width: | Height: | Size: 44 KiB |
BIN
doc/fundamentals/visualdict-combo-box.png
Normal file
After Width: | Height: | Size: 3.1 KiB |
BIN
doc/fundamentals/visualdict-context-menu.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
doc/fundamentals/visualdict-dialog-box.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
doc/fundamentals/visualdict-drop-down-box.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
doc/fundamentals/visualdict-gui1.png
Normal file
After Width: | Height: | Size: 137 KiB |
BIN
doc/fundamentals/visualdict-gui2.png
Normal file
After Width: | Height: | Size: 134 KiB |
BIN
doc/fundamentals/visualdict-gui3.png
Normal file
After Width: | Height: | Size: 84 KiB |
BIN
doc/fundamentals/visualdict-gui4.png
Normal file
After Width: | Height: | Size: 75 KiB |
BIN
doc/fundamentals/visualdict-icon-list.png
Normal file
After Width: | Height: | Size: 5.5 KiB |
BIN
doc/fundamentals/visualdict-icon.png
Normal file
After Width: | Height: | Size: 6.1 KiB |
BIN
doc/fundamentals/visualdict-list-box.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
doc/fundamentals/visualdict-menu-button.png
Normal file
After Width: | Height: | Size: 2 KiB |
BIN
doc/fundamentals/visualdict-menu.png
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
doc/fundamentals/visualdict-menubar.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
BIN
doc/fundamentals/visualdict-panel.png
Normal file
After Width: | Height: | Size: 8.5 KiB |
BIN
doc/fundamentals/visualdict-progress-bar.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
doc/fundamentals/visualdict-radio-button.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
doc/fundamentals/visualdict-scrollbar.png
Normal file
After Width: | Height: | Size: 2.5 KiB |
BIN
doc/fundamentals/visualdict-slider.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
doc/fundamentals/visualdict-spin-box.png
Normal file
After Width: | Height: | Size: 1 KiB |
BIN
doc/fundamentals/visualdict-statusbar.png
Normal file
After Width: | Height: | Size: 2.9 KiB |
BIN
doc/fundamentals/visualdict-tab.png
Normal file
After Width: | Height: | Size: 4.4 KiB |
BIN
doc/fundamentals/visualdict-text-area.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
doc/fundamentals/visualdict-text-box.png
Normal file
After Width: | Height: | Size: 1 KiB |
BIN
doc/fundamentals/visualdict-titlebar.png
Normal file
After Width: | Height: | Size: 7.5 KiB |
BIN
doc/fundamentals/visualdict-toolbar.png
Normal file
After Width: | Height: | Size: 7.6 KiB |
BIN
doc/fundamentals/visualdict-tree-view.png
Normal file
After Width: | Height: | Size: 30 KiB |
BIN
doc/fundamentals/visualdict-window.png
Normal file
After Width: | Height: | Size: 101 KiB |
BIN
doc/fundamentals/visualdict-window2.png
Normal file
After Width: | Height: | Size: 140 KiB |
2
doc/glossary/CMakeLists.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
########### install files ###############
|
||||
kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR khelpcenter/glossary)
|
10
doc/glossary/checkxrefs
Executable file
|
@ -0,0 +1,10 @@
|
|||
#!/bin/sh
|
||||
DEFINED_ENTRIES=`sed -ne "s^.*<glossentry id=\"\(.*\)\">.*^\1^p" *.docbook`
|
||||
REFERENCED_ENTRIES=`sed -ne "s^.*<glossseealso otherterm=\"\(.*\)\">.*^\1^p" *.docbook | uniq`
|
||||
|
||||
# Check for entries which are referenced but not defined.
|
||||
for ENTRY in $REFERENCED_ENTRIES; do
|
||||
if ! echo $DEFINED_ENTRIES | grep $ENTRY - > /dev/null 2>&1; then
|
||||
echo "'$ENTRY' referenced but not defined!"
|
||||
fi
|
||||
done
|
611
doc/glossary/index.docbook
Normal file
|
@ -0,0 +1,611 @@
|
|||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE glossary PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
|
||||
<!ENTITY % addindex "IGNORE">
|
||||
<!ENTITY % English "INCLUDE">
|
||||
<!ENTITY glossary-kdeprinting SYSTEM "kdeprintingglossary.docbook">
|
||||
<!ENTITY newpara "</p><p>">
|
||||
<!ENTITY linkstart "<a href=">
|
||||
<!ENTITY linkmid ' target="_top">'>
|
||||
<!ENTITY linkend "</a>">
|
||||
|
||||
<!ENTITY emstart '<span class="emphasis"><em>' >
|
||||
<!ENTITY emend '</em></span>'>
|
||||
<!-- acronym, systemitem unchanged
|
||||
itemizedlist+listitem changed to simple para -->
|
||||
]>
|
||||
|
||||
|
||||
<glossary lang="&language;" id="glossary">
|
||||
|
||||
<glossdiv id="glossdiv-technologies">
|
||||
<title>Technologies</title>
|
||||
<glossentry id="gloss-akonadi">
|
||||
<glossterm>Akonadi</glossterm>
|
||||
<glossdef><para>The data storage access mechanism for all PIM (Personal Information Manager) data in &kde; SC 4. One single
|
||||
storage and retrieval system allows efficiency and extensibility not possible under &kde; 3, where each PIM component had
|
||||
its own system. Note that use of Akonadi does not change data storage formats (vcard, iCalendar, mbox, maildir etc.) - it
|
||||
just provides a new way of accessing and updating the data.&newpara;
|
||||
The main reasons for design and development of Akonadi are of technical nature, ⪚ having a unique way to access PIM-data (contacts, calendars, emails..) from different applications (⪚ &kmail;, &kword; &etc;), thus eliminating the need to write similar code here and there.&newpara;
|
||||
Another goal is to de-couple GUI applications like &kmail; from the direct access to external resources like mail-servers - which was a major reason for bug-reports/wishes with regard to performance/responsiveness in the past.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://pim.kde.org/akonadi/"&linkmid;Akonadi for KDE's PIM&linkend;&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/Akonadi"&linkmid;Wikipedia: Akonadi&linkend;&newpara;
|
||||
&linkstart;"http://techbase.kde.org/Projects/PIM/Akonadi"&linkmid;Techbase - Akonadi&linkend;</para>
|
||||
<glossseealso otherterm="gloss-gui">&GUI;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-arts">
|
||||
<glossterm>ARts</glossterm>
|
||||
<glossdef><para>The sound framework in &kde; 2 and 3. Its single-tasking nature caused problems when two sources of sound were encountered. In the &plasma; desktop it is replaced by Phonon.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/ARts"&linkmid; Wikipedia: ARts&linkend;&newpara;
|
||||
&linkstart;"http://www.arts-project.org"&linkmid;ARts home page&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-phonon">Phonon</glossseealso>
|
||||
<glossseealso otherterm="gloss-plasma">&plasma;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-dbus">
|
||||
<glossterm>D-Bus</glossterm>
|
||||
<glossdef><para>D-Bus or Desktop Bus is an inter-service messaging system. Developed by &RedHat;, it was heavily influenced by &kde; 3 DCOP, which it supersedes. Most POSIX operating systems support D-Bus, and a port for Windows exists. It is used by Qt 4 and GNOME.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://freedesktop.org/wiki/Software/dbus/"&linkmid;FreeDesktop.org: What is D-Bus?&linkend;&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/D-Bus"&linkmid;Wikipedia: D-Bus&linkend;</para>
|
||||
<glossseealso otherterm="gloss-dcop">&DCOP;</glossseealso>
|
||||
<glossseealso otherterm="gloss-gnome">GNOME</glossseealso>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-qt">&Qt;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-dcop">
|
||||
<glossterm>DCOP</glossterm>
|
||||
<glossdef><para><acronym>DCOP</acronym>, which stands for Desktop COmmunication Protocol, is a light-weight interprocess and software componentry communication system used in &kde; 3. Replaced with &DBus; in &kde; SC 4.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/DCOP"&linkmid;Wikipedia: DCOP&linkend;</para>
|
||||
<glossseealso otherterm="gloss-dbus">D-Bus</glossseealso>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-flake">
|
||||
<glossterm>Flake</glossterm>
|
||||
<glossdef><para>Flake is a programming library to be used in &koffice;/Calligra. Functionally, it provides Shapes to display content and Tools to manipulate content. Shapes can be zoomed or rotated and can be grouped to work as a single Shape, around which text flow is possible.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://community.kde.org/Calligra/Libs/Flake"&linkmid;&kde; Community Wiki: Flake&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kparts">KParts</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-ghns">
|
||||
<glossterm>Get Hot New Stuff</glossterm>
|
||||
<glossdef><para>&emstart;G&emend;et &emstart;H&emend;ot &emstart;N&emend;ew &emstart;S&emend;tuff (GHNS) is an open standard that makes it easy for users to download and install various extensions for their applications. Our implementation of GHNS is used by &plasma; (for example to get new desktop themes), and by many applications and widgets.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://ghns.freedesktop.org"&linkmid;Home of GHNS&linkend;&newpara;
|
||||
&linkstart;"http://lwn.net/Articles/227855/"&linkmid;An article on GHNS in &kde; SC 4&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-plasma">&plasma;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-ghnsaccr">
|
||||
<glossterm>GHNS</glossterm>
|
||||
<glossdef><para><acronym>GHNS</acronym> is the acronym of Get Hot New Stuff.</para>
|
||||
<glossseealso otherterm="gloss-ghns">Get Hot New Stuff</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-ioslave">
|
||||
<glossterm><acronym>IO</acronym> Slave</glossterm>
|
||||
<glossdef><para><acronym>IO</acronym> Slaves enable &kde; applications to
|
||||
access remote resources as easily as local resources (making them
|
||||
"network transparent"). Remote resources (⪚ files) might
|
||||
be stored on <acronym>SMB</acronym> shares or similar.</para>
|
||||
<glossseealso otherterm="gloss-smb"><acronym>SMB</acronym></glossseealso>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-khtml">
|
||||
<glossterm>KHTML</glossterm>
|
||||
<glossdef><para>KHTML is the &HTML; rendering engine for the &kde; &plasma; desktop, as used by the &konqueror; browser. It also provides a KPart that enables all &kde; applications to display web content. A new introduction, &Qt; WebKit is also for Plasma and other application development.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-konqueror">&konqueror;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kparts">KParts</glossseealso>
|
||||
<glossseealso otherterm="gloss-plasma">&plasma;</glossseealso>
|
||||
<glossseealso otherterm="gloss-webkit">WebKit</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-kio">
|
||||
<glossterm><acronym>KIO</acronym></glossterm>
|
||||
<glossdef><para>The &kde; Input/Output system which makes use of so-called
|
||||
"<acronym>IO</acronym> Slaves".</para>
|
||||
<glossseealso otherterm="gloss-ioslave"><acronym>IO</acronym>
|
||||
Slave</glossseealso>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-kiosk">
|
||||
<glossterm>Kiosk</glossterm>
|
||||
<glossdef><para>Kiosk is a framework for restricting user capabilities on a &kde; platform system, ideal for use in locked-down environments such as Internet cafés. It is present in &kde; 3 and &kde; 4, but the administration tool, <application>Kiosktool</application> is &kde; 3 only. It can be used to configure &kde; 4 applications, or kiosk configurations can be maintained by editing config files manually.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-kparts">
|
||||
<glossterm>KParts</glossterm>
|
||||
<glossdef><para>KParts is an embedding technology which allows &kde;
|
||||
applications to embed other &kde; applications. For example, the text
|
||||
view used by &konqueror; is a KPart.</para>
|
||||
<glossseealso otherterm="gloss-konqueror">&konqueror;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-ksycoca">
|
||||
<glossterm><acronym>KSycoca</acronym></glossterm>
|
||||
<glossdef><para><acronym>KSycoca</acronym> (&kde; &emstart;Sy&emend;stem
|
||||
&emstart;Co&emend;nfiguration &emstart;Ca&emend;che) is a
|
||||
configuration cache which, for example, guarantees fast access to the menu
|
||||
entries.</para>
|
||||
<glossseealso
|
||||
otherterm="gloss-kbuildsycoca"><application>KBuildSycoca</application></glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-phonon">
|
||||
<glossterm>Phonon</glossterm>
|
||||
<glossdef><para>A cross-platform multimedia API, interfacing with existing frameworks, such as gstreamer and xine engines. &kde; 2 and 3 depended on aRts for sound. Phonon replaces it.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/Phonon_(KDE)"&linkmid; Wikipedia: Phonon (KDE)&linkend;&newpara;
|
||||
&linkstart;"http://phonon.kde.org"&linkmid;Phonon website&linkend;</para>
|
||||
<glossseealso otherterm="gloss-arts">&arts;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-solid">
|
||||
<glossterm>Solid</glossterm>
|
||||
<glossdef><para>Solid provides a single API for hardware management. Hardware is grouped into 'domains'. Since the backends for Solid are pluggable, Solid helps application developers write less code, and have it platform independent.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://solid.kde.org"&linkmid;Discover Solid&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-threadweaver">
|
||||
<glossterm>Threadweaver</glossterm>
|
||||
<glossdef><para>This thread programming library spreads work among multiple-core processors where available, prioritizing them before queuing them for execution. ThreadWeaver provides a high-level job interface for multithreaded programming.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://www.englishbreakfastnetwork.org/apidocs/apidox-kde-4.0/kdelibs-apidocs/threadweaver/html/Why.html"&linkmid;Why Multithreading?&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-webkit">
|
||||
<glossterm>WebKit</glossterm>
|
||||
<glossdef><para>HTML rendering engine, originating from a fork of KHTML. Adopted by <trademark>Apple</trademark> and developed for <trademark>Safari</trademark>. Webkit brings the whole functionality back to &kde; SC 4, where it is available through &Qt;.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://webkit.org/"&linkmid;WebKit home page&linkend;&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/Webkit"&linkmid;Wikipedia: WebKit&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kde">KHTML</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
</glossdiv>
|
||||
|
||||
<glossdiv id="glossdiv-xorg">
|
||||
<title>X.Org</title>
|
||||
<glossentry id="gloss-antialiasing">
|
||||
<glossterm>Antialiasing</glossterm>
|
||||
<glossdef><para>If mentioned in context with &kde;, anti-aliasing often means
|
||||
the smoothing of the fonts visible on the screen. &Qt; version 3.3
|
||||
or higher used together with X.Org server makes this possible under &kde;
|
||||
as well.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-qt">&Qt;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-xserver">
|
||||
<glossterm>&X-Server;</glossterm>
|
||||
<glossdef><para>The &X-Server; represents a basic layer upon which the
|
||||
various &GUI;s like &kde; are built. It manages the
|
||||
basic mouse and keyboard input (from the local host as well as from
|
||||
remote hosts) and provides elementary graphic routines to draw
|
||||
rectangles and other primitives.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-gui">&GUI;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
</glossdiv>
|
||||
|
||||
<glossdiv id="glossdiv-applications">
|
||||
<title>Applications</title>
|
||||
<glossentry id="gloss-dolphin">
|
||||
<glossterm>Dolphin</glossterm>
|
||||
<glossdef><para>The default file manager in &kde; SC 4. It has a side panel (Places), but navigation is mainly by the 'breadcrumb' trail above the main window. Split windows are possible, and views can be applied to individual windows. Mounting and unmounting <acronym>USB</acronym> devices can be done in the side panel. Other directories can be added to the Places panel. A Tree view is also possible.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/Dolphin_(software)"&linkmid;Wikipedia: Dolphin&linkend;&newpara;
|
||||
&linkstart;"http://introducingkde4.blogspot.com/2007/12/dolphin.html"&linkmid;Introducing KDE 4 Blog - Dolphin&linkend;&newpara;
|
||||
&linkstart;"http://userbase.kde.org/Tutorials/File_Management"&linkmid;Userbase: File Management Tutorial&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-konqueror">&konqueror;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-kbuildsycoca">
|
||||
<glossterm><application>KBuildSycoca</application></glossterm>
|
||||
<glossdef><para><application>KBuildSycoca4</application> is a command line
|
||||
program and regenerates the
|
||||
so-called <acronym>KSycoca</acronym>. This is useful, for example, if some
|
||||
or all modules in
|
||||
&systemsettings; are missing.</para>
|
||||
<glossseealso otherterm="gloss-ksycoca"><acronym>KSycoca</acronym></glossseealso>
|
||||
<glossseealso otherterm="gloss-systemsettings">&systemsettings;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-kinfocenter">
|
||||
<glossterm>KInfoCenter</glossterm>
|
||||
<glossdef><para>Kinfocenter originated as part of Kcontrol standing alone from KDE 3.1. In KDE SC 4 it is replaced by modules configured in System Settings, notably Solid, and is being reintroduced as an application in &kde; SC 4.5.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/Kinfocenter"&linkmid;Wikipedia: KInfoCenter&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-solid">Solid</glossseealso>
|
||||
<glossseealso otherterm="gloss-systemsettings">&systemsettings;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-konqueror">
|
||||
<glossterm>&konqueror;</glossterm>
|
||||
<glossdef><para>&konqueror; is a web browser, picture viewer, file manager
|
||||
and more, and a core part of the &kde; project. You can
|
||||
find more information about &konqueror; at &linkstart;"http://www.konqueror.org"&linkmid;www.konqueror.org&linkend;.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-krunner">
|
||||
<glossterm>KRunner</glossterm>
|
||||
<glossdef><para>The mini-command-line that is accessed from the Classic menu, the keyboard shortcut &Alt;+<keycap>F2</keycap>, or a right-click on the desktop. In &kde; SC 4 a partial name will display all possible matches.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://userbase.kde.org/Tutorials/Krunner"&linkmid;UserBase: KRunner Usage&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-plasma">&plasma;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-kwin">
|
||||
<glossterm>KWin</glossterm>
|
||||
<glossdef><para>KWin is the window manager. This is where window decorations can be changed and themes applied. &kde; SC 4 extends KWin to provide support for 3D Compositing effects on the desktop.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://userbase.kde.org/KWin"&linkmid;UserBase: KWin&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-xserver">&X-Server;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-minicli">
|
||||
<glossterm>Mini-CLI</glossterm>
|
||||
<glossdef><para>Mini &emstart;C&emend;ommand &emstart;L&emend;ine &emstart;I&emend;nterface. Synonym to KRunner.</para>
|
||||
<glossseealso otherterm="gloss-krunner">KRunner</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-pager">
|
||||
<glossterm>Pager</glossterm>
|
||||
<glossdef><para>A pager is a small program or panel applet which shows the position of windows on your desktop and usually if you have several Virtual Desktops gives an overview over all.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kickoff">Kickoff</glossseealso>
|
||||
<glossseealso otherterm="gloss-kicker">Kicker</glossseealso>
|
||||
<glossseealso otherterm="gloss-panel">Panel</glossseealso>
|
||||
<glossseealso otherterm="gloss-plasma">&plasma;</glossseealso>
|
||||
<glossseealso otherterm="gloss-virtualdesktops">Virtual Desktops</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-systemsettings">
|
||||
<glossterm>&systemsettings;</glossterm>
|
||||
<glossdef><para>This is the project and filename of the &kde; control
|
||||
center. &systemsettings; allows you to customize virtually
|
||||
every configuration option of &kde;.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kinfocenter">KInfoCenter</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
</glossdiv>
|
||||
|
||||
<glossdiv id="glossdiv-desktop-terminology">
|
||||
<title>Desktop Terminology</title>
|
||||
<glossentry id="gloss-activities">
|
||||
<glossterm>Activities</glossterm>
|
||||
<glossdef><para>Activities are sets of &plasma; widgets that have their own wallpaper&newpara;
|
||||
A bit like Virtual Desktops, but not quite. For example you have a "work activity" with commit rss feeds, a note with your TODO, a Folder View with your work related files, and a subtle wallpaper.&newpara;
|
||||
Next to it, you have your freetime activity, with previews of family photos and dogs, rss feeds from your favorite blogs, a Folder View showing your movie collection, a twitter applet and of course that Iron Maiden wallpaper you have been loving since the early 80s.&newpara;
|
||||
At 17:00 hours sharp you switch from the work activity to your freetime activity.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://userbase.kde.org/Plasma"&linkmid;Plasma FAQ&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-virtualdesktops">Virtual Desktops</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-containment">
|
||||
<glossterm>Containment</glossterm>
|
||||
<glossdef><para>A Containment is a top level grouping of widgets. Each Containment manages the layout and configuration data of its set of widgets independently from other Containments.&newpara;
|
||||
The end result is that you can group widgets within a Containment according to the significance to your working pattern, rather than by directory grouping.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://userbase.kde.org/Plasma"&linkmid;Plasma FAQ&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-widget">Widget</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-draganddrop">
|
||||
<glossterm>Drag and Drop</glossterm>
|
||||
<glossdef><para>This concept tries to replace many actions like copying
|
||||
files from one place to another by a certain mouse movement, ⪚
|
||||
clicking on an icon in a &konqueror; window, moving the mouse to another
|
||||
window while keeping the mouse button pressed, and releasing the mouse
|
||||
button ("dropping" the object) copies files.</para>
|
||||
<glossseealso otherterm="gloss-konqueror">&konqueror;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-extender">
|
||||
<glossterm>Extender</glossterm>
|
||||
<glossdef><para>Extenders are a special kind of popup that can grow out of a &plasma; panel for example. Extenders have detachable parts. Extenders are a new concept that arrived in &plasma; for &kde; 4.2. The Kuiserver (the interface that collects all long running jobs and puts them into one window) will make use of extenders so you can detach various jobs and monitor their progress separately.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://userbase.kde.org/Plasma"&linkmid;Plasma FAQ&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-plasma">&plasma;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-gnome">
|
||||
<glossterm><acronym>GNOME</acronym></glossterm>
|
||||
<glossdef>
|
||||
<para>&emstart;G&emend;NU &emstart;N&emend;etwork &emstart;O&emend;bject
|
||||
&emstart;M&emend;odel &emstart;E&emend;nvironment, one of the
|
||||
leading &UNIX; &GUI;s.</para>
|
||||
<glossseealso otherterm="gloss-gui">&GUI;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-gui">
|
||||
<glossterm>&GUI;</glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;G&emend;raphical
|
||||
&emstart;U&emend;ser &emstart;I&emend;nterface. Every desktop
|
||||
environment (like &kde;) is a &GUI;. Most
|
||||
&GUI;s feature mouse support and/or windows to manage
|
||||
the programs.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-homedirectory">
|
||||
<glossterm>Home Directory</glossterm>
|
||||
<glossdef><para>That's the place in system, where all your files are kept. You can write your files outside of this folder, but all applications are configured to propose this folder as place to write your files to. And this is easier, when you are keeping your things here.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/Home_directory"&linkmid;Wikipedia: Home Directory&linkend;</para>
|
||||
<glossseealso otherterm="gloss-dolphin">&dolphin;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-kde">
|
||||
<glossterm>&kde;</glossterm>
|
||||
<glossdef><para>Abbreviation for "K Desktop Environment", a
|
||||
leading &GUI; for &UNIX;-based systems. You can find more
|
||||
detailed information at &linkstart;
|
||||
"http://www.kde.org"&linkmid;www.kde.org&linkend;.&newpara;
|
||||
&kde; is more than just software. It is a community made up of programmers, translators, contributors, artists, writers, distributors, and users from all over the world. Our international technology team is committed to creating the best free software for the desktop. And not only contributors, but users and fans of &kde; software can be found throughout the entire globe, giving help to other users, spreading the news, or just simply enjoying the experience.</para>
|
||||
<glossseealso otherterm="gloss-gui">&GUI;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-kicker">
|
||||
<glossterm><acronym>&kicker;</acronym></glossterm>
|
||||
<glossdef>
|
||||
<para>In &kde; 3, the relocatable bar, usually at the bottom of the screen (sometimes called the Panel), on which application launchers, the Pager, and buttons for running applications reside.</para>
|
||||
<glossseealso otherterm="gloss-panel">Panel</glossseealso>
|
||||
<glossseealso otherterm="gloss-plasma">&plasma;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-kickoff">
|
||||
<glossterm><acronym>&kickoff;</acronym></glossterm>
|
||||
<glossdef>
|
||||
<para>In &kde; SC 4 (and some late versions of &kde; 3), a launch menu in which apps are sorted by functional group. 'Favorites' replaces the 'Most used applications' in Classic Menu, and applications can be added to it. Right-click also offers the possibility of adding applications to the desktop or panel. Rapid access to a less-used application can be by the search box. Other menus are being worked on, since &kde; SC 4 can be used with more than one launcher, should that be required.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://home.kde.org/~binner/kickoff/sneak_preview.html"&linkmid;Kickoff Sneak Preview&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-pager">Pager</glossseealso>
|
||||
<glossseealso otherterm="gloss-panel">Panel</glossseealso>
|
||||
<glossseealso otherterm="gloss-plasma">&plasma;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-oxygen">
|
||||
<glossterm><acronym>Oxygen</acronym></glossterm>
|
||||
<glossdef>
|
||||
<para>Oxygen is the default theme of &kde; SC 4. Designed to bring 'a breath of fresh air' to the desktop by removing the simplistic, cartoonish icons, and replacing them with a clean theme and photo-realistic icons. Oxygen uses a desaturated palette to avoid the icons becoming a distraction and uses detailed scalable graphics (SVG).&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/Oxygen_Project"&linkmid;Wikipedia: Oxygen Project&linkend;&newpara;
|
||||
&linkstart;"http://www.oxygen-icons.org/?cat=3"&linkmid;Oxygen Icons&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-ksvg">KSVG</glossseealso>
|
||||
<glossseealso otherterm="gloss-plasma">&plasma;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-panel">
|
||||
<glossterm>Panel</glossterm>
|
||||
<glossdef><para>Refers to the panel which often resides at the bottom of the
|
||||
screen.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kicker">&kicker;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kickoff">&kickoff;</glossseealso>
|
||||
<glossseealso otherterm="gloss-plasma">&plasma;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-plasma">
|
||||
<glossterm>Plasma</glossterm>
|
||||
<glossdef><para>In &kde; SC 4 the &plasma; Desktop replaces KDesktop, &kicker; and the SuperKaramba widget engine. The applets are called Plasmoids, and range from informational widgets to mini-apps such as a calculator or dictionary. Widgets from other sources, such as SuperKaramba widgets or <trademark>Google</trademark> Gadgets are also supported.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/Plasma_(KDE)"&linkmid;Wikipedia: Plasma&linkend;&newpara;
|
||||
&linkstart;"http://plasma.kde.org/cms/1107/"&linkmid;Plasma website&linkend;&newpara;
|
||||
&linkstart;"http://userbase.kde.org/Plasma"&linkmid;Plasma FAQ&linkend;&newpara;
|
||||
&linkstart;"http://userbase.kde.org/Tutorials/TweakingPlasma"&linkmid;Tweaking Plasma&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kicker">&kicker;</glossseealso>
|
||||
<glossseealso otherterm="gloss-widget">Widget</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-ripping">
|
||||
<glossterm>Ripping</glossterm>
|
||||
<glossdef><para>The process of reading audio data from a &cdrom; and
|
||||
storing it on the hard disk.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-virtualdesktops">
|
||||
<glossterm>Virtual Desktops</glossterm>
|
||||
<glossdef><para>A popular concept of &UNIX; based window managers is the one of virtual desktops. This means you have not only one screen where you can place your windows on but several. When you switch to a different desktop (usually with a pager) you will only see the windows which you started on your new desktop or moved to it. A window can also be made "sticky" which means it appears on all virtual desktops.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://userbase.kde.org/Plasma"&linkmid;Plasma FAQ&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kickoff">&kickoff;</glossseealso>
|
||||
<glossseealso otherterm="gloss-pager">Pager</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
</glossdiv>
|
||||
|
||||
<glossdiv id="kde-development">
|
||||
<title>&kde; Development</title>
|
||||
<glossentry id="gloss-qt">
|
||||
<glossterm>&Qt;</glossterm>
|
||||
<glossdef><para>The &GUI; of &kde; is built on top of
|
||||
the &Qt; toolkit, which provides many graphical elements (so-called
|
||||
"Widgets") which are used to construct the desktop. You
|
||||
can find more information about &Qt; at &linkstart;
|
||||
"http://qt-project.org/"&linkmid;http://qt-project.org/&linkend;.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-gui">&GUI;</glossseealso>
|
||||
<glossseealso otherterm="gloss-widget">Widget</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-git">
|
||||
<glossterm>Git</glossterm>
|
||||
<glossdef><para>Git is a free and open source, distributed version control system designed to handle everything from small to very large projects with speed and efficiency.&newpara;
|
||||
Every Git clone is a full-fledged repository with complete history and full revision tracking capabilities, not dependent on network access or a central server. Branching and merging are fast and easy to do.&newpara;
|
||||
Git is used for version control of files, much like tools such as Mercurial, Bazaar, Subversion, CVS, Perforce, and Visual SourceSafe.&newpara;
|
||||
It was decided that Git will be the main version control system of &kde;, replacement of SVN. It has been already used for some &kde; projects like Konversation and Amarok.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://git-scm.com/"&linkmid;Git Homepage&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-svn">SVN</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-i18n">
|
||||
<glossterm>i18n</glossterm>
|
||||
<glossdef><para>Abbreviation for "internationalization". &kde;
|
||||
supports many different languages, and several i18n techniques make it
|
||||
easy to translate the &GUI; as well as the accompanying
|
||||
documents of &kde; into all these languages. More information about the
|
||||
i18n process is available at &linkstart;
|
||||
"http://l10n.kde.org"&linkmid;l10n.kde.org&linkend;.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-gui">&GUI;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-kross">
|
||||
<glossterm>Kross</glossterm>
|
||||
<glossdef><para>Kross is a scripting framework, enabling support for multiple scripting languages. A plugin system allows for the support of further languages in the future.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-kdom">
|
||||
<glossterm>KDOM</glossterm>
|
||||
<glossdef><para>A KPart module making KHTML <acronym>DOM</acronym> (&emstart;D&emend;ocument &emstart;O&emend;bject &emstart;M&emend;odel) rendering capabilities available to all applications. KSVG2 is built on KDOM for &kde; SC 4.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-khtml">KHTML</glossseealso>
|
||||
<glossseealso otherterm="gloss-kparts">KParts</glossseealso>
|
||||
<glossseealso otherterm="gloss-khtml">KSVG</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-kjs">
|
||||
<glossterm>KJS</glossterm>
|
||||
<glossdef><para>&kde; platform's JavaScript engine.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kparts">KParts</glossseealso>
|
||||
<glossseealso otherterm="gloss-plasma">&plasma;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-ksvg">
|
||||
<glossterm>KSVG</glossterm>
|
||||
<glossdef><para>KSVG enables support for scalable vector graphics in a KHTML browser. KSVG2 extends this for &kde; SC 4.</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-khtml">KHTML</glossseealso>
|
||||
<glossseealso otherterm="gloss-kparts">KParts</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-l10n">
|
||||
<glossterm>l10n</glossterm>
|
||||
<glossdef><para>Abbreviation for "localization", the process
|
||||
of adapting a program to the local environment. This includes ⪚ the
|
||||
currency used for monetary values or the time format.</para>
|
||||
<glossseealso otherterm="gloss-i18n">i18n</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-strigi">
|
||||
<glossterm>Strigi</glossterm>
|
||||
<glossdef><para>A deep-indexed search daemon, Strigi aims to be fast and light-weight. It also uses SHA-1 hash which will help in the identification of duplicate files.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/Strigi"&linkmid;Wikipedia: Strigi&linkend;</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-widget">
|
||||
<glossterm>Widget</glossterm>
|
||||
<glossdef><para>Graphical elements like scrollbars, buttons or input
|
||||
fields which are used by &kde; to construct the &GUI;.
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-kde">&kde;</glossseealso>
|
||||
<glossseealso otherterm="gloss-gui">&GUI;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-svn">
|
||||
<glossterm><acronym>SVN</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;Subversion&emend;, a version control system. The <acronym>SVN</acronym> is a very elegant way of managing file versions that allow more than one developer to easily work on the same project. You can find a description of how to get the latest (developer) version of the &kde; sources via anonymous <acronym>SVN</acronym> on &linkstart;"http://developer.kde.org/source/anonsvn.html"&linkmid;http://developer.kde.org/source/anonsvn.html&linkend;.&newpara; More about <acronym>SVN</acronym> is available at &linkstart;"http://subversion.tigris.org/"&linkmid;http://subversion.tigris.org/&linkend;.</para>
|
||||
<glossseealso otherterm="gloss-git">Git</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-xmlgui">
|
||||
<glossterm>XMLGUI</glossterm>
|
||||
<glossdef><para>A programmers' framework for designing the user interface. It is extensively used by KParts.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/XMLGUI"&linkmid;Wikipedia: XMLGUI&linkend;&newpara;
|
||||
&linkstart;"http://en.wikipedia.org/wiki/Qt_Style_Sheets"&linkmid;Wikipedia: Qt Style Sheets&linkend;</para>
|
||||
<glossseealso otherterm="gloss-gui">&GUI;</glossseealso>
|
||||
<glossseealso otherterm="gloss-kparts">Kparts</glossseealso>
|
||||
<glossseealso otherterm="gloss-qt">&Qt;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
</glossdiv>
|
||||
|
||||
<glossdiv id="glossdiv-misc">
|
||||
<title>Miscellaneous</title>
|
||||
<glossentry id="gloss-rfc">
|
||||
<glossterm><acronym>RFC</acronym></glossterm>
|
||||
<glossdef><para>&emstart;R&emend;equest &emstart;F&emend;or
|
||||
&emstart;C&emend;omment. A common way to publish new protocol
|
||||
ideas or procedures for evaluation of the Internet community. Though
|
||||
<acronym>RFC</acronym>s are not mandatory, many applications try to
|
||||
adhere to them, once they have been approved by the community.&newpara;
|
||||
More information about <acronym>RFC</acronym>s can be found at the
|
||||
&linkstart;"http://www.rfc-editor.org"&linkmid;RFC Homepage&linkend;.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
</glossdiv>
|
||||
|
||||
<glossdiv id="glossdiv-protocols">
|
||||
<title>Various protocols</title>
|
||||
<glossentry id="gloss-smb">
|
||||
<glossterm><acronym>SMB</acronym></glossterm>
|
||||
<glossdef><para>&emstart;S&emend;erver &emstart;M&emend;essage
|
||||
&emstart;B&emend;lock. A network protocol used in &Microsoft; &Windows;
|
||||
networks to access the file systems of other computers.</para>
|
||||
<glossseealso otherterm="gloss-ioslave"><acronym>IO</acronym> Slave</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-irc">
|
||||
<glossterm><acronym>IRC</acronym></glossterm>
|
||||
<glossdef><para>&emstart;I&emend;nternet &emstart;R&emend;elay
|
||||
&emstart;C&emend;hat. A protocol defined in <acronym>RFC</acronym>
|
||||
1459, which handles the specification to enable real-time text chat.</para>
|
||||
<glossseealso otherterm="gloss-rfc"><acronym>RFC</acronym></glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<glossentry id="gloss-host">
|
||||
<glossterm>Host</glossterm>
|
||||
<glossdef><para>This can either be a name from your
|
||||
<filename>/etc/hosts</filename> file
|
||||
(<systemitem class="systemname">mycomputer</systemitem>),
|
||||
an Internet name (<systemitem class="systemname">www.kde.org</systemitem>) or an IP-Address
|
||||
(<systemitem>192.168.0.10</systemitem>).
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
</glossdiv>
|
||||
|
||||
&glossary-kdeprinting;
|
||||
</glossary>
|
941
doc/glossary/kdeprintingglossary.docbook
Normal file
|
@ -0,0 +1,941 @@
|
|||
|
||||
<!--
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE glossary PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
|
||||
"customization/dtd/kdex.dtd" [
|
||||
<!ENTITY % addindex "IGNORE">
|
||||
<!ENTITY % English "INCLUDE">
|
||||
<!ENTITY glossary-kdeprinting SYSTEM "kdeprintingglossary.docbook">
|
||||
|
||||
]>
|
||||
<glossary id="glossary">
|
||||
-->
|
||||
<glossdiv id="glossdiv-printing">
|
||||
<title>Printing</title>
|
||||
|
||||
|
||||
<glossentry id="gloss-acl">
|
||||
<glossterm><acronym>ACLs</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;A&emend;ccess
|
||||
&emstart;C&emend;ontrol &emstart;L&emend;ists;
|
||||
ACLs are used to check for the access by a given
|
||||
(authenticated) user. A first rough support for ACLs
|
||||
for printing is available from &CUPS;; this will be refined
|
||||
in future versions. </para>
|
||||
<glossseealso otherterm="gloss-authentication">Authentication</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-appsocketprotocol">
|
||||
<glossterm>AppSocket Protocol</glossterm>
|
||||
<glossdef><para>AppSocket is a protocol for the transfer of
|
||||
print data, also frequently called "Direct TCP/IP Printing".
|
||||
&Hewlett-Packard; have taken AppSocket, added a few minor
|
||||
extensions around it and been very successful in renaming
|
||||
and marketing it under the brand "&HP; JetDirect"...</para>
|
||||
<glossseealso otherterm="gloss-hpjetdirectprotocol">&HP; JetDirect Protocol</glossseealso>
|
||||
<glossseealso otherterm="gloss-directtcpipprinting">Direct TCP/IP Printing</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-apsfilter">
|
||||
<glossterm>APSfilter</glossterm>
|
||||
<glossdef><para>APSfilter is used mainly in the context of "classical"
|
||||
&UNIX; printing (BSD-style LPD). It is a sophisticated shell script,
|
||||
disguised as an "all-in-one" filtering program. In reality,
|
||||
APSfilter calls "real filters" to do the jobs needed. It sends
|
||||
printjobs automatically through these other filters, based on an
|
||||
initial file-type analysis of the printfile.
|
||||
It is written and maintained by Andreas Klemm.&newpara;
|
||||
It is
|
||||
similar to Magicfilter and mostly uses Ghostscript for file conversions.
|
||||
Some Linux Distributions (like &SuSE;) use APSfilter, others
|
||||
Magicfilter (like &RedHat;), some have both for preference selection
|
||||
(like *BSD).&newpara;
|
||||
&CUPS; has &emstart;no&emend; need for APSfilter,
|
||||
as it runs its own file type recognition (based on &MIME; types)
|
||||
and applies its own filtering logic.</para>
|
||||
<glossseealso otherterm="gloss-ghostscript">Ghostscript</glossseealso>
|
||||
<glossseealso otherterm="gloss-magicfilter">Magicfilter</glossseealso>
|
||||
<glossseealso otherterm="gloss-mimetypes">&MIME;-Types</glossseealso>
|
||||
<glossseealso otherterm="gloss-printcap">printcap</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-authentication">
|
||||
<glossterm>Authentication</glossterm>
|
||||
<glossdef><para>Proving the identity of a certain person (maybe via username/password
|
||||
or by means of a certificate) is often called authentication. Once you are
|
||||
authenticated, you may or may not get access to a requested resource,
|
||||
possibly based on ACLs.</para>
|
||||
<glossseealso otherterm="gloss-acl">ACLs</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-bidirectionalcommunication">
|
||||
<glossterm>Bi-directional communication</glossterm>
|
||||
<glossdef><para>In the context of printing, a server or a host may receive additional
|
||||
information sent back from the printer (status messages &etc;), either
|
||||
upon a query or unrequested. AppSocket ( = &HP; JetDirect), &CUPS; and IPP
|
||||
support bi-directional communication, LPR/LPD and BSD-style printing
|
||||
do not...</para>
|
||||
<glossseealso otherterm="gloss-appsocketprotocol">AppSocket Protocol</glossseealso>
|
||||
<glossseealso otherterm="gloss-cups">&CUPS;</glossseealso>
|
||||
<glossseealso otherterm="gloss-directtcpipprinting">Direct TCP/IP Printing</glossseealso>
|
||||
<glossseealso otherterm="gloss-hpjetdirectprotocol">&HP; JetDirect</glossseealso>
|
||||
<glossseealso otherterm="gloss-ipp">IPP</glossseealso>
|
||||
<glossseealso otherterm="gloss-lprlpd">LPR/LPD</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-bsdstyleprinting">
|
||||
<glossterm>BSD-style Printing</glossterm>
|
||||
<glossdef><para>Generic term for different variants of the traditional &UNIX;
|
||||
printing method. Its first version appeared in the early 70s on
|
||||
BSD &UNIX; and was formally described in &linkstart;"http://www.rfc.net/rfc1179.html"&linkmid;RFC 1179&linkend; only as late
|
||||
as 1990.&newpara;
|
||||
At the time when BSD "remote" printing was first designed, printers
|
||||
were serially or otherwise directly connected devices to a host
|
||||
(with the Internet hardly consisting of more than 100 nodes!); printers
|
||||
used hole-punched, continuous paper, fed through by a tractor
|
||||
mechanism, with simple rows of ASCII text mechanically hammered on to
|
||||
the medium, drawn from a cardboard box beneath the table. It came out
|
||||
like a zig-zag folded paper "snake". Remote printing consisted of a
|
||||
neighboring host in the next room sending a file
|
||||
asking for printout.&newpara;
|
||||
How technology has changed! Printers generally use cut-sheet media, they have
|
||||
built-in intelligence to compute the raster images of pages after pages
|
||||
that are sent to them using one of the powerful page description
|
||||
languages (PDL). Many are network nodes in their own right,
|
||||
with CPU, RAM, a hard disk and their own Operation System, and
|
||||
are hooked to a net with potentially millions of users...&newpara;
|
||||
It is a vast proof of the flexible &UNIX; concept for doing things,
|
||||
that it made "Line Printing" reliably work even under these modern
|
||||
conditions. But time has finally come now to go for something new
|
||||
-- the IPP.
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-ipp">IPP</glossseealso>
|
||||
<glossseealso otherterm="gloss-cups">&CUPS;</glossseealso>
|
||||
<glossseealso otherterm="gloss-lprlpd">LPR/LPD printing</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-cups">
|
||||
<glossterm>&CUPS;</glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;C&emend;ommon
|
||||
&emstart;U&emend;NIX &emstart;P&emend;rinting
|
||||
&emstart;S&emend;ystem; &CUPS; is the most modern &UNIX; and Linux
|
||||
printing system, also providing cross-platform print services
|
||||
to &Microsoft; &Windows; and Apple &MacOS; clients. Based on IPP, it does
|
||||
away with all the pitfalls of old-style BSD printing,
|
||||
providing authentication, encryption and ACLs, plus many more
|
||||
features. At the same time it is backward-compatible enough
|
||||
to serve all legacy clients that are not yet up to IPP, via
|
||||
LPR/LPD (BSD-style).&newpara;
|
||||
&CUPS; is able to control any &PostScript; printer by
|
||||
utilizing the vendor-supplied PPD (PostScript Printer
|
||||
Description file), targeted originally for &Microsoft; Windows NT
|
||||
printing only. &kde; Printing is most powerful if based on
|
||||
&CUPS;.&newpara;
|
||||
More info:&newpara;
|
||||
&linkstart;"http://www.cups.org"&linkmid;&CUPS; Homepage&linkend;</para>
|
||||
<glossseealso otherterm="gloss-acl">ACLs</glossseealso>
|
||||
<glossseealso otherterm="gloss-authentication">Authentication</glossseealso>
|
||||
<glossseealso otherterm="gloss-bsdstyleprinting">BSD-style printing</glossseealso>
|
||||
<glossseealso otherterm="gloss-ipp">IPP</glossseealso>
|
||||
<glossseealso otherterm="gloss-lprlpd">LPR/LPD</glossseealso>
|
||||
<glossseealso otherterm="gloss-ppd">PPD</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-cupsfaq">
|
||||
<glossterm><acronym>&CUPS;-FAQ</acronym></glossterm>
|
||||
<glossdef><para>&linkstart;"http://www.cups.org/articles.php?L+TFAQ"&linkmid;&CUPS;-FAQ&linkend;
|
||||
is a valuable resource to answer many questions that anyone new to
|
||||
&CUPS; printing might have at first.
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-daemon">
|
||||
<glossterm><acronym>Daemon</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;D&emend;isk
|
||||
&emstart;a&emend;nd &emstart;e&emend;xecution
|
||||
&emstart;mon&emend;itor; <acronym>Daemons</acronym> are present
|
||||
on all &UNIX; systems to perform tasks independent of user
|
||||
intervention. Readers more familiar with &Microsoft; &Windows; might
|
||||
want to compare daemons and the tasks they are responsible
|
||||
with "services".&newpara;
|
||||
One example of a daemon present on most
|
||||
legacy &UNIX; systems is the LPD (Line Printer Daemon); &CUPS; is
|
||||
widely seen as the successor to LPD in the &UNIX; world and
|
||||
it also operates through a daemon. </para>
|
||||
<glossseealso otherterm="gloss-spooling">SPOOLing</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-databaselinuxprinting">
|
||||
<glossterm>Database, Linuxprinting.org</glossterm>
|
||||
<glossdef><para>Already years ago, when Linux printing was still really difficult
|
||||
(only command line printing was known to most Linux users, no device
|
||||
specific print options were available for doing the jobs), Grant Taylor,
|
||||
author of the "Linux Printing HOWTO", collected most of the available
|
||||
information about printers, drivers and filters in his database.&newpara;
|
||||
With the emerging
|
||||
&CUPS; concept, extending the use of PPDs even to non-PostScript printers,
|
||||
he realized the potential of this database: if one puts the different
|
||||
datablobs (with content that could be described along the lines
|
||||
"Which device prints with which Ghostscript or other
|
||||
filter?", "How well?", and "What command line switches are available?") into
|
||||
PPD-compatible files, he could have all the power of &CUPS; on top of
|
||||
the traditional printer "drivers".&newpara;
|
||||
This has now developed into a broader
|
||||
concept, known as "Foomatic". Foomatic extends the capabilities
|
||||
of spoolers other than &CUPS; (LPR/LPD, LPRng, PDQ, PPR) to a certain
|
||||
degree ("stealing" some concepts from &CUPS;). The Linuxprinting
|
||||
Database is not a Linux-only stop -- people running other &UNIX;
|
||||
based OSes (like *BSD or &MacOS; X) will also find valuable information
|
||||
and software there.
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-foomatic">Foomatic</glossseealso>
|
||||
<glossseealso otherterm="gloss-linuxprintingdatabase">Linuxprinting database</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-directtcpipprinting">
|
||||
<glossterm>Direct TCP/IP Printing</glossterm>
|
||||
<glossdef><para>This is a method that often uses TCP/IP port 9100 to connect
|
||||
to the printer. It works with many modern network printers and has
|
||||
a few advantages over LPR/LPD, as it is faster and provides some
|
||||
"backchannel feedback data" from the printer to the host sending
|
||||
the job.</para>
|
||||
<glossseealso otherterm="gloss-appsocketprotocol">AppSocket Protocol</glossseealso>
|
||||
<glossseealso otherterm="gloss-hpjetdirectprotocol">&HP; JetDirect Protocol</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-drivers">
|
||||
<glossterm>Drivers, Printer Drivers</glossterm>
|
||||
<glossdef><para>The term "printer drivers", used in the same sense
|
||||
as on the &Microsoft; &Windows; platform, is not entirely applicable
|
||||
to a Linux or &UNIX; platform. A "driver" functionality
|
||||
is supplied on &UNIX; by different modular components working
|
||||
together. At the core of the printer drivers are "filters". Filters convert
|
||||
print files from a given input format to another format that is acceptable
|
||||
to the target printer. In many cases filters may be connected to a whole
|
||||
filter "chain", where only the result of the last conversion is sent to the
|
||||
printer. The actual transfer of the print data to the device is performed by
|
||||
a "backend".
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-filter">Filter</glossseealso>
|
||||
<glossseealso otherterm="gloss-ppd">PPDs</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-easysoftwareproducts">
|
||||
<glossterm>Easy Software Products</glossterm>
|
||||
<glossdef><para>Mike Sweet's company, which has contributed a few substantial
|
||||
software products towards the Free Software community; amongst
|
||||
them the initial version of &linkstart;
|
||||
"http://gimp-print.sf.net/"&linkmid;Gimp-Print,&linkend; the &linkstart;
|
||||
"http://www.easysw.com/epm/"&linkmid;EPM software packaging&linkend; tool
|
||||
and &linkstart;"http://www.easysw.com/htmldoc/"&linkmid;HTMLDOC&linkend;
|
||||
(used by the "Linux Documentation Project" to build the PDF versions
|
||||
of the HOWTOs) -- but most importantly: &linkstart;
|
||||
"http://www.cups.org/"&linkmid;&CUPS;&linkend; (the 'Common &UNIX; Printing
|
||||
System').&newpara;
|
||||
ESP financed themselves by selling a commercial version
|
||||
of &CUPS;, called ESP PrintPro,
|
||||
that includes some professional enhancements.
|
||||
ESP Print Pro was purchased by Apple Inc. in February of 2007. ESP Print Pro software and support are no longer available from Easy Software Products. ESP Print Pro users were given non-expiring, floating licenses which may be accessed from the MyESP pages.
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-cups">&CUPS;</glossseealso>
|
||||
<glossseealso otherterm="gloss-esp">ESP</glossseealso>
|
||||
<glossseealso otherterm="gloss-gimpprint">Gimp-Print</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-encryption">
|
||||
<glossterm>Encryption</glossterm>
|
||||
<glossdef><para>Encryption of confidential data is an all-important issue if
|
||||
you transfer it over the Internet or even within intranets.&newpara;
|
||||
Printing
|
||||
via traditional protocols is not encrypted at all -- it is very easy
|
||||
to tap and eavesdrop ⪚ into &PostScript; or PCL data transferred
|
||||
over the wire.&newpara;
|
||||
Therefore, in the design of IPP, provision was made for the easy
|
||||
plugin of encryption mechanisms (which can be provided by the same
|
||||
means as the encryption standards for HTTP traffic: SSL and TLS).</para>
|
||||
<glossseealso otherterm="gloss-authentication">Authentication</glossseealso>
|
||||
<glossseealso otherterm="gloss-cups">&CUPS;</glossseealso>
|
||||
<glossseealso otherterm="gloss-ipp">IPP</glossseealso>
|
||||
<glossseealso otherterm="gloss-ssl">SSL</glossseealso>
|
||||
<glossseealso otherterm="gloss-tls">TLS</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-epson">
|
||||
<glossterm><acronym>Epson</acronym></glossterm>
|
||||
<glossdef><para>Epson inkjets are among the best supported models by Free software
|
||||
drivers, as the company was not necessarily as secretive about their
|
||||
devices and handed technical specification documents to developers.
|
||||
The excellent print quality achieved by Gimp-Print on the Stylus
|
||||
series of printers can be attributed to this openness.
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-escapesequence">
|
||||
<glossterm>Escape Sequences</glossterm>
|
||||
<glossdef><para>The first ever printers printed ASCII data only. To
|
||||
initiate a new line, or eject a page, they included special
|
||||
command sequences, often carrying a leading [ESC]-character.
|
||||
&HP; evolved this concept through its series of PCL language
|
||||
editions until today, having now developed a full-blown
|
||||
Page Description Language (PDL) from these humble beginnings.
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-pcl">PCL</glossseealso>
|
||||
<glossseealso otherterm="gloss-pdl">PDL</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-escp">
|
||||
<glossterm><acronym>ESC/P</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;E&emend;pson
|
||||
&emstart;S&emend;tandard &emstart;C&emend;odes for
|
||||
&emstart;P&emend;rinters. Besides &PostScript; and PCL, Epson's ESC/P
|
||||
printer language is one of the best known.</para>
|
||||
<glossseealso otherterm="gloss-pcl">PCL</glossseealso>
|
||||
<glossseealso otherterm="gloss-postscript">&PostScript;</glossseealso>
|
||||
<glossseealso otherterm="gloss-hpgl">hpgl</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-esp">
|
||||
<glossterm><acronym>ESP</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;E&emend;asy
|
||||
&emstart;S&emend;oftware &emstart;P&emend;roducts;
|
||||
the company that developed &CUPS; (the "Common &UNIX; Printing System").
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-easysoftwareproducts">Easy Software Products</glossseealso>
|
||||
<glossseealso otherterm="gloss-cups">&CUPS;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-filter">
|
||||
<glossterm>Filter</glossterm>
|
||||
<glossdef><para>Filters, in general, are programs that take some input
|
||||
data, work on it and pass it on as their output data. Filters
|
||||
may or may not change the data.&newpara;
|
||||
Filters in the context of printing, are programs that convert
|
||||
a given file (destined for printing, but not suitable in the
|
||||
format it is presently) into a printable format. Sometimes
|
||||
whole "filter chains" have to be constructed to achieve the
|
||||
goal, piping the output of one filter as the input to the next.
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-ghostscript">Ghostscript</glossseealso>
|
||||
<glossseealso otherterm="gloss-rip">RIP</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-foomatic">
|
||||
<glossterm>Foomatic</glossterm>
|
||||
<glossdef><para>Foomatic started out as the wrapper name for a set of
|
||||
different tools available from &linkstart;"http://www.linuxfoundation.org/collaborate/workgroups/openprinting/database/foomatic"&linkmid;Linuxprinting.org&linkend;
|
||||
These tools aimed to make the usage of traditional
|
||||
Ghostscript and other print filters easier for users and
|
||||
extend the filters' capabilities by adding more command line
|
||||
switches or explain the driver's execution data.&newpara;
|
||||
More recently, Foomatic gravitated towards becoming a "meta-spooling"
|
||||
system, that allows configuration of the underlying print subsystem
|
||||
through a unified set of commands (however, this is much more
|
||||
complicated than &kde; printing &GUI; interface, which performs a similar
|
||||
task with regards to different print subsystems). </para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-ghostscript">
|
||||
<glossterm>Ghostscript</glossterm>
|
||||
<glossdef><para>Ghostscript is a an interpreter for the &PostScript; language and for PDF or Raster Image Processor (RIP) in software, originally developed by L. Peter Deutsch. There is always a <acronym>GPL</acronym> version
|
||||
of Ghostscript available for free usage and distribution.
|
||||
Ghostscript is widely used inside the Linux and &UNIX; world
|
||||
for transforming &PostScript; into raster data suitable
|
||||
for sending to non-&PostScript; devices.
|
||||
More info:
|
||||
&linkstart;"http://www.ghostscript.com/"&linkmid;Ghostscript Homepage&linkend;</para>
|
||||
<glossseealso otherterm="gloss-postscript">&PostScript;</glossseealso>
|
||||
<glossseealso otherterm="gloss-rip">RIP</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-gimpprint">
|
||||
<glossterm>Gimp-Print</glossterm>
|
||||
<glossdef><para>Contrary to its name, Gimp-Print is no longer
|
||||
just the plugin to be used for printing from the popular
|
||||
Gimp program -- its codebase can also serve to be compiled
|
||||
into...&newpara;
|
||||
...a set of PPDs and associated filters that integrate seamlessly
|
||||
into &CUPS;, supporting around 130 different printer models, providing
|
||||
photographic output quality in many cases;&newpara;
|
||||
...a Ghostscript filter that can be used with any other
|
||||
program that needs a software-RIP;&newpara;
|
||||
...a library that can be used by other software applications
|
||||
in need of rasterization functions.</para>
|
||||
<glossseealso otherterm="gloss-lexmark">Lexmark Drivers</glossseealso>
|
||||
<glossseealso otherterm="gloss-rip">RIP</glossseealso>
|
||||
<glossseealso otherterm="gloss-ghostscript">Ghostscript</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-hp">
|
||||
<glossterm><acronym>&HP;</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;H&emend;ewlett-&emstart;Packard&emend;;
|
||||
one of the first companies to distribute their own Linux printer
|
||||
drivers. -- More recently, the Company has released their
|
||||
"HPIJS" package of drivers, including source code and a Free license.
|
||||
This is the first printer manufacturer to do so. HPIJS supports most
|
||||
current models of HP Ink- and DeskJets.
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-hpgl">
|
||||
<glossterm><acronym>&HP;/GL</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;&HP;&emend;
|
||||
&emstart;G&emend;raphical &emstart;L&emend;anguage;
|
||||
a &HP; printer language mainly used for plotters; many CAD
|
||||
(Computer Aided Design) software programs output &HP;/GL files for
|
||||
printing.</para>
|
||||
<glossseealso otherterm="gloss-escp">ESC/P</glossseealso>
|
||||
<glossseealso otherterm="gloss-pcl">PCL</glossseealso>
|
||||
<glossseealso otherterm="gloss-postscript">&PostScript;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-hpjetdirectprotocol">
|
||||
<glossterm>&HP; JetDirect Protocol</glossterm>
|
||||
<glossdef><para>A term branded by &HP; to describe their implementation
|
||||
of print data transfer to the printer via an otherwise "AppSocket" or
|
||||
"Direct TCP/IP Printing" named protocol.</para>
|
||||
<glossseealso otherterm="gloss-appsocketprotocol">AppSocket Protocol</glossseealso>
|
||||
<glossseealso otherterm="gloss-directtcpipprinting">Direct TCP/IP Printing</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-ietf">
|
||||
<glossterm><acronym>IETF</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;I&emend;nternet
|
||||
&emstart;E&emend;ngineering &emstart;T&emend;ask
|
||||
&emstart;F&emend;orce; an assembly of Internet, software
|
||||
and hardware experts that discuss
|
||||
new networking technologies and very often arrive at
|
||||
conclusions that are regarded by many as standards. "TCP/IP"
|
||||
is the most famous example.&newpara;
|
||||
IETF standards, as well as
|
||||
drafts, discussions, ideas and useful tutorials, are
|
||||
put in writing in the famous series of "RFCs", which
|
||||
are available to the public and included in most Linux and
|
||||
BSD distributions.</para>
|
||||
<glossseealso otherterm="gloss-ipp">IPP</glossseealso>
|
||||
<glossseealso otherterm="gloss-pwg">PWG</glossseealso>
|
||||
<glossseealso otherterm="gloss-rfc">RFC</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-ipp">
|
||||
<glossterm><acronym>IPP</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;I&emend;nternet
|
||||
&emstart;P&emend;rinting &emstart;P&emend;rotocol;
|
||||
defined in a series of RFCs accepted by the IETF with
|
||||
status "proposed standard"; was designed
|
||||
by the PWG. -- IPP is a completely new design for network printing,
|
||||
but it utilizes a very well-known and proven method for the
|
||||
actual data transfer: HTTP 1.1! By not "re-inventing the wheel",
|
||||
and basing itself on an existing and robust Internet standard,
|
||||
IPP is able to relatively easily bolt other HTTP-compatible standard
|
||||
mechanisms into its framework:&newpara;
|
||||
|
||||
Basic, Digest or Certificate authentication mechanisms&newpara;
|
||||
SSL or TLS for encryption of transferred data&newpara;
|
||||
LDAP for directory services (to publish
|
||||
data on printers, device-options, drivers, costs or
|
||||
also to the network; or to check for passwords while
|
||||
conducting authentication)
|
||||
</para>
|
||||
|
||||
<glossseealso otherterm="gloss-cups">&CUPS;</glossseealso>
|
||||
<glossseealso otherterm="gloss-pwg">PWG</glossseealso>
|
||||
<glossseealso otherterm="gloss-ietf">IETF</glossseealso>
|
||||
<glossseealso otherterm="gloss-rfc">RFC</glossseealso>
|
||||
<glossseealso otherterm="gloss-tls">TLS</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-lexmark">
|
||||
<glossterm><acronym>Lexmark</acronym></glossterm>
|
||||
<glossdef><para>was one of the first companies to distribute their own Linux printer
|
||||
drivers for some of their models. However, those drivers are binary only
|
||||
(no source code available), and therefore cannot be used to integrate into
|
||||
other Free printing software projects.
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-linuxprintingorg">
|
||||
<glossterm>Linuxprinting.org</glossterm>
|
||||
<glossdef><para>Linuxprinting.org = not just for Linux; all &UNIX;-like OS-es,
|
||||
like *BSD and commercial Unices may find useful printing
|
||||
information on this site. This web site is the home for the interesting
|
||||
Foomatic project, that strives to develop the "Meta Print Spool and Driver
|
||||
Configuration Toolset" (being able to configure, through one common
|
||||
interface, different print subsystems and their required drivers) with the
|
||||
ability to transfer all queues, printers and configuration files seamlessly
|
||||
to another spooler without new configuration effort. -- Also, they maintain
|
||||
the Printing Database; a collection of driver and device information that
|
||||
enables everybody to find the most current information about printer models,
|
||||
and also generate online the configuration files for any
|
||||
spooler/driver/device combo known to work with one of the common Linux or
|
||||
&UNIX; print subsystems.
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-linuxprintingdatabase">Linuxprinting database</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-linuxprintingdatabase">
|
||||
<glossterm><acronym>Linuxprinting.org Database</acronym></glossterm>
|
||||
<glossdef><para>&linkstart;"http://www.openprinting.org/printers"&linkmid;Database&linkend; containing printers and drivers that are suitable for them.
|
||||
More info:
|
||||
&linkstart;"http://www.linuxfoundation.org/collaborate/workgroups/openprinting/database/indexfaq"&linkmid;Linuxprinting.org FAQ&linkend;</para>
|
||||
<glossseealso otherterm="gloss-foomatic">Foomatic</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-lprlpd">
|
||||
<glossterm><acronym>LPR/LPD</acronym> printing</glossterm>
|
||||
<glossdef><para>LPR == some people translate &emstart;L&emend;ine
|
||||
&emstart;P&emend;rinting &emstart;R&emend;equest, others:
|
||||
&emstart;L&emend;ine &emstart;P&emend;rinter
|
||||
&emstart;R&emend;emote.</para>
|
||||
<glossseealso otherterm="gloss-bsdstyleprinting">BSD-style printing</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-magicfilter">
|
||||
<glossterm>Magicfilter</glossterm>
|
||||
<glossdef><para>Similarly to the APSfilter program, Magicfilter
|
||||
provides automatic file type recognition functions and, base
|
||||
on that, automatic file conversion to a printable format,
|
||||
depending on the target printer.</para>
|
||||
<glossseealso otherterm="gloss-apsfilter">APSfilter</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-mimetypes">
|
||||
<glossterm>&MIME;-Types</glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;M&emend;ultipurpose (or
|
||||
Multimedia) &emstart;I&emend;nternet &emstart;M&emend;ail
|
||||
&emstart;E&emend;xtensions; &MIME;-Types were first used to allow
|
||||
the transport of binary data (like mail attachments containing
|
||||
graphics) over mail connections that were normally only transmitting
|
||||
ASCII characters: the data had to be encoded into an ASCII representation.&newpara;
|
||||
Later this concept was extended to describe a data format in
|
||||
a platform independent, but at the same time non-ambiguous, way.
|
||||
From &Windows; everybody knows the .doc extensions for &Microsoft; Word files.
|
||||
This is handled ambiguously on the &Windows; platform: .doc extensions are also
|
||||
used for simple text files or for Adobe Framemaker files. And if a real
|
||||
Word file is renamed with a different extension, it can no longer be
|
||||
opened by the program.&newpara;
|
||||
&MIME; typed files carry a recognition string with them, describing
|
||||
their file format based on &emstart;main_category/sub_category&emend;.
|
||||
Inside IPP, print files are also described using the &MIME; type scheme.
|
||||
&MIME; types are registered with the IANA (Internet Assigning Numbers
|
||||
&emstart;Association&emend;) to keep them unambiguous.&newpara;
|
||||
&CUPS; has some &MIME; types of its own registered, like
|
||||
&emstart;application/vnd.cups-raster&emend; (for the &CUPS;-internal
|
||||
raster image format).
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-cups">&CUPS;</glossseealso>
|
||||
<glossseealso otherterm="gloss-easysoftwareproducts">Easy Software Products</glossseealso>
|
||||
<glossseealso otherterm="gloss-gimpprint">Gimp-Print</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-pcl">
|
||||
<glossterm><acronym>PCL</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;P&emend;rinter
|
||||
&emstart;C&emend;ontrol &emstart;L&emend;anguage;
|
||||
developed by &HP;. PCL started off in version 1 as a simple
|
||||
command set for ASCII printing; now,
|
||||
in its versions PCL6 and PCL-X, it is capable of printing graphics
|
||||
and color -- but outside the &Microsoft; &Windows; realm and &HP-UX;
|
||||
(&HP;'s own brand of &UNIX;), it is not commonly used...</para>
|
||||
<glossseealso otherterm="gloss-escp">ESC/P</glossseealso>
|
||||
<glossseealso otherterm="gloss-hpgl">&HP;/GL</glossseealso>
|
||||
<glossseealso otherterm="gloss-pdl">PDL</glossseealso>
|
||||
<glossseealso otherterm="gloss-postscript">&PostScript;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-pdl">
|
||||
<glossterm><acronym>PDL</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;P&emend;age
|
||||
&emstart;D&emend;escription &emstart;L&emend;anguage;
|
||||
PDLs describe, in an abstract way, the graphical representation
|
||||
of a page. - Before it is actually transferred into
|
||||
toner or ink laid down on to paper, a PDL needs to be
|
||||
"interpreted" first. In &UNIX;, the most important PDL
|
||||
is &PostScript;.
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-escp">ESC/P</glossseealso>
|
||||
<glossseealso otherterm="gloss-hpgl">&HP;/GL</glossseealso>
|
||||
<glossseealso otherterm="gloss-pcl">PCL</glossseealso>
|
||||
<glossseealso otherterm="gloss-postscript">&PostScript;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-pixel">
|
||||
<glossterm>Pixel</glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;Pic&emend;ture
|
||||
&emstart;El&emend;ement; this term describes the smallest
|
||||
part of a raster picture (either as printed on paper
|
||||
or as displayed on a monitor by cathode rays or LCD elements). As
|
||||
any graphical or image representation on those types of output
|
||||
devices is composed of pixels, the values of "ppi" (pixel per inch)
|
||||
and &dpi; (dots per inch) are one important parameter for the
|
||||
overall quality and resolution of an image.</para>
|
||||
<glossseealso otherterm="gloss-filter">Filter</glossseealso>
|
||||
<glossseealso otherterm="gloss-ghostscript">Ghostscript</glossseealso>
|
||||
<glossseealso otherterm="gloss-postscript">&PostScript;</glossseealso>
|
||||
<glossseealso otherterm="gloss-raster">Raster</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-pjl">
|
||||
<glossterm><acronym>PJL</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;P&emend;rint
|
||||
&emstart;J&emend;ob &emstart;L&emend;anguage;
|
||||
developed by &HP; to control and influence default and per-job
|
||||
settings of a printer. It may not only be used
|
||||
for &HP;'s own (PCL-)printers; also many &PostScript;
|
||||
and other printers understand PJL commands sent to them
|
||||
inside a print job, or in a separate signal.</para>
|
||||
<glossseealso otherterm="gloss-pcl">PCL</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-postscript">
|
||||
<glossterm>&PostScript;</glossterm>
|
||||
<glossdef><para>&PostScript; (often shortened to "PS") is the de-facto
|
||||
standard in the &UNIX; world for printing files. It was
|
||||
developed by Adobe and licensed to printer manufacturers
|
||||
and software companies.&newpara;
|
||||
As the &PostScript; specifications were
|
||||
published by Adobe, there are also "Third Party" implementations
|
||||
of &PostScript; generating and &PostScript; interpreting software
|
||||
available (one of the best-known in the Free software world
|
||||
being Ghostscript, a powerful PS-interpreter).
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-escp">ESC/P</glossseealso>
|
||||
<glossseealso otherterm="gloss-hpgl">&HP;/GL</glossseealso>
|
||||
<glossseealso otherterm="gloss-pcl">PCL</glossseealso>
|
||||
<glossseealso otherterm="gloss-ppd">PPD</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-ppd">
|
||||
<glossterm><acronym>PPD</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;P&emend;ostScript
|
||||
&emstart;P&emend;rinter &emstart;D&emend;escription;
|
||||
PPDs are ASCII files storing all information about the special
|
||||
capabilities of a printer, plus definitions of the (PostScript-
|
||||
or PJL-) commands to call on a certain capability (like print
|
||||
duplexing).&newpara;
|
||||
As the explanation of the acronym reveals, PPDs were originally
|
||||
only used for &PostScript; printers. &CUPS; has extended the
|
||||
PPD concept to all types of printers.&newpara;
|
||||
PPDs for &PostScript; printers are provided by the printer
|
||||
vendors. They can be used with &CUPS; and &kde; printing subsystem to have access
|
||||
to the full features of any &PostScript; printer. The &kde; Team
|
||||
recommends using a PPD originally intended for use with
|
||||
&Microsoft; Windows NT.&newpara;
|
||||
PPDs for non-PostScript printers &emstart;need&emend; a
|
||||
companion "filter" to process the &PostScript; print files into
|
||||
a format digestible for the non-PostScript target device. Those
|
||||
PPD/filter combos are not (yet) available from the vendors. After
|
||||
the initiative by the &CUPS; developers to utilize PPDs, the Free
|
||||
Software community was creative enough to quickly come up with
|
||||
support for most of the currently used printer models, through
|
||||
PPDs and classical Ghostscript filters. But note: the printout
|
||||
quality varies from "hi-quality photographic output" (using
|
||||
Gimp-Print with most Epson inkjets) to "hardly readable" (using
|
||||
Foomatic-enabled Ghostscript filters for models rated as
|
||||
"paperweight" in the Linuxprinting.org database).
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-cups">&CUPS;</glossseealso>
|
||||
<glossseealso otherterm="gloss-linuxprintingorg">Linuxprinting.org</glossseealso>
|
||||
<glossseealso otherterm="gloss-postscript">&PostScript;</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-printcap">
|
||||
<glossterm>printcap</glossterm>
|
||||
<glossdef><para>In BSD-style print systems, the "printcap" file holds
|
||||
the configuration information; the printing daemon reads this file
|
||||
to determine which printers are available, what filters are to be
|
||||
user for each, where the spooling folder is located,
|
||||
if there are banner pages to be used, and so on...
|
||||
Some applications also depend on read access to the printcap
|
||||
file, to obtain the names of available printers. </para>
|
||||
<glossseealso otherterm="gloss-bsdstyleprinting">BSD-style printing</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-printermib">
|
||||
<glossterm>Printer-<acronym>MIB</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for
|
||||
&emstart;Printer&emend;-&emstart;M&emend;anagement
|
||||
&emstart;I&emend;nformation &emstart;B&emend;ase; the
|
||||
Printer-MIB defines a set of parameters that are to be
|
||||
stored inside the printer for access
|
||||
through the network. This is useful if many (in some cases, literally
|
||||
thousands) network printers are managed centrally
|
||||
with the help of SNMP (Simple Network Management Protocol).</para>
|
||||
<glossseealso otherterm="gloss-pwg">PWG</glossseealso>
|
||||
<glossseealso otherterm="gloss-snmp">SNMP</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-pwg">
|
||||
<glossterm><acronym>PWG</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for
|
||||
&emstart;P&emend;rinter &emstart;W&emend;orking
|
||||
&emstart;G&emend;roup; the PWG is a loose grouping of
|
||||
representatives of the printer industry that has, in the past
|
||||
years, developed different standards
|
||||
in relation to network printing. These were later accepted by the
|
||||
IETF as RFC standards, like the "Printer-MIB" and the IPP.</para>
|
||||
<glossseealso otherterm="gloss-postscript">&PostScript;</glossseealso>
|
||||
<glossseealso otherterm="gloss-ipp">IPP</glossseealso>
|
||||
<glossseealso otherterm="gloss-printermib">Printer-MIB</glossseealso>
|
||||
<glossseealso otherterm="gloss-snmp">SNMP</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<!--
|
||||
<glossentry id="gloss-printkioslave">
|
||||
<glossterm>print:/ KIO Slave</glossterm>
|
||||
<glossdef><para>You can use a syntax of "print:/..." to get quick access
|
||||
to &kde; printing subsystem resources. Typing "print:/manager" as a Konqueror URL
|
||||
address gives administrative access to KDEPrint. Konqueror uses &kde;'s
|
||||
famous "KParts" technology to achieve that. </para>
|
||||
<glossseealso otherterm="gloss-ioslave">IO Slave</glossseealso>
|
||||
<glossseealso otherterm="gloss-kparts">KParts</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
-->
|
||||
|
||||
<glossentry id="gloss-printerdatabase">
|
||||
<glossterm>Printer Database</glossterm>
|
||||
<glossdef><para>Good database of printer drivers can be found at &linkstart;"http://www.openprinting.org/printers"&linkmid;http://www.openprinting.org/printers&linkend;.</para>
|
||||
<glossseealso otherterm="gloss-linuxprintingdatabase">Linuxprinting Database</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-raster">
|
||||
<glossterm>Raster Image</glossterm>
|
||||
<glossdef><para>Every picture on a physical medium
|
||||
is composed of a pattern of discrete dots in different colors and (maybe)
|
||||
sizes. This is called a "raster image".&newpara;
|
||||
This is as opposed to a "vector image"
|
||||
where the graphic is described in terms of continuous curves, shades,
|
||||
forms and filled areas, represented by mathematical formula. Vector images
|
||||
normally have a smaller file size and may be scaled in size
|
||||
without any loss of information and quality --- but they cannot be
|
||||
output directly, but always have to be "rendered" or "rasterized"
|
||||
first to the given resolution that the output device is capable of...&newpara;
|
||||
The rasterization is done by a Raster Image Processor (RIP,
|
||||
often the Ghostscript software) or some other filtering
|
||||
instance.</para>
|
||||
<glossseealso otherterm="gloss-pixel">Pixel</glossseealso>
|
||||
<glossseealso otherterm="gloss-ghostscript">Ghostscript</glossseealso>
|
||||
<glossseealso otherterm="gloss-postscript">&PostScript;</glossseealso>
|
||||
<glossseealso otherterm="gloss-filter">Filter</glossseealso>
|
||||
<glossseealso otherterm="gloss-rip">RIP</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-rip">
|
||||
<glossterm><acronym>RIP</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for
|
||||
&emstart;R&emend;aster &emstart;I&emend;mage
|
||||
&emstart;P&emend;rocess(or); if used in the context of
|
||||
printing, "RIP" means a hardware or software
|
||||
instance that converts &PostScript; (or other print formats
|
||||
that are represented in one of the non-Raster PDLs) into a
|
||||
raster image format in such a way that it is acceptable
|
||||
for the "marking engine" of the printer.&newpara;
|
||||
&PostScript; printers
|
||||
contain their own PostScript-RIPs. A RIP may or may not be located
|
||||
inside a printer.&newpara;
|
||||
For many &UNIX; systems, Ghostscript is the package that provides
|
||||
a "RIP in software", running on the host computer, and pre-digesting
|
||||
the &PostScript; or other data to become ready to be sent to the
|
||||
printing device (hence you may perceive a "grain of truth" in the
|
||||
slogan "Ghostscript turns your printer into a &PostScript;
|
||||
machine", which of course is not correct in the true sense of the
|
||||
meaning).</para>
|
||||
<glossseealso otherterm="gloss-filter">Filter</glossseealso>
|
||||
<glossseealso otherterm="gloss-ghostscript">Ghostscript</glossseealso>
|
||||
<glossseealso otherterm="gloss-postscript">&PostScript;</glossseealso>
|
||||
<glossseealso otherterm="gloss-pdl">PDL</glossseealso>
|
||||
<glossseealso otherterm="gloss-raster">Raster</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-rlpr">
|
||||
<glossterm><acronym>RLPR</acronym> (Remote LPR)</glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;R&emend;emote
|
||||
&emstart;L&emend;ine &emstart;P&emend;rinting
|
||||
&emstart;R&emend;equest; this is a BSD-style printing system,
|
||||
that needs no root privileges to be installed, and no "printcap" to
|
||||
work: all parameters may be specified on the command
|
||||
line.&newpara;
|
||||
RLPR comes in handy for many laptop users who are
|
||||
working in frequently changing environments. This is because it
|
||||
may be installed concurrently with every other printing
|
||||
sub system, and allows a very flexible and quick
|
||||
way to install a printer for direct access via LPR/LPD.
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-printcap">printcap</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-snmp">
|
||||
<glossterm><acronym>SNMP</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;S&emend;imple
|
||||
&emstart;N&emend;etwork &emstart;M&emend;anagement
|
||||
&emstart;P&emend;rotocol; SNMP is widely used to control
|
||||
all types of network node (Hosts, Routers, Switches, Gateways,
|
||||
Printers...) remotely.</para>
|
||||
<glossseealso otherterm="gloss-pwg">PWG</glossseealso>
|
||||
<glossseealso otherterm="gloss-printermib">Printer-MIB</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-ssl">
|
||||
<glossterm><acronym>SSL(3)</acronym> encryption</glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;S&emend;ecure
|
||||
&emstart;S&emend;ocket &emstart;L&emend;ayer;
|
||||
<acronym>SSL</acronym> is a proprietary encryption method for data
|
||||
transfer over HTTP that was developed by Netscape. It is now being
|
||||
replaced by an IETF standard named TLS.
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-tls"><acronym>TLS</acronym></glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-spooling">
|
||||
<glossterm><acronym>SPOOL</acronym>ing</glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;S&emend;ynchronous
|
||||
&emstart;P&emend;eripheral &emstart;O&emend;perations
|
||||
&emstart;O&emend;n&emstart;L&emend;ine;
|
||||
<acronym>SPOOL</acronym>ing enables printing applications
|
||||
(and users) to continue their work
|
||||
as the job is being taken care of by a system <acronym>daemon</acronym>,
|
||||
which stores the file at a temporary location until the printer is ready
|
||||
to print. </para>
|
||||
<glossseealso otherterm="gloss-daemon"><acronym>Daemon</acronym></glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-tls">
|
||||
<glossterm><acronym>TLS</acronym> encryption</glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;T&emend;ransport
|
||||
&emstart;L&emend;ayer &emstart;S&emend;ecurity;
|
||||
<acronym>TLS</acronym> is an encryption standard for
|
||||
data transferred over HTTP 1.1; it is defined in RFC 2246;
|
||||
although based on the former SSL development
|
||||
(from Netscape) it is not fully compatible with it.
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-ssl"><acronym>SSL(3)</acronym></glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
<glossentry id="gloss-systemVstyleprinting">
|
||||
<glossterm>System V-style printing</glossterm>
|
||||
<glossdef><para>This is the second flavor of traditional &UNIX;
|
||||
printing (as opposed to BSD-style printing). It uses
|
||||
a different command set (lp, lpadmin,...) to BSD,
|
||||
but is not fundamentally different from it. However, the
|
||||
gap between the two is big enough to make the two
|
||||
incompatible, so that a BSD-client cannot simply print
|
||||
to a System V style print server without additional
|
||||
tweaking... IPP is supposed to resolve this weakness
|
||||
and more.
|
||||
</para>
|
||||
<glossseealso otherterm="gloss-bsdstyleprinting"><acronym>BSD-style printing</acronym></glossseealso>
|
||||
<glossseealso otherterm="gloss-ipp"><acronym>IPP</acronym></glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-turboprint">
|
||||
<glossterm>TurboPrint</glossterm>
|
||||
<glossdef><para>Shareware software providing photo quality printing for many
|
||||
inkjet printers. It is useful if you are unable to find a driver for your
|
||||
printer and may be hooked into either a traditional Ghostscript system
|
||||
or a modern &CUPS; system.</para>
|
||||
<glossseealso otherterm="gloss-gimpprint">Gimp-Print</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-xpp">
|
||||
<glossterm><acronym>XPP</acronym></glossterm>
|
||||
<glossdef><para>Abbreviation for &emstart;X&emend;
|
||||
&emstart;P&emend;rinting &emstart;P&emend;anel;
|
||||
<acronym>XPP</acronym> was the first Free
|
||||
graphical print command for &CUPS;, written by Till Kamppeter,
|
||||
and in some ways a model for the "kprinter" utility in &kde; 3.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
<!--
|
||||
<glossentry id="gloss-1">
|
||||
<glossterm>xxxx</glossterm>
|
||||
<glossdef><para>.</para>
|
||||
<glossseealso otherterm="gloss-1">xyz</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-3">
|
||||
<glossterm>xxxx</glossterm>
|
||||
<glossdef><para>.</para>
|
||||
<glossseealso otherterm="gloss-1">xyz</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id="gloss-4">
|
||||
<glossterm>xxxx</glossterm>
|
||||
<glossdef><para>.</para>
|
||||
<glossseealso otherterm="gloss-1">xyz</glossseealso>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
-->
|
||||
</glossdiv>
|
||||
|
||||
|
||||
<!--
|
||||
</glossary>
|
||||
-->
|
|
@ -9,6 +9,21 @@ add_subdirectory(splashscreen)
|
|||
add_subdirectory(powerdevil)
|
||||
add_subdirectory(kwincompositing)
|
||||
add_subdirectory(kwinscreenedges)
|
||||
add_subdirectory(bookmarks)
|
||||
add_subdirectory(icons)
|
||||
add_subdirectory(cookies)
|
||||
add_subdirectory(ebrowsing)
|
||||
add_subdirectory(useragent)
|
||||
add_subdirectory(khtml-general)
|
||||
add_subdirectory(khtml-plugins)
|
||||
add_subdirectory(khtml-java-js)
|
||||
add_subdirectory(khtml-behavior)
|
||||
add_subdirectory(khtml-adblock)
|
||||
add_subdirectory(nepomuk)
|
||||
add_subdirectory(attica)
|
||||
add_subdirectory(kcm_ssl)
|
||||
add_subdirectory(smb)
|
||||
add_subdirectory(emoticons)
|
||||
|
||||
if ( Q_WS_X11 )
|
||||
add_subdirectory(autostart)
|
||||
|
@ -29,4 +44,22 @@ add_subdirectory(kwintabbox)
|
|||
add_subdirectory(kcmsmserver)
|
||||
add_subdirectory(workspaceoptions)
|
||||
add_subdirectory(khotkeys)
|
||||
add_subdirectory(cache)
|
||||
add_subdirectory(filemanager)
|
||||
add_subdirectory(filetypes)
|
||||
add_subdirectory(kcmcgi)
|
||||
add_subdirectory(kcmcss)
|
||||
add_subdirectory(kcmlaunch)
|
||||
add_subdirectory(kcmnotify)
|
||||
add_subdirectory(language)
|
||||
add_subdirectory(netpref)
|
||||
add_subdirectory(performance)
|
||||
add_subdirectory(proxy)
|
||||
add_subdirectory(spellchecking)
|
||||
add_subdirectory(componentchooser)
|
||||
add_subdirectory(kded)
|
||||
add_subdirectory(trash)
|
||||
add_subdirectory(history)
|
||||
add_subdirectory(solid-device-automounter)
|
||||
add_subdirectory(phonon)
|
||||
endif ( Q_WS_X11 )
|
||||
|
|
2
doc/kcontrol/attica/CMakeLists.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
########### install files ###############
|
||||
kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR kcontrol/attica)
|
61
doc/kcontrol/attica/index.docbook
Normal file
|
@ -0,0 +1,61 @@
|
|||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE article PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
|
||||
"dtd/kdex.dtd" [
|
||||
<!ENTITY % addindex "IGNORE">
|
||||
<!ENTITY % English "INCLUDE" > <!-- change language only here -->
|
||||
]>
|
||||
|
||||
<article id="attica" lang="&language;">
|
||||
<articleinfo>
|
||||
|
||||
<title>Social Desktop</title>
|
||||
<authorgroup>
|
||||
<author><personname><firstname>Frederik</firstname><surname>Gladhorn</surname></personname>
|
||||
<email>gladhorn@kde.org</email>
|
||||
</author>
|
||||
|
||||
<!-- TRANS:ROLES_OF_TRANSLATORS -->
|
||||
</authorgroup>
|
||||
|
||||
<date>2013-11-05</date>
|
||||
<releaseinfo>&kde; 4.12</releaseinfo>
|
||||
|
||||
<keywordset>
|
||||
<keyword>KDE</keyword>
|
||||
<keyword>Systemsettings</keyword>
|
||||
<keyword>Social Desktop</keyword>
|
||||
</keywordset>
|
||||
</articleinfo>
|
||||
|
||||
<para>The Social Desktop (Open Collaboration Services) settings module lets you
|
||||
configure your user accounts for Open Collaboration Service Providers.</para>
|
||||
|
||||
<para>At the time of writing <ulink url="http://opendesktop.org/">openDesktop.org
|
||||
</ulink> is the first provider that you can use.
|
||||
You can use the web site or this settings dialog to register and manage your account.
|
||||
</para>
|
||||
|
||||
<para>The benefit is that you can do more things in <quote>Get Hot New Stuff</quote>:
|
||||
vote for items, become a fan of them and upload new content. A configured
|
||||
account also allows you to use the social Plasma widgets (<quote>Community</quote>,
|
||||
<quote>Social News</quote> &etc;) to their full extent.
|
||||
</para>
|
||||
|
||||
<para>Using the &systemsettings; module:</para>
|
||||
|
||||
<para>You can select which provider to configure at the top.
|
||||
Either enter your existing user name and password to let &kde; use them.
|
||||
You can verify that these work by using the <guibutton>Test Login</guibutton> button</para>
|
||||
|
||||
<!--
|
||||
missing:
|
||||
Enable
|
||||
Add/Remove Providers-->
|
||||
|
||||
<para>If you do not have an account yet, use the <guilabel>Register</guilabel> tab.
|
||||
Here you need to fill out all fields.
|
||||
After clicking <guibutton>Register...</guibutton> you will receive an email from the
|
||||
server to activate your account.
|
||||
</para>
|
||||
|
||||
</article>
|
2
doc/kcontrol/bookmarks/CMakeLists.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
########### install files ###############
|
||||
kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR kcontrol/bookmarks)
|
101
doc/kcontrol/bookmarks/index.docbook
Normal file
|
@ -0,0 +1,101 @@
|
|||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE article PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
|
||||
"dtd/kdex.dtd" [
|
||||
<!ENTITY % addindex "IGNORE">
|
||||
<!ENTITY % English "INCLUDE" > <!-- change language only here -->
|
||||
]>
|
||||
|
||||
<article id="bookmarks" lang="&language;">
|
||||
<articleinfo>
|
||||
|
||||
<title>Bookmarks</title>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<personname><firstname>Xavier</firstname><surname>Vello</surname></personname>
|
||||
<email>xavier.vello@gmail.com</email>
|
||||
</author>
|
||||
<!-- TRANS:ROLES_OF_TRANSLATORS -->
|
||||
</authorgroup>
|
||||
|
||||
<date>2010-09-24</date>
|
||||
<releaseinfo>0.2 (&kde; 4.5)</releaseinfo>
|
||||
|
||||
<keywordset>
|
||||
<keyword>KDE</keyword>
|
||||
<keyword>KControl</keyword>
|
||||
<keyword>bookmarks</keyword>
|
||||
<keyword>KIO</keyword>
|
||||
</keywordset>
|
||||
</articleinfo>
|
||||
<sect1 id="conf">
|
||||
<title>Bookmarks home page</title>
|
||||
<para>This module lets you configure the bookmarks home page.</para>
|
||||
<para>To view the bookmarks home page enter <userinput>bookmarks:/</userinput> in
|
||||
the location bar.</para>
|
||||
<para>The settings in this module are also accessible by entering
|
||||
<userinput>bookmarks:/config</userinput> in the location bar.</para>
|
||||
<sect2 id="conf-general">
|
||||
<title>General settings</title>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><guilabel>Number of columns to show</guilabel></term>
|
||||
<listitem>
|
||||
<para>Folders are automatically distributed in several columns. The optimal number of columns depends on the width of the konqueror window and the number of bookmarks you have.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><guilabel>Show folder backgrounds</guilabel></term>
|
||||
<listitem>
|
||||
<para>Disable it on slow system to disable background images.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="conf-bookmark">
|
||||
<title>Bookmarks</title>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><guilabel>Show bookmarks without folder</guilabel></term>
|
||||
<listitem>
|
||||
<para>If this option is unchecked, bookmarks at the root of the hierarchy (not in a folder) are not displayed. If checked, they are gathered in a "root" folder.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><guilabel>Flatten bookmarks tree</guilabel></term>
|
||||
<listitem>
|
||||
<para>Sub-folders are shown within their parent by default. If you activate this option, sub-folders are displayed on their own. It looks less nice but it may help if you have a very big folder you want to spread in two columns.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><guilabel>Show system places</guilabel></term>
|
||||
<listitem>
|
||||
<para>Show a box with KDE places (Home, Network, ...). Useful if you use konqueror as a file manager.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="conf-cache">
|
||||
<title>Pixmap cache</title>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><guilabel>Disk cache size</guilabel></term>
|
||||
<listitem>
|
||||
<para>Specify how much disk space is used to cache the pixmaps.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><guilabel>Clear Cache</guilabel></term>
|
||||
<listitem>
|
||||
<para>Remove all cached images. This may be necessary if some favicons become corrupt and don't refresh automatically.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</sect2>
|
||||
</sect1>
|
||||
</article>
|
2
doc/kcontrol/cache/CMakeLists.txt
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
########### install files ###############
|
||||
kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR kcontrol/cache)
|
66
doc/kcontrol/cache/index.docbook
vendored
Normal file
|
@ -0,0 +1,66 @@
|
|||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE article PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
|
||||
"dtd/kdex.dtd" [
|
||||
<!ENTITY % addindex "IGNORE">
|
||||
<!ENTITY % English "INCLUDE" > <!-- change language only here -->
|
||||
]>
|
||||
|
||||
<article id="cache" lang="&language;">
|
||||
<title>Cache</title>
|
||||
<articleinfo>
|
||||
|
||||
<authorgroup>
|
||||
<author><firstname>Lauri</firstname><surname>Watts</surname></author>
|
||||
|
||||
<!-- TRANS:ROLES_OF_TRANSLATORS -->
|
||||
</authorgroup>
|
||||
|
||||
<date>2009-11-20</date>
|
||||
<releaseinfo>&kde; 4.4</releaseinfo>
|
||||
|
||||
<keywordset>
|
||||
<keyword>KDE</keyword>
|
||||
<keyword>Systemsettings</keyword>
|
||||
<keyword>Konqueror</keyword>
|
||||
<keyword>Cache</keyword>
|
||||
</keywordset>
|
||||
</articleinfo>
|
||||
|
||||
<para>This module allows you to control the size of the local cache
|
||||
folder used by &konqueror;. Note that each user account on your
|
||||
computer has a separate cache folder, and this folder is not
|
||||
shared with other web browsers such as &Netscape;.</para>
|
||||
|
||||
<para>Storing local copies of web pages that you have visited allows
|
||||
&konqueror; to quickly load their contents on subsequent visits. It
|
||||
will only be necessary to reload the contents from the original site
|
||||
if they have changed since your last visit, or if you click the reload
|
||||
button in &konqueror;.</para>
|
||||
|
||||
<para>If you really do not want any of the web pages you visit to be
|
||||
stored on your computer, you can disable &konqueror;'s disk cache by
|
||||
clearing the checkbox labeled <guilabel>Use cache</guilabel>.</para>
|
||||
|
||||
<para>You can set here how aggressively &konqueror; keeps the cache up
|
||||
to date. <guilabel>Keep cache in sync</guilabel> means that &konqueror;
|
||||
will hit the cache for all objects, downloading them if they are not
|
||||
there, and then display the item from the cache. <guilabel>Use cache
|
||||
whenever possible</guilabel> means that &konqueror; will try the cache,
|
||||
and if an object is not there, it will directly download it for display.
|
||||
<guilabel>Offline browsing mode</guilabel> means that &konqueror; will
|
||||
try the cache, and if an object is not there, it will not attempt to
|
||||
download it from the Internet.</para>
|
||||
|
||||
<para>You can control the size of the cache by typing a number into the
|
||||
text box labeled <guilabel>Disk cache size</guilabel>. This is the
|
||||
average amount of space in kilobytes that the cache folder is allowed
|
||||
to use. When the cache grows too large, &konqueror; will delete older
|
||||
files to reduce the size of the cache folder.</para>
|
||||
|
||||
<para>This is however, only an average, and during a browsing session
|
||||
the cache could become substantially larger.</para>
|
||||
|
||||
<para>You can use the <guibutton>Clear Cache</guibutton> button to empty
|
||||
the cache at any time.</para>
|
||||
|
||||
</article>
|
2
doc/kcontrol/componentchooser/CMakeLists.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
########### install files ###############
|
||||
kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR kcontrol/componentchooser)
|