diff --git a/frontend/Savor-22b/gql/query_executor.gd b/frontend/Savor-22b/gql/query_executor.gd index ea0b3edb..7f74dbb7 100644 --- a/frontend/Savor-22b/gql/query_executor.gd +++ b/frontend/Savor-22b/gql/query_executor.gd @@ -147,7 +147,6 @@ var trade_inventory_state_executor = SvrGqlClient.query( func stage_action(params, query_executor, mutation_executor): query_executor.graphql_response.connect( func(data): - print(data) # 지워야함 var unsigned_tx = data["data"][data["data"].keys()[0]] var signature = GlobalSigner.sign(unsigned_tx) mutation_executor.run({ diff --git a/frontend/Savor-22b/scenes/market/inventory.gd b/frontend/Savor-22b/scenes/market/inventory.gd new file mode 100644 index 00000000..78ed1d62 --- /dev/null +++ b/frontend/Savor-22b/scenes/market/inventory.gd @@ -0,0 +1,18 @@ +extends Control + +const MyItemScn = preload("res://scenes/market/my_item.tscn") + +@onready var inventory_container = $MarginContainer/VBoxContainer/InventoryPanel/ScrollContainer/CenterContainer/GridContainer + +var items + +func _ready(): + load_items() + +func load_items(): + items = SceneContext.user_state.inventoryState["refrigeratorStateList"] + + for item in items: + var item_scene = MyItemScn.instantiate() + item_scene.set_info(item) + inventory_container.add_child(item_scene) diff --git a/frontend/Savor-22b/scenes/market/inventory.tscn b/frontend/Savor-22b/scenes/market/inventory.tscn new file mode 100644 index 00000000..17deb2b5 --- /dev/null +++ b/frontend/Savor-22b/scenes/market/inventory.tscn @@ -0,0 +1,74 @@ +[gd_scene load_steps=4 format=3 uid="uid://81w3i6nbxjix"] + +[ext_resource type="Script" path="res://scenes/market/inventory.gd" id="1_6c1t0"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_8vjfi"] +bg_color = Color(0, 0, 0, 1) +corner_radius_top_left = 25 +corner_radius_top_right = 25 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_as0cg"] +bg_color = Color(0.94902, 0.694118, 0.243137, 1) + +[node name="Inventory" type="Control"] +layout_mode = 3 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_right = -1220.0 +offset_bottom = -130.0 +grow_horizontal = 2 +grow_vertical = 2 +script = ExtResource("1_6c1t0") + +[node name="MarginContainer" type="MarginContainer" parent="."] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 + +[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer"] +layout_mode = 2 + +[node name="TitlePanel" type="Panel" parent="MarginContainer/VBoxContainer"] +custom_minimum_size = Vector2(200, 70) +layout_mode = 2 +size_flags_horizontal = 0 +theme_override_styles/panel = SubResource("StyleBoxFlat_8vjfi") + +[node name="TitleLabel" type="Label" parent="MarginContainer/VBoxContainer/TitlePanel"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_colors/font_color = Color(1, 1, 1, 1) +theme_override_font_sizes/font_size = 40 +text = "인벤토리" +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="InventoryPanel" type="Panel" parent="MarginContainer/VBoxContainer"] +custom_minimum_size = Vector2(2.08165e-12, 750) +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxFlat_as0cg") + +[node name="ScrollContainer" type="ScrollContainer" parent="MarginContainer/VBoxContainer/InventoryPanel"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 + +[node name="CenterContainer" type="CenterContainer" parent="MarginContainer/VBoxContainer/InventoryPanel/ScrollContainer"] +layout_mode = 2 + +[node name="GridContainer" type="GridContainer" parent="MarginContainer/VBoxContainer/InventoryPanel/ScrollContainer/CenterContainer"] +layout_mode = 2 +theme_override_constants/h_separation = 50 +theme_override_constants/v_separation = 50 +columns = 2 diff --git a/frontend/Savor-22b/scenes/market/market.gd b/frontend/Savor-22b/scenes/market/market.gd index ab8a5690..036a0e58 100644 --- a/frontend/Savor-22b/scenes/market/market.gd +++ b/frontend/Savor-22b/scenes/market/market.gd @@ -2,70 +2,43 @@ extends Control signal query_received -const TradeInventoryScn = preload("res://scenes/market/trade_inventory.tscn") -const SellListScn = preload("res://scenes/market/sell_list.tscn") +const InventoryScn = preload("res://scenes/market/inventory.tscn") +const SellListScn = preload("res://scenes/market/trade_inventory.tscn") @onready var inventory_container = $VBoxContainer/MarginContainer/SubMenuHBoxContainer/InventoryMarginContainer -@onready var sell_list_container = $VBoxContainer/MarginContainer/SubMenuHBoxContainer/SellListMarginContainer +@onready var trade_inventory_container = $VBoxContainer/MarginContainer/SubMenuHBoxContainer/SellListMarginContainer var query_executor = QueryExecutor.new() -var register_trade_good_query_executor var stage_tx_mutation_executor var trade_inventory_state_executor var inventory_state - func _ready(): - register_trade_good_query_executor = query_executor.register_trade_good_query_executor stage_tx_mutation_executor = query_executor.stage_tx_mutation_executor trade_inventory_state_executor = query_executor.trade_inventory_state_executor - add_child(register_trade_good_query_executor) add_child(stage_tx_mutation_executor) add_child(trade_inventory_state_executor) - load_initial_scene() - print(inventory_state) - - func load_initial_scene(): load_inventory() query_trade_inventory_state() - query_received.connect(load_sell_list) - + query_received.connect(load_trade_inventory) func load_inventory(): - var inventory = TradeInventoryScn.instantiate() + var inventory = InventoryScn.instantiate() inventory_container.add_child(inventory) -func load_sell_list(): - print(inventory_state) +func load_trade_inventory(): if (inventory_state != null): - var sell_list = SellListScn.instantiate() - sell_list_container.add_child(sell_list) - sell_list.set_list(inventory_state) - - + var trade_inventory = SellListScn.instantiate() + trade_inventory_container.add_child(trade_inventory) + trade_inventory.set_list(inventory_state) - - -func test_register(): - var food_id = "0cffada3-dccf-48ee-942c-2617ac46952b" - query_executor.stage_action( - { - "publicKey": GlobalSigner.signer.GetPublicKey(), - "price": 150, - "foodStateId": food_id, - "itemStateIds": [] - }, - register_trade_good_query_executor, - stage_tx_mutation_executor - ) - -func query_action(query_executor): # query with no args +func props_only_query_action(query_executor): # query with no args query_executor.graphql_response.connect( func(data): inventory_state = data["data"]["tradeInventoryState"]["tradeGoods"] @@ -74,13 +47,9 @@ func query_action(query_executor): # query with no args query_executor.run({}) func query_trade_inventory_state(): - query_action( + props_only_query_action( trade_inventory_state_executor ) func _on_village_button_down(): get_tree().change_scene_to_file("res://scenes/village/village_view.tscn") - - -func _on_test_button_down(): - test_register() diff --git a/frontend/Savor-22b/scenes/market/market.tscn b/frontend/Savor-22b/scenes/market/market.tscn index 8d692352..ec109007 100644 --- a/frontend/Savor-22b/scenes/market/market.tscn +++ b/frontend/Savor-22b/scenes/market/market.tscn @@ -74,9 +74,6 @@ size_flags_vertical = 0 theme_override_font_sizes/font_size = 50 text = " 마을로 " -[node name="TestButton" type="Button" parent="VBoxContainer/MarginContainer2/TopMenuHBoxContainer"] -layout_mode = 2 - [node name="MarginContainer" type="MarginContainer" parent="VBoxContainer"] custom_minimum_size = Vector2(1920, 950) layout_mode = 2 @@ -101,4 +98,3 @@ theme_override_constants/margin_right = 50 theme_override_constants/margin_bottom = 50 [connection signal="button_down" from="VBoxContainer/MarginContainer2/TopMenuHBoxContainer/VillageButton" to="." method="_on_village_button_down"] -[connection signal="button_down" from="VBoxContainer/MarginContainer2/TopMenuHBoxContainer/TestButton" to="." method="_on_test_button_down"] diff --git a/frontend/Savor-22b/scenes/market/my_item.gd b/frontend/Savor-22b/scenes/market/my_item.gd index 852c555b..4f4ebdc9 100644 --- a/frontend/Savor-22b/scenes/market/my_item.gd +++ b/frontend/Savor-22b/scenes/market/my_item.gd @@ -1,8 +1,5 @@ extends Control -#@onready var food_name = $M/V/Name -#@onready var food_description = $M/V/Desc - @onready var item_button = $ItemSelectButton var info @@ -18,10 +15,8 @@ func _update_info(): return item_button.text = desc_format_string % [info.name, "등급", info.grade, "stateId", info.stateId] - func set_info(info: Dictionary): self.info = info - func _on_item_select_button_down(): - print(info) + pass # 물건 올리기 기능이 들어갈 예정 diff --git a/frontend/Savor-22b/scenes/market/sell_list.gd b/frontend/Savor-22b/scenes/market/sell_list.gd deleted file mode 100644 index f9da7d1d..00000000 --- a/frontend/Savor-22b/scenes/market/sell_list.gd +++ /dev/null @@ -1,45 +0,0 @@ -extends Control - -const PostedItemScn = preload("res://scenes/market/posted_item.tscn") - -@onready var list_container = $MarginContainer/VBoxContainer/ListPanel/ScrollContainer/MarginContainer/CenterContainer/GridContainer - -var goods -var my_address = GlobalSigner.signer_address - -func _ready(): - pass - -func set_list(data: Array): - goods = data - load_list() - - -func load_list(): - clear_list_panel() - - for good in goods: - if(good["sellerAddress"] != my_address): - add_lists(good) - - -func _on_my_sell_list_button_down(): - clear_list_panel() - - for good in goods: - if(good["sellerAddress"] == my_address): - add_lists(good) - -func clear_list_panel(): - if is_instance_valid(list_container): - for posted_item in list_container.get_children(): - posted_item.queue_free() - -func add_lists(good: Dictionary): - var posted_item_scene = PostedItemScn.instantiate() - posted_item_scene.set_info(good) - list_container.add_child(posted_item_scene) - - -func _on_whole_sell_list_button_down(): - load_list() diff --git a/frontend/Savor-22b/scenes/market/sell_list.tscn b/frontend/Savor-22b/scenes/market/sell_list.tscn deleted file mode 100644 index cbb4f21b..00000000 --- a/frontend/Savor-22b/scenes/market/sell_list.tscn +++ /dev/null @@ -1,105 +0,0 @@ -[gd_scene load_steps=7 format=3 uid="uid://bu43d13qwmtcr"] - -[ext_resource type="Script" path="res://scenes/market/sell_list.gd" id="1_n5ek1"] -[ext_resource type="ButtonGroup" uid="uid://di66p0jb8cdpk" path="res://scenes/market/sell_list_button_group.tres" id="1_vyf2b"] - -[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_4l2s6"] -bg_color = Color(0, 0, 0, 1) -corner_radius_top_left = 25 -corner_radius_top_right = 25 - -[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_vqa0t"] -bg_color = Color(0.94902, 0.694118, 0.243137, 1) -corner_radius_top_left = 25 -corner_radius_top_right = 25 - -[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_af182"] -bg_color = Color(0.94902, 0.694118, 0.243137, 1) -corner_radius_top_left = 25 -corner_radius_top_right = 25 - -[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_as0cg"] -bg_color = Color(0.94902, 0.694118, 0.243137, 1) - -[node name="SellList" type="Control"] -layout_mode = 3 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -offset_right = -700.0 -offset_bottom = -130.0 -grow_horizontal = 2 -grow_vertical = 2 -script = ExtResource("1_n5ek1") - -[node name="MarginContainer" type="MarginContainer" parent="."] -layout_mode = 1 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 - -[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer"] -layout_mode = 2 - -[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/VBoxContainer"] -layout_mode = 2 -theme_override_constants/separation = 20 - -[node name="WholeSellListButton" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer"] -custom_minimum_size = Vector2(200, 70) -layout_mode = 2 -size_flags_horizontal = 0 -theme_override_colors/font_color = Color(1, 1, 1, 1) -theme_override_font_sizes/font_size = 40 -theme_override_styles/normal = SubResource("StyleBoxFlat_4l2s6") -theme_override_styles/pressed = SubResource("StyleBoxFlat_vqa0t") -toggle_mode = true -button_pressed = true -button_group = ExtResource("1_vyf2b") -text = "판매목록" - -[node name="MySellListButton" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer"] -custom_minimum_size = Vector2(240, 70) -layout_mode = 2 -size_flags_horizontal = 0 -theme_override_colors/font_color = Color(1, 1, 1, 1) -theme_override_font_sizes/font_size = 40 -theme_override_styles/normal = SubResource("StyleBoxFlat_4l2s6") -theme_override_styles/pressed = SubResource("StyleBoxFlat_af182") -toggle_mode = true -button_group = ExtResource("1_vyf2b") -text = "내 판매목록" - -[node name="ListPanel" type="Panel" parent="MarginContainer/VBoxContainer"] -custom_minimum_size = Vector2(2.08165e-12, 750) -layout_mode = 2 -theme_override_styles/panel = SubResource("StyleBoxFlat_as0cg") - -[node name="ScrollContainer" type="ScrollContainer" parent="MarginContainer/VBoxContainer/ListPanel"] -layout_mode = 1 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 - -[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/VBoxContainer/ListPanel/ScrollContainer"] -layout_mode = 2 -theme_override_constants/margin_left = 50 -theme_override_constants/margin_top = 50 -theme_override_constants/margin_right = 50 -theme_override_constants/margin_bottom = 50 - -[node name="CenterContainer" type="CenterContainer" parent="MarginContainer/VBoxContainer/ListPanel/ScrollContainer/MarginContainer"] -layout_mode = 2 - -[node name="GridContainer" type="GridContainer" parent="MarginContainer/VBoxContainer/ListPanel/ScrollContainer/MarginContainer/CenterContainer"] -layout_mode = 2 -theme_override_constants/h_separation = 50 -theme_override_constants/v_separation = 50 -columns = 2 - -[connection signal="button_down" from="MarginContainer/VBoxContainer/HBoxContainer/WholeSellListButton" to="." method="_on_whole_sell_list_button_down"] -[connection signal="button_down" from="MarginContainer/VBoxContainer/HBoxContainer/MySellListButton" to="." method="_on_my_sell_list_button_down"] diff --git a/frontend/Savor-22b/scenes/market/posted_item.gd b/frontend/Savor-22b/scenes/market/trade_goods.gd similarity index 79% rename from frontend/Savor-22b/scenes/market/posted_item.gd rename to frontend/Savor-22b/scenes/market/trade_goods.gd index b6ce696a..04de1518 100644 --- a/frontend/Savor-22b/scenes/market/posted_item.gd +++ b/frontend/Savor-22b/scenes/market/trade_goods.gd @@ -1,8 +1,5 @@ extends Control -#@onready var food_name = $M/V/Name -#@onready var food_description = $M/V/Desc - @onready var item_button = $ItemSelectButton @onready var description_label = $BackgroundPanel/MarginContainer/VBoxContainer/DescriptionLabel @@ -19,10 +16,5 @@ func _update_info(): return description_label.text = desc_format_string % ["품목명",info.food["name"],"가격",info.price," BBG","게시자",info.sellerAddress] - func set_info(info: Dictionary): self.info = info - - -func _on_item_select_button_down(): - print(info) diff --git a/frontend/Savor-22b/scenes/market/posted_item.tscn b/frontend/Savor-22b/scenes/market/trade_goods.tscn similarity index 93% rename from frontend/Savor-22b/scenes/market/posted_item.tscn rename to frontend/Savor-22b/scenes/market/trade_goods.tscn index e2e2f98a..b90dad51 100644 --- a/frontend/Savor-22b/scenes/market/posted_item.tscn +++ b/frontend/Savor-22b/scenes/market/trade_goods.tscn @@ -1,6 +1,6 @@ [gd_scene load_steps=4 format=3 uid="uid://crw3yutudcodf"] -[ext_resource type="Script" path="res://scenes/market/posted_item.gd" id="1_3mj4d"] +[ext_resource type="Script" path="res://scenes/market/trade_goods.gd" id="1_vfbu4"] [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_3bs65"] bg_color = Color(0, 0, 0, 1) @@ -21,7 +21,7 @@ corner_radius_top_right = 15 corner_radius_bottom_right = 15 corner_radius_bottom_left = 15 -[node name="PostedItem" type="Control"] +[node name="TradeGoods" type="Control"] custom_minimum_size = Vector2(410, 410) layout_mode = 3 anchors_preset = 15 @@ -31,7 +31,7 @@ offset_right = -1540.0 offset_bottom = -670.0 grow_horizontal = 2 grow_vertical = 2 -script = ExtResource("1_3mj4d") +script = ExtResource("1_vfbu4") [node name="BackgroundPanel" type="Panel" parent="."] layout_mode = 1 diff --git a/frontend/Savor-22b/scenes/market/trade_inventory.gd b/frontend/Savor-22b/scenes/market/trade_inventory.gd index 78ed1d62..9af4aebb 100644 --- a/frontend/Savor-22b/scenes/market/trade_inventory.gd +++ b/frontend/Savor-22b/scenes/market/trade_inventory.gd @@ -1,18 +1,42 @@ extends Control -const MyItemScn = preload("res://scenes/market/my_item.tscn") +const TradeGoodsScn = preload("res://scenes/market/trade_goods.tscn") -@onready var inventory_container = $MarginContainer/VBoxContainer/InventoryPanel/ScrollContainer/CenterContainer/GridContainer +@onready var list_container = $MarginContainer/VBoxContainer/ListPanel/ScrollContainer/MarginContainer/CenterContainer/GridContainer -var items +var goods +var my_address = GlobalSigner.signer_address func _ready(): - load_items() + pass -func load_items(): - items = SceneContext.user_state.inventoryState["refrigeratorStateList"] +func set_list(data: Array): + goods = data + load_list() + +func load_list(): + clear_list_panel() - for item in items: - var item_scene = MyItemScn.instantiate() - item_scene.set_info(item) - inventory_container.add_child(item_scene) + for good in goods: + if(good["sellerAddress"] != my_address): + add_lists(good) + +func _on_my_sell_list_button_down(): + clear_list_panel() + + for good in goods: + if(good["sellerAddress"] == my_address): + add_lists(good) + +func clear_list_panel(): + if is_instance_valid(list_container): + for posted_item in list_container.get_children(): + posted_item.queue_free() + +func add_lists(good: Dictionary): + var trade_goods_scene = TradeGoodsScn.instantiate() + trade_goods_scene.set_info(good) + list_container.add_child(trade_goods_scene) + +func _on_whole_sell_list_button_down(): + load_list() diff --git a/frontend/Savor-22b/scenes/market/trade_inventory.tscn b/frontend/Savor-22b/scenes/market/trade_inventory.tscn index 6ae4076a..97e13f5a 100644 --- a/frontend/Savor-22b/scenes/market/trade_inventory.tscn +++ b/frontend/Savor-22b/scenes/market/trade_inventory.tscn @@ -1,21 +1,32 @@ -[gd_scene load_steps=4 format=3 uid="uid://81w3i6nbxjix"] +[gd_scene load_steps=7 format=3 uid="uid://bu43d13qwmtcr"] [ext_resource type="Script" path="res://scenes/market/trade_inventory.gd" id="1_2sbin"] +[ext_resource type="ButtonGroup" uid="uid://di66p0jb8cdpk" path="res://scenes/market/sell_list_button_group.tres" id="2_68j2i"] -[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_8vjfi"] +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_4l2s6"] bg_color = Color(0, 0, 0, 1) corner_radius_top_left = 25 corner_radius_top_right = 25 +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_vqa0t"] +bg_color = Color(0.94902, 0.694118, 0.243137, 1) +corner_radius_top_left = 25 +corner_radius_top_right = 25 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_af182"] +bg_color = Color(0.94902, 0.694118, 0.243137, 1) +corner_radius_top_left = 25 +corner_radius_top_right = 25 + [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_as0cg"] bg_color = Color(0.94902, 0.694118, 0.243137, 1) -[node name="TradeInventory" type="Control"] +[node name="SellList" type="Control"] layout_mode = 3 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 -offset_right = -1220.0 +offset_right = -700.0 offset_bottom = -130.0 grow_horizontal = 2 grow_vertical = 2 @@ -32,31 +43,41 @@ grow_vertical = 2 [node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer"] layout_mode = 2 -[node name="TitlePanel" type="Panel" parent="MarginContainer/VBoxContainer"] +[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/VBoxContainer"] +layout_mode = 2 +theme_override_constants/separation = 20 + +[node name="WholeSellListButton" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer"] custom_minimum_size = Vector2(200, 70) layout_mode = 2 size_flags_horizontal = 0 -theme_override_styles/panel = SubResource("StyleBoxFlat_8vjfi") +theme_override_colors/font_color = Color(1, 1, 1, 1) +theme_override_font_sizes/font_size = 40 +theme_override_styles/normal = SubResource("StyleBoxFlat_4l2s6") +theme_override_styles/pressed = SubResource("StyleBoxFlat_vqa0t") +toggle_mode = true +button_pressed = true +button_group = ExtResource("2_68j2i") +text = "판매목록" -[node name="TitleLabel" type="Label" parent="MarginContainer/VBoxContainer/TitlePanel"] -layout_mode = 1 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 +[node name="MySellListButton" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer"] +custom_minimum_size = Vector2(240, 70) +layout_mode = 2 +size_flags_horizontal = 0 theme_override_colors/font_color = Color(1, 1, 1, 1) theme_override_font_sizes/font_size = 40 -text = "인벤토리" -horizontal_alignment = 1 -vertical_alignment = 1 +theme_override_styles/normal = SubResource("StyleBoxFlat_4l2s6") +theme_override_styles/pressed = SubResource("StyleBoxFlat_af182") +toggle_mode = true +button_group = ExtResource("2_68j2i") +text = "내 판매목록" -[node name="InventoryPanel" type="Panel" parent="MarginContainer/VBoxContainer"] +[node name="ListPanel" type="Panel" parent="MarginContainer/VBoxContainer"] custom_minimum_size = Vector2(2.08165e-12, 750) layout_mode = 2 theme_override_styles/panel = SubResource("StyleBoxFlat_as0cg") -[node name="ScrollContainer" type="ScrollContainer" parent="MarginContainer/VBoxContainer/InventoryPanel"] +[node name="ScrollContainer" type="ScrollContainer" parent="MarginContainer/VBoxContainer/ListPanel"] layout_mode = 1 anchors_preset = 15 anchor_right = 1.0 @@ -64,11 +85,21 @@ anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 -[node name="CenterContainer" type="CenterContainer" parent="MarginContainer/VBoxContainer/InventoryPanel/ScrollContainer"] +[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/VBoxContainer/ListPanel/ScrollContainer"] layout_mode = 2 +theme_override_constants/margin_left = 50 +theme_override_constants/margin_top = 50 +theme_override_constants/margin_right = 50 +theme_override_constants/margin_bottom = 50 -[node name="GridContainer" type="GridContainer" parent="MarginContainer/VBoxContainer/InventoryPanel/ScrollContainer/CenterContainer"] +[node name="CenterContainer" type="CenterContainer" parent="MarginContainer/VBoxContainer/ListPanel/ScrollContainer/MarginContainer"] +layout_mode = 2 + +[node name="GridContainer" type="GridContainer" parent="MarginContainer/VBoxContainer/ListPanel/ScrollContainer/MarginContainer/CenterContainer"] layout_mode = 2 theme_override_constants/h_separation = 50 theme_override_constants/v_separation = 50 columns = 2 + +[connection signal="button_down" from="MarginContainer/VBoxContainer/HBoxContainer/WholeSellListButton" to="." method="_on_whole_sell_list_button_down"] +[connection signal="button_down" from="MarginContainer/VBoxContainer/HBoxContainer/MySellListButton" to="." method="_on_my_sell_list_button_down"]