[kde-doc-english] [kiten] /: Kiten is now officially a KF5 based application.
Inge Wallin
inge at lysator.liu.se
Sun Nov 16 01:02:04 UTC 2014
Git commit 00e0f1086f56cee7567c779ad04f32c7d779e7aa by Inge Wallin.
Committed on 14/11/2014 at 23:28.
Pushed by ingwa into branch 'master'.
Kiten is now officially a KF5 based application.
Squashed commit of the following:
commit 072d1febae234b8ddf9d4985b304d4fc03270717
Author: Montel Laurent <montel at kde.org>
Date: Mon Nov 3 21:13:03 2014 +0100
Remove not necessary code
commit e06e7d8b5cb8ec4e1a7d50128d560c13607d7bd1
Author: Montel Laurent <montel at kde.org>
Date: Sun Nov 2 07:43:32 2014 +0100
GENERIC_LIB_VERSION doesn't exist now => use own version (perhaps we need to fix it)
commit 5b60129518851ce5d4c1105ceac02ba6df19c547
Author: Montel Laurent <montel at kde.org>
Date: Sun Nov 2 07:41:53 2014 +0100
Migrate settings
commit d3a732b1a3c3f3b756ee81c53222eefbe3d17e75
Author: Montel Laurent <montel at kde.org>
Date: Sun Nov 2 07:38:26 2014 +0100
Use ki18n_wrap_ui to extract string
commit 3304cad855663697905d7895f586f4aca1a750e9
Author: Montel Laurent <montel at kde.org>
Date: Sun Nov 2 07:37:33 2014 +0100
Port to new reverse dns desktop
commit 4a24d5e398536a73fd0328945bd96b352a2559b7
Author: Montel Laurent <montel at kde.org>
Date: Sun Nov 2 07:36:05 2014 +0100
Convert to reverse dns desktop
commit 4b1d553833c6412445a429b49598241015f2b365
Author: Montel Laurent <montel at kde.org>
Date: Sun Nov 2 07:34:47 2014 +0100
Make it translate
commit 8cac2e1cd035dc369780da2b3e6c8d7305d04803
Author: Montel Laurent <montel at kde.org>
Date: Sun Nov 2 07:33:17 2014 +0100
Port to new connect api
commit 84b819a2545d367c213c0194747f1a9187a1ee59
Author: Montel Laurent <montel at kde.org>
Date: Sun Nov 2 07:30:57 2014 +0100
normalize signal/slot
commit d8119a463c26cc01f19418cd5a636072fdfc881e
Author: Montel Laurent <montel at kde.org>
Date: Sun Nov 2 07:29:10 2014 +0100
convert to new connect api
commit f482d9f49a505085f666ccb728f1925a17b630fc
Author: Montel Laurent <montel at kde.org>
Date: Sun Nov 2 07:27:23 2014 +0100
Remove not necessary includes moc
commit 7eaa208e130ac72beb0f1ddc4dca88bb1919b90e
Author: Jeremy Whiting <jpwhiting at kde.org>
Date: Sat Oct 25 23:57:22 2014 -0600
Fix docbook to use 4.5 dtd and docbook 4.5.
commit 20654ae024326ded02080d8734bd18d96e90f0de
Author: Andreas Cord-Landwehr <cordlandwehr at kde.org>
Date: Fri Oct 24 21:08:03 2014 +0200
Remove unneeded includes.
commit 92571a0a5ece4489e226bd2a01a0727df3714647
Author: Andreas Cord-Landwehr <cordlandwehr at kde.org>
Date: Fri Oct 24 21:01:18 2014 +0200
Remove unneeded include.
commit 6118a5ca06e1b5390929f2d5cdce84c70a1e0c00
Author: Andreas Cord-Landwehr <cordlandwehr at kde.org>
Date: Fri Oct 24 20:53:06 2014 +0200
Port away from kdemacros.h.
commit 99c802cfadc0b215358c07a4e3be6350cdfd3d71
Author: Reza Fatahilah Shah <rshah0385 at kireihana.com>
Date: Thu Sep 4 21:16:14 2014 +0900
Use single ecm_install_icons with multiple icon files
commit ca9fa8f0e49087c6b63411cda9ff03b56d82e4af
Author: Reza Fatahilah Shah <rshah0385 at kireihana.com>
Date: Wed Sep 3 22:05:47 2014 +0900
Port to new ecm_install_icons syntax
commit 435072a00af71d3902c17d24ee1f00b35956b841
Author: Reza Fatahilah Shah <rshah0385 at kireihana.com>
Date: Wed Sep 3 21:03:07 2014 +0900
Clean forward declaration and remove unused headers
commit 8542a2ec8ef82321929d7d9f8de130bd2de66694
Author: Reza Fatahilah Shah <rshah0385 at kireihana.com>
Date: Wed Sep 3 20:36:16 2014 +0900
Port from KFilterDev to KCompressionDevice
commit fae33e56f2e32f9bb8381791efc76ea39306a8a5
Author: Reza Fatahilah Shah <rshah0385 at kireihana.com>
Date: Wed Sep 3 20:22:26 2014 +0900
Remove KDELibs4Support from CMakeLists.txt
commit e86177821445b32be13d6e352ba61c2fb3da570c
Author: Reza Fatahilah Shah <rshah0385 at kireihana.com>
Date: Wed Sep 3 20:18:15 2014 +0900
Port KApplication::sessionConfig to KConfigGui::sessionConfig
commit d02ea19443fb2ee30a34bb8e6db14a8cde4e33d0
Author: Reza Fatahilah Shah <rshah0385 at kireihana.com>
Date: Wed Sep 3 20:13:04 2014 +0900
Port to QStandardPaths::writeableLocation for downloaded dictionary files
commit 82f2eabf664e97909e51b63d5c132187b7a204dc
Author: Reza Fatahilah Shah <rshah0385 at kireihana.com>
Date: Mon Sep 1 21:50:51 2014 +0900
Use Qt::Key for shortcut
commit 7d288968a6f255118e2f2628f32aef079900c656
Author: Reza Fatahilah Shah <rshah0385 at kireihana.com>
Date: Mon Sep 1 21:16:58 2014 +0900
Port deprecated readConfig() and writeConfig() to load() and save()
commit 9d0daf7ba567fe0fddd2a995543e1d87513e9bc3
Author: Reza Fatahilah Shah <rshah0385 at kireihana.com>
Date: Sun Aug 31 11:59:36 2014 +0900
Use QWidgetAction for 'searchbox' action.
commit 2bd700402d848f011cbbca1ccbf7a609289323a3
Author: Reza Fatahilah Shah <rshah0385 at kireihana.com>
Date: Sat Aug 30 16:46:15 2014 +0900
Use KXMLGUI_INSTALL_DIR instead of DATA_INSTALL_DIR for .rc files
commit 36ea9794ee36ae98a74457b4169d3e5b3f65687e
Author: Reza Fatahilah Shah <rshah0385 at kireihana.com>
Date: Fri Aug 29 23:02:01 2014 +0900
initial porting to frameworks 5
M +25 -6 CMakeLists.txt
M +12 -7 app/CMakeLists.txt
M +8 -10 app/configdictionaryselector.cpp
M +2 -2 app/configdictionaryselector.h
M +12 -22 app/configsortingpage.cpp
M +1 -1 app/configsortingpage.h
M +29 -30 app/configuredialog.cpp
M +40 -41 app/dictionaryupdatemanager.cpp
M +4 -4 app/dictionaryupdatemanager.h
M +1 -1 app/entrylistmodel.cpp
M +1 -3 app/entrylistview.cpp
M +64 -78 app/kiten.cpp
M +9 -10 app/kiten.h
M +29 -21 app/main.cpp
R +1 -0 app/org.kde.kiten.desktop [from: app/kiten.desktop - 099% similarity]
M +7 -13 app/resultsview.cpp
M +1 -7 app/resultsview.h
M +15 -20 app/searchstringinput.cpp
M +2 -3 app/searchstringinput.h
M +1 -2 app/wordtype.cpp
M +0 -1 app/wordtype.h
M +10 -4 data/pics/CMakeLists.txt
M +1 -1 doc/CMakeLists.txt
M +1 -1 doc/index.docbook
M +12 -7 kanjibrowser/CMakeLists.txt
M +13 -16 kanjibrowser/kanjibrowser.cpp
M +4 -4 kanjibrowser/kanjibrowserconfig.kcfg
M +14 -20 kanjibrowser/kanjibrowserview.cpp
M +4 -4 kanjibrowser/kanjibrowserview.h
M +22 -18 kanjibrowser/main.cpp
R +1 -0 kanjibrowser/org.kde.kitenkanjibrowser.desktop [from: kanjibrowser/kitenkanjibrowser.desktop - 096% similarity]
M +13 -3 lib/CMakeLists.txt
M +4 -8 lib/DictEdict/deinflection.cpp
M +0 -1 lib/DictEdict/deinflection.h
M +3 -8 lib/DictEdict/dictfileedict.cpp
M +0 -2 lib/DictEdict/dictfileedict.h
M +8 -14 lib/DictEdict/dictfilefieldselector.cpp
M +2 -2 lib/DictEdict/entryedict.cpp
M +6 -8 lib/DictEdict/indexededictfile.cpp
M +2 -6 lib/DictEdict/linearedictfile.cpp
M +3 -4 lib/DictKanjidic/dictfilekanjidic.cpp
M +9 -9 lib/DictKanjidic/entrykanjidic.cpp
M +6 -8 lib/dictionarymanager.cpp
M +1 -1 lib/dictionarypreferencedialog.cpp
M +3 -3 lib/dictquery.cpp
M +2 -8 lib/entry.cpp
M +0 -1 lib/entry.h
M +2 -8 lib/entrylist.cpp
M +0 -1 lib/historyptrlist.cpp
M +6 -10 lib/kromajiedit.cpp
M +2 -1 lib/libkitenexport.h
M +13 -6 radselect/CMakeLists.txt
M +6 -9 radselect/buttongrid.cpp
M +22 -19 radselect/main.cpp
M +2 -9 radselect/radical_selector.ui
M +1 -4 radselect/radicalbutton.cpp
M +15 -26 radselect/radselect.cpp
M +19 -23 radselect/radselectview.cpp
M +0 -1 radselect/radselectview.h
http://commits.kde.org/kiten/00e0f1086f56cee7567c779ad04f32c7d779e7aa
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 13fdbb5..118f46a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -2,13 +2,29 @@
project(kiten)
# Check for cmake, same as minimum for KDE 4.0.0
-cmake_minimum_required( VERSION 2.4.5 )
+cmake_minimum_required( VERSION 2.8.12 )
-# Check for KDE 4
-find_package( KDE4 REQUIRED )
+#ECM setup
+find_package(ECM REQUIRED NO_MODULE)
+set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
+
+find_package(Qt5 REQUIRED COMPONENTS Core Widgets)
+find_package(KF5 REQUIRED COMPONENTS
+ Archive
+ Completion
+ Config
+ ConfigWidgets
+ CoreAddons
+ DocTools
+ I18n
+ KHtml
+ XmlGui)
+include(KDEInstallDirs)
+include(KDECompilerSettings)
+include(KDECMakeSettings)
+include(ECMInstallIcons)
include( CheckIncludeFiles )
-include( KDE4Defaults )
-include_directories( ${KDE4_INCLUDES} )
+include(ECMGenerateHeaders)
## Make it easy for radselect and kiten to find libkiten headers
include_directories( ${CMAKE_CURRENT_SOURCE_DIR}/lib)
@@ -19,6 +35,9 @@ check_include_files(stdint.h HAVE_STDINT_H)
check_include_files(inttypes.h HAVE_INTTYPES_H)
configure_file( config-kiten.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kiten.h )
+add_definitions(-DTRANSLATION_DOMAIN=\"kiten\")
+
+
## Build each subdir
add_subdirectory( app )
add_subdirectory( data/font )
@@ -30,7 +49,7 @@ add_subdirectory( radselect )
## Build kitengen, a small index generator used by the kiten app
set(kitengen_SRCS xjdxgen.c)
-kde4_add_executable(kitengen ${kitengen_SRCS})
+add_executable(kitengen ${kitengen_SRCS})
target_link_libraries(kitengen ${QT_QTCORE_LIBRARY})
install( TARGETS kitengen ${INSTALL_TARGETS_DEFAULT_ARGS} )
install(FILES kiten.appdata.xml DESTINATION ${SHARE_INSTALL_PREFIX}/appdata/)
diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt
index f5b3549..34b73f0 100644
--- a/app/CMakeLists.txt
+++ b/app/CMakeLists.txt
@@ -12,27 +12,32 @@ set(kiten_bin_SRCS
dictionaryupdatemanager.cpp
wordtype.cpp
)
-kde4_add_ui_files(kiten_bin_SRCS
+ki18n_wrap_ui(kiten_bin_SRCS
configdictselect.ui
configfont.ui
configlearn.ui
configsearching.ui
configsorting.ui
)
-kde4_add_kcfg_files( kiten_bin_SRCS kitenconfig.kcfgc)
+kconfig_add_kcfg_files( kiten_bin_SRCS kitenconfig.kcfgc)
#kde4_add_app_icon(kiten_bin_SRCS "${KDE4_ICON_DIR}/oxygen/*/apps/kiten.png")
#kde4_add_app_icon(kiten_bin_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/../data/pics/ox*-apps-kiten.png")
-kde4_add_app_icon(kiten_bin_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/../data/pics/hi*-apps-kiten.png")
+# # kde4_add_app_icon(kiten_bin_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/../data/pics/hi*-apps-kiten.png")
-kde4_add_executable(kiten_bin ${kiten_bin_SRCS})
+add_executable(kiten_bin ${kiten_bin_SRCS})
set_target_properties(kiten_bin PROPERTIES OUTPUT_NAME kiten IMPORT_PREFIX bin_)
-target_link_libraries(kiten_bin ${KDE4_KHTML_LIBS} kiten)
+target_link_libraries(kiten_bin
+ KF5::Archive
+ KF5::ConfigWidgets
+ KF5::I18n
+ KF5::KHtml
+ kiten)
install( TARGETS kiten_bin ${INSTALL_TARGETS_DEFAULT_ARGS} )
############ install files #############
-install( PROGRAMS kiten.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} )
+install( PROGRAMS org.kde.kiten.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} )
install( FILES kiten.kcfg DESTINATION ${KCFG_INSTALL_DIR} )
-install( FILES kitenui.rc DESTINATION ${DATA_INSTALL_DIR}/kiten )
+install( FILES kitenui.rc DESTINATION ${KXMLGUI_INSTALL_DIR}/kiten )
diff --git a/app/configdictionaryselector.cpp b/app/configdictionaryselector.cpp
index 2e4e484..8b7c442 100644
--- a/app/configdictionaryselector.cpp
+++ b/app/configdictionaryselector.cpp
@@ -23,21 +23,19 @@
#include "configdictionaryselector.h"
#include <KConfigSkeleton>
-#include <KDebug>
-#include <KFileDialog>
+#include <QFileDialog>
#include <QStringList>
-#include <QTableWidget>
ConfigDictionarySelector::ConfigDictionarySelector( const QString &dictionaryName,
- QWidget *parent, KConfigSkeleton *config,Qt::WFlags f )
+ QWidget *parent, KConfigSkeleton *config,Qt::WindowFlags f )
{
setupUi( this );
_dictName = dictionaryName;
_config = config;
- connect( addButton, SIGNAL( clicked() ), this, SLOT( addDictSlot() ) );
- connect( delButton, SIGNAL( clicked() ), this, SLOT( deleteDictSlot() ) );
+ connect(addButton, &QPushButton::clicked, this, &ConfigDictionarySelector::addDictSlot);
+ connect(delButton, &QPushButton::clicked, this, &ConfigDictionarySelector::deleteDictSlot);
__useGlobal->setObjectName( QString( "kcfg_" + _dictName + "__useGlobal" ) );
}
@@ -63,7 +61,7 @@ void ConfigDictionarySelector::updateWidgets()
}
}
- _config->readConfig();
+ _config->load();
fileList->clear();
foreach( const QString &it, names )
@@ -98,7 +96,7 @@ void ConfigDictionarySelector::updateSettings()
//This feels distinctly hackish to me... :(
_config->findItem( _dictName + "__NAMES" )->setProperty( names );
- _config->writeConfig();
+ _config->save();
}
void ConfigDictionarySelector::updateWidgetsDefault()
@@ -123,7 +121,7 @@ void ConfigDictionarySelector::addDictSlot()
{
QTreeWidgetItem *item = fileList->topLevelItem( 0 );
- QString filename = KFileDialog::getOpenFileName(
+ QString filename = QFileDialog::getOpenFileName(0, QString(),
item ? QFileInfo( item->text( 1 ) ).absolutePath().append( "/" )
: QString() );
QString name = QFileInfo( filename ).fileName();
@@ -154,4 +152,4 @@ void ConfigDictionarySelector::deleteDictSlot()
}
}
-#include "configdictionaryselector.moc"
+
diff --git a/app/configdictionaryselector.h b/app/configdictionaryselector.h
index 51d3edd..b15fcec 100644
--- a/app/configdictionaryselector.h
+++ b/app/configdictionaryselector.h
@@ -25,7 +25,7 @@
#include "ui_configdictselect.h" //From the UI file
-#include <QWidget> //For the WFlags on the constructor
+#include <QWidget> //For the WindowFlags on the constructor
class KConfigSkeleton;
class QString;
@@ -39,7 +39,7 @@ class ConfigDictionarySelector : public QWidget, public Ui::configDictSelect
explicit ConfigDictionarySelector( const QString &dictionaryName
, QWidget *parent = 0
, KConfigSkeleton *iconfig = NULL
- , Qt::WFlags f = 0 );
+ , Qt::WindowFlags f = 0 );
public slots:
void addDictSlot();
diff --git a/app/configsortingpage.cpp b/app/configsortingpage.cpp
index 5373219..87fb966 100644
--- a/app/configsortingpage.cpp
+++ b/app/configsortingpage.cpp
@@ -22,7 +22,6 @@
#include <QCheckBox>
#include <QListWidget>
-#include <QMap>
#include <QStringList>
#include "dictionarymanager.h"
@@ -31,7 +30,7 @@
ConfigSortingPage::ConfigSortingPage( QWidget *parent
, KitenConfigSkeleton *config
- ,Qt::WFlags f )
+ ,Qt::WindowFlags f )
: QWidget( parent, f )
, _config( config )
{
@@ -39,8 +38,7 @@ ConfigSortingPage::ConfigSortingPage( QWidget *parent
_dictNames = DictionaryManager::listDictFileTypes();
//Setup the relationship between the checkbox and the dictionary sortlist
- connect( kcfg_dictionary_enable, SIGNAL( clicked( bool ) ),
- dictionary_order, SLOT( setEnabled( bool ) ) );
+ connect(kcfg_dictionary_enable, &QCheckBox::clicked, dictionary_order, &KActionSelector::setEnabled);
dictionary_order->setEnabled( _config->dictionary_enable() == "true" );
_fields.append( "Word/Kanji" );
@@ -50,23 +48,15 @@ ConfigSortingPage::ConfigSortingPage( QWidget *parent
_fields += fieldListMap;
//Make the connections to alert the main dialog when things change
- connect( dictionary_order, SIGNAL( added( QListWidgetItem* ) ),
- this, SIGNAL( widgetChanged() ) );
- connect( dictionary_order, SIGNAL( removed( QListWidgetItem* ) ),
- this, SIGNAL( widgetChanged() ) );
- connect( dictionary_order, SIGNAL( movedUp( QListWidgetItem* ) ),
- this, SIGNAL( widgetChanged() ) );
- connect( dictionary_order, SIGNAL( movedDown( QListWidgetItem* ) ),
- this, SIGNAL( widgetChanged() ) );
-
- connect( field_order, SIGNAL( added ( QListWidgetItem* ) ),
- this, SIGNAL( widgetChanged() ) );
- connect( field_order, SIGNAL( removed( QListWidgetItem* ) ),
- this, SIGNAL( widgetChanged() ) );
- connect( field_order, SIGNAL( movedUp( QListWidgetItem* ) ),
- this, SIGNAL( widgetChanged() ) );
- connect( field_order, SIGNAL( movedDown( QListWidgetItem* ) ),
- this, SIGNAL( widgetChanged() ) );
+ connect(dictionary_order, &KActionSelector::added, this, &ConfigSortingPage::widgetChanged);
+ connect(dictionary_order, &KActionSelector::removed, this, &ConfigSortingPage::widgetChanged);
+ connect(dictionary_order, &KActionSelector::movedUp, this, &ConfigSortingPage::widgetChanged);
+ connect(dictionary_order, &KActionSelector::movedDown, this, &ConfigSortingPage::widgetChanged);
+
+ connect(field_order, &KActionSelector::added, this, &ConfigSortingPage::widgetChanged);
+ connect(field_order, &KActionSelector::removed, this, &ConfigSortingPage::widgetChanged);
+ connect(field_order, &KActionSelector::movedUp, this, &ConfigSortingPage::widgetChanged);
+ connect(field_order, &KActionSelector::movedDown, this, &ConfigSortingPage::widgetChanged);
}
//Read from preferences and set widgets
@@ -131,4 +121,4 @@ bool ConfigSortingPage::hasChanged()
return false;
}
-#include "configsortingpage.moc"
+
diff --git a/app/configsortingpage.h b/app/configsortingpage.h
index 540ee9f..7b832f0 100644
--- a/app/configsortingpage.h
+++ b/app/configsortingpage.h
@@ -35,7 +35,7 @@ class ConfigSortingPage : public QWidget, public Ui::configSorting
public:
explicit ConfigSortingPage( QWidget *parent = 0
, KitenConfigSkeleton *config = NULL
- , Qt::WFlags f = 0 );
+ , Qt::WindowFlags f = 0 );
public slots:
bool hasChanged();
diff --git a/app/configuredialog.cpp b/app/configuredialog.cpp
index bfd67ba..f32e6e9 100644
--- a/app/configuredialog.cpp
+++ b/app/configuredialog.cpp
@@ -23,10 +23,9 @@
#include "configuredialog.h"
#include <KConfigDialog>
-#include <KLocale>
-#include <KTabWidget>
+#include <KLocalizedString>
-#include <QLayout>
+#include <QTabWidget>
#include <QString>
#include <QStringList>
#include <QWidget>
@@ -79,8 +78,8 @@ ConfigureDialog::ConfigureDialog( QWidget *parent, KitenConfigSkeleton *config )
setHelp( QString(),"kiten" );
- connect( this, SIGNAL( widgetModified() ),
- this, SLOT( updateConfiguration() ) );
+ connect( this, SIGNAL(widgetModified()),
+ this, SLOT(updateConfiguration()) );
}
void ConfigureDialog::updateConfiguration()
@@ -95,21 +94,21 @@ ConfigureDialog::~ConfigureDialog()
QWidget *ConfigureDialog::makeDictionaryFileSelectionPage( QWidget *parent
, KitenConfigSkeleton *config )
{
- KTabWidget *tabWidget = new KTabWidget( parent );
+ QTabWidget *tabWidget = new QTabWidget( parent );
foreach( const QString &dict, config->dictionary_list() )
{
QWidget *newTab = new ConfigDictionarySelector( dict, tabWidget, config );
if( newTab )
{
- connect( newTab, SIGNAL( widgetChanged() ),
- this, SIGNAL( widgetModified() ) );
- connect( this, SIGNAL( updateWidgetsSignal() ),
- newTab, SLOT( updateWidgets() ) );
- connect( this, SIGNAL( updateWidgetsDefaultSignal() ),
- newTab, SLOT( updateWidgetsDefault() ) );
- connect( this, SIGNAL( updateSettingsSignal() ),
- newTab, SLOT( updateSettings() ) );
+ connect( newTab, SIGNAL(widgetChanged()),
+ this, SIGNAL(widgetModified()) );
+ connect( this, SIGNAL(updateWidgetsSignal()),
+ newTab, SLOT(updateWidgets()) );
+ connect( this, SIGNAL(updateWidgetsDefaultSignal()),
+ newTab, SLOT(updateWidgetsDefault()) );
+ connect( this, SIGNAL(updateSettingsSignal()),
+ newTab, SLOT(updateSettings()) );
tabWidget->addTab( newTab, dict );
}
}
@@ -123,19 +122,19 @@ QWidget *ConfigureDialog::makeDictionaryPreferencesPage( QWidget *parent
QStringList dictTypes = DictionaryManager::listDictFileTypes();
- KTabWidget *tabWidget = new KTabWidget( parent );
+ QTabWidget *tabWidget = new QTabWidget( parent );
QMap<QString,DictionaryPreferenceDialog*> dialogList =
DictionaryManager::generatePreferenceDialogs( config, parent );
foreach( DictionaryPreferenceDialog *dialog, dialogList )
{
- connect( this, SIGNAL( updateWidgetsSignal() ),
- dialog, SLOT( updateWidgets() ) );
- connect( this, SIGNAL( updateWidgetsDefaultSignal() ),
- dialog, SLOT( updateWidgetsDefault() ) );
- connect( this, SIGNAL( updateSettingsSignal() ),
- dialog, SLOT( updateSettings() ) );
+ connect( this, SIGNAL(updateWidgetsSignal()),
+ dialog, SLOT(updateWidgets()) );
+ connect( this, SIGNAL(updateWidgetsDefaultSignal()),
+ dialog, SLOT(updateWidgetsDefault()) );
+ connect( this, SIGNAL(updateSettingsSignal()),
+ dialog, SLOT(updateSettings()) );
tabWidget->addTab( dialog,dialog->name() );
}
@@ -147,15 +146,15 @@ QWidget *ConfigureDialog::makeSortingPage( QWidget *parent, KitenConfigSkeleton
{
ConfigSortingPage *newPage = new ConfigSortingPage(parent,config);
- connect( newPage, SIGNAL( widgetChanged() ),
- this, SIGNAL( widgetModified() ) );
+ connect( newPage, SIGNAL(widgetChanged()),
+ this, SIGNAL(widgetModified()) );
- connect( this, SIGNAL( updateWidgetsSignal() ),
- newPage, SLOT( updateWidgets() ) );
- connect( this, SIGNAL( updateWidgetsDefaultSignal() ),
- newPage, SLOT( updateWidgetsDefault() ) );
- connect( this, SIGNAL( updateSettingsSignal() ),
- newPage, SLOT( updateSettings() ) );
+ connect( this, SIGNAL(updateWidgetsSignal()),
+ newPage, SLOT(updateWidgets()) );
+ connect( this, SIGNAL(updateWidgetsDefaultSignal()),
+ newPage, SLOT(updateWidgetsDefault()) );
+ connect( this, SIGNAL(updateSettingsSignal()),
+ newPage, SLOT(updateSettings()) );
return newPage;
}
@@ -181,4 +180,4 @@ bool ConfigureDialog::isDefault()
//Always show the defaults button.... perhaps make a workaround later
}
-#include "configuredialog.moc"
+
diff --git a/app/dictionaryupdatemanager.cpp b/app/dictionaryupdatemanager.cpp
index 40e372d..78385a1 100644
--- a/app/dictionaryupdatemanager.cpp
+++ b/app/dictionaryupdatemanager.cpp
@@ -24,20 +24,21 @@
#include "kitenconfig.h"
#include "kitenmacros.h"
-#include <KAction>
+#include <QAction>
#include <KActionCollection>
-#include <KDebug>
-#include <KFilterDev>
+#include <QDebug>
+#include <KCompressionDevice>
#include <KIO/Scheduler>
#include <KIO/StoredTransferJob>
-#include <KLocale>
+#include <KLocalizedString>
#include <KMessageBox>
-#include <KStandardDirs>
-#include <KUrl>
+#include <QDir>
+#include <QUrl>
#include <QTemporaryFile>
#include <QTextCodec>
#include <QTextStream>
+#include <QStandardPaths>
// URL to the information file.
#define INFO_URL "http://ftp.monash.edu.au/pub/nihongo/edicthdr.txt"
@@ -54,22 +55,20 @@ DictionaryUpdateManager::DictionaryUpdateManager( Kiten *parent )
, _failed( QStringList() )
, _counter( 0 )
{
- _actionUpdate = _parent->actionCollection()->add<KAction>( "update_dictionaries" );
+ _actionUpdate = _parent->actionCollection()->add<QAction>( "update_dictionaries" );
_actionUpdate->setText( i18n( "Check for dictionary &updates" ) );
_actionUpdate->setShortcut( Qt::CTRL+Qt::Key_U );
- connect( _actionUpdate, SIGNAL( triggered() ),
- this, SLOT( checkForUpdates() ) );
+ connect(_actionUpdate, &QAction::triggered, this, &DictionaryUpdateManager::checkForUpdates);
}
void DictionaryUpdateManager::checkForUpdates()
{
- kDebug() << "Checking for EDICT & KANJIDIC updates." << endl;
+ qDebug() << "Checking for EDICT & KANJIDIC updates." << endl;
// Download the information file we need to check
// whether or not an update to our dictionaries is necessary.
- KIO::StoredTransferJob *job = KIO::storedGet( KUrl( INFO_URL ) );
- connect( job, SIGNAL( result( KJob* ) ),
- this, SLOT( checkInfoFile( KJob* ) ) );
+ KIO::StoredTransferJob *job = KIO::storedGet( QUrl( INFO_URL ) );
+ connect(job, &KIO::StoredTransferJob::result, this, &DictionaryUpdateManager::checkInfoFile);
}
void DictionaryUpdateManager::checkIfUpdateFinished()
@@ -102,7 +101,7 @@ void DictionaryUpdateManager::checkInfoFile( KJob *job )
if( ! tempFile.open() )
{
KMessageBox::sorry( 0, i18n( "Update canceled.\nCould not open file." ) );
- kDebug() << "Could not open tempFile." << endl;
+ qDebug() << "Could not open tempFile." << endl;
tempFile.deleteLater();
job->deleteLater();
return;
@@ -128,17 +127,16 @@ void DictionaryUpdateManager::checkInfoFile( KJob *job )
// Now we can check our dictionaries.
// Connect to this signal to know when the update process is finished.
- connect( this, SIGNAL( updateFinished() ),
- this, SLOT( showUpdateResults() ) );
+ connect(this, &DictionaryUpdateManager::updateFinished, this, &DictionaryUpdateManager::showUpdateResults);
// This variable help us to know if we need to download any file.
bool updates = false;
// Iterate on each of our installed dictionaries.
foreach( const QString &dict, _config->dictionary_list() )
{
- QString filePath = KGlobal::dirs()->findResource( "data", QString( "kiten/" ) + dict.toLower() );
+ QString filePath = QStandardPaths::locate(QStandardPaths::GenericDataLocation, QString( "kiten/" ) + dict.toLower() );
QFile file( filePath );
- kDebug() << "Local dictionary path:" << file.fileName() << endl;
+ qDebug() << "Local dictionary path:" << file.fileName() << endl;
// Get the creation date for this dictionary.
QDate localFileDate = getFileDate( file );
@@ -147,14 +145,14 @@ void DictionaryUpdateManager::checkInfoFile( KJob *job )
{
// Add it to our 'failed to udate' list.
_failed.append( dict.toUpper() );
- kDebug() << "Failed (invalid date):" << dict.toUpper() << endl;
+ qDebug() << "Failed (invalid date):" << dict.toUpper() << endl;
continue;
}
else if( localFileDate == webFileDate )
{
// Add it to our 'up to date' list.
_succeeded.append( dict.toUpper() );
- kDebug() << "Success (up to date):" << dict.toUpper() << endl;
+ qDebug() << "Success (up to date):" << dict.toUpper() << endl;
continue;
}
else
@@ -185,18 +183,17 @@ void DictionaryUpdateManager::checkInfoFile( KJob *job )
void DictionaryUpdateManager::downloadDictionary( const QString &url )
{
- kDebug() << "Download started!" << endl;
+ qDebug() << "Download started!" << endl;
// Download dictionary.
- KIO::StoredTransferJob *dictionaryJob = KIO::storedGet( KUrl( url ) );
- connect( dictionaryJob, SIGNAL( result( KJob* ) ),
- this, SLOT( installDictionary( KJob* ) ) );
+ KIO::StoredTransferJob *dictionaryJob = KIO::storedGet( QUrl( url ) );
+ connect(dictionaryJob, &KIO::StoredTransferJob::result, this, &DictionaryUpdateManager::installDictionary);
}
QDate DictionaryUpdateManager::getFileDate( QFile &file )
{
if( ! file.open( QIODevice::ReadOnly | QIODevice::Text ) )
{
- kDebug() << "Could not open " << file.fileName() << endl;
+ qDebug() << "Could not open " << file.fileName() << endl;
return QDate();
}
@@ -231,7 +228,7 @@ QDate DictionaryUpdateManager::getFileDate( QFile &file )
file.close();
- kDebug() << "Date found:" << dateSection << "(" << file.fileName() << ")" << endl;
+ qDebug() << "Date found:" << dateSection << "(" << file.fileName() << ")" << endl;
return QDate( year, month, day );
}
@@ -244,14 +241,14 @@ void DictionaryUpdateManager::installDictionary( KJob *job )
KIO::StoredTransferJob *storedJob = static_cast<KIO::StoredTransferJob*>( job );
QByteArray data( storedJob->data() );
- QString url( storedJob->url().prettyUrl() );
+ QString url( storedJob->url().toDisplayString() );
// What we actually downloaded was a GZIP file that we need to extract.
// As there is no need to keep this file, we make it a temporary file.
QTemporaryFile compressedFile;
if( ! compressedFile.open() )
{
- kDebug() << "Could not create the downloaded .gz file." << endl;
+ qDebug() << "Could not create the downloaded .gz file." << endl;
_failed.append( url.contains( EDICT ) ? EDICT : KANJIDIC );
job->deleteLater();
checkIfUpdateFinished();
@@ -261,14 +258,15 @@ void DictionaryUpdateManager::installDictionary( KJob *job )
compressedFile.write( data );
compressedFile.close();
- kDebug() << "Dictionary download finished!" << endl;
- kDebug() << "Extracting dictionary..." << endl;
+ qDebug() << "Dictionary download finished!" << endl;
+ qDebug() << "Extracting dictionary..." << endl;
// Extract the GZIP file.
- QIODevice *device = KFilterDev::deviceForFile( compressedFile.fileName(), "application/x-gzip" );
+ //QIODevice *device = KFilterDev::deviceForFile( compressedFile.fileName(), "application/x-gzip" );
+ KCompressionDevice *device = new KCompressionDevice(compressedFile.fileName(), KCompressionDevice::GZip);
if( ! device->open( QIODevice::ReadOnly ) )
{
- kDebug() << "Could not extract the dictionary file." << endl;
+ qDebug() << "Could not extract the dictionary file." << endl;
_failed.append( url.contains( EDICT ) ? EDICT : KANJIDIC );
delete device;
job->deleteLater();
@@ -282,13 +280,14 @@ void DictionaryUpdateManager::installDictionary( KJob *job )
// Reset the position where we are going to start reading the content.
device->reset();
// Thanks to the above lines we can get the path to the correct file to be updated.
- QString dictPath = KGlobal::dirs()->locateLocal( "data"
- , QString( "kiten/" ) + fileName
- , true );
- QFile dictionary( dictPath );
+ QString dictPath = QStandardPaths::writableLocation( QStandardPaths::GenericDataLocation) + QString( "/kiten/" );
+ QDir dir(dictPath);
+ dir.mkpath(dictPath);
+
+ QFile dictionary( dictPath + fileName);
if( ! dictionary.open( QIODevice::WriteOnly ) )
{
- kDebug() << "Could not create the new dictionary file." << endl;
+ qDebug() << "Could not create the new dictionary file." << endl;
_failed.append( fileName.toUpper() );
device->close();
delete device;
@@ -307,14 +306,14 @@ void DictionaryUpdateManager::installDictionary( KJob *job )
// Check if we finished updating.
checkIfUpdateFinished();
- kDebug() << "Successfully installed at:" << dictionary.fileName() << endl;
+ qDebug() << "Successfully installed at:" << dictionary.fileName() << endl;
}
void DictionaryUpdateManager::showUpdateResults()
{
// Avoid multiple calls to this slot.
- disconnect( this, SIGNAL( updateFinished() ),
- this, SLOT( showUpdateResults() ) );
+ disconnect( this, SIGNAL(updateFinished()),
+ this, SLOT(showUpdateResults()) );
if( ! _succeeded.isEmpty() && _failed.isEmpty() )
{
@@ -341,4 +340,4 @@ void DictionaryUpdateManager::showUpdateResults()
_failed.clear();
}
-#include "dictionaryupdatemanager.moc"
+
diff --git a/app/dictionaryupdatemanager.h b/app/dictionaryupdatemanager.h
index a63f023..fb95960 100644
--- a/app/dictionaryupdatemanager.h
+++ b/app/dictionaryupdatemanager.h
@@ -25,7 +25,7 @@
#include <QFile>
#include <QStringList>
-class KAction;
+class QAction;
class KJob;
class Kiten;
class KitenConfigSkeleton;
@@ -45,7 +45,7 @@ class DictionaryUpdateManager : public QObject
* Constructor.
*
* @param parent pointer to the Kiten instance. This helps us to add
- * KAction actions to the program.
+ * QAction actions to the program.
*/
explicit DictionaryUpdateManager( Kiten *parent );
@@ -113,7 +113,7 @@ class DictionaryUpdateManager : public QObject
void downloadDictionary( const QString &url );
/**
- * We need it to add a KAction action to the main toolbar.
+ * We need it to add a QAction action to the main toolbar.
*/
Kiten *_parent;
/**
@@ -124,7 +124,7 @@ class DictionaryUpdateManager : public QObject
/**
* Update action.
*/
- KAction *_actionUpdate;
+ QAction *_actionUpdate;
/**
* List of dictionaries already up to date.
*/
diff --git a/app/entrylistmodel.cpp b/app/entrylistmodel.cpp
index adc7ec4..f1d5fc1 100644
--- a/app/entrylistmodel.cpp
+++ b/app/entrylistmodel.cpp
@@ -109,4 +109,4 @@ QVariant EntryListModel::data ( const QModelIndex & index, int role ) const
return QVariant();
}
-#include "entrylistmodel.moc"
+
diff --git a/app/entrylistview.cpp b/app/entrylistview.cpp
index b271fe7..72a0435 100644
--- a/app/entrylistview.cpp
+++ b/app/entrylistview.cpp
@@ -23,8 +23,6 @@
#include "entrylistview.h"
-#include <KDebug>
-
#include <QHeaderView>
//These are the ratios for how much space the word and reading headers should
@@ -49,4 +47,4 @@ void EntryListView::setEmptyModel()
//TODO: implement me
}
-#include "entrylistview.moc"
+
diff --git a/app/kiten.cpp b/app/kiten.cpp
index 7ab720b..ba5abf9 100644
--- a/app/kiten.cpp
+++ b/app/kiten.cpp
@@ -24,41 +24,32 @@
#include "kiten.h"
-#include <KAction>
#include <KActionCollection>
-#include <KApplication>
#include <KConfig>
-#include <KConfigDialog>
-#include <KDebug>
-#include <kdeversion.h>
+#include <KConfigGui>
#include <KEditToolBar>
-#include <KFileDialog>
-#include <KGlobalAccel>
-#include <KIconLoader>
-#include <KLocale>
+#include <KHTMLView>
+#include <KLocalizedString>
#include <KProcess>
#include <KShortcutsDialog>
#include <KStandardAction>
-#include <KStandardDirs>
#include <KStandardGuiItem>
-#include <KStatusBar>
-#include <KSystemTrayIcon>
#include <KToggleAction>
-#include <KToolBar>
-#include <KUrl>
#include <KXmlGuiWindow>
+#include <QAction>
#include <QApplication>
-#include <QBoxLayout>
#include <QClipboard>
#include <QDockWidget>
#include <QFile>
#include <QList>
#include <QPair>
#include <QScrollBar>
-#include <QTableWidget>
-#include <QTextCodec>
+#include <QStatusBar>
+#include <QStandardPaths>
+#include <QSystemTrayIcon>
#include <QTimer>
+#include <QVBoxLayout>
#include "configuredialog.h"
#include "dictionaryupdatemanager.h"
@@ -79,14 +70,14 @@ Kiten::Kiten( QWidget *parent, const char *name )
, _radselect_proc( new KProcess( this ) )
, _kanjibrowser_proc( new KProcess( this ) )
{
- _radselect_proc->setProgram( KStandardDirs::findExe( "kitenradselect" ) );
- _kanjibrowser_proc->setProgram( KStandardDirs::findExe( "kitenkanjibrowser" ) );
+ _radselect_proc->setProgram( QStandardPaths::findExecutable( "kitenradselect" ) );
+ _kanjibrowser_proc->setProgram( QStandardPaths::findExecutable( "kitenkanjibrowser" ) );
setStandardToolBarMenuEnabled( true );
setObjectName( QLatin1String( name ) );
/* Set up the config */
_config = KitenConfigSkeleton::self();
- _config->readConfig();
+ _config->load();
/* Set up hot keys */
//KDE4 TODO
@@ -97,8 +88,8 @@ Kiten::Kiten( QWidget *parent, const char *name )
, Qt::CTRL + Qt::ALT + Qt::Key_S
, Qt::CTRL + Qt::ALT + Qt::Key_S
, this
- , SLOT( searchClipboardContents() ) );
- Accel->readSettings( KGlobal::config() );
+ , SLOT(searchClipboardContents()) );
+ Accel->readSettings( KSharedConfig::openConfig() );
Accel->updateConnections();
*/
/* ResultsView is our main widget, displaying the results of a search */
@@ -124,31 +115,28 @@ Kiten::Kiten( QWidget *parent, const char *name )
_optionDialog = 0;
/* Start the system tray icon. */
- _sysTrayIcon = new KSystemTrayIcon( windowIcon(), this );
+ _sysTrayIcon = new QSystemTrayIcon( windowIcon(), this );
_sysTrayIcon->show();
/* Set things as they were (as told in the config) */
_autoSearchToggle->setChecked( _config->autosearch() );
_inputManager->setDefaultsFromConfig();
updateConfiguration();
- applyMainWindowSettings( KGlobal::config()->group( "kitenWindow" ) );
+ applyMainWindowSettings( KSharedConfig::openConfig()->group( "kitenWindow" ) );
/* What happens when links are clicked or things are selected in the clipboard */
- connect( _mainView, SIGNAL( urlClicked( const QString& ) ),
- SLOT( searchText( const QString& ) ) );
- connect( QApplication::clipboard(), SIGNAL( selectionChanged() ),
- this, SLOT( searchClipboard() ) );
- connect( _inputManager, SIGNAL( search() ),
- this, SLOT( searchFromEdit() ) );
-
- connect( _mainView->view()->verticalScrollBar(), SIGNAL( valueChanged( int ) ),
- this, SLOT( setCurrentScrollValue( int ) ) );
+ connect(_mainView, &ResultsView::urlClicked, this, &Kiten::searchText);
+ connect( QApplication::clipboard(), SIGNAL(selectionChanged()),
+ this, SLOT(searchClipboard()) );
+ connect(_inputManager, &SearchStringInput::search, this, &Kiten::searchFromEdit);
+
+ connect( _mainView->view()->verticalScrollBar(), SIGNAL(valueChanged(int)),
+ this, SLOT(setCurrentScrollValue(int)) );
/* We need to know when to reload our dictionaries if the user updated them. */
- connect( _dictionaryUpdateManager, SIGNAL( updateFinished() ),
- this, SLOT( loadDictionaries() ) );
+ connect(_dictionaryUpdateManager, &DictionaryUpdateManager::updateFinished, this, &Kiten::loadDictionaries);
/* See below for what else needs to be done */
- QTimer::singleShot( 10, this, SLOT( finishInit() ) );
+ QTimer::singleShot( 10, this, SLOT(finishInit()) );
}
// Destructor to clean up the little bits
@@ -175,13 +163,13 @@ KitenConfigSkeleton* Kiten::getConfig()
void Kiten::setupActions()
{
/* Add the basic quit/print/prefs actions, use the gui factory for keybindings */
- (void) KStandardAction::quit( this, SLOT( close() ), actionCollection() );
+ (void) KStandardAction::quit( this, SLOT(close()), actionCollection() );
//Why the heck is KSA:print adding it's own toolbar!?
// (void) KStandardAction::print(this, SLOT(print()), actionCollection());
- (void) KStandardAction::preferences( this, SLOT( slotConfigure() ), actionCollection() );
+ (void) KStandardAction::preferences( this, SLOT(slotConfigure()), actionCollection() );
//old style cast seems needed here, (const QObject*)
KStandardAction::keyBindings( (const QObject*)guiFactory()
- , SLOT( configureShortcuts() )
+ , SLOT(configureShortcuts())
, actionCollection() );
/* Setup the Go-to-learn-mode actions */
@@ -193,66 +181,63 @@ void Kiten::setupActions()
// , SLOT(createEEdit())
// , actionCollection()
// , "dict_editor");
- KAction *radselect = actionCollection()->addAction( "radselect" );
+ QAction *radselect = actionCollection()->addAction( "radselect" );
radselect->setText( i18n( "Radical Selector" ) );
// radselect->setIcon( "edit-find" );
radselect->setShortcut( Qt::CTRL+Qt::Key_R );
- connect( radselect, SIGNAL( triggered() ),
- this, SLOT( radicalSearch() ) );
+ connect(radselect, &QAction::triggered, this, &Kiten::radicalSearch);
- KAction *kanjibrowser = actionCollection()->addAction( "kanjibrowser" );
+ QAction *kanjibrowser = actionCollection()->addAction( "kanjibrowser" );
kanjibrowser->setText( i18n( "Kanji Browser" ) );
kanjibrowser->setShortcut( Qt::CTRL+Qt::Key_K );
- connect( kanjibrowser, SIGNAL( triggered() ),
- this, SLOT( kanjiBrowserSearch() ) );
+ connect(kanjibrowser, &QAction::triggered, this, &Kiten::kanjiBrowserSearch);
/* Setup the Search Actions and our custom Edit Box */
_inputManager = new SearchStringInput( this );
- KAction *searchButton = actionCollection()->addAction( "search" );
+ QAction *searchButton = actionCollection()->addAction( "search" );
searchButton->setText( i18n( "S&earch" ) );
// Set the search button to search
- connect( searchButton, SIGNAL( triggered() ),
- this, SLOT( searchFromEdit() ) );
+ connect(searchButton, &QAction::triggered, this, &Kiten::searchFromEdit);
searchButton->setIcon( KStandardGuiItem::find().icon() );
// That's not it, that's "find as you type"...
-// connect( Edit, SIGNAL( completion( const QString& ) ),
-// this, SLOT( searchFromEdit() ) );
+// connect( Edit, SIGNAL(completion(QString)),
+// this, SLOT(searchFromEdit()) );
/* Setup our widgets that handle preferences */
// deinfCB = new KToggleAction( i18n( "&Deinflect Verbs in Regular Search" )
// , 0
// , this
-// , SLOT( kanjiDictChange() )
+// , SLOT(kanjiDictChange())
// , actionCollection()
// , "deinf_toggle" );
_autoSearchToggle = actionCollection()->add<KToggleAction>( "autosearch_toggle" );
_autoSearchToggle->setText( i18n( "&Automatically Search Clipboard Selections" ) );
- _irAction = actionCollection()->add<KAction>( "search_in_results" );
+ _irAction = actionCollection()->add<QAction>( "search_in_results" );
_irAction->setText( i18n( "Search &in Results" ) );
- connect( _irAction, SIGNAL( triggered() ), this, SLOT( searchInResults() ) );
+ connect(_irAction, &QAction::triggered, this, &Kiten::searchInResults);
- KAction *actionFocusResultsView;
+ QAction *actionFocusResultsView;
actionFocusResultsView = actionCollection()->addAction( "focusresultview"
, this
- , SLOT( focusResultsView() ) );
- actionFocusResultsView->setShortcut( QString( "Escape" ) );
+ , SLOT(focusResultsView()) );
+ actionFocusResultsView->setShortcut( Qt::Key_Escape );
actionFocusResultsView->setText( i18n( "Focus result view" ) );
(void) KStandardAction::configureToolbars( this
- , SLOT( configureToolBars() )
+ , SLOT(configureToolBars())
, actionCollection() );
//TODO: this should probably be a standard action
/*
globalShortcutsAction = actionCollection()->addAction( "options_configure_global_keybinding" );
globalShortcutsAction->setText( i18n( "Configure &Global Shortcuts..." ) );
- connect( globalShortcutsAction, SIGNAL( triggered() ), this, SLOT( configureGlobalKeys() ) );
+ connect( globalShortcutsAction, SIGNAL(triggered()), this, SLOT(configureGlobalKeys()) );
*/
//TODO: implement this
@@ -263,8 +248,8 @@ void Kiten::setupActions()
//globalSearchAction->setGlobalShortcut(shrt); //FIXME: Why does this take ~50 seconds to return!?
//connect(globalSearchAction, SIGNAL(triggered()), this, SLOT(searchOnTheSpot()));
- _backAction = KStandardAction::back( this, SLOT( back() ), actionCollection() );
- _forwardAction = KStandardAction::forward( this, SLOT( forward() ), actionCollection() );
+ _backAction = KStandardAction::back( this, SLOT(back()), actionCollection() );
+ _forwardAction = KStandardAction::forward( this, SLOT(forward()), actionCollection() );
_backAction->setEnabled( false );
_forwardAction->setEnabled( false );
}
@@ -308,7 +293,7 @@ void Kiten::finishInit()
// the app group won't exist and we show demo
if ( _config->initialSearch() )
{
- if ( ! kapp->sessionConfig()->hasGroup( "app" ) )
+ if ( ! KConfigGui::sessionConfig()->hasGroup( "app" ) )
{
searchTextAndRaise( QString::fromUtf8( "辞書" ) );
//Note to future tinkerers... DO NOT EDIT OR TRANSLATE THAT
@@ -331,9 +316,10 @@ void Kiten::focusResultsView()
bool Kiten::queryClose()
{
_config->setAutosearch( _autoSearchToggle->isChecked() );
- _config->writeConfig();
+ _config->save();
- saveMainWindowSettings( KGlobal::config()->group( "kitenWindow" ) );
+ KConfigGroup configGroup = KSharedConfig::openConfig()->group( "kitenWindow" );
+ saveMainWindowSettings( configGroup );
return true;
}
@@ -347,7 +333,7 @@ bool Kiten::queryClose()
*/
void Kiten::searchFromEdit()
{
- kDebug() << "SEARCH FROM EDIT CALLED";
+ qDebug() << "SEARCH FROM EDIT CALLED";
DictQuery query = _inputManager->getSearchQuery();
if( query != _lastQuery )
{
@@ -402,11 +388,11 @@ void Kiten::searchClipboard()
searchTextAndRaise(clipboard);
}
- kDebug() << "Clipboard item is a substring (rejected)";
+ qDebug() << "Clipboard item is a substring (rejected)";
}
else
{
- kDebug() << "Clipboard entry too long";
+ qDebug() << "Clipboard entry too long";
}
}
}
@@ -544,7 +530,7 @@ void Kiten::displayResults( EntryList *results )
/*
void Kiten::searchOnTheSpot()
{
- kDebug() << "On the spot search!\n";
+ qDebug() << "On the spot search!\n";
}
*/
@@ -575,10 +561,9 @@ void Kiten::slotConfigure()
//ConfigureDialog didn't find an instance of this dialog, so lets create it :
_optionDialog = new ConfigureDialog( this, _config );
- connect( _optionDialog, SIGNAL( hidden() ),
- this, SLOT( slotConfigureHide() ) );
- connect( _optionDialog, SIGNAL( settingsChanged( const QString& ) ),
- this, SLOT( updateConfiguration() ) );
+ connect( _optionDialog, SIGNAL(hidden()),
+ this, SLOT(slotConfigureHide()) );
+ connect(_optionDialog, &ConfigureDialog::settingsChanged, this, &Kiten::updateConfiguration);
_optionDialog->show();
}
@@ -614,16 +599,18 @@ void Kiten::createEEdit()
void Kiten::configureToolBars()
{
- saveMainWindowSettings( KGlobal::config()->group( "kitenWindow" ) );
+ KConfigGroup configGroup = KSharedConfig::openConfig()->group( "kitenWindow" );
+ saveMainWindowSettings( configGroup );
KEditToolBar dlg( actionCollection() );
- connect( &dlg, SIGNAL( newToolBarConfig()), SLOT( newToolBarConfig() ) );
+ connect(&dlg, &KEditToolBar::newToolBarConfig, this, &Kiten::newToolBarConfig);
dlg.exec();
}
void Kiten::newToolBarConfig()
{
createGUI( "kitenui.rc" );
- applyMainWindowSettings( KGlobal::config()->group( "kitenWindow" ) );
+ KConfigGroup configGroup = KSharedConfig::openConfig()->group( "kitenWindow" );
+ applyMainWindowSettings( configGroup );
}
/** Opens the dialog for configuring the global accelerator keys. */
@@ -681,7 +668,7 @@ void Kiten::loadDictionaries()
//Update general options for the display manager (sorting by dict, etc)
_dictionaryManager.loadSettings( *_config->config() );
- kDebug() << "Dictionaries loaded!" << endl;
+ qDebug() << "Dictionaries loaded!" << endl;
}
/**
@@ -690,7 +677,6 @@ void Kiten::loadDictionaries()
*/
void Kiten::loadDictConfig( const QString &dictType )
{
- KStandardDirs *dirs = KGlobal::dirs();
KConfigGroup group = _config->config()->group( "dicts_" + dictType.toLower() );
//A list of QPair's Name->Path
@@ -699,7 +685,7 @@ void Kiten::loadDictConfig( const QString &dictType )
//If we need to load the global
if( group.readEntry( "__useGlobal", true ) )
{
- QString dictionary = dirs->findResource( "data", QString( "kiten/" ) + dictType.toLower() );
+ QString dictionary = QStandardPaths::locate(QStandardPaths::GenericDataLocation, QString( "kiten/" ) + dictType.toLower());
dictionariesToLoad.append( qMakePair( dictType, dictionary ) );
}
@@ -827,4 +813,4 @@ void Kiten::setCurrentScrollValue( int value )
_historyList.current()->setScrollValue( value );
}
-#include "kiten.moc"
+
diff --git a/app/kiten.h b/app/kiten.h
index c206b16..53199b6 100644
--- a/app/kiten.h
+++ b/app/kiten.h
@@ -32,15 +32,14 @@
#include "entry.h"
#include "historyptrlist.h"
-class KAction;
+class QAction;
class KGlobalAccel;
class KListAction;
class KProcess;
-class KStatusBar;
-class KSystemTrayIcon;
+class QStatusBar;
+class QSystemTrayIcon;
class KToggleAction;
class KitenConfigSkeleton;
-class KitenEdit;
class QDockWidget;
@@ -118,7 +117,7 @@ class Kiten : public KXmlGuiWindow
private:
- KStatusBar *_statusBar;
+ QStatusBar *_statusBar;
DictionaryManager _dictionaryManager;
DictionaryUpdateManager *_dictionaryUpdateManager;
SearchStringInput *_inputManager;
@@ -127,9 +126,9 @@ class Kiten : public KXmlGuiWindow
DictQuery _lastQuery;
KToggleAction *_autoSearchToggle;
KListAction *_historyAction;
- KAction *_irAction;
- KAction *_backAction;
- KAction *_forwardAction;
+ QAction *_irAction;
+ QAction *_backAction;
+ QAction *_forwardAction;
KProcess *_radselect_proc;
KProcess *_kanjibrowser_proc;
@@ -137,9 +136,9 @@ class Kiten : public KXmlGuiWindow
QAction *_globalShortcutsAction;
//ResultsView *detachedView;
- KAction *_globalSearchAction;
+ QAction *_globalSearchAction;
- KSystemTrayIcon *_sysTrayIcon;
+ QSystemTrayIcon *_sysTrayIcon;
//Export list related:
QDockWidget *_exportListDock;
diff --git a/app/main.cpp b/app/main.cpp
index c249dbd..4dda0a6 100644
--- a/app/main.cpp
+++ b/app/main.cpp
@@ -21,11 +21,11 @@
*****************************************************************************/
#include <KAboutData>
-#include <KCmdLineArgs>
-#include <KUniqueApplication>
-#include <KXmlGuiWindow>
-
-#include <QtDBus>
+#include <KLocalizedString>
+#include <Kdelibs4ConfigMigrator>
+#include <QApplication>
+#include <QCommandLineParser>
+#include <QDBusConnection>
#include "kiten.h"
@@ -38,29 +38,37 @@ int main( int argc, char *argv[] )
// qInstallMsgHandler(noMessageOutput); //Disable Qt Errors from showing
// Copyright and author information
- KAboutData aboutData( "kiten", 0, ki18n("Kiten"), "1.3", ki18n("Japanese Reference Tool"),
- KAboutData::License_GPL_V2, ki18n("(c) 2001-2004, Jason Katz-Brown\n"
+ Kdelibs4ConfigMigrator migrate(QLatin1String("kiten"));
+ migrate.setConfigFiles(QStringList() << QLatin1String("kitenrc"));
+ migrate.setUiFiles(QStringList() << QLatin1String("kitenui.rc"));
+ migrate.migrate();
+
+ KAboutData aboutData( QStringLiteral("kiten"), i18n("Kiten"), QStringLiteral("1.3"), i18n("Japanese Reference Tool"),
+ KAboutLicense::GPL_V2, i18n("(c) 2001-2004, Jason Katz-Brown\n"
"(c) 2006-2007, Eric Kjeldergaard\n"
"(c) 2006-2008, Joseph Kerian\n"
"(c) 2011, Daniel E. Moctezuma"),
- KLocalizedString(), "http://edu.kde.org/kiten" );
+ QString(), "http://edu.kde.org/kiten" );
- aboutData.addAuthor( ki18n("Jason Katz-Brown"), ki18n("Original author"), "jason at katzbrown.com" );
- aboutData.addCredit( ki18n("Jim Breen"), ki18n("Wrote xjdic, of which Kiten borrows code, and the xjdic index file generator.\nAlso is main author of edict and kanjidic, which Kiten essentially require."), "jwb at csse.monash.edu.au" );
- aboutData.addAuthor( ki18n("Neil Stevens"), ki18n("Code simplification, UI suggestions."), "neil at qualityassistant.com" );
- aboutData.addCredit( ki18n("David Vignoni"), ki18n("svg icon"), "david80v at tin.it");
- aboutData.addCredit( ki18n("Paul Temple"), ki18n("Porting to KConfig XT, bug fixing"), "paul.temple at gmx.net" );
- aboutData.addAuthor( ki18n("Joseph Kerian"), ki18n("KDE4 rewrite"), "jkerian at gmail.com" );
- aboutData.addAuthor( ki18n("Eric Kjeldergaard"), ki18n("KDE4 rewrite"), "kjelderg at gmail.com" );
- aboutData.addAuthor( ki18n("Daniel E. Moctezuma"), ki18n("Deinflection system improvements, Dictionary updates for EDICT and KANJIDIC, GUI Improvements, Kanji Browser, Bug fixes, Code polishing and simplification"), "democtezuma at gmail.com" );
+ aboutData.addAuthor( i18n("Jason Katz-Brown"), i18n("Original author"), "jason at katzbrown.com" );
+ aboutData.addCredit( i18n("Jim Breen"), i18n("Wrote xjdic, of which Kiten borrows code, and the xjdic index file generator.\nAlso is main author of edict and kanjidic, which Kiten essentially require."), "jwb at csse.monash.edu.au" );
+ aboutData.addAuthor( i18n("Neil Stevens"), i18n("Code simplification, UI suggestions."), "neil at qualityassistant.com" );
+ aboutData.addCredit( i18n("David Vignoni"), i18n("svg icon"), "david80v at tin.it");
+ aboutData.addCredit( i18n("Paul Temple"), i18n("Porting to KConfig XT, bug fixing"), "paul.temple at gmx.net" );
+ aboutData.addAuthor( i18n("Joseph Kerian"), i18n("KDE4 rewrite"), "jkerian at gmail.com" );
+ aboutData.addAuthor( i18n("Eric Kjeldergaard"), i18n("KDE4 rewrite"), "kjelderg at gmail.com" );
+ aboutData.addAuthor( i18n("Daniel E. Moctezuma"), i18n("Deinflection system improvements, Dictionary updates for EDICT and KANJIDIC, GUI Improvements, Kanji Browser, Bug fixes, Code polishing and simplification"), "democtezuma at gmail.com" );
aboutData.setOrganizationDomain( "kde.org" ); //Set this for the DBUS ID
- KCmdLineArgs::init( argc, argv, &aboutData );
-
- KCmdLineOptions options;
- KCmdLineArgs::addCmdLineOptions( options ); // Add our own options.
+ QApplication app(argc, argv);
+ QCommandLineParser parser;
+ KAboutData::setApplicationData(aboutData);
- KUniqueApplication app;
+ parser.addVersionOption();
+ parser.addHelpOption();
+ aboutData.setupCommandLine(&parser);
+ parser.process(app);
+ aboutData.processCommandLine(&parser);
Kiten *kiten = new Kiten();
diff --git a/app/kiten.desktop b/app/org.kde.kiten.desktop
similarity index 99%
rename from app/kiten.desktop
rename to app/org.kde.kiten.desktop
index 1c2b396..b2a8680 100644
--- a/app/kiten.desktop
+++ b/app/org.kde.kiten.desktop
@@ -196,3 +196,4 @@ Terminal=false
Type=Application
Icon=kiten
Categories=Qt;KDE;Education;Languages;
+X-DBUS-ServiceName=org.kde.kiten
diff --git a/app/resultsview.cpp b/app/resultsview.cpp
index 43f1504..f67f8ed 100644
--- a/app/resultsview.cpp
+++ b/app/resultsview.cpp
@@ -25,16 +25,10 @@
#include "kitenconfig.h"
-#include <KActionCollection>
-#include <KActionMenu>
#include <KColorScheme>
-#include <KConfig>
-#include <KLocale>
-#include <KMenu>
+#include <KHTMLView>
/* Needed by ResultsView only */
-#include <QApplication>
-#include <QPainter>
#include <QScrollBar>
ResultsView::ResultsView( QWidget *parent, const char *name )
@@ -48,14 +42,14 @@ ResultsView::ResultsView( QWidget *parent, const char *name )
// don't let ktextbrowser internally handle link clicks
////////setNotifyClick(true);
- connect( view(), SIGNAL( finishedLayout() ),
- this, SLOT( doScroll() ) );
+ connect( view(), SIGNAL(finishedLayout()),
+ this, SLOT(doScroll()) );
}
/**
* As the name implies, it appends @param text to the printText
*/
-inline void ResultsView::append( const QString &text )
+void ResultsView::append( const QString &text )
{
_printText.append( text );
}
@@ -210,7 +204,7 @@ void ResultsView::setContents( const QString &text )
write( text );
end();
- kDebug() << "Set CSS to " << generateCSS();
+ qDebug() << "Set CSS to " << generateCSS();
//KDE4 CHANGE setCursorPosition( 0,0 );
////////ensureCursorVisible();
}
@@ -227,9 +221,9 @@ bool ResultsView::urlSelected( const QString &url,
const KParts::OpenUrlArguments& args,
const KParts::BrowserArguments& browserArgs )
{
- //kDebug() << nodeUnderMouse().parentNode().parentNode().parentNode().toHTML();
+ //qDebug() << nodeUnderMouse().parentNode().parentNode().parentNode().toHTML();
emit urlClicked( url );
return KHTMLPart::urlSelected( url, button, state, _target, args, browserArgs );
}
-#include "resultsview.moc"
+
diff --git a/app/resultsview.h b/app/resultsview.h
index bf043b1..6bc8a25 100644
--- a/app/resultsview.h
+++ b/app/resultsview.h
@@ -23,14 +23,8 @@
#ifndef RESULTSVIEW_H
#define RESULTSVIEW_H
-#include <KAction>
+#include <QAction>
#include <KHTMLPart>
-#include <KHTMLView>
-#include <KLineEdit>
-#include <KTextBrowser>
-#include <KXmlGuiWindow>
-
-#include <QPointer>
#include "entry.h"
diff --git a/app/searchstringinput.cpp b/app/searchstringinput.cpp
index 5e85047..d4ac9de 100644
--- a/app/searchstringinput.cpp
+++ b/app/searchstringinput.cpp
@@ -24,19 +24,14 @@
#include "kiten.h"
#include "kitenconfig.h"
-#include <KAction>
#include <KActionCollection>
-#include <KConfig>
-#include <KDebug>
-#include <kdeversion.h>
-#include <KEditToolBar>
#include <KHistoryComboBox>
-#include <KLocale>
+#include <KLocalizedString>
#include <KSelectAction>
-#include <KToggleAction>
#include <KToolBar>
-#include <QClipboard>
+#include <QAction>
+#include <QDebug>
#include <QLineEdit>
SearchStringInput::SearchStringInput( Kiten *parent )
@@ -72,25 +67,25 @@ SearchStringInput::SearchStringInput( Kiten *parent )
_actionTextInput->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
updateFontFromConfig();
- _actionFocusInput = _parent->actionCollection()->addAction( "focusinputfield", this, SLOT( focusInput() ) );
- _actionFocusInput->setShortcut( QString( "Ctrl+L" ) );
+ _actionFocusInput = _parent->actionCollection()->addAction( "focusinputfield", this, SLOT(focusInput()) );
+ _actionFocusInput->setShortcut( Qt::CTRL+Qt::Key_L );
_actionFocusInput->setText( i18n( "Focus input field" ) );
- KAction *actionsearchbox = _parent->actionCollection()->addAction( "searchbox" );
+ QWidgetAction *actionsearchbox = new QWidgetAction(this);
actionsearchbox->setText( i18n( "Search Bar" ) );
- actionsearchbox->setDefaultWidget( _actionTextInput );
-
+ actionsearchbox->setDefaultWidget(_actionTextInput);
+ _parent->actionCollection()->addAction( "searchbox", actionsearchbox );
+
if( ! _actionFilterRare || ! _actionSearchSection
|| ! _actionSelectWordType || ! actionsearchbox )
{
- kError() << "Error creating user interface elements: "
+ qCritical() << "Error creating user interface elements: "
<< ! _actionFilterRare << ! _actionSearchSection
<< ! _actionSelectWordType << ! actionsearchbox;
}
//connect(actionTextInput, SIGNAL(returnPressed()), this, SIGNAL(search()));
- connect( _actionTextInput, SIGNAL( activated( const QString& ) ),
- this, SLOT( test() ) );
+ connect(_actionTextInput, static_cast<void (KHistoryComboBox::*)(const QString &)>(&KHistoryComboBox::activated), this, &SearchStringInput::test);
}
void SearchStringInput::focusInput()
@@ -125,7 +120,7 @@ void SearchStringInput::setDefaultsFromConfig()
void SearchStringInput::setSearchQuery( const DictQuery &query )
{
- kDebug() << "------------------------------Set Triggered";
+ qDebug() << "------------------------------Set Triggered";
//First we set the various actions according to the query
_actionFilterRare->setCurrentItem( query.getFilterType() );
_actionSearchSection->setCurrentItem( query.getMatchType() );
@@ -147,9 +142,9 @@ void SearchStringInput::setSearchQuery( const DictQuery &query )
void SearchStringInput::test()
{
- kDebug() << "test1";
+ qDebug() << "test1";
emit search();
- kDebug() << "test2";
+ qDebug() << "test2";
}
void SearchStringInput::updateFontFromConfig()
@@ -157,4 +152,4 @@ void SearchStringInput::updateFontFromConfig()
_actionTextInput->setFont( KitenConfigSkeleton::self()->font() );
}
-#include "searchstringinput.moc"
+
diff --git a/app/searchstringinput.h b/app/searchstringinput.h
index 43e15ba..c00d0a8 100644
--- a/app/searchstringinput.h
+++ b/app/searchstringinput.h
@@ -24,10 +24,9 @@
#include "dictquery.h"
-class KAction;
+class QAction;
class KHistoryComboBox;
class KSelectAction;
-class KToggleAction;
class Kiten;
class WordType;
@@ -58,7 +57,7 @@ class SearchStringInput : public QObject
KSelectAction *_actionSearchSection;
KSelectAction *_actionSelectWordType;
KHistoryComboBox *_actionTextInput;
- KAction *_actionFocusInput;
+ QAction *_actionFocusInput;
Kiten *_parent;
};
diff --git a/app/wordtype.cpp b/app/wordtype.cpp
index 129a670..bf9e868 100644
--- a/app/wordtype.cpp
+++ b/app/wordtype.cpp
@@ -23,7 +23,6 @@
#include "entry.h"
#include <KComboBox>
-#include <KDebug>
WordType::WordType( QWidget *parent )
: KComboBox( parent )
@@ -35,4 +34,4 @@ WordType::WordType( QWidget *parent )
// addItems( Entry::WordTypesPretty()->uniqueKeys() );
}
-#include "wordtype.moc"
+
diff --git a/app/wordtype.h b/app/wordtype.h
index 904f3e8..33a7af4 100644
--- a/app/wordtype.h
+++ b/app/wordtype.h
@@ -23,7 +23,6 @@
#ifndef WORDTYPE_H
#define WORDTYPE_H
-#include <KAction>
#include <KComboBox>
#include <QWidget>
diff --git a/data/pics/CMakeLists.txt b/data/pics/CMakeLists.txt
index 79dc91e..bd516d0 100644
--- a/data/pics/CMakeLists.txt
+++ b/data/pics/CMakeLists.txt
@@ -5,10 +5,16 @@
########### install files ###############
-kde4_install_icons( ${ICON_INSTALL_DIR} )
-
-
-
+ecm_install_icons( ICONS
+ hi22-apps-kiten.png
+ hi16-apps-kiten.png
+ hi32-apps-kiten.png
+ hi48-apps-kiten.png
+ hi64-apps-kiten.png
+ hi128-apps-kiten.png
+ hisc-apps-kiten.svgz
+ DESTINATION ${ICON_INSTALL_DIR}
+ THEME hicolor)
#original Makefile.am contents follow:
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
index 36db279..da58b46 100644
--- a/doc/CMakeLists.txt
+++ b/doc/CMakeLists.txt
@@ -1,4 +1,4 @@
########### install files ###############
#
#
-kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR kiten)
+kdoctools_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR kiten)
diff --git a/doc/index.docbook b/doc/index.docbook
index 5d563d5..00cc694 100644
--- a/doc/index.docbook
+++ b/doc/index.docbook
@@ -1,5 +1,5 @@
<?xml version="1.0" ?>
-<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
<!ENTITY kappname "&kiten;">
<!ENTITY package "kdeedu">
<!ENTITY % addindex "IGNORE">
diff --git a/kanjibrowser/CMakeLists.txt b/kanjibrowser/CMakeLists.txt
index b0ceb30..ca69e21 100644
--- a/kanjibrowser/CMakeLists.txt
+++ b/kanjibrowser/CMakeLists.txt
@@ -6,16 +6,21 @@ set(kanjibrowser_bin_SRCS
main.cpp
)
-kde4_add_ui_files(kanjibrowser_bin_SRCS kanjibrowserview.ui preferences.ui)
-kde4_add_kcfg_files(kanjibrowser_bin_SRCS kanjibrowserconfig.kcfgc)
+ki18n_wrap_ui(kanjibrowser_bin_SRCS kanjibrowserview.ui preferences.ui)
+kconfig_add_kcfg_files(kanjibrowser_bin_SRCS kanjibrowserconfig.kcfgc)
-kde4_add_app_icon(kanjibrowser_bin_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/../data/pics/hi*-apps-kiten.png")
+# # kde4_add_app_icon(kanjibrowser_bin_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/../data/pics/hi*-apps-kiten.png")
-kde4_add_executable(kanjibrowser_bin ${kanjibrowser_bin_SRCS})
+add_executable(kanjibrowser_bin ${kanjibrowser_bin_SRCS})
set_target_properties(kanjibrowser_bin PROPERTIES OUTPUT_NAME kitenkanjibrowser)
-target_link_libraries(kanjibrowser_bin ${KDE4_KDEUI_LIBS} kiten)
+target_link_libraries(kanjibrowser_bin
+ kiten
+ Qt5::Widgets
+ KF5::Completion
+ KF5::I18n
+ KF5::XmlGui)
install( TARGETS kanjibrowser_bin ${INSTALL_TARGETS_DEFAULT_ARGS} )
############## install files ####################
-install( PROGRAMS kitenkanjibrowser.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} )
-install( FILES kanjibrowserui.rc DESTINATION ${DATA_INSTALL_DIR}/kitenkanjibrowser )
+install( PROGRAMS org.kde.kitenkanjibrowser.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} )
+install( FILES kanjibrowserui.rc DESTINATION ${KXMLGUI_INSTALL_DIR}/kitenkanjibrowser )
diff --git a/kanjibrowser/kanjibrowser.cpp b/kanjibrowser/kanjibrowser.cpp
index 79f7a02..23d4e6f 100644
--- a/kanjibrowser/kanjibrowser.cpp
+++ b/kanjibrowser/kanjibrowser.cpp
@@ -27,12 +27,12 @@
#include "kanjibrowserview.h"
#include "kitenmacros.h"
+#include <QStatusBar>
+
#include <KActionCollection>
-#include <KApplication>
#include <KConfigDialog>
+#include <KLocalizedString>
#include <KStandardAction>
-#include <KStandardDirs>
-#include <KStatusBar>
KanjiBrowser::KanjiBrowser()
: KXmlGuiWindow()
@@ -40,17 +40,16 @@ KanjiBrowser::KanjiBrowser()
{
// Read the configuration file.
_config = KanjiBrowserConfigSkeleton::self();
- _config->readConfig();
+ _config->load();
statusBar()->show();
// Add some actions.
- KStandardAction::quit( kapp, SLOT( quit() ), actionCollection() );
- KStandardAction::preferences( this, SLOT( showPreferences() ), actionCollection() );
+ KStandardAction::quit( this, SLOT(close()), actionCollection() );
+ KStandardAction::preferences( this, SLOT(showPreferences()), actionCollection() );
_view = new KanjiBrowserView( this->parentWidget() );
- connect( _view, SIGNAL( statusBarChanged( const QString&) ),
- this, SLOT( changeStatusBar( const QString& ) ) );
+ connect(_view, &KanjiBrowserView::statusBarChanged, this, &KanjiBrowser::changeStatusBar);
// Load the necessary information and setup the view.
loadKanji();
@@ -80,10 +79,9 @@ void KanjiBrowser::loadKanji()
return;
}
- kDebug() << "Loading kanji..." << endl;
+ qDebug() << "Loading kanji..." << endl;
- QString dictionary = KGlobal::dirs()->findResource( "data"
- , "kiten/kanjidic" );
+ QString dictionary = QStandardPaths::locate(QStandardPaths::GenericDataLocation, "kiten/kanjidic");
_dictFileKanjidic = new DictFileKanjidic();
_dictFileKanjidic->loadSettings();
_dictFileKanjidic->loadDictionary( dictionary, KANJIDIC );
@@ -133,8 +131,8 @@ void KanjiBrowser::loadKanji()
// Sort them.
qSort( gradeList );
qSort( strokeList );
- kDebug() << "Max. grade:" << gradeList.last() << endl;
- kDebug() << "Max. stroke count:" << strokeList.last() << endl;
+ qDebug() << "Max. grade:" << gradeList.last() << endl;
+ qDebug() << "Max. stroke count:" << strokeList.last() << endl;
// Finaly setup the view.
_view->setupView( this, kanjiList, gradeList, strokeList );
@@ -153,9 +151,8 @@ void KanjiBrowser::showPreferences()
KConfigDialog *dialog = new KConfigDialog( this, "settings", KanjiBrowserConfigSkeleton::self() );
dialog->addPage( preferences, i18n( "Settings" ), "help-contents" );
- connect( dialog, SIGNAL( settingsChanged( const QString& ) ),
- _view, SLOT( loadSettings() ) );
+ connect(dialog, &KConfigDialog::settingsChanged, _view, &KanjiBrowserView::loadSettings);
dialog->show();
}
-#include "kanjibrowser.moc"
+
diff --git a/kanjibrowser/kanjibrowserconfig.kcfg b/kanjibrowser/kanjibrowserconfig.kcfg
index a733068..8ecf5e1 100644
--- a/kanjibrowser/kanjibrowserconfig.kcfg
+++ b/kanjibrowser/kanjibrowserconfig.kcfg
@@ -4,14 +4,14 @@
xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
<include>kfontrequester.h</include>
- <include>kglobalsettings.h</include>
+ <include>QFontDatabase</include>
<include>qfont.h</include>
<kcfgfile name="kitenkanjibrowserrc"/>
<group name="Options">
<entry key="kanjiListFont" type="Font">
<code>
- QFont kanjiListFnt = KGlobalSettings::generalFont();
+ QFont kanjiListFnt = QFontDatabase::systemFont(QFontDatabase::GeneralFont);
kanjiListFnt.setPointSize( 24 );
</code>
<default>kanjiListFnt</default>
@@ -23,7 +23,7 @@
<entry key="kanaFont" type="Font">
<code>
- QFont kanaFnt = KGlobalSettings::generalFont();
+ QFont kanaFnt = QFontDatabase::systemFont(QFontDatabase::GeneralFont);
kanaFnt.setPointSize( 22 );
</code>
<default>kanaFnt</default>
@@ -31,7 +31,7 @@
<entry key="labelFont" type="Font">
<code>
- QFont labelFnt = KGlobalSettings::generalFont();
+ QFont labelFnt = QFontDatabase::systemFont(QFontDatabase::GeneralFont);
labelFnt.setPointSize( 22 );
labelFnt.setWeight( QFont::Bold );
</code>
diff --git a/kanjibrowser/kanjibrowserview.cpp b/kanjibrowser/kanjibrowserview.cpp
index 33b23b9..67635c3 100644
--- a/kanjibrowser/kanjibrowserview.cpp
+++ b/kanjibrowser/kanjibrowserview.cpp
@@ -27,10 +27,10 @@
#include "kanjibrowser.h"
#include "kanjibrowserconfig.h"
-#include <KAction>
+#include <QAction>
+#include <QDebug>
#include <KActionCollection>
-#include <KConfigSkeleton>
-#include <KDebug>
+#include <KLocalizedString>
#include <KMessageBox>
KanjiBrowserView::KanjiBrowserView( QWidget *parent )
@@ -229,8 +229,8 @@ void KanjiBrowserView::setupView( KanjiBrowser *parent
{
if( kanji.isEmpty() || kanjiGrades.isEmpty() || strokeCount.isEmpty() )
{
- kDebug() << "One or more of our lists are empty (kanji, grades, strokes)." << endl;
- kDebug() << "Could not load the view properly." << endl;
+ qDebug() << "One or more of our lists are empty (kanji, grades, strokes)." << endl;
+ qDebug() << "Could not load the view properly." << endl;
KMessageBox::error( this, i18n( "Could not load the necessary kanji information." ) );
return;
}
@@ -240,7 +240,7 @@ void KanjiBrowserView::setupView( KanjiBrowser *parent
_gradeList = kanjiGrades;
_strokesList = strokeCount;
- KAction *goToKanjiList = _parent->actionCollection()->addAction( "kanji_list" );
+ QAction *goToKanjiList = _parent->actionCollection()->addAction( "kanji_list" );
goToKanjiList->setText( i18n( "Kanji &List" ) );
_goToKanjiInfo = _parent->actionCollection()->addAction( "kanji_info" );
@@ -267,18 +267,12 @@ void KanjiBrowserView::setupView( KanjiBrowser *parent
_strokes->addItem( i18np( "%1 stroke", "%1 strokes", stroke ) );
}
- connect( _grades, SIGNAL( currentIndexChanged( int ) ),
- this, SLOT( changeGrade( int ) ) );
- connect( _strokes, SIGNAL( currentIndexChanged( int ) ),
- this, SLOT( changeStrokeCount( int ) ) );
- connect( _kanjiList, SIGNAL( itemClicked( QListWidgetItem* ) ),
- this, SLOT( searchKanji( QListWidgetItem* ) ) );
- connect( _kanjiList, SIGNAL( itemClicked( QListWidgetItem* ) ),
- _goToKanjiInfo, SIGNAL( triggered() ) );
- connect( goToKanjiList, SIGNAL( triggered() ),
- this, SLOT( changeToListPage() ) );
- connect( _goToKanjiInfo, SIGNAL( triggered() ),
- this, SLOT( changeToInfoPage() ) );
+ connect(_grades, static_cast<void (KComboBox::*)(int)>(&KComboBox::currentIndexChanged), this, &KanjiBrowserView::changeGrade);
+ connect(_strokes, static_cast<void (KComboBox::*)(int)>(&KComboBox::currentIndexChanged), this, &KanjiBrowserView::changeStrokeCount);
+ connect(_kanjiList, &QListWidget::itemClicked, this, &KanjiBrowserView::searchKanji);
+ connect(_kanjiList, &QListWidget::itemClicked, _goToKanjiInfo, &QAction::triggered);
+ connect(goToKanjiList, &QAction::triggered, this, &KanjiBrowserView::changeToListPage);
+ connect(_goToKanjiInfo, &QAction::triggered, this, &KanjiBrowserView::changeToInfoPage);
// Set the current grade (Grade 1).
_grades->setCurrentIndex( 1 );
@@ -288,7 +282,7 @@ void KanjiBrowserView::setupView( KanjiBrowser *parent
_strokes->setCurrentIndex( 1 );
_strokes->setCurrentIndex( NoStrokeLimit );
- kDebug() << "Initial setup succeeded!" << endl;
+ qDebug() << "Initial setup succeeded!" << endl;
}
void KanjiBrowserView::showKanjiInformation( const EntryKanjidic *kanji )
@@ -375,4 +369,4 @@ void KanjiBrowserView::showKanjiInformation( const EntryKanjidic *kanji )
_kanjiInformation->setHtml( text );
}
-#include "kanjibrowserview.moc"
+
diff --git a/kanjibrowser/kanjibrowserview.h b/kanjibrowser/kanjibrowserview.h
index 3902d56..04d97e3 100644
--- a/kanjibrowser/kanjibrowserview.h
+++ b/kanjibrowser/kanjibrowserview.h
@@ -24,7 +24,7 @@
#include "ui_kanjibrowserview.h"
class EntryKanjidic;
-class KAction;
+class QAction;
class KanjiBrowser;
class QListWidgetItem;
@@ -44,7 +44,7 @@ class KanjiBrowserView : public QWidget, private Ui::KanjiBrowserView
/**
* Initial setup.
*
- * @param parent parent to which we are going to add some KActions
+ * @param parent parent to which we are going to add some QActions
* @param kanji hash containing kanji with its grades and number of strokes
* @param kanjiGrades sorted list of grades found in KANJIDIC
* @param strokeCount sorted list of strokes found in KANJIDIC
@@ -138,13 +138,13 @@ class KanjiBrowserView : public QWidget, private Ui::KanjiBrowserView
};
/**
- * We need this as we are going to add some KActions to it.
+ * We need this as we are going to add some QActions to it.
*/
KanjiBrowser *_parent;
/**
* We need to update this action's text from different functions.
*/
- KAction *_goToKanjiInfo;
+ QAction *_goToKanjiInfo;
/**
* Keep track of the current kanji being displayed in the Kanji Information page.
*/
diff --git a/kanjibrowser/main.cpp b/kanjibrowser/main.cpp
index dee2ff0..9d55899 100644
--- a/kanjibrowser/main.cpp
+++ b/kanjibrowser/main.cpp
@@ -18,11 +18,11 @@
* Boston, MA 02110-1301, USA. *
*****************************************************************************/
-#include <KAboutData>
-#include <KCmdLineArgs>
-#include <KLocale>
-#include <KUniqueApplication>
+#include <QApplication>
+#include <KAboutData>
+#include <KLocalizedString>
+#include <Kdelibs4ConfigMigrator>
#include "kanjibrowser.h"
static const char description[] = I18N_NOOP( "Kiten's Kanji Browser, a KDE Japanese Reference Tool" );
@@ -30,25 +30,29 @@ static const char version[] = "1.0";
int main( int argc, char **argv )
{
- KAboutData about( "kitenkanjibrowser"
- , "kiten"
- , ki18n( "kitenkanjibrowser" )
- , version
- , ki18n( description )
- , KAboutData::License_GPL_V2
- , ki18n( "(C) 2011 Daniel E. Moctezuma" )
- , KLocalizedString()
- , "http://edu.kde.org/kiten"
+ Kdelibs4ConfigMigrator migrate(QLatin1String("kitenkanjibrowser"));
+ migrate.setConfigFiles(QStringList() << QLatin1String("kitenkanjibrowserrc"));
+ migrate.setUiFiles(QStringList() << QLatin1String("kanjibrowserui.rc"));
+ migrate.migrate();
+
+ KAboutData about( QStringLiteral("kitenkanjibrowser")
+ , i18n( "kitenkanjibrowser" )
+ , QStringLiteral("1.0")
+ , i18n( description )
+ , KAboutLicense::GPL_V2
+ , i18n( "(C) 2011 Daniel E. Moctezuma" )
+ , QString()
+ , QStringLiteral("http://edu.kde.org/kiten")
, "democtezuma at gmail.com" );
- about.addAuthor( ki18n( "Daniel E. Moctezuma" )
- , KLocalizedString()
+ about.addAuthor( i18n( "Daniel E. Moctezuma" )
+ , QString()
, "democtezuma at gmail.com" );
about.setOrganizationDomain( "kde.org" );
about.setProgramIconName( "kiten" );
- KCmdLineArgs::init( argc, argv, &about );
-
- KUniqueApplication app;
+ QApplication app(argc, argv);
+ KAboutData::setApplicationData(about);
+
if( app.isSessionRestored() )
{
RESTORE( KanjiBrowser );
diff --git a/kanjibrowser/kitenkanjibrowser.desktop b/kanjibrowser/org.kde.kitenkanjibrowser.desktop
similarity index 96%
rename from kanjibrowser/kitenkanjibrowser.desktop
rename to kanjibrowser/org.kde.kitenkanjibrowser.desktop
index e3384d2..82c9c9c 100644
--- a/kanjibrowser/kitenkanjibrowser.desktop
+++ b/kanjibrowser/org.kde.kitenkanjibrowser.desktop
@@ -43,3 +43,4 @@ Type=Application
Icon=kiten
NoDisplay=true
Categories=Qt;KDE;Education;Languages;
+X-DBUS-ServiceName=org.kde.kitenkanjibrowser
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
index 6675f3e..b8a4cf0 100644
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -1,4 +1,6 @@
############# kitenlib #################
+set(KITEN_LIB_VERSION "5.0.0")
+set(KITEN_LIB_SOVERSION "5")
set(edict_SRCS
DictEdict/deinflection.cpp
DictEdict/dictfileedict.cpp
@@ -21,9 +23,17 @@ set(kiten_LIB_SRCS
kromajiedit.cpp
${dictionary_SRCS})
-kde4_add_library(kiten SHARED ${kiten_LIB_SRCS})
-target_link_libraries(kiten ${KDE4_KDEUI_LIBS})
-set_target_properties(kiten PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION})
+add_library(kiten SHARED ${kiten_LIB_SRCS})
+target_link_libraries(kiten
+ Qt5::Core
+ Qt5::Widgets
+ KF5::Completion
+ KF5::ConfigCore
+ KF5::ConfigGui
+ KF5::CoreAddons
+ KF5::I18n
+ KF5::WidgetsAddons)
+set_target_properties(kiten PROPERTIES VERSION ${KITEN_LIB_VERSION} SOVERSION ${KITEN_LIB_SOVERSION})
install( TARGETS kiten ${INSTALL_TARGETS_DEFAULT_ARGS})
############ install headers #############
diff --git a/lib/DictEdict/deinflection.cpp b/lib/DictEdict/deinflection.cpp
index 2679dd0..4c797c9 100644
--- a/lib/DictEdict/deinflection.cpp
+++ b/lib/DictEdict/deinflection.cpp
@@ -28,15 +28,13 @@
#include "entryedict.h"
#include "entrylist.h"
-#include <KDebug>
-#include <KLocale>
+#include <KLocalizedString>
#include <KMessageBox>
-#include <KStandardDirs>
#include <QFile>
#include <QHash>
#include <QList>
-#include <QRegExp>
+#include <QStandardPaths>
#include <QString>
#include <QTextCodec>
#include <QTextStream>
@@ -170,10 +168,8 @@ bool Deinflection::load()
conjugationList = new QList<Conjugation>;
- QString vconj;
- KStandardDirs *dirs = KGlobal::dirs();
- vconj = dirs->findResource( "data", "kiten/vconj" );
-
+ QString vconj = QStandardPaths::locate(QStandardPaths::GenericDataLocation, "kiten/vconj");
+
//Find the file
if ( vconj.isEmpty() )
{
diff --git a/lib/DictEdict/deinflection.h b/lib/DictEdict/deinflection.h
index 330f38b..d344555 100644
--- a/lib/DictEdict/deinflection.h
+++ b/lib/DictEdict/deinflection.h
@@ -24,7 +24,6 @@
#ifndef KITEN_DEINFLECTION_H
#define KITEN_DEINFLECTION_H
-#include <QStringList>
#include "dictfile.h"
diff --git a/lib/DictEdict/dictfileedict.cpp b/lib/DictEdict/dictfileedict.cpp
index fe5348e..acfa40f 100644
--- a/lib/DictEdict/dictfileedict.cpp
+++ b/lib/DictEdict/dictfileedict.cpp
@@ -23,15 +23,10 @@
#include "dictfileedict.h"
-#include <KApplication>
#include <KConfig>
#include <KConfigSkeleton>
-#include <KDebug>
-#include <KGlobal>
-#include <KProcess>
-#include <KStandardDirs>
-#include <QByteArray>
+#include <QDebug>
#include <QFile>
#include <QString>
#include <QTextCodec>
@@ -92,7 +87,7 @@ EntryList *DictFileEdict::doSearch( const DictQuery &query )
return new EntryList();
}
- kDebug()<< "Search from : " << getName();
+ qDebug()<< "Search from : " << getName();
QString firstChoice = query.getWord();
if( firstChoice.length() == 0 )
@@ -133,7 +128,7 @@ EntryList *DictFileEdict::doSearch( const DictQuery &query )
EntryList *results = new EntryList();
foreach( const QString &it, preliminaryResults )
{
-// kDebug() << "result: " << it << endl;
+// qDebug() << "result: " << it << endl;
Entry *result = makeEntry( it );
EntryEdict *resultEdict = static_cast<EntryEdict*>( result );
if( result->matchesQuery( query ) && resultEdict->matchesWordType( query ) )
diff --git a/lib/DictEdict/dictfileedict.h b/lib/DictEdict/dictfileedict.h
index bc03de3..a2f6b8a 100644
--- a/lib/DictEdict/dictfileedict.h
+++ b/lib/DictEdict/dictfileedict.h
@@ -31,7 +31,6 @@
#include "libkitenexport.h"
#include "linearedictfile.h"
-#include <QFile>
#include <QMap>
#include <sys/types.h>
@@ -42,7 +41,6 @@ class DictionaryPreferenceDialog;
class EntryEdict;
class KConfigSkeleton;
class KConfigSkeletonItem;
-class QByteArray;
class QString;
class QStringList;
diff --git a/lib/DictEdict/dictfilefieldselector.cpp b/lib/DictEdict/dictfilefieldselector.cpp
index 0d6e7b0..242ff24 100644
--- a/lib/DictEdict/dictfilefieldselector.cpp
+++ b/lib/DictEdict/dictfilefieldselector.cpp
@@ -22,10 +22,8 @@
#include <KActionSelector>
#include <KConfigSkeleton>
-#include <KLocale>
+#include <KLocalizedString>
-#include <QFrame>
-#include <QLayout>
#include <QListWidget>
#include <QString>
#include <QStringList>
@@ -56,14 +54,10 @@ DictFileFieldSelector::DictFileFieldSelector( KConfigSkeleton *config,
m_completeList.append( "Meaning" );
//Make connections
- connect( m_listView, SIGNAL( added( QListWidgetItem* ) )
- , this, SLOT( settingChanged() ) );
- connect( m_listView, SIGNAL( removed( QListWidgetItem* ) ),
- this, SLOT( settingChanged() ) );
- connect( m_listView, SIGNAL( movedUp( QListWidgetItem* ) ),
- this, SLOT( settingChanged() ) );
- connect( m_listView, SIGNAL( movedDown( QListWidgetItem* ) ),
- this, SLOT( settingChanged() ) );
+ connect(m_listView, &KActionSelector::added, this, &DictFileFieldSelector::settingChanged);
+ connect(m_listView, &KActionSelector::removed, this, &DictFileFieldSelector::settingChanged);
+ connect(m_listView, &KActionSelector::movedUp, this, &DictFileFieldSelector::settingChanged);
+ connect(m_listView, &KActionSelector::movedDown, this, &DictFileFieldSelector::settingChanged);
m_config = config;
updateWidgets();
@@ -99,7 +93,7 @@ void DictFileFieldSelector::readFromPrefs()
, itemName
, *new QStringList() )
, itemName );
- m_config->readConfig();
+ m_config->load();
selectedList = m_config->findItem( itemName )->property().toStringList();
}
@@ -165,7 +159,7 @@ void DictFileFieldSelector::writeToPrefs()
}
item->setProperty( theList );
- m_config->writeConfig();
+ m_config->save();
}
-#include "dictfilefieldselector.moc"
+
diff --git a/lib/DictEdict/entryedict.cpp b/lib/DictEdict/entryedict.cpp
index abfbbae..dcedd5f 100644
--- a/lib/DictEdict/entryedict.cpp
+++ b/lib/DictEdict/entryedict.cpp
@@ -25,7 +25,7 @@
#include "dictfileedict.h"
#include "kitenmacros.h"
-#include <KDebug>
+#include <QDebug>
#include <KLocalizedString>
#define QSTRINGLISTCHECK(x) (x==NULL?QStringList():*x)
@@ -395,7 +395,7 @@ QString EntryEdict::toHTML() const
else if( field == "Word/Kanji" ) result += HTMLWord()+' ';
else if( field == "Meaning" ) result += HTMLMeanings()+' ';
else if( field == "Reading" ) result += HTMLReadings()+' ';
- else kDebug() << "Unknown field: " << field;
+ else qDebug() << "Unknown field: " << field;
}
if( isCommon() )
diff --git a/lib/DictEdict/indexededictfile.cpp b/lib/DictEdict/indexededictfile.cpp
index 4c9ac87..4df8456 100644
--- a/lib/DictEdict/indexededictfile.cpp
+++ b/lib/DictEdict/indexededictfile.cpp
@@ -21,14 +21,12 @@
#include "indexededictfile.h"
-#include <KApplication>
-#include <KDebug>
-#include <KGlobal>
+#include <QApplication>
#include <KProcess>
-#include <KStandardDirs>
#include <QFile>
#include <QFileInfo>
+#include <QStandardPaths>
#include <QString>
#include <QTextCodec>
#include <QVector>
@@ -57,13 +55,13 @@ IndexedEdictFile::~IndexedEdictFile()
bool IndexedEdictFile::buildIndex()
{
KProcess proc;
- proc << KStandardDirs::findExe("kitengen") << m_dictFile.fileName() << m_indexFile.fileName();
+ proc << QStandardPaths::findExecutable("kitengen") << m_dictFile.fileName() << m_indexFile.fileName();
proc.start();
proc.waitForStarted();
do
{
- KApplication::processEvents();
+ QApplication::processEvents();
} while( proc.waitForFinished( 5000 ) ); //FIXME: This just cuts the index generator off after 5 sec
//FIXME: Check for the result of this operation
@@ -309,8 +307,8 @@ bool IndexedEdictFile::loadFile( const QString &fileName )
}
m_dictPtr = static_cast<unsigned char*>( MAP_FAILED );
- m_indexFile.setFileName( KGlobal::dirs()->saveLocation( "data", "kiten/xjdx/", true )
- + QFileInfo( fileName ).baseName() + ".xjdx" );
+ m_indexFile.setFileName( QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation) + QLatin1Char('/') + "kiten/xjdx/"
+ + QFileInfo( fileName ).baseName() + ".xjdx" );
m_indexPtr = static_cast<uint32_t*>( MAP_FAILED );
if( ! m_indexFile.exists() )
{
diff --git a/lib/DictEdict/linearedictfile.cpp b/lib/DictEdict/linearedictfile.cpp
index bbd1273..b03eef0 100644
--- a/lib/DictEdict/linearedictfile.cpp
+++ b/lib/DictEdict/linearedictfile.cpp
@@ -21,13 +21,9 @@
#include "linearedictfile.h"
-#include <KApplication>
-#include <KDebug>
-#include <KGlobal>
-#include <KProcess>
-#include <KStandardDirs>
#include <QFile>
+#include <QDebug>
#include <QTextCodec>
LinearEdictFile::LinearEdictFile()
@@ -58,7 +54,7 @@ QVector<QString> LinearEdictFile::findMatches( const QString &searchString ) con
bool LinearEdictFile::loadFile( const QString& filename )
{
- kDebug() << "Loading edict from " << filename << endl;
+ qDebug() << "Loading edict from " << filename << endl;
//if already loaded
if ( ! m_edict.isEmpty() )
diff --git a/lib/DictKanjidic/dictfilekanjidic.cpp b/lib/DictKanjidic/dictfilekanjidic.cpp
index 55e9eeb..6b3f753 100644
--- a/lib/DictKanjidic/dictfilekanjidic.cpp
+++ b/lib/DictKanjidic/dictfilekanjidic.cpp
@@ -29,9 +29,8 @@
#include "kitenmacros.h"
#include <KConfigSkeleton>
-#include <KDebug>
-#include <KGlobal>
+#include <QDebug>
#include <QFile>
#include <QTextCodec>
@@ -108,7 +107,7 @@ EntryList* DictFileKanjidic::doSearch( const DictQuery &query )
return new EntryList();
}
- kDebug() << "Search from:" << getName() << endl;
+ qDebug() << "Search from:" << getName() << endl;
QString searchQuery = query.getWord();
if( searchQuery.length() == 0 )
{
@@ -175,7 +174,7 @@ bool DictFileKanjidic::loadDictionary( const QString &file, const QString &name
return false;
}
- kDebug() << "Loading kanjidic from:" << file << endl;
+ qDebug() << "Loading kanjidic from:" << file << endl;
QTextStream fileStream( &dictionary );
fileStream.setCodec( QTextCodec::codecForName( "eucJP" ) );
diff --git a/lib/DictKanjidic/entrykanjidic.cpp b/lib/DictKanjidic/entrykanjidic.cpp
index 43f44f7..6f5fe67 100644
--- a/lib/DictKanjidic/entrykanjidic.cpp
+++ b/lib/DictKanjidic/entrykanjidic.cpp
@@ -26,8 +26,8 @@
#include "dictfilekanjidic.h"
#include "kitenmacros.h"
-#include <KLocale>
-#include <KDebug>
+#include <KLocalizedString>
+#include <QDebug>
#define QSTRINGLISTCHECK(x) (x==NULL?QStringList():*x)
@@ -149,7 +149,7 @@ QString EntryKanjidic::getStrokesCount() const
QString EntryKanjidic::HTMLExtendedInfo( const QString &field ) const
{
- //kDebug() << field;
+ //qDebug() << field;
return QString( "<span class=\"ExtendedInfo\">%1: %2</span>" )
.arg( field )
.arg( ExtendedInfo[ field ] );
@@ -220,7 +220,7 @@ bool EntryKanjidic::loadEntry( const QString &entryLine )
else break; \
}
- // kDebug() << "LOADSTRING: '" << stringToLoad << "'";
+ // qDebug() << "LOADSTRING: '" << stringToLoad << "'";
/* We can start looping at 8 because we have guarantees about the initial
data. This loop is used because the kanjidic format allows the data
@@ -231,7 +231,7 @@ bool EntryKanjidic::loadEntry( const QString &entryLine )
ichar = entryLine.at( i );
curString = "";
- switch( ichar.toAscii() )
+ switch( ichar.unicode() )
{
case ' ':
/* as far as I can tell, there is no real rule forcing only 1 space so
@@ -352,7 +352,7 @@ bool EntryKanjidic::loadEntry( const QString &entryLine )
ichar = entryLine.at( i );
}
INCI
-// kDebug() << "Meaning's curString: '" << curString << "'";
+// qDebug() << "Meaning's curString: '" << curString << "'";
Meanings.append( curString );
break;
case 'T': /* a reading that is used in names for T1, radical names for T2 */
@@ -421,7 +421,7 @@ bool EntryKanjidic::loadEntry( const QString &entryLine )
break;
default:
/* either a character we don't address or a problem...we should ignore it */
-// kDebug() << "hit default in kanji parser. Unicode: '" << ichar.unicode() << "'";
+// qDebug() << "hit default in kanji parser. Unicode: '" << ichar.unicode() << "'";
/* This should detect unicode kana */
// Hiragana 0x3040 - 0x309F, Katakana: 0x30A0 - 0x30FF
@@ -456,7 +456,7 @@ bool EntryKanjidic::loadEntry( const QString &entryLine )
break;
}
}
-// kDebug() << "Parsed: '"<<Word<<"' ("<<Readings.join("^")<<") \""<<
+// qDebug() << "Parsed: '"<<Word<<"' ("<<Readings.join("^")<<") \""<<
// Meanings.join("|")<<"\ and " <<ExtendedInfo.keys() << " from :"<<entryLine<<endl;
return true;
@@ -478,7 +478,7 @@ QString EntryKanjidic::toHTML() const
foreach( const QString &field, QSTRINGLISTCHECK( DictFileKanjidic::displayFields ) )
{
- //kDebug() << "Display: "<<field;
+ //qDebug() << "Display: "<<field;
if( field == "--NewLine--" ) result += "<br>";
else if( field == "Word/Kanji" ) result += HTMLWord() + ' ';
else if( field == "Meaning" ) result += HTMLMeanings() + ' ';
diff --git a/lib/dictionarymanager.cpp b/lib/dictionarymanager.cpp
index ce2e65e..407ae5d 100644
--- a/lib/dictionarymanager.cpp
+++ b/lib/dictionarymanager.cpp
@@ -28,12 +28,10 @@
#include "entrylist.h"
#include "kitenmacros.h"
-#include <KDebug>
-#include <KGlobal>
#include <KConfig>
#include <KConfigSkeleton>
-#include <QFile>
+#include <QDebug>
#include <QString>
/* Includes to handle various types of dictionaries
@@ -118,12 +116,12 @@ bool DictionaryManager::addDictionary( const QString &file
if( ! newDict->loadDictionary( file, name ) )
{
- kDebug() << "Dictionary load FAILED: " << newDict->getName();
+ qDebug() << "Dictionary load FAILED: " << newDict->getName();
delete newDict;
return false;
}
- kDebug() << "Dictionary Loaded : " << newDict->getName();
+ qDebug() << "Dictionary Loaded : " << newDict->getName();
d->dictManagers.insert( name, newDict );
return true;
}
@@ -158,7 +156,7 @@ EntryList *DictionaryManager::doSearch( const DictQuery &query ) const
// None specified, search all
foreach( DictFile *it, d->dictManagers )
{
- kDebug() << "Searching in " << it->getName() << "dictionary." << endl;
+ qDebug() << "Searching in " << it->getName() << "dictionary." << endl;
EntryList *temp = it->doSearch( query );
if( temp )
{
@@ -185,8 +183,8 @@ EntryList *DictionaryManager::doSearch( const DictQuery &query ) const
}
ret->setQuery( query ); //Store the query for later use.
- kDebug() << "From query: '" << query.toString() << "' Found " << ret->count() << " results";
- kDebug() << "Incoming match type: " << query.getMatchType() << " Outgoing: " << ret->getQuery().getMatchType();
+ qDebug() << "From query: '" << query.toString() << "' Found " << ret->count() << " results";
+ qDebug() << "Incoming match type: " << query.getMatchType() << " Outgoing: " << ret->getQuery().getMatchType();
return ret;
}
diff --git a/lib/dictionarypreferencedialog.cpp b/lib/dictionarypreferencedialog.cpp
index c78945e..aa2fc71 100644
--- a/lib/dictionarypreferencedialog.cpp
+++ b/lib/dictionarypreferencedialog.cpp
@@ -37,4 +37,4 @@ QString DictionaryPreferenceDialog::name() const
return m_name;
}
-#include "dictionarypreferencedialog.moc"
+
diff --git a/lib/dictquery.cpp b/lib/dictquery.cpp
index 6f393c1..326346d 100644
--- a/lib/dictquery.cpp
+++ b/lib/dictquery.cpp
@@ -28,7 +28,7 @@ TODO: Add features to limit the number of hits on a per-search basis.
#include "dictquery.h"
-#include <KDebug>
+#include <QDebug>
#include <QString>
#include <QStringList>
@@ -359,11 +359,11 @@ DictQuery &DictQuery::operator=( const QString &str )
break;
case DictQuery::Mixed:
- kWarning() << "DictQuery: String parsing error - mixed type";
+ qWarning() << "DictQuery: String parsing error - mixed type";
break;
case DictQuery::ParseError:
- kWarning() << "DictQuery: String parsing error";
+ qWarning() << "DictQuery: String parsing error";
break;
}
}
diff --git a/lib/entry.cpp b/lib/entry.cpp
index be3893f..a7c37dc 100644
--- a/lib/entry.cpp
+++ b/lib/entry.cpp
@@ -24,14 +24,8 @@
#include "entry.h"
#include "dictquery.h"
-#include <KDebug>
-#include <KLocale>
-#include <KMessageBox>
-#include <KStandardDirs>
-
-#include <QFileInfo>
-#include <QRegExp>
-#include <QTextCodec>
+#include <KLocalizedString>
+
#include <iostream>
#include <cassert>
diff --git a/lib/entry.h b/lib/entry.h
index 0c0626e..3259387 100644
--- a/lib/entry.h
+++ b/lib/entry.h
@@ -25,7 +25,6 @@
#define KITEN_ENTRY_H
#include <QHash>
-#include <QList>
#include <QStringList>
#include "libkitenexport.h"
diff --git a/lib/entrylist.cpp b/lib/entrylist.cpp
index cd3bf32..e33fcc3 100644
--- a/lib/entrylist.cpp
+++ b/lib/entrylist.cpp
@@ -23,14 +23,8 @@
#include "entrylist.h"
-#include <KDebug>
-#include <KLocale>
-#include <KMessageBox>
-#include <KStandardDirs>
-
-#include <QFileInfo>
-#include <QRegExp>
-#include <QTextCodec>
+#include <KLocalizedString>
+
#include <sys/mman.h>
diff --git a/lib/historyptrlist.cpp b/lib/historyptrlist.cpp
index 1e4ed0e..fadb542 100644
--- a/lib/historyptrlist.cpp
+++ b/lib/historyptrlist.cpp
@@ -24,7 +24,6 @@
#include "entrylist.h"
#include <QList>
-#include <QMutableListIterator>
class HistoryPtrList::Private
{
diff --git a/lib/kromajiedit.cpp b/lib/kromajiedit.cpp
index d19d874..4ac7e80 100644
--- a/lib/kromajiedit.cpp
+++ b/lib/kromajiedit.cpp
@@ -21,18 +21,15 @@
#include "kromajiedit.h"
-#include <KDebug>
-#include <KLocale>
+#include <KLocalizedString>
#include <KMessageBox>
-#include <KStandardDirs>
#include <QAction>
#include <QApplication>
-#include <QByteArray>
#include <QFile>
#include <QKeyEvent>
-#include <QMap>
#include <QMenu>
+#include <QStandardPaths>
#include <QTextCodec>
#include <QTextStream>
@@ -41,8 +38,7 @@ KRomajiEdit::KRomajiEdit( QWidget *parent, const char *name )
{
m_kana = "unset";
- KStandardDirs *dirs = KGlobal::dirs();
- QString romkana = dirs->findResource( "data", "kiten/romkana.cnv" );
+ QString romkana = QStandardPaths::locate(QStandardPaths::GenericDataLocation, "kiten/romkana.cnv");
if ( romkana.isNull() )
{
KMessageBox::error( 0, i18n( "Romaji information file not installed, so Romaji conversion cannot be used." ) );
@@ -138,8 +134,8 @@ QMenu *KRomajiEdit::createPopupMenu()
temp->setChecked( false );
}
- connect( group, SIGNAL( triggered( QAction* ) ),
- SLOT( setKana( QAction* ) ) );
+ connect( group, SIGNAL(triggered(QAction*)),
+ SLOT(setKana(QAction*)) );
emit aboutToShowContextMenu( menu );
return menu;
@@ -340,4 +336,4 @@ void KRomajiEdit::setKana( QAction *action )
}
}
-#include "kromajiedit.moc"
+
diff --git a/lib/libkitenexport.h b/lib/libkitenexport.h
index d520f5b..8bf784f 100644
--- a/lib/libkitenexport.h
+++ b/lib/libkitenexport.h
@@ -21,7 +21,8 @@
#ifndef KITEN_LIBKITENEXPORT_H
#define KITEN_LIBKITENEXPORT_H
-#include <kdemacros.h>
+#define KDE_EXPORT __attribute__ ((visibility("default")))
+#define KDE_IMPORT __attribute__ ((visibility("default")))
#if defined Q_OS_WIN
# ifndef KITEN_EXPORT
diff --git a/radselect/CMakeLists.txt b/radselect/CMakeLists.txt
index 0d21a8f..96d3464 100644
--- a/radselect/CMakeLists.txt
+++ b/radselect/CMakeLists.txt
@@ -10,17 +10,24 @@ set(radselect_bin_SRCS
radselect.cpp
radselectview.cpp
)
-kde4_add_ui_files(radselect_bin_SRCS radical_selector.ui radselectprefdialog.ui)
-kde4_add_kcfg_files(radselect_bin_SRCS radselectconfig.kcfgc)
+ki18n_wrap_ui(radselect_bin_SRCS radical_selector.ui radselectprefdialog.ui)
+kconfig_add_kcfg_files(radselect_bin_SRCS radselectconfig.kcfgc)
#kde4_add_app_icon(radselect_bin_SRCS "${CMAKE_INSTALL_PREFIX}/share/icons/oxygen/*/apps/kiten.png")
-kde4_add_app_icon(radselect_bin_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/../data/pics/hi*-apps-kiten.png")
+# # kde4_add_app_icon(radselect_bin_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/../data/pics/hi*-apps-kiten.png")
-kde4_add_executable(radselect_bin ${radselect_bin_SRCS})
+add_executable(radselect_bin ${radselect_bin_SRCS})
set_target_properties(radselect_bin PROPERTIES OUTPUT_NAME kitenradselect)
-target_link_libraries(radselect_bin ${KDE4_KDEUI_LIBS} kiten)
+target_link_libraries(radselect_bin
+ kiten
+ Qt5::Core
+ Qt5::Widgets
+ KF5::ConfigWidgets
+ KF5::CoreAddons
+ KF5::I18n
+ KF5::XmlGui)
install( TARGETS radselect_bin ${INSTALL_TARGETS_DEFAULT_ARGS} )
############## install files ####################
install( PROGRAMS kitenradselect.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} )
-install( FILES radselectui.rc DESTINATION ${DATA_INSTALL_DIR}/kitenradselect )
+install( FILES radselectui.rc DESTINATION ${KXMLGUI_INSTALL_DIR}/kitenradselect )
diff --git a/radselect/buttongrid.cpp b/radselect/buttongrid.cpp
index fed877d..5da5fc2 100644
--- a/radselect/buttongrid.cpp
+++ b/radselect/buttongrid.cpp
@@ -31,13 +31,10 @@
#include "radicalbutton.h"
-#include <KDebug>
-#include <KLocale>
+#include <KLocalizedString>
-#include <QFontMetrics>
#include <QGridLayout>
#include <QLabel>
-#include <QSize>
#include <QString>
#include <QWidget>
@@ -94,10 +91,10 @@ void ButtonGrid::buildRadicalButtons()
RadicalButton *button = new RadicalButton( *it, this );
grid->addWidget( button, row_index++, column_index );
//Bind slots/signals for this button
- connect( button, SIGNAL( userClicked( const QString&, RadicalButton::ButtonStatus ) ),
- this, SLOT( radicalClicked( const QString&, RadicalButton::ButtonStatus ) ) );
- connect( this, SIGNAL( clearButtonSelections() ),
- button, SLOT( resetButton() ) );
+ connect( button, SIGNAL(userClicked(QString,RadicalButton::ButtonStatus)),
+ this, SLOT(radicalClicked(QString,RadicalButton::ButtonStatus)) );
+ connect( this, SIGNAL(clearButtonSelections()),
+ button, SLOT(resetButton()) );
//Add this button to our list
m_buttons.insert( *it, button );
@@ -209,4 +206,4 @@ void ButtonGrid::updateButtons()
}
}
-#include "buttongrid.moc"
+
diff --git a/radselect/main.cpp b/radselect/main.cpp
index d1e5775..824eecf 100644
--- a/radselect/main.cpp
+++ b/radselect/main.cpp
@@ -18,11 +18,11 @@
* Boston, MA 02110-1301, USA. *
*****************************************************************************/
+#include <QApplication>
+#include <QCommandLineParser>
+
#include <KAboutData>
-#include <KCmdLineArgs>
-#include <KLocale>
-#include <KUniqueApplication>
-#include <KMessageBox>
+#include <KLocalizedString>
#include "radselect.h"
@@ -31,20 +31,23 @@ static const char version[] = "0.1";
int main( int argc, char **argv )
{
- KAboutData about( "kitenradselect", "kiten", ki18n("kitenradselect"), version,
- ki18n(description), KAboutData::License_GPL,
- ki18n("(C) 2005 Joseph Kerian"), KLocalizedString(), 0, "jkerian at gmail.com" );
- about.addAuthor( ki18n("Joseph Kerian"), KLocalizedString(), "jkerian at gmail.com" );
+ KAboutData about( QStringLiteral("kitenradselect"), i18n("kitenradselect"), QStringLiteral("0.1"),
+ i18n(description), KAboutLicense::GPL,
+ i18n("(C) 2005 Joseph Kerian"), QString(), QString(), "jkerian at gmail.com" );
+ about.addAuthor( i18n("Joseph Kerian"), QString(), "jkerian at gmail.com" );
about.setOrganizationDomain("kde.org"); //For DBus domain
about.setProgramIconName("kiten");
- KCmdLineArgs::init( argc, argv, &about );
-
- KCmdLineOptions options;
- options.add( "+[Search_String]", ki18n( "Initial Search String from Kiten" ) );
- KCmdLineArgs::addCmdLineOptions( options );
-
- KUniqueApplication app;
+ QApplication app(argc, argv);
+ QCommandLineParser parser;
+ KAboutData::setApplicationData(about);
+
+ parser.addVersionOption();
+ parser.addHelpOption();
+ about.setupCommandLine(&parser);
+ parser.addPositionalArgument("Search_String", i18n( "Initial Search String from Kiten" ));
+ parser.process(app);
+ about.processCommandLine(&parser);
// see if we are starting with session management
if ( app.isSessionRestored() )
@@ -54,17 +57,17 @@ int main( int argc, char **argv )
else
{
// no session.. just start up normally
- KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
RadSelect *widget = new RadSelect();
widget->show();
- if ( args->count() >= 1 )
+ if ( parser.positionalArguments().count() >= 1 )
{
- widget->loadSearchString( args->arg( 0 ) );
+ const QStringList args = parser.positionalArguments();
+ widget->loadSearchString( args.first() );
}
- args->clear();
+
}
return app.exec();
diff --git a/radselect/radical_selector.ui b/radselect/radical_selector.ui
index 2e75acf..6dddf0f 100644
--- a/radselect/radical_selector.ui
+++ b/radselect/radical_selector.ui
@@ -118,7 +118,7 @@
</widget>
</item>
<item>
- <widget class="KIntSpinBox" name="strokes_low">
+ <widget class="QSpinBox" name="strokes_low">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
@@ -138,7 +138,7 @@
</widget>
</item>
<item>
- <widget class="KIntSpinBox" name="strokes_high">
+ <widget class="QSpinBox" name="strokes_high">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
@@ -196,13 +196,6 @@
</item>
</layout>
</widget>
- <customwidgets>
- <customwidget>
- <class>KIntSpinBox</class>
- <extends>QSpinBox</extends>
- <header>knuminput.h</header>
- </customwidget>
- </customwidgets>
<tabstops>
<tabstop>clear_button</tabstop>
<tabstop>selected_radicals</tabstop>
diff --git a/radselect/radicalbutton.cpp b/radselect/radicalbutton.cpp
index 83ffcc9..e3c9c6b 100644
--- a/radselect/radicalbutton.cpp
+++ b/radselect/radicalbutton.cpp
@@ -20,9 +20,6 @@
#include "radicalbutton.h"
-#include <KApplication>
-#include <KStyle>
-
#include <QMouseEvent>
#include <QPushButton>
#include <QString>
@@ -145,4 +142,4 @@ QSize RadicalButton::sizeHint() const
return minimumSizeHint();
}
-#include "radicalbutton.moc"
+
diff --git a/radselect/radselect.cpp b/radselect/radselect.cpp
index 797ce11..e5f6ceb 100644
--- a/radselect/radselect.cpp
+++ b/radselect/radselect.cpp
@@ -25,24 +25,13 @@
#include "ui_radselectprefdialog.h"
-#include <KAction>
#include <KActionCollection>
-#include <KApplication>
#include <KConfig>
#include <KConfigDialog>
-#include <KEditToolBar>
-#include <KFileDialog>
-#include <KGlobal>
-#include <KHistoryComboBox>
-#include <KIO/NetAccess>
-#include <KIcon>
-#include <KIconLoader>
-#include <KLocale>
+#include <KLocalizedString>
#include <KStandardAction>
#include <KStandardShortcut>
-#include <KStatusBar>
-#include <KToggleAction>
-#include <kdeversion.h>
+#include <QStatusBar>
#include <QDragEnterEvent>
#include <QDropEvent>
@@ -57,9 +46,9 @@ RadSelect::RadSelect()
setCentralWidget( m_view ); //This is the main widget
setObjectName( QLatin1String( "radselect" ) );
- KStandardAction::quit( kapp, SLOT( quit() ), actionCollection() );
- KStandardAction::preferences( this, SLOT( optionsPreferences() ), actionCollection() );
- KStandardAction::keyBindings( (const QObject*)guiFactory(), SLOT( configureShortcuts() ), actionCollection() );
+ KStandardAction::quit( this, SLOT(close()), actionCollection() );
+ KStandardAction::preferences( this, SLOT(optionsPreferences()), actionCollection() );
+ KStandardAction::keyBindings( (const QObject*)guiFactory(), SLOT(configureShortcuts()), actionCollection() );
statusBar()->show();
// Apply the create the main window and ask the mainwindow to
@@ -69,12 +58,12 @@ RadSelect::RadSelect()
setupGUI( Default, "radselectui.rc" );
// allow the view to change the statusbar
- connect( m_view, SIGNAL( signalChangeStatusbar( const QString& ) ),
- this, SLOT( changeStatusbar( const QString& ) ) );
+ connect( m_view, SIGNAL(signalChangeStatusbar(QString)),
+ this, SLOT(changeStatusbar(QString)) );
if( ! QDBusConnection::sessionBus().isConnected() )
{
- kDebug() << "Session Bus not found!!" << endl;
+ qDebug() << "Session Bus not found!!" << endl;
m_dbusInterface = 0;
}
else
@@ -84,8 +73,8 @@ RadSelect::RadSelect()
}
// connect the search signal from the m_view with our dcop routines
- connect( m_view, SIGNAL( kanjiSelected( const QStringList& ) ),
- this, SLOT( sendSearch( const QStringList& ) ) );
+ connect( m_view, SIGNAL(kanjiSelected(QStringList)),
+ this, SLOT(sendSearch(QStringList)) );
}
RadSelect::~RadSelect()
@@ -109,7 +98,7 @@ void RadSelect::dragEnterEvent( QDragEnterEvent *event )
void RadSelect::dropEvent( QDropEvent *event )
{
- QByteArray qba= event->encodedData( "text/plain" );
+ QByteArray qba = event->mimeData()->data("text/plain");
if ( qba.size() > 0 )
{
loadSearchString( qba );
@@ -139,8 +128,8 @@ void RadSelect::optionsPreferences()
Ui::radselectprefdialog layout;
layout.setupUi( preferences );
dialog->addPage( preferences, i18n( "Settings" ), "help-contents" );
- connect( dialog, SIGNAL( settingsChanged( const QString& ) ),
- m_view, SLOT( loadSettings() ) );
+ connect( dialog, SIGNAL(settingsChanged(QString)),
+ m_view, SLOT(loadSettings()) );
dialog->show();
}
@@ -179,9 +168,9 @@ void RadSelect::sendSearch( const QStringList& kanji )
, m_currentQuery.toString() );
if( reply.type() == QDBusMessage::ErrorMessage )
{
- kDebug() << "QDBus Error: " << reply.signature() << "<eoe>";
+ qDebug() << "QDBus Error: " << reply.signature() << "<eoe>";
}
}
}
-#include "radselect.moc"
+
diff --git a/radselect/radselectview.cpp b/radselect/radselectview.cpp
index fb49c2b..4ba7d2a 100644
--- a/radselect/radselectview.cpp
+++ b/radselect/radselectview.cpp
@@ -29,9 +29,8 @@
#include "buttongrid.h"
#include "radselectconfig.h"
-#include <KStandardDirs>
#include <KMessageBox>
-#include <KDebug>
+#include <KLocalizedString>
#include <QApplication>
#include <QClipboard>
@@ -40,8 +39,6 @@
#include <QListWidgetItem>
#include <QPushButton>
#include <QString>
-#include <QStringList>
-#include <QTimer>
#include <QWidget>
RadSelectView::RadSelectView( QWidget *parent )
@@ -51,8 +48,7 @@ RadSelectView::RadSelectView( QWidget *parent )
setupUi( this );
m_radicalInfo = 0L;
//Load the radical information
- KStandardDirs *dirs = KGlobal::dirs();
- QString radkfilename = dirs->findResource( "data", "kiten/radkfile" );
+ QString radkfilename = QStandardPaths::locate(QStandardPaths::GenericDataLocation, "kiten/radkfile");
if ( radkfilename.isNull() )
{
KMessageBox::error( 0, i18n( "Kanji radical information does not seem to "
@@ -75,29 +71,29 @@ RadSelectView::RadSelectView( QWidget *parent )
//== Now we connect all our signals ==
//Connect our radical grid to our adding method
- connect( m_buttongrid, SIGNAL( possibleKanji( const QList<Kanji>& ) ),
- this, SLOT( listPossibleKanji( const QList<Kanji>& ) ) );
+ connect( m_buttongrid, SIGNAL(possibleKanji(QList<Kanji>)),
+ this, SLOT(listPossibleKanji(QList<Kanji>)) );
//Connect the results selection to our logic
- connect( selected_radicals, SIGNAL( itemClicked( QListWidgetItem* ) ),
- this, SLOT( kanjiClicked( QListWidgetItem* ) ) );
- connect( selected_radicals, SIGNAL( itemDoubleClicked( QListWidgetItem* ) ),
- this, SLOT( kanjiDoubleClicked( QListWidgetItem* ) ) );
+ connect( selected_radicals, SIGNAL(itemClicked(QListWidgetItem*)),
+ this, SLOT(kanjiClicked(QListWidgetItem*)) );
+ connect( selected_radicals, SIGNAL(itemDoubleClicked(QListWidgetItem*)),
+ this, SLOT(kanjiDoubleClicked(QListWidgetItem*)) );
//Connect our stroke limit actions
- connect( strokes_low, SIGNAL( valueChanged( int ) ),
- this, SLOT( strokeLimitChanged( int ) ) );
- connect( strokes_high, SIGNAL( valueChanged( int ) ),
- this, SLOT( strokeLimitChanged( int ) ) );
+ connect( strokes_low, SIGNAL(valueChanged(int)),
+ this, SLOT(strokeLimitChanged(int)) );
+ connect( strokes_high, SIGNAL(valueChanged(int)),
+ this, SLOT(strokeLimitChanged(int)) );
//Connect statusbar updates
- connect( m_buttongrid, SIGNAL( signalChangeStatusbar( const QString& ) ),
- this, SIGNAL( signalChangeStatusbar( const QString& ) ) );
+ connect( m_buttongrid, SIGNAL(signalChangeStatusbar(QString)),
+ this, SIGNAL(signalChangeStatusbar(QString)) );
//Connect our clear button
- connect( clear_button, SIGNAL( clicked() ),
- this, SLOT( clearSearch() ) );
+ connect( clear_button, SIGNAL(clicked()),
+ this, SLOT(clearSearch()) );
// copy text from copied_line (QLineEdit) to clipboard
- connect( copy_button, SIGNAL( clicked() ),
- this, SLOT( toClipboard() ) );
+ connect( copy_button, SIGNAL(clicked()),
+ this, SLOT(toClipboard()) );
loadSettings();
}
@@ -244,4 +240,4 @@ void RadSelectView::toClipboard()
cb->setText( copied_line->text(), QClipboard::Selection );
}
-#include "radselectview.moc"
+
diff --git a/radselect/radselectview.h b/radselect/radselectview.h
index d3791e4..8f4acd7 100644
--- a/radselect/radselectview.h
+++ b/radselect/radselectview.h
@@ -25,7 +25,6 @@
#include "ui_radical_selector.h"
#include <QList>
-#include <QSet>
#include <QWidget>
class ButtonGrid;
More information about the kde-doc-english
mailing list