From df0f831c3c3575256d8fd4abd300dd3b25148e7c Mon Sep 17 00:00:00 2001 From: Martin Rotter Date: Fri, 15 Mar 2024 13:45:08 +0100 Subject: [PATCH] work --- CMakeLists.txt | 10 ++++ src/librssguard-standard/CMakeLists.txt | 49 ++++++------------- src/librssguard/CMakeLists.txt | 13 +---- .../gui/dialogs/formaddaccount.cpp | 6 ++- .../miscellaneous/pluginfactory.cpp | 7 +-- src/librssguard/miscellaneous/pluginfactory.h | 2 +- 6 files changed, 36 insertions(+), 51 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2a3cbc987..66a9ea983 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -264,6 +264,16 @@ add_compile_definitions( APP_LONG_NAME="${APP_NAME} ${CMAKE_PROJECT_VERSION}" APP_LOW_NAME="${APP_LOW_NAME}" APP_REVERSE_NAME="${APP_REVERSE_NAME}" + APP_AUTHOR="${APP_AUTHOR}" + APP_DONATE_URL="${APP_DONATE_URL}" + APP_EMAIL="${APP_EMAIL}" + APP_LOW_H_NAME=".${CMAKE_PROJECT_NAME}" + APP_REVISION="${APP_REVISION}" + APP_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}" + APP_SYSTEM_VERSION="${CMAKE_SYSTEM_PROCESSOR}" + APP_URL_DOCUMENTATION="${APP_URL_DOCUMENTATION}" + APP_URL_ISSUES_NEW="${APP_URL_ISSUES_NEW}" + APP_USERAGENT="${APP_NAME}/${CMAKE_PROJECT_VERSION}" QT_USE_QSTRINGBUILDER QT_USE_FAST_CONCATENATION diff --git a/src/librssguard-standard/CMakeLists.txt b/src/librssguard-standard/CMakeLists.txt index e3f751cb7..aef9e8b33 100644 --- a/src/librssguard-standard/CMakeLists.txt +++ b/src/librssguard-standard/CMakeLists.txt @@ -1,4 +1,5 @@ -set(LIBRSSGUARD_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../librssguard") +set(LIBRSSGUARD_SOURCE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../librssguard") +set(LIBRSSGUARD_BINARY_PATH "${CMAKE_BINARY_DIR}/src/librssguard") set(SOURCES src/definitions.h @@ -49,13 +50,13 @@ set(UI_FILES # Add mimesis. list(APPEND SOURCES - ${LIBRSSGUARD_PATH}/3rd-party/mimesis/mimesis.hpp - ${LIBRSSGUARD_PATH}/3rd-party/mimesis/quoted-printable.hpp + ${LIBRSSGUARD_SOURCE_PATH}/3rd-party/mimesis/mimesis.hpp + ${LIBRSSGUARD_SOURCE_PATH}/3rd-party/mimesis/quoted-printable.hpp ) # Add boolinq. list(APPEND SOURCES - ${LIBRSSGUARD_PATH}/3rd-party/boolinq/boolinq.h + ${LIBRSSGUARD_SOURCE_PATH}/3rd-party/boolinq/boolinq.h ) # Deal with .ui files. @@ -74,33 +75,13 @@ target_compile_definitions(rssguard-standard PRIVATE RSSGUARD_DLLSPEC=Q_DECL_IMPORT RSSGUARD_DLLSPEC_EXPORT=Q_DECL_EXPORT - - APP_AUTHOR="${APP_AUTHOR}" - APP_DONATE_URL="${APP_DONATE_URL}" - APP_EMAIL="${APP_EMAIL}" - APP_LOW_H_NAME=".${CMAKE_PROJECT_NAME}" - APP_REVISION="${APP_REVISION}" - APP_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}" - APP_SYSTEM_VERSION="${CMAKE_SYSTEM_PROCESSOR}" - - APP_URL_DOCUMENTATION="${APP_URL_DOCUMENTATION}" - APP_URL_ISSUES_NEW="${APP_URL_ISSUES_NEW}" - APP_USERAGENT="${APP_NAME}/${CMAKE_PROJECT_VERSION}") +) target_include_directories(rssguard-standard PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_BINARY_DIR}/src/librssguard - ${LIBRSSGUARD_PATH} - ${LIBRSSGUARD_PATH}/gui/dialogs - ${LIBRSSGUARD_PATH}/gui/reusable - ${LIBRSSGUARD_PATH}/services/abstract/gui - ${LIBRSSGUARD_PATH}/dynamic-shortcuts - - PRIVATE - ${LIBRSSGUARD_PATH}/gui/notifications - ${LIBRSSGUARD_PATH}/gui/toolbars - ${LIBRSSGUARD_PATH}/gui/richtexteditor + ${LIBRSSGUARD_SOURCE_PATH} + ${LIBRSSGUARD_BINARY_PATH} ) # Qt. @@ -128,18 +109,18 @@ if(WIN32) ) endif() -if(NO_LITE) - target_link_libraries(rssguard-standard PUBLIC - Qt${QT_VERSION_MAJOR}::WebEngineWidgets - ) -endif() +#if(NO_LITE) +# target_link_libraries(rssguard-standard PUBLIC +# Qt${QT_VERSION_MAJOR}::WebEngineWidgets +# ) +#endif() if(WIN32 OR OS2) - install(TARGETS rssguard-standard DESTINATION .) + install(TARGETS rssguard-standard DESTINATION plugins) elseif(UNIX AND NOT APPLE AND NOT ANDROID) include (GNUInstallDirs) install(TARGETS rssguard-standard - DESTINATION ${CMAKE_INSTALL_LIBDIR} + DESTINATION ${CMAKE_INSTALL_LIBDIR}/rssguard ) elseif(APPLE) install(TARGETS rssguard-standard diff --git a/src/librssguard/CMakeLists.txt b/src/librssguard/CMakeLists.txt index 7fe66f7ed..8f9f0a448 100644 --- a/src/librssguard/CMakeLists.txt +++ b/src/librssguard/CMakeLists.txt @@ -692,18 +692,7 @@ endif() target_compile_definitions(rssguard PRIVATE RSSGUARD_DLLSPEC=Q_DECL_EXPORT - - APP_AUTHOR="${APP_AUTHOR}" - APP_DONATE_URL="${APP_DONATE_URL}" - APP_EMAIL="${APP_EMAIL}" - APP_LOW_H_NAME=".${CMAKE_PROJECT_NAME}" - APP_REVISION="${APP_REVISION}" - APP_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}" - APP_SYSTEM_VERSION="${CMAKE_SYSTEM_PROCESSOR}" - - APP_URL_DOCUMENTATION="${APP_URL_DOCUMENTATION}" - APP_URL_ISSUES_NEW="${APP_URL_ISSUES_NEW}" - APP_USERAGENT="${APP_NAME}/${CMAKE_PROJECT_VERSION}") +) target_include_directories(rssguard PUBLIC diff --git a/src/librssguard/gui/dialogs/formaddaccount.cpp b/src/librssguard/gui/dialogs/formaddaccount.cpp index fc113edfe..58f2ab510 100644 --- a/src/librssguard/gui/dialogs/formaddaccount.cpp +++ b/src/librssguard/gui/dialogs/formaddaccount.cpp @@ -52,7 +52,9 @@ void FormAddAccount::showAccountDetails() { } ServiceEntryPoint* FormAddAccount::selectedEntryPoint() const { - return m_entryPoints.at(m_ui->m_listEntryPoints->currentRow()); + return reinterpret_cast(m_ui->m_listEntryPoints->currentItem() + ->data(Qt::ItemDataRole::UserRole) + .value()); } void FormAddAccount::loadEntryPoints() { @@ -66,8 +68,10 @@ void FormAddAccount::loadEntryPoints() { QListWidgetItem* item = new QListWidgetItem(entry_point->icon(), entry_point->name(), m_ui->m_listEntryPoints); item->setToolTip(entry_point->description()); + item->setData(Qt::ItemDataRole::UserRole, QVariant::fromValue(reinterpret_cast(entry_point))); i++; } m_ui->m_listEntryPoints->setCurrentRow(classic_row); + m_ui->m_listEntryPoints->sortItems(Qt::SortOrder::AscendingOrder); } diff --git a/src/librssguard/miscellaneous/pluginfactory.cpp b/src/librssguard/miscellaneous/pluginfactory.cpp index 1de0734e3..82de0ffea 100644 --- a/src/librssguard/miscellaneous/pluginfactory.cpp +++ b/src/librssguard/miscellaneous/pluginfactory.cpp @@ -15,7 +15,7 @@ PluginFactory::PluginFactory() {} QList PluginFactory::loadPlugins() const { QList plugins; - const QString plugin_name_wildcard = pluginNameWildCard() + pluginSuffix(); + const QString plugin_name_wildcard = pluginNameWildCard() + pluginNameSuffix(); const auto plugins_paths = pluginPaths(); const auto backup_current_dir = QDir::currentPath(); @@ -59,9 +59,10 @@ QStringList PluginFactory::pluginPaths() const { QStringList paths; #if defined(Q_OS_LINUX) paths << QCoreApplication::applicationDirPath() + QDir::separator() + QL1S("..") + QDir::separator() + QL1S("lib") + - QDir::separator() + QL1S(APP_LOW_NAME) + QDir::separator() + QL1S("plugins"); + QDir::separator() + QL1S(APP_LOW_NAME); #else paths << QCoreApplication::applicationDirPath() + QDir::separator() + QL1S("plugins"); + paths << QCoreApplication::applicationDirPath(); #endif #if !defined(NDEBUG) @@ -71,7 +72,7 @@ QStringList PluginFactory::pluginPaths() const { return paths; } -QString PluginFactory::pluginSuffix() const { +QString PluginFactory::pluginNameSuffix() const { #if defined(Q_OS_LINUX) return QSL(".so"); #elif defined(Q_OS_WIN) diff --git a/src/librssguard/miscellaneous/pluginfactory.h b/src/librssguard/miscellaneous/pluginfactory.h index fc3cff089..ae0686eed 100644 --- a/src/librssguard/miscellaneous/pluginfactory.h +++ b/src/librssguard/miscellaneous/pluginfactory.h @@ -15,7 +15,7 @@ class PluginFactory { private: QStringList pluginPaths() const; - QString pluginSuffix() const; + QString pluginNameSuffix() const; QString pluginNameWildCard() const; };