添加了搜索框

更改了UI样式
添加了标识搜索框
This commit is contained in:
CortexCore 2023-07-09 00:48:08 +08:00
parent 36a4309730
commit 10c90cee9a
17 changed files with 555 additions and 102 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://pxxbxoejvuet"
path="res://.godot/imported/icon_arcticons_net-analyzer.png-fb2516993780d42205023d020e6de4df.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Artists/Art/Icons/icon_arcticons_net-analyzer.png"
dest_files=["res://.godot/imported/icon_arcticons_net-analyzer.png-fb2516993780d42205023d020e6de4df.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 433 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://chdrm4pbi6cm5"
path="res://.godot/imported/icon_fluent-mdl2_registry-editor.png-9307542f91e8af3355a25df2b2349d38.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Artists/Art/Icons/icon_fluent-mdl2_registry-editor.png"
dest_files=["res://.godot/imported/icon_fluent-mdl2_registry-editor.png-9307542f91e8af3355a25df2b2349d38.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 670 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b447jkohs1utw"
path="res://.godot/imported/icon_material-symbols_bookmark-manager.png-96ef329288444734fff20b254c702f54.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Artists/Art/Icons/icon_material-symbols_bookmark-manager.png"
dest_files=["res://.godot/imported/icon_material-symbols_bookmark-manager.png-96ef329288444734fff20b254c702f54.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://l5wliaec3yiy"
path="res://.godot/imported/icon_streamline_interface-id-voice-2-identification-secure-id-soundwave-sound-voice-brackets-security.png-0cdd8a9ff54f6cf647cea5644e3d042b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Artists/Art/Icons/icon_streamline_interface-id-voice-2-identification-secure-id-soundwave-sound-voice-brackets-security.png"
dest_files=["res://.godot/imported/icon_streamline_interface-id-voice-2-identification-secure-id-soundwave-sound-voice-brackets-security.png-0cdd8a9ff54f6cf647cea5644e3d042b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 936 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d354eewydsxs2"
path="res://.godot/imported/solar_smile-circle-bold.png-11152aa63dc1cc1bf141da09241142b0.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Artists/Art/Icons/solar_smile-circle-bold.png"
dest_files=["res://.godot/imported/solar_smile-circle-bold.png-11152aa63dc1cc1bf141da09241142b0.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@ -1,39 +1,48 @@
[gd_scene format=3 uid="uid://dey6r76kttak6"]
[gd_scene load_steps=3 format=3 uid="uid://dey6r76kttak6"]
[node name="FactoryThemePreview" type="ScrollContainer"]
[ext_resource type="Texture2D" uid="uid://d1uver224k3px" path="res://addons/ui_design_tool/assets/icons/folder_open-white-18dp.svg" id="1_jbnj1"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_uocfi"]
bg_color = Color(0.156863, 0.152941, 0.172549, 1)
[node name="FactoryThemePreview" type="PanelContainer"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_uocfi")
[node name="HBoxContainer" type="HBoxContainer" parent="."]
[node name="Scroll" type="ScrollContainer" parent="."]
layout_mode = 2
[node name="VBoxContainer" type="VBoxContainer" parent="HBoxContainer"]
[node name="HBoxContainer" type="HBoxContainer" parent="Scroll"]
layout_mode = 2
[node name="VBoxContainer" type="VBoxContainer" parent="Scroll/HBoxContainer"]
custom_minimum_size = Vector2(512, 0)
layout_mode = 2
[node name="Button" type="Button" parent="HBoxContainer/VBoxContainer"]
[node name="Button" type="Button" parent="Scroll/HBoxContainer/VBoxContainer"]
layout_mode = 2
text = "按钮"
[node name="Button2" type="Button" parent="HBoxContainer/VBoxContainer"]
[node name="Button2" type="Button" parent="Scroll/HBoxContainer/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"Accent"
text = "按钮"
[node name="Button3" type="Button" parent="HBoxContainer/VBoxContainer"]
[node name="Button3" type="Button" parent="Scroll/HBoxContainer/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"ColorPanel"
text = "按钮"
[node name="Button4" type="Button" parent="HBoxContainer/VBoxContainer"]
[node name="Button4" type="Button" parent="Scroll/HBoxContainer/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"Flat"
text = "按钮"
[node name="ItemList" type="ItemList" parent="HBoxContainer/VBoxContainer"]
[node name="ItemList" type="ItemList" parent="Scroll/HBoxContainer/VBoxContainer"]
layout_mode = 2
auto_height = true
item_count = 5
@ -43,30 +52,50 @@ item_2/text = "item 3"
item_3/text = "item 4"
item_4/text = "item 5"
[node name="VBoxContainer2" type="VBoxContainer" parent="HBoxContainer"]
[node name="VBoxContainer" type="VBoxContainer" parent="Scroll/HBoxContainer/VBoxContainer"]
layout_mode = 2
theme_override_constants/separation = 8
[node name="Button" type="Button" parent="Scroll/HBoxContainer/VBoxContainer/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"SideTab"
text = "SideBar 1"
[node name="Button2" type="Button" parent="Scroll/HBoxContainer/VBoxContainer/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"SideTab"
text = "SideBar 1"
icon = ExtResource("1_jbnj1")
[node name="Button3" type="Button" parent="Scroll/HBoxContainer/VBoxContainer/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"SideTab"
text = "SideBar 1"
[node name="VBoxContainer2" type="VBoxContainer" parent="Scroll/HBoxContainer"]
custom_minimum_size = Vector2(512, 0)
layout_mode = 2
[node name="Label" type="Label" parent="HBoxContainer/VBoxContainer2"]
[node name="Label" type="Label" parent="Scroll/HBoxContainer/VBoxContainer2"]
layout_mode = 2
text = "普通的标签"
[node name="Label5" type="Label" parent="HBoxContainer/VBoxContainer2"]
[node name="Label5" type="Label" parent="Scroll/HBoxContainer/VBoxContainer2"]
layout_mode = 2
theme_type_variation = &"WhitePanel"
text = "SuccessBox"
[node name="Label2" type="Label" parent="HBoxContainer/VBoxContainer2"]
[node name="Label2" type="Label" parent="Scroll/HBoxContainer/VBoxContainer2"]
layout_mode = 2
theme_type_variation = &"SuccessBox"
text = "SuccessBox"
[node name="Label3" type="Label" parent="HBoxContainer/VBoxContainer2"]
[node name="Label3" type="Label" parent="Scroll/HBoxContainer/VBoxContainer2"]
layout_mode = 2
theme_type_variation = &"AccentBox"
text = "AccentBox"
[node name="Label4" type="RichTextLabel" parent="HBoxContainer/VBoxContainer2"]
[node name="Label4" type="RichTextLabel" parent="Scroll/HBoxContainer/VBoxContainer2"]
layout_mode = 2
theme_type_variation = &"ErrorBox"
theme_override_colors/default_color = Color(0.0470588, 0.0470588, 0.0470588, 1)
@ -75,30 +104,39 @@ text = "[b]ErrorBox[/b]
a error happened"
fit_content = true
[node name="VBoxContainer3" type="VBoxContainer" parent="HBoxContainer"]
[node name="LineEdit" type="LineEdit" parent="Scroll/HBoxContainer/VBoxContainer2"]
layout_mode = 2
placeholder_text = "LineEdit"
[node name="LineEdit2" type="LineEdit" parent="Scroll/HBoxContainer/VBoxContainer2"]
layout_mode = 2
theme_type_variation = &"SearchBar"
placeholder_text = "SearchBar"
[node name="VBoxContainer3" type="VBoxContainer" parent="Scroll/HBoxContainer"]
layout_mode = 2
[node name="TabBar" type="TabBar" parent="HBoxContainer/VBoxContainer3"]
[node name="TabBar" type="TabBar" parent="Scroll/HBoxContainer/VBoxContainer3"]
layout_mode = 2
tab_count = 3
tab_0/title = "Tab1"
tab_1/title = "Tab2"
tab_2/title = "Tab3"
[node name="TabContainer" type="TabContainer" parent="HBoxContainer/VBoxContainer3"]
[node name="TabContainer" type="TabContainer" parent="Scroll/HBoxContainer/VBoxContainer3"]
custom_minimum_size = Vector2(512, 256)
layout_mode = 2
[node name="Window 1" type="Label" parent="HBoxContainer/VBoxContainer3/TabContainer"]
[node name="Window 1" type="Label" parent="Scroll/HBoxContainer/VBoxContainer3/TabContainer"]
layout_mode = 2
text = "Window 1"
[node name="Window 2" type="Label" parent="HBoxContainer/VBoxContainer3/TabContainer"]
[node name="Window 2" type="Label" parent="Scroll/HBoxContainer/VBoxContainer3/TabContainer"]
visible = false
layout_mode = 2
text = "Window 2"
[node name="Window 3" type="Label" parent="HBoxContainer/VBoxContainer3/TabContainer"]
[node name="Window 3" type="Label" parent="Scroll/HBoxContainer/VBoxContainer3/TabContainer"]
visible = false
layout_mode = 2
text = "Window 3"

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,68 @@
using Godot;
using System;
using System.Linq;
using System.Threading.Tasks;
using BITKit;
using Cysharp.Threading.Tasks;
namespace BITFactory;
public partial class IDIS_SearchService : Node
{
[ExportCategory("Service")]
[Export] private IDIS_Service service;
[ExportCategory("UI 绑定 ")]
[Export] private LineEdit searchEdit;
[Export] private Control searchCandidateContainer;
[Export] private StringResource searchButtonVariation;
public override void _Ready()
{
MathNode.RemoveAllChild(searchCandidateContainer);
searchEdit.TextChanged += Search;
//searchEdit.FocusExited += Clear;
}
private void Search(string word)
{
MathNode.RemoveAllChild(searchCandidateContainer);
if (service.TrySearch(word, out var queries) is false) return;
if(queries.Length is 1 && queries.First().Handle == word)return;
foreach (var query in queries)
{
var button = new Button();
button.Flat = true;
searchCandidateContainer.AddChild(button);
button.Text = query.Handle;
button.Pressed+=OnButtonOnPressed;
button.ThemeTypeVariation = searchButtonVariation.Value;
void OnButtonOnPressed()
{
searchEdit.Text = query.Handle;
Search(query.Handle);
}
}
}
private async void Clear()
{
await Task.Delay(100);
MathNode.RemoveAllChild(searchCandidateContainer);
}
}

View File

@ -1,4 +1,5 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Net.Mime;
@ -6,6 +7,7 @@ using BITKit;
using Cysharp.Threading.Tasks;
using Godot;
using Microsoft.EntityFrameworkCore;
using RosSharp.RosBridgeClient.MessageTypes.Sensor;
namespace BITFactory;
// ReSharper disable once IdentifierTypo
@ -123,6 +125,7 @@ public class IDIS_DBContext:DbContext
optionsBuilder.UseSqlite(sql);
BIT4Log.Log<IDIS_DBContext>($"已创建标识数据库:{path}");
}
/// <summary>
/// 查询多个标识
/// </summary>
@ -131,18 +134,20 @@ public class IDIS_DBContext:DbContext
/// <returns>是否查询到了内容</returns>
public bool Query(string key, out IDIS_Query[] queries)
{
var _query = Values.Where(x => x.Handle.Contains(key));
var result = _query.Select(x=>new IDIS_Query()
{
Handle = x.Handle,
CreateDate = x.CreateDate,
UpdateDate = x.UpdateDate,
Datas = Datas.Where(data=>data.Handle == key).ToArray(),
References = References.Where(reference=>reference.Handle == key).ToArray()
});
queries = result.ToArray();
return result.Any();
queries = Values
.ToList()
.Where(x => x.Handle.Contains(key))
.Select(x => new IDIS_Query()
{
Handle = x.Handle,
CreateDate = x.CreateDate,
UpdateDate = x.UpdateDate,
Datas = Datas.Where(data => data.Handle == key).ToArray(),
References = References.Where(reference => reference.Handle == key).ToArray()
}).ToArray();
return queries.Any();
}
/// <summary>
/// 查询单个标识
/// </summary>
@ -219,7 +224,7 @@ public partial class IDIS_Service:Node
BIT4Log.Log<IDIS_Service>("已创建标识数据库");
UniTask.Run(()=>Context.Database.EnsureCreatedAsync());
}
public bool TrySearch(string word,out IDIS_Query[] queries) => Context.Query(word, out queries);
public bool Register(string handle) => Context.Register(handle);
public void Register(string handle, string format, string value) => Context.Register(handle, format, value);
public void RegisterReference(string handle,string refenceHandle) => Context.RegisterReference(handle,refenceHandle);

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=11 format=3 uid="uid://cngf2h2a5ne4a"]
[gd_scene load_steps=23 format=3 uid="uid://cngf2h2a5ne4a"]
[ext_resource type="Script" path="res://BITKit/Scripts/UX/UXPanel.cs" id="1_c78kh"]
[ext_resource type="PackedScene" uid="uid://d1po2qljd0jh2" path="res://Mods/教育平台/教程header.tscn" id="2_mn1rn"]
@ -6,13 +6,34 @@
[ext_resource type="Script" path="res://BITKit/Scripts/UX/UXWindowService.cs" id="3_sfip0"]
[ext_resource type="ButtonGroup" uid="uid://cwiiipy56pktn" path="res://Mods/工业数据采集与分析应用分享/Resource/工业互联网标识解析与注册导航.tres" id="3_wv1s6"]
[ext_resource type="Script" path="res://Mods/工业数据采集与分析应用分享/Scripts/IDIS_Service.cs" id="3_xbtmk"]
[ext_resource type="Texture2D" uid="uid://d354eewydsxs2" path="res://Artists/Art/Icons/solar_smile-circle-bold.png" id="4_cfexj"]
[ext_resource type="Script" path="res://Mods/工业数据采集与分析应用分享/Scripts/IDIS_TemplateService.cs" id="4_oj8cs"]
[ext_resource type="Texture2D" uid="uid://b447jkohs1utw" path="res://Artists/Art/Icons/icon_material-symbols_bookmark-manager.png" id="5_e7iy7"]
[ext_resource type="Texture2D" uid="uid://chdrm4pbi6cm5" path="res://Artists/Art/Icons/icon_fluent-mdl2_registry-editor.png" id="6_sgyjo"]
[ext_resource type="Texture2D" uid="uid://cadf2webkrl7h" path="res://BITKit/Art/Icons/icon_subscriber-identity-module.png" id="7_tx7hw"]
[ext_resource type="Script" path="res://Mods/工业数据采集与分析应用分享/Scripts/IDIS_RegisterService.cs" id="8_6uwr0"]
[ext_resource type="Texture2D" uid="uid://sq1oh4tippad" path="res://Artists/Art/Icons/icon_temperature-celsius.png" id="8_488ak"]
[ext_resource type="Texture2D" uid="uid://c38luts5hc5fj" path="res://Artists/Art/Icons/Arrows/icon_chevron-left-rounded.png" id="9_78wam"]
[ext_resource type="Script" path="res://BITKit/Scripts/UX/UXServiceProxy.cs" id="11_qsxmx"]
[ext_resource type="Script" path="res://Mods/工业数据采集与分析应用分享/Scripts/IDIS_SearchService.cs" id="16_14syv"]
[ext_resource type="Script" path="res://BITKit/Scripts/Resource/StringResource.cs" id="17_vci8w"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_nfm72"]
bg_color = Color(0.172549, 0.168627, 0.188235, 1)
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_clkje"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_1rin1"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_mg0sc"]
bg_color = Color(1, 1, 1, 0.12549)
corner_radius_bottom_right = 16
corner_radius_bottom_left = 16
[sub_resource type="Resource" id="Resource_ktam2"]
script = ExtResource("17_vci8w")
value = "Panel"
[node name="标识注册与解析" type="Control"]
layout_mode = 3
anchors_preset = 15
@ -31,7 +52,7 @@ anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0.14902, 0.160784, 0.176471, 0.784314)
color = Color(0.156863, 0.152941, 0.172549, 1)
[node name="Layout" type="VBoxContainer" parent="."]
layout_mode = 1
@ -40,69 +61,118 @@ anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/separation = 0
[node name="教程Header" parent="Layout" instance=ExtResource("2_mn1rn")]
visible = false
layout_mode = 2
[node name="UX Window Service" type="MarginContainer" parent="Layout" node_paths=PackedStringArray("tabs", "windows")]
layout_mode = 2
size_flags_vertical = 3
theme_type_variation = &"Margin_16px"
script = ExtResource("3_sfip0")
tabs = [NodePath("Horizontal Layout/导航栏/标识模板-button"), NodePath("Horizontal Layout/导航栏/Button3"), NodePath("Horizontal Layout/导航栏/Button2"), NodePath("Horizontal Layout/导航栏/Button4")]
windows = [NodePath("Horizontal Layout/内容/标识模板"), NodePath("Horizontal Layout/内容/标注注册"), NodePath("Horizontal Layout/内容/Container2"), NodePath("Horizontal Layout/内容/Container3")]
tabs = [NodePath("Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer/标识模板-button"), NodePath("Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer/Button3"), NodePath("Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer/Button2"), NodePath("Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer/Button4")]
windows = [NodePath("Horizontal Layout/内容/标识模板"), NodePath("Horizontal Layout/内容/标注注册"), NodePath("Horizontal Layout/内容/标识解析"), NodePath("Horizontal Layout/内容/Container3")]
[node name="Horizontal Layout" type="HBoxContainer" parent="Layout/UX Window Service"]
layout_mode = 2
theme_override_constants/separation = 16
[node name="导航栏" type="VBoxContainer" parent="Layout/UX Window Service/Horizontal Layout"]
custom_minimum_size = Vector2(256, 0)
[node name="导航栏" type="PanelContainer" parent="Layout/UX Window Service/Horizontal Layout"]
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_nfm72")
[node name="MarginContainer" type="MarginContainer" parent="Layout/UX Window Service/Horizontal Layout/导航栏"]
layout_mode = 2
theme_type_variation = &"Margin_16px"
theme_override_constants/margin_left = 32
theme_override_constants/margin_top = 32
theme_override_constants/margin_right = 32
[node name="Layout" type="VBoxContainer" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer"]
custom_minimum_size = Vector2(200, 0)
layout_mode = 2
[node name="Label" type="Label" parent="Layout/UX Window Service/Horizontal Layout/导航栏"]
[node name="VBoxContainer" type="VBoxContainer" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout"]
layout_mode = 2
size_flags_vertical = 3
[node name="HBoxContainer" type="HBoxContainer" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer"]
layout_mode = 2
[node name="TextureRect" type="TextureRect" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer/HBoxContainer"]
layout_mode = 2
texture = ExtResource("4_cfexj")
[node name="Label" type="Label" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer/HBoxContainer"]
layout_mode = 2
text = "CAICT定制用户"
[node name="Control" type="Control" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer"]
custom_minimum_size = Vector2(0, 16)
layout_mode = 2
[node name="Label" type="Label" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"HeaderMedium"
text = "管理"
[node name="标识模板-button" type="Button" parent="Layout/UX Window Service/Horizontal Layout/导航栏"]
[node name="标识模板-button" type="Button" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"SideTab"
toggle_mode = true
button_group = ExtResource("3_wv1s6")
text = "管理标识模板"
icon = ExtResource("5_e7iy7")
expand_icon = true
[node name="Label3" type="Label" parent="Layout/UX Window Service/Horizontal Layout/导航栏"]
[node name="Label3" type="Label" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"HeaderMedium"
text = "注册"
[node name="Button3" type="Button" parent="Layout/UX Window Service/Horizontal Layout/导航栏"]
[node name="Button3" type="Button" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"SideTab"
toggle_mode = true
button_group = ExtResource("3_wv1s6")
text = "注册标识"
icon = ExtResource("6_sgyjo")
expand_icon = true
[node name="Label4" type="Label" parent="Layout/UX Window Service/Horizontal Layout/导航栏"]
[node name="Label4" type="Label" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"HeaderMedium"
text = "查询"
[node name="Button2" type="Button" parent="Layout/UX Window Service/Horizontal Layout/导航栏"]
[node name="Button2" type="Button" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"SideTab"
toggle_mode = true
button_group = ExtResource("3_wv1s6")
text = "标识解析"
icon = ExtResource("7_tx7hw")
expand_icon = true
[node name="Label5" type="Label" parent="Layout/UX Window Service/Horizontal Layout/导航栏"]
[node name="Label5" type="Label" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"HeaderMedium"
text = "实训"
[node name="Button4" type="Button" parent="Layout/UX Window Service/Horizontal Layout/导航栏"]
[node name="Button4" type="Button" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/VBoxContainer"]
layout_mode = 2
theme_type_variation = &"SideTab"
toggle_mode = true
button_group = ExtResource("3_wv1s6")
text = "温湿度传感器"
icon = ExtResource("8_488ak")
expand_icon = true
[node name="Button5" type="Button" parent="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout"]
layout_mode = 2
theme_type_variation = &"SideTab"
toggle_mode = true
button_group = ExtResource("3_wv1s6")
text = "返回"
icon = ExtResource("9_78wam")
expand_icon = true
script = ExtResource("11_qsxmx")
[node name="内容" type="PanelContainer" parent="Layout/UX Window Service/Horizontal Layout"]
layout_mode = 2
@ -110,6 +180,7 @@ size_flags_horizontal = 3
theme_override_styles/panel = SubResource("StyleBoxEmpty_clkje")
[node name="标识模板" type="MarginContainer" parent="Layout/UX Window Service/Horizontal Layout/内容"]
visible = false
layout_mode = 2
theme_type_variation = &"Margin_16px"
@ -357,41 +428,99 @@ mouse_filter = 2
theme_override_styles/background = SubResource("StyleBoxEmpty_1rin1")
show_percentage = false
[node name="Container2" type="Container" parent="Layout/UX Window Service/Horizontal Layout/内容"]
visible = false
[node name="标识解析" type="VBoxContainer" parent="Layout/UX Window Service/Horizontal Layout/内容"]
layout_mode = 2
[node name="Control" type="Control" parent="Layout/UX Window Service/Horizontal Layout/内容/标识解析"]
custom_minimum_size = Vector2(0, 64)
layout_mode = 2
[node name="占位符" type="Control" parent="Layout/UX Window Service/Horizontal Layout/内容/标识解析"]
custom_minimum_size = Vector2(0, 256)
layout_mode = 2
[node name="Search" type="VBoxContainer" parent="Layout/UX Window Service/Horizontal Layout/内容/标识解析"]
layout_mode = 2
size_flags_horizontal = 4
theme_override_constants/separation = 0
[node name="SearchEdit" type="LineEdit" parent="Layout/UX Window Service/Horizontal Layout/内容/标识解析/Search"]
custom_minimum_size = Vector2(768, 0)
layout_mode = 2
theme_type_variation = &"SearchBar"
placeholder_text = "搜索标识"
[node name="PanelContainer" type="PanelContainer" parent="Layout/UX Window Service/Horizontal Layout/内容/标识解析/Search"]
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_mg0sc")
[node name="Control" type="VBoxContainer" parent="Layout/UX Window Service/Horizontal Layout/内容/标识解析/Search/PanelContainer"]
layout_mode = 2
theme_override_constants/separation = 0
[node name="Button" type="Button" parent="Layout/UX Window Service/Horizontal Layout/内容/标识解析/Search/PanelContainer/Control"]
layout_mode = 2
theme_type_variation = &"Flat"
text = "候选词1"
flat = true
[node name="Button2" type="Button" parent="Layout/UX Window Service/Horizontal Layout/内容/标识解析/Search/PanelContainer/Control"]
layout_mode = 2
theme_type_variation = &"Flat"
text = "候选词1"
flat = true
[node name="Button3" type="Button" parent="Layout/UX Window Service/Horizontal Layout/内容/标识解析/Search/PanelContainer/Control"]
layout_mode = 2
theme_type_variation = &"Flat"
text = "候选词1"
flat = true
[node name="Button4" type="Button" parent="Layout/UX Window Service/Horizontal Layout/内容/标识解析/Search/PanelContainer/Control"]
layout_mode = 2
theme_type_variation = &"Flat"
text = "候选词1"
flat = true
[node name="Container3" type="Container" parent="Layout/UX Window Service/Horizontal Layout/内容"]
visible = false
layout_mode = 2
[node name="标识解析服务" type="Node" parent="Layout"]
[node name="标识解析服务" type="Node" parent="."]
script = ExtResource("3_xbtmk")
[node name="标识模板服务" type="Node" parent="Layout" node_paths=PackedStringArray("createButton", "newFormatButton", "itemList", "templateNameEdit", "templateDescriptionEdit", "container", "templateCreateTimeLabel", "templateUpdateTimeLabel")]
[node name="标识模板服务" type="Node" parent="." node_paths=PackedStringArray("createButton", "newFormatButton", "itemList", "templateNameEdit", "templateDescriptionEdit", "container", "templateCreateTimeLabel", "templateUpdateTimeLabel")]
script = ExtResource("4_oj8cs")
createButton = NodePath("../UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer/Button")
newFormatButton = NodePath("../UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer2/VBoxContainer/Button")
itemList = NodePath("../UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer/ItemList")
templateNameEdit = NodePath("../UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer2/VBoxContainer/name-edit")
templateDescriptionEdit = NodePath("../UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer2/VBoxContainer/description-edit")
container = NodePath("../UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer2/VBoxContainer/Format-Container")
templateCreateTimeLabel = NodePath("../UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer2/VBoxContainer/GridContainer/createTime-label")
templateUpdateTimeLabel = NodePath("../UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer2/VBoxContainer/GridContainer/updateTime-label")
createButton = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer/Button")
newFormatButton = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer2/VBoxContainer/Button")
itemList = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer/ItemList")
templateNameEdit = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer2/VBoxContainer/name-edit")
templateDescriptionEdit = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer2/VBoxContainer/description-edit")
container = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer2/VBoxContainer/Format-Container")
templateCreateTimeLabel = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer2/VBoxContainer/GridContainer/createTime-label")
templateUpdateTimeLabel = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标识模板/VBoxContainer/HBoxContainer/VBoxContainer2/VBoxContainer/GridContainer/updateTime-label")
templateContainer = ExtResource("3_gmthc")
[node name="标识注册服务" type="Node" parent="Layout" node_paths=PackedStringArray("service", "templateService", "templateList", "handleEdit", "generateHandleButton", "registerContainer", "registerButton", "registerProgress", "referenceContainer", "addReferenceButton", "hints")]
[node name="标识注册服务" type="Node" parent="." node_paths=PackedStringArray("service", "templateService", "templateList", "handleEdit", "generateHandleButton", "registerContainer", "registerButton", "registerProgress", "referenceContainer", "addReferenceButton", "hints")]
script = ExtResource("8_6uwr0")
service = NodePath("../标识解析服务")
templateService = NodePath("../标识模板服务")
templateList = NodePath("../UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer/ItemList")
handleEdit = NodePath("../UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/HBoxContainer/handle-edit")
generateHandleButton = NodePath("../UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/HBoxContainer/generate-button")
registerContainer = NodePath("../UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/MarginContainer/VBoxContainer/register-container")
registerButton = NodePath("../UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/register-button")
registerProgress = NodePath("../UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/register-button/ProgressBar")
referenceContainer = NodePath("../UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/MarginContainer/VBoxContainer/reference-container")
addReferenceButton = NodePath("../UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/MarginContainer/VBoxContainer/addReference-button")
hints = NodePath("../UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/Label2")
templateList = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer/ItemList")
handleEdit = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/HBoxContainer/handle-edit")
generateHandleButton = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/HBoxContainer/generate-button")
registerContainer = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/MarginContainer/VBoxContainer/register-container")
registerButton = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/register-button")
registerProgress = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/register-button/ProgressBar")
referenceContainer = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/MarginContainer/VBoxContainer/reference-container")
addReferenceButton = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/MarginContainer/VBoxContainer/addReference-button")
hints = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标注注册/HBoxContainer/VBoxContainer2/Label2")
[connection signal="draw" from="Layout/UX Window Service/Horizontal Layout/内容/标注注册" to="Layout/标识注册服务" method="Rebuild"]
[node name="标识搜索服务" type="Node" parent="." node_paths=PackedStringArray("service", "searchEdit", "searchCandidateContainer")]
script = ExtResource("16_14syv")
service = NodePath("../标识解析服务")
searchEdit = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标识解析/Search/SearchEdit")
searchCandidateContainer = NodePath("../Layout/UX Window Service/Horizontal Layout/内容/标识解析/Search/PanelContainer/Control")
searchButtonVariation = SubResource("Resource_ktam2")
[connection signal="pressed" from="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/Button5" to="Layout/UX Window Service/Horizontal Layout/导航栏/MarginContainer/Layout/Button5" method="Return"]
[connection signal="draw" from="Layout/UX Window Service/Horizontal Layout/内容/标注注册" to="标识注册服务" method="Rebuild"]

View File

@ -1,38 +1,37 @@
[gd_scene load_steps=3 format=3 uid="uid://d1po2qljd0jh2"]
[gd_scene load_steps=4 format=3 uid="uid://d1po2qljd0jh2"]
[ext_resource type="Texture2D" uid="uid://c38luts5hc5fj" path="res://Artists/Art/Icons/Arrows/icon_chevron-left-rounded.png" id="1_mns52"]
[ext_resource type="Script" path="res://BITKit/Scripts/UX/UXServiceProxy.cs" id="2_qbyqo"]
[node name="教程Header" type="ColorRect"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_4iacu"]
bg_color = Color(0.156863, 0.152941, 0.172549, 1)
border_width_bottom = 1
border_color = Color(0.129412, 0.12549, 0.145098, 1)
shadow_offset = Vector2(0, -2)
[node name="教程Header" type="Panel"]
clip_children = 2
custom_minimum_size = Vector2(1024, 100)
color = Color(0.121569, 0.129412, 0.145098, 1)
theme_override_styles/panel = SubResource("StyleBoxFlat_4iacu")
[node name="Label" type="Label" parent="."]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -20.0
offset_top = -11.5
offset_right = 20.0
offset_bottom = 11.5
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_font_sizes/font_size = 48
text = "工业互联网标识解析与注册"
horizontal_alignment = 1
vertical_alignment = 1
[node name="Button" type="Button" parent="."]
layout_mode = 1
anchors_preset = 4
anchor_top = 0.5
anchor_bottom = 0.5
offset_left = 37.0
offset_top = -31.0
offset_right = 165.0
offset_bottom = 33.0
layout_mode = 2
offset_left = 16.0
offset_top = 18.0
offset_right = 157.0
offset_bottom = 80.0
grow_vertical = 2
text = "返回"
icon = ExtResource("1_mns52")

View File

@ -29,6 +29,7 @@ UXService="*res://Artists/Services/UXService.tscn"
window/size/viewport_width=1920
window/size/viewport_height=1080
window/stretch/mode="canvas_items"
window/stretch/aspect="expand"
window/vsync/vsync_mode=2
mouse_cursor/vsync/vsync_mode=3
mouse_cursor/stretch/aspect="keep"