Files
QodeAssist/sources/ChatView/ChatHistoryBridge.hpp
Petr Mironychev af85efb554 refactor: Decoupling chat architecture (#367)
* refactor: Migrate tests to Qt Creator plugin framework and update llmqore transports

* refactor: Move conversation history into IDE-free session library

* refactor: Extract turn context assembly behind injected ports

* build: Add RunQodeAssistTests target for the plugin test suite

* refactor: Route the chat through a Session and ChatBackend seam
2026-07-19 22:45:04 +02:00

38 lines
847 B
C++

// Copyright (C) 2026 Petr Mironychev
// SPDX-License-Identifier: GPL-3.0-or-later
// Additional attribution terms under GPLv3 §7(b) apply — see LICENSE
#pragma once
#include <QList>
#include <QObject>
#include <QPointer>
#include "session/HistoryProjection.hpp"
namespace QodeAssist::Session {
class Session;
}
namespace QodeAssist::Chat {
class ChatModel;
class ChatHistoryBridge : public QObject
{
Q_OBJECT
public:
ChatHistoryBridge(Session::Session *session, ChatModel *model, QObject *parent = nullptr);
private:
void onRowsReset(const QList<Session::MessageRow> &rows);
void onRowsAppended(const QList<Session::MessageRow> &rows);
void onRowUpdated(int index, const Session::MessageRow &row);
void onRowsRemoved(int first, int count);
QPointer<ChatModel> m_model;
};
} // namespace QodeAssist::Chat