diff --git a/scenes/button-flat.gdshader b/scenes/button-flat.gdshader index 9d9a608..8f0b8a1 100644 --- a/scenes/button-flat.gdshader +++ b/scenes/button-flat.gdshader @@ -11,14 +11,6 @@ uniform bool disabled = false; void fragment() { float w = cos(angle) * UV.x + sin(angle) * UV.y - speed * TIME; - if ((floor(mod(w * divisions, stripe_bias)) < 0.0001) && disabled) - { - COLOR = color_gap; - } - else - { - COLOR = color_stripe; - } + float rc = floor(float(mod(w * divisions, stripe_bias) < 0.0001)) * float(disabled); + COLOR = color_gap * rc + color_stripe * (1.0 - rc); } - - diff --git a/scenes/canvas.tscn b/scenes/canvas.tscn index ea06dbd..812b39a 100644 --- a/scenes/canvas.tscn +++ b/scenes/canvas.tscn @@ -1,6 +1,6 @@ [gd_scene load_steps=7 format=3 uid="uid://b5kjdyxuwsot5"] -[ext_resource type="Material" uid="uid://s6xe8igevnv2" path="res://shaders/shader_edu.tres" id="1_itkeo"] +[ext_resource type="Material" uid="uid://s6xe8igevnv2" path="res://shaders/antenas.tres" id="1_itkeo"] [ext_resource type="Script" path="res://scenes/canvas.gd" id="2_clpjo"] [ext_resource type="PackedScene" uid="uid://c73ahpv8uiuc7" path="res://scenes/sector.tscn" id="3_kddns"] [ext_resource type="Shader" path="res://shaders/sector.gdshader" id="4_q0nxn"] diff --git a/shaders/shader_edu.tres b/shaders/antenas.tres similarity index 100% rename from shaders/shader_edu.tres rename to shaders/antenas.tres diff --git a/table/table.gd b/table/table.gd index 32c6dc0..2595a15 100644 --- a/table/table.gd +++ b/table/table.gd @@ -96,6 +96,14 @@ func selector_down(): emit_signal('selected_changed', i_row) +## Делает ряд [param i_row] видимым. +func ensure_row_visible(i_row: int): + assert(scroll is ScrollContainer, 'Таблица должна быть дочерней к ScrollContainer') + var key: = get_node_key(NODE_KEY_FORMAT, 0, i_row) + var node = nodes[key] + scroll.ensure_control_visible(node) + + ## Устанавливает выравнивание из массива [param alignments] для всех колонок. func set_columns_alignments(alignments: Array): assert(columns == alignments.size())