Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
61360f9
fix: remove unused dependencies sentry-native and tracy from conanfile
ahmedhussein89 Jan 19, 2026
2e266ec
Refactor QtMainWindow and related classes into a new directory structure
ahmedhussein89 Jan 19, 2026
0953abd
feat: add MouseReleaseFilter and QtViewToggle classes for enhanced mo…
ahmedhussein89 Jan 19, 2026
84e01fb
feat: implement chat functionality with ChatView and QtChatView compo…
ahmedhussein89 Jan 21, 2026
3069353
feat: enhance chat functionality with message handling and UI updates
ahmedhussein89 Jan 21, 2026
ca6879c
feat: implement signal-slot connections for chat message handling in …
ahmedhussein89 Jan 21, 2026
2e0bd69
feat: enhance chat functionality with error handling and message disp…
ahmedhussein89 Jan 21, 2026
0879eb1
feat: add ILLMService interface and implementation for LLM service ab…
ahmedhussein89 Jan 23, 2026
4e92d49
feat: add ChatMessage class for representing chat messages
ahmedhussein89 Jan 23, 2026
54b81e8
feat: add ChatModel class for managing chat messages in a Qt model
ahmedhussein89 Jan 23, 2026
f1b5247
feat: update ChatView class with widget creation and refresh methods,…
ahmedhussein89 Jan 23, 2026
45f13d2
refactor: streamline Controller class by renaming member variable and…
ahmedhussein89 Jan 23, 2026
f87443a
feat: add MessageBubbleWidget for displaying chat messages with impro…
ahmedhussein89 Jan 23, 2026
d1c0812
feat: implement MessageBubbleWidget for displaying chat messages with…
ahmedhussein89 Jan 23, 2026
6d61716
feat: enhance ChatController with user message handling and LLM integ…
ahmedhussein89 Jan 23, 2026
02a5b25
feat: integrate ChatModel into ChatView creation in QtViewFactory
ahmedhussein89 Jan 23, 2026
8acb000
feat: refactor QtChatView to integrate ChatModel and enhance message …
ahmedhussein89 Jan 23, 2026
6d8a31f
feat: update createChatComponent to integrate ChatModel and ILLMServi…
ahmedhussein89 Jan 23, 2026
d3640e2
feat: enhance QtCodeView constructor and header for improved focus ha…
ahmedhussein89 Jan 23, 2026
79ccd41
feat: update header inclusions and improve member variable naming for…
ahmedhussein89 Jan 23, 2026
7f9a447
feat: remove createWidgetWrapper from ChatView and implement in QtCha…
ahmedhussein89 Jan 23, 2026
6742bd9
feat: update ComponentFactory to integrate LlmCoordinator and modify …
ahmedhussein89 Feb 24, 2026
5739893
feat: refactor ChatController to integrate LlmCoordinator and improve…
ahmedhussein89 Feb 24, 2026
c51efc3
fix: correct template usage in addMessage method for better error han…
ahmedhussein89 Feb 24, 2026
38bb4ea
feat: implement ILLMService interface and restructure CMakeLists for …
ahmedhussein89 Feb 24, 2026
0c44dc9
feat: add LlmCoordinator class to manage LLM service providers and us…
ahmedhussein89 Feb 24, 2026
8460e22
feat: add LlmContextBuilder and related structures for context manage…
ahmedhussein89 Feb 24, 2026
bfa899c
refactor: update ChatModel to use QStandardItemModel for message stor…
ahmedhussein89 Feb 24, 2026
6c55bb1
feat: add MessageBubbleDelegate for custom rendering of chat messages…
ahmedhussein89 Feb 24, 2026
4696622
feat: refactor QtChatView to use QListView for chat message display a…
ahmedhussein89 Feb 24, 2026
5f31c4f
feat: integrate ChatModel and LlmCoordinator into chat component crea…
ahmedhussein89 Feb 24, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
feat: add ILLMService interface and implementation for LLM service ab…
…straction
  • Loading branch information
ahmedhussein89 committed Jan 23, 2026
commit 0879eb176d69fb0342580185a2194e8c03145a6d
15 changes: 15 additions & 0 deletions src/llm/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# ${CMAKE_SOURCE_DIR}/src/llm/CMakeLists.txt
add_library(
ILLMService
STATIC
ILLMService.cpp)

target_link_libraries(
ILLMService
PUBLIC
Qt6::Core)

target_include_directories(
ILLMService
PUBLIC
${CMAKE_CURRENT_LIST_DIR})
3 changes: 3 additions & 0 deletions src/llm/ILLMService.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#include "ILLMService.hpp"

ILLMService::~ILLMService() noexcept = default;
16 changes: 16 additions & 0 deletions src/llm/ILLMService.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#pragma once
#include <QString>

/**
* @brief Interface for LLM service abstraction
*
* Allows dependency injection and testing without actual LLM calls.
*/
class ILLMService {
public:
virtual ~ILLMService() noexcept;

virtual void sendMessage(const QString& message) = 0;
virtual void cancelRequest() = 0;
[[nodiscard]] virtual bool isAvailable() const noexcept = 0;
};