From 2f6dc271da62e4d7e1a27bce2c3263ac981f353d Mon Sep 17 00:00:00 2001 From: sasha80 Date: Fri, 18 Aug 2023 14:31:27 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D1=84=D0=B0=D0=BA=D1=82=D0=BE?= =?UTF-8?q?=D1=80.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- table/table.gd | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/table/table.gd b/table/table.gd index 4e06c1e2..ecf84cba 100644 --- a/table/table.gd +++ b/table/table.gd @@ -38,9 +38,10 @@ var scroll_adj: = Vector2(0, 0) func get_node_scene(): return node_type_file -func _assert_meta(i_col: int, i_row: int, pname: String, node): assert(node.has_meta(pname), 'ошибка: нет мета-свойства \"%s\" у ячейки колонка:%d ряд:%d' % [pname, i_col, i_row]) +func assert_meta(i_col: int, i_row: int, pname: String, node): assert(node.has_meta(pname), 'ошибка: нет мета-свойства \"%s\" у ячейки колонка:%d ряд:%d' % [pname, i_col, i_row]) func get_node_user_data(i_col: int, i_row: int): return get_node_meta(i_col, i_row, META_USER_DATA) func set_node_user_data(i_col: int, i_row: int, val) -> void: set_node_meta(i_col, i_row, META_USER_DATA, val) +func defaultselector_color_proc(_i_row: int): return selector_color ## Закрепляет заголовок таблицы. [param scrl] - Прокрутка, @@ -139,7 +140,7 @@ func set_node_meta(i_col: int, i_row: int, pname: String, val) -> void: func get_node_meta(i_col: int, i_row: int, pname: String): var key: = get_node_key(NODE_KEY_FORMAT, i_col, i_row) var node = nodes[key] - _assert_meta(i_col, i_row, pname, node) + assert_meta(i_col, i_row, pname, node) return node.get_meta(pname) @@ -157,7 +158,8 @@ func get_node_property(i_col: int, i_row: int, pname: String): return node.get(pname) -## [param i_col] - Индекс колонки. [param i_row] - Индекс ряда +## Возвращает ключ для существующей ячеки. Если ячейки с заданными индексами нет, +## вызывает исключение. [param i_col] - Индекс колонки. [param i_row] - Индекс ряда func get_node_key(format: String, i_col: int, i_row: int) -> String: var key: String = format % [i_row, i_col] assert(nodes.has(key), 'ошибка: нет такой ячейки - колонка:%d ряд:%d' % [i_col, i_row]) @@ -226,11 +228,6 @@ func check_event_pos(event_pos: Vector2, obj: Control): and (event_pos.y < (obj.position.y + obj.size.y)) -## -func defaultselector_color_proc(_i_row: int): - return selector_color - - ## func setselector_color_proc(instance: Object, function: String) -> void: selector_color_proc = Callable(instance, function) @@ -484,7 +481,7 @@ func set_rows_text(rows: Array) -> void: node.text = rows[i_row][i_col] -## [param i_row] - индекс ряда. +## [param i_row] - Индекс ряда. func set_nodes_min_size(i_row: int, sizes: Array, key_format: String = NODE_KEY_FORMAT) -> void: for i_col in columns: var key: = get_node_key(key_format, i_col, i_row) @@ -493,7 +490,7 @@ func set_nodes_min_size(i_row: int, sizes: Array, key_format: String = NODE_KEY_ node.set_deferred('size.x', sizes[i_col]) -## [param i_col] - индекс колонки. [param i_row] - индекс ряда. +## [param i_col] - Индекс колонки. [param i_row] - Индекс ряда. func set_node_text(i_col: int, i_row: int, val: String) -> void: var key: = get_node_key(NODE_KEY_FORMAT, i_col, i_row) nodes[key].text = val @@ -507,13 +504,13 @@ func set_rows_state(rows: Array) -> void: nodes[key].button_pressed = rows[i_row][i_col] -## [param i_col] - индекс колонки. [param i_row] - индекс ряда. +## [param i_col] - Индекс колонки. [param i_row] - Индекс ряда. func set_node_state(i_col: int, i_row: int, val: bool) -> void: var key: = get_node_key(NODE_KEY_FORMAT, i_col, i_row) nodes[key].button_pressed = val -## [param i_col] - индекс колонки. [param i_row] - индекс ряда. +## [param i_col] - Индекс колонки. [param i_row] - Индекс ряда. func set_node_frame(i_col: int, i_row: int, node_name: String, val: int) -> void: var key: = get_node_key(NODE_KEY_FORMAT, i_col, i_row) var node = nodes[key] @@ -521,7 +518,8 @@ func set_node_frame(i_col: int, i_row: int, node_name: String, val: int) -> void sprite.frame = val -## [param i_col] - индекс колонки. [param i_row] - индекс ряда. +## Разрешает редактирование ячейки. Ячейка должна иметь свойство [param editable]. +## [param i_col] - Индекс колонки. [param i_row] - Индекс ряда. func set_node_editable(i_col: int, i_row: int, val: bool) -> void: var key: = get_node_key(NODE_KEY_FORMAT, i_col, i_row) nodes[key].editable = val @@ -536,14 +534,14 @@ func set_node_alligment(i_col: int, i_row: int, val: int) -> void: nodes[key].alignment = val -## [param i_row] - индекс ряда. +## [param i_row] - Индекс ряда. func set_row_alligments(i_row: int, aligns: Array) -> void: for i_col in columns: var key: = get_node_key(NODE_KEY_FORMAT, i_col, i_row) nodes[key].align = aligns[i_col] -## [param i_row] - индекс ряда. +## [param i_row] - Индекс ряда. func get_row_text(i_row: int) -> Array: var row: = [] for i_col in columns: @@ -552,7 +550,7 @@ func get_row_text(i_row: int) -> Array: return row -## +## [param i_row] - Индекс ряда. func set_row_text(i_row: int, row: Array, i_begin: int = 0, key_format: String = NODE_KEY_FORMAT) -> void: assert(i_begin >= 0) assert((columns - i_begin) <= row.size())