mirror of
https://github.com/Palm1r/QodeAssist.git
synced 2026-05-30 02:49:12 -04:00
48 lines
1.2 KiB
C++
48 lines
1.2 KiB
C++
// Copyright (C) 2025-2026 Petr Mironychev
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
#pragma once
|
|
|
|
#include <QObject>
|
|
|
|
#include "pluginllmcore/PromptTemplateManager.hpp"
|
|
#include "pluginllmcore/ProvidersManager.hpp"
|
|
#include "settings/GeneralSettings.hpp"
|
|
|
|
namespace QodeAssist {
|
|
|
|
class ConfigurationManager : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
static ConfigurationManager &instance();
|
|
|
|
void init();
|
|
|
|
void updateTemplateDescription(const Utils::StringAspect &templateAspect);
|
|
void updateAllTemplateDescriptions();
|
|
void checkTemplate(const Utils::StringAspect &templateAspect);
|
|
void checkAllTemplate();
|
|
|
|
public slots:
|
|
void selectProvider();
|
|
void selectModel();
|
|
void selectTemplate();
|
|
void selectUrl();
|
|
|
|
private:
|
|
explicit ConfigurationManager(QObject *parent = nullptr);
|
|
~ConfigurationManager() = default;
|
|
ConfigurationManager(const ConfigurationManager &) = delete;
|
|
ConfigurationManager &operator=(const ConfigurationManager &) = delete;
|
|
|
|
Settings::GeneralSettings &m_generalSettings;
|
|
PluginLLMCore::ProvidersManager &m_providersManager;
|
|
PluginLLMCore::PromptTemplateManager &m_templateManger;
|
|
|
|
void setupConnections();
|
|
};
|
|
|
|
} // namespace QodeAssist
|