mirror of
https://gitcode.com/JianFeeeee/TrulyMEM-TrueHumanMEM.git
synced 2026-10-15 12:15:32 +00:00
feat: Add embedded SQLite database and web interface
- Implement EmbeddedGraphDB with full Neo4j compatibility - Add web interface for browser access - Fix input box display issue - Add comprehensive database tests (15/15 passed) - Simplify startup script (3 steps, no Docker needed) - Add multi-language support - Add .gitignore for clean repository - Update documentation All tests passed. Ready for production.
This commit is contained in:
68
graph_memory_tui/handlers/key_handler.py
Normal file
68
graph_memory_tui/handlers/key_handler.py
Normal file
@ -0,0 +1,68 @@
|
||||
"""快捷键处理器"""
|
||||
|
||||
from textual.app import App
|
||||
from textual.message import Message
|
||||
from .focus_handler import FocusHandler
|
||||
|
||||
|
||||
class KeyHandler:
|
||||
"""快捷键处理器"""
|
||||
|
||||
class ShowHelp(Message):
|
||||
"""显示帮助事件"""
|
||||
pass
|
||||
|
||||
class ToggleSidebar(Message):
|
||||
"""切换侧边栏事件"""
|
||||
pass
|
||||
|
||||
class ToggleToolDetails(Message):
|
||||
"""切换工具详情事件"""
|
||||
pass
|
||||
|
||||
class FocusQuery(Message):
|
||||
"""聚焦查询框事件"""
|
||||
pass
|
||||
|
||||
class ClearHistory(Message):
|
||||
"""清屏事件"""
|
||||
pass
|
||||
|
||||
class QuitApp(Message):
|
||||
"""退出应用事件"""
|
||||
pass
|
||||
|
||||
def __init__(self, focus_handler: FocusHandler):
|
||||
self._focus_handler = focus_handler
|
||||
|
||||
def handle_f1(self, app: App) -> None:
|
||||
"""处理 F1 键 - 显示帮助"""
|
||||
app.post_message(self.ShowHelp())
|
||||
|
||||
def handle_f2(self, app: App) -> None:
|
||||
"""处理 F2 键 - 切换侧边栏"""
|
||||
app.post_message(self.ToggleSidebar())
|
||||
|
||||
def handle_f3(self, app: App) -> None:
|
||||
"""处理 F3 键 - 切换工具详情"""
|
||||
app.post_message(self.ToggleToolDetails())
|
||||
|
||||
def handle_f4(self, app: App) -> None:
|
||||
"""处理 F4 键 - 聚焦查询框"""
|
||||
app.post_message(self.FocusQuery())
|
||||
|
||||
def handle_f5(self, app: App) -> None:
|
||||
"""处理 F5 键 - 清屏"""
|
||||
app.post_message(self.ClearHistory())
|
||||
|
||||
def handle_f6(self, app: App) -> None:
|
||||
"""处理 F6 键 - 退出"""
|
||||
app.post_message(self.QuitApp())
|
||||
|
||||
def handle_tab(self, app: App) -> None:
|
||||
"""处理 Tab 键 - 焦点循环"""
|
||||
self._focus_handler.next_focus(app)
|
||||
|
||||
def handle_shift_tab(self, app: App) -> None:
|
||||
"""处理 Shift+Tab 键 - 反向焦点循环"""
|
||||
self._focus_handler.prev_focus(app)
|
||||
Reference in New Issue
Block a user