diff --git a/scripts/dashboard_grid.gd b/scripts/dashboard_grid.gd index 558f29b..7854179 100644 --- a/scripts/dashboard_grid.gd +++ b/scripts/dashboard_grid.gd @@ -143,16 +143,16 @@ func _show_tile_menu(mouse_pos: Vector2) -> void: panel.position = Vector2i(get_screen_position()) + Vector2i(mouse_pos) add_child(panel) - var margin := MarginContainer.new() - margin.add_theme_constant_override("margin_left", 8) - margin.add_theme_constant_override("margin_right", 8) - margin.add_theme_constant_override("margin_top", 8) - margin.add_theme_constant_override("margin_bottom", 8) - panel.add_child(margin) + var margin_container := MarginContainer.new() + margin_container.add_theme_constant_override("margin_left", 8) + margin_container.add_theme_constant_override("margin_right", 8) + margin_container.add_theme_constant_override("margin_top", 8) + margin_container.add_theme_constant_override("margin_bottom", 8) + panel.add_child(margin_container) var vbox := VBoxContainer.new() vbox.add_theme_constant_override("separation", 6) - margin.add_child(vbox) + margin_container.add_child(vbox) # -- toolbar row -- var toolbar := HBoxContainer.new() @@ -196,7 +196,7 @@ func _make_menu_button(text: String, tooltip: String) -> Button: btn.text = text btn.tooltip_text = tooltip btn.flat = true - btn.custom_min_size = MENU_BUTTON_MIN_SIZE + btn.minimum_size = MENU_BUTTON_MIN_SIZE btn.add_theme_font_size_override("font_size", MENU_BUTTON_FONT_SIZE) return btn @@ -674,7 +674,7 @@ func _update_drag(mouse_pos: Vector2) -> void: _highlight_cell(_hover_col, _hover_row, true) -func _end_drag(mouse_pos: Vector2) -> void: +func _end_drag(_mouse_pos: Vector2) -> void: if _drag_module == null: return @@ -807,12 +807,15 @@ func _rebuild_grid() -> void: var avail := size - Vector2(margin * 2.0, margin * 2.0) + var new_cols: int + var new_rows: int + if avail.x < cell_min_size.x or avail.y < cell_min_size.y: if _cells.size() > 0: _layout_cells() return - var new_cols := 1 - var new_rows := 1 + new_cols = 1 + new_rows = 1 if new_cols == columns and new_rows == rows and _cells.size() > 0: _layout_cells() return @@ -825,12 +828,12 @@ func _rebuild_grid() -> void: _layout_cells() return - var new_cols := maxi(1, int(avail.x / (cell_min_size.x + cell_spacing))) + new_cols = maxi(1, int(avail.x / (cell_min_size.x + cell_spacing))) var module_count := _module_list.size() var min_rows := maxi(1, ceili(float(module_count) / float(new_cols))) var avail_rows := maxi(1, int(avail.y / (cell_min_size.y + cell_spacing))) - var new_rows := maxi(avail_rows, min_rows) + new_rows = maxi(avail_rows, min_rows) if new_cols == columns and new_rows == rows and _cells.size() > 0: _layout_cells() @@ -877,44 +880,44 @@ func _build_cells() -> void: func _style_cell(cell: PanelContainer, col: int, row: int) -> void: - var hidden := StyleBoxFlat.new() - hidden.bg_color = Color.TRANSPARENT - hidden.border_width_left = 1 - hidden.border_width_top = 1 - hidden.border_width_right = 1 - hidden.border_width_bottom = 1 - hidden.border_color = Color.TRANSPARENT - hidden.corner_radius_top_left = 12 - hidden.corner_radius_top_right = 12 - hidden.corner_radius_bottom_right = 12 - hidden.corner_radius_bottom_left = 12 + var hidden_style := StyleBoxFlat.new() + hidden_style.bg_color = Color.TRANSPARENT + hidden_style.border_width_left = 1 + hidden_style.border_width_top = 1 + hidden_style.border_width_right = 1 + hidden_style.border_width_bottom = 1 + hidden_style.border_color = Color.TRANSPARENT + hidden_style.corner_radius_top_left = 12 + hidden_style.corner_radius_top_right = 12 + hidden_style.corner_radius_bottom_right = 12 + hidden_style.corner_radius_bottom_left = 12 - var visible := StyleBoxFlat.new() - visible.bg_color = Color(0.14, 0.14, 0.18, 1.0) - visible.border_width_left = 1 - visible.border_width_top = 1 - visible.border_width_right = 1 - visible.border_width_bottom = 1 - visible.border_color = Color(0.25, 0.25, 0.35, 1.0) - visible.corner_radius_top_left = 12 - visible.corner_radius_top_right = 12 - visible.corner_radius_bottom_right = 12 - visible.corner_radius_bottom_left = 12 + var visible_style := StyleBoxFlat.new() + visible_style.bg_color = Color(0.14, 0.14, 0.18, 1.0) + visible_style.border_width_left = 1 + visible_style.border_width_top = 1 + visible_style.border_width_right = 1 + visible_style.border_width_bottom = 1 + visible_style.border_color = Color(0.25, 0.25, 0.35, 1.0) + visible_style.corner_radius_top_left = 12 + visible_style.corner_radius_top_right = 12 + visible_style.corner_radius_bottom_right = 12 + visible_style.corner_radius_bottom_left = 12 - cell.add_theme_stylebox_override("panel", hidden) - cell.add_theme_stylebox_override("panel_focused", hidden) - cell.set_meta("hidden_style", hidden) - cell.set_meta("visible_style", visible) - _cell_styles["%d,%d" % [col, row]] = visible + cell.add_theme_stylebox_override("panel", hidden_style) + cell.add_theme_stylebox_override("panel_focused", hidden_style) + cell.set_meta("hidden_style", hidden_style) + cell.set_meta("visible_style", visible_style) + _cell_styles["%d,%d" % [col, row]] = visible_style -func _show_cells(show: bool) -> void: +func _show_cells(do_show: bool) -> void: for row_idx in range(_cells.size()): for col_idx in range(_cells[row_idx].size()): var cell: PanelContainer = _cells[row_idx][col_idx] if not is_instance_valid(cell): continue - var style: StyleBoxFlat = cell.get_meta("visible_style") if show else cell.get_meta("hidden_style") + var style: StyleBoxFlat = cell.get_meta("visible_style") if do_show else cell.get_meta("hidden_style") cell.add_theme_stylebox_override("panel", style) cell.add_theme_stylebox_override("panel_focused", style)