1#ifndef YAZE_CLI_TUI_ENHANCED_CHAT_COMPONENT_H
2#define YAZE_CLI_TUI_ENHANCED_CHAT_COMPONENT_H
4#include <ftxui/component/component.hpp>
5#include <ftxui/dom/elements.hpp>
52 const std::string& message);
57 const std::string& message);
The Rom class is used to load, save, and modify Rom data. This is a generic SNES ROM container and do...
void SendMessage(const std::string &message)
std::function< bool(const ftxui::Event &) input_event_handler_)
ftxui::Component history_component_
ftxui::Element RenderChatMessage(const std::string &sender, const std::string &message)
bool HandleHistoryEvents(const ftxui::Event &event)
ftxui::Component GetComponent()
void ProcessMessage(const std::string &message)
std::string input_message_
ftxui::Element RenderInputArea()
void AddMessageToHistory(const std::string &sender, const std::string &message)
int GetMaxHistoryLines() const
void UpdateHistoryDisplay()
int selected_history_index_
agent::ConversationalAgentService agent_service_
bool HandleInputEvents(const ftxui::Event &event)
std::function< bool(const ftxui::Event &) history_event_handler_)
void SetFocused(bool focused)
ftxui::Component CreateInputComponent()
ftxui::Component chat_container_
void SetRomContext(Rom *rom_context)
ftxui::Element RenderHistoryArea()
AutocompleteEngine autocomplete_engine_
std::vector< std::pair< std::string, std::string > > chat_history_
void SetMaxHistoryLines(int lines)
ftxui::Component CreateHistoryComponent()
EnhancedChatComponent(Rom *rom_context=nullptr)
ftxui::Component CreateChatContainer()
ftxui::Component input_component_