MCPcopy Index your code
hub / github.com/Codeplain-ai/codeplain / Plain2CodeTUI

Class Plain2CodeTUI

tui/plain2code_tui.py:50–318  ·  view source on GitHub ↗

A Textual TUI for plain2code.

Source from the content-addressed store, hash-verified

48
49
50class Plain2CodeTUI(App):
51 """A Textual TUI for plain2code."""
52
53 ENABLE_COMMAND_PALETTE = False
54
55 BINDINGS = [
56 Binding("ctrl+c", "copy_selection", "Copy", show=False),
57 Binding("ctrl+d", "quit", "Quit", show=False),
58 Binding("enter", "enter_exit", "Exit", show=False),
59 Binding("ctrl+p", "pause", "Pause", show=False, priority=True),
60 ("ctrl+l", "toggle_logs", "Toggle Logs"),
61 ]
62
63 def __init__(
64 self,
65 event_bus: EventBus,
66 on_ready: Callable[[], None],
67 render_id: str,
68 unittests_script: str,
69 conformance_tests_script: str,
70 prepare_environment_script: str,
71 state_machine_version: str,
72 enter_pause_event: threading.Event | None = None,
73 on_cancel: Callable[[], None] | None = None,
74 default_log_level: str = "INFO",
75 **kwargs,
76 ):
77 super().__init__(**kwargs)
78 self.dark = True # Set dark mode as default
79 self.event_bus = event_bus
80 self._on_ready = on_ready
81 self.render_id = render_id
82 self.unittests_script: Optional[str] = unittests_script
83 self.conformance_tests_script: Optional[str] = conformance_tests_script
84 self.prepare_environment_script: Optional[str] = prepare_environment_script
85 self.state_machine_version = state_machine_version
86 self.enter_pause_event = enter_pause_event
87 self._on_cancel = on_cancel
88 self.default_log_level = default_log_level
89 self._render_finished = False
90
91 # Initialize state handlers
92 self._state_handlers: dict[str, StateHandler] = {
93 States.READY_FOR_FRID_IMPLEMENTATION.value: FridReadyHandler(
94 self, self.unittests_script, self.conformance_tests_script
95 ),
96 States.PROCESSING_UNIT_TESTS.value: UnitTestsHandler(
97 self, self.unittests_script, self.conformance_tests_script
98 ),
99 States.REFACTORING_CODE.value: RefactoringHandler(
100 self, self.unittests_script, self.conformance_tests_script
101 ),
102 States.PROCESSING_CONFORMANCE_TESTS.value: ConformanceTestsHandler(
103 self, self.unittests_script, self.conformance_tests_script
104 ),
105 States.FRID_FULLY_IMPLEMENTED.value: FridFullyImplementedHandler(
106 self, self.unittests_script, self.conformance_tests_script
107 ),

Callers 1

renderFunction · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected