From be712ddc2edb21cd6850f2e737267d555b1339c8 Mon Sep 17 00:00:00 2001 From: rob Date: Tue, 27 Jan 2026 00:43:19 -0400 Subject: [PATCH] Improve Dependencies section layout in Tool Builder - Make section compact (doesn't stretch to fill space) - Add stretch at bottom of left panel to push content up - Reduce list height slightly (80px max, 60px min) - Tighter margins and spacing - Simplified tooltip: "Declare tools called via subprocess in code steps. Tool steps are automatically included when saved." Co-Authored-By: Claude Opus 4.5 --- src/cmdforge/gui/pages/tool_builder_page.py | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/cmdforge/gui/pages/tool_builder_page.py b/src/cmdforge/gui/pages/tool_builder_page.py index 02f1e04..8883b1c 100644 --- a/src/cmdforge/gui/pages/tool_builder_page.py +++ b/src/cmdforge/gui/pages/tool_builder_page.py @@ -133,31 +133,31 @@ class ToolBuilderPage(QWidget): left_layout.addWidget(args_box) - # Dependencies group + # Dependencies group (compact - doesn't stretch) deps_box = QGroupBox() deps_layout = QVBoxLayout(deps_box) + deps_layout.setContentsMargins(9, 9, 9, 9) + deps_layout.setSpacing(8) deps_label = QLabel("Dependencies") deps_label.setObjectName("sectionHeading") deps_label.setToolTip( - "

Dependencies are other CmdForge tools this tool requires.

" - "

If your code steps call other tools via subprocess,
" - "declare them here so the dependency system knows about them.

" - "

Use this when you can't use a Tool step directly
" - "(e.g., calling tools in a loop or with complex logic).

" + "Declare tools called via subprocess in code steps. " + "Tool steps are automatically included when saved." ) deps_layout.addWidget(deps_label) self.deps_list = QListWidget() - self.deps_list.setMaximumHeight(100) + self.deps_list.setMaximumHeight(80) + self.deps_list.setMinimumHeight(60) deps_layout.addWidget(self.deps_list) # Dependency add row: combo + add button deps_add_row = QHBoxLayout() + deps_add_row.setSpacing(6) self.deps_combo = QComboBox() self.deps_combo.setEditable(True) self.deps_combo.setPlaceholderText("Select or type tool name...") - self.deps_combo.setToolTip("Select an installed tool or type a tool reference (e.g., official/summarize)") self._populate_deps_combo() deps_add_row.addWidget(self.deps_combo, 1) @@ -173,6 +173,7 @@ class ToolBuilderPage(QWidget): deps_layout.addLayout(deps_add_row) left_layout.addWidget(deps_box) + left_layout.addStretch() # Push everything up, deps_box won't stretch splitter.addWidget(left)