master
罗家炜 2025-11-11 16:36:38 +08:00
parent e31af96f0e
commit 4ca65a4f32
6 changed files with 235 additions and 186 deletions

View File

@ -11,9 +11,9 @@ local LobbyHeadView = {}
local M = LobbyHeadView
function LobbyHeadView.new(user,agent,callback)
setmetatable(M, {__index = BaseWindow})
local self = setmetatable({}, {__index = M})
function LobbyHeadView.new(user, agent, callback)
setmetatable(M, { __index = BaseWindow })
local self = setmetatable({}, { __index = M })
self.class = "LobbyHeadView"
self._user = user
self._agent = agent
@ -21,8 +21,8 @@ function LobbyHeadView.new(user,agent,callback)
self._full_offset = false
self._animation = false
self._put_map = false
self._new_hide = false
self._queue = false
self._new_hide = false
self._queue = false
self.callback = callback
self:init("ui://Lobby/UserInfo")
@ -37,38 +37,38 @@ function M:fill_item(item_name, title, callback)
item.text = title
ctr_c1.selectedIndex = 1
end
btn_opt.onClick:Set(function ()
btn_opt.onClick:Set(function()
callback()
end)
end
function M:fill_user_info()
local real_info = self._user.real_info
self:fill_item("item_real",real_info and real_info.name or nil,function ()
local real_view = RealAddressView.new(0,function ()
self:fill_item("item_real", real_info and real_info.name or nil, function()
local real_view = RealAddressView.new(0, function()
self:fill_user_info()
end)
real_view:Show()
end)
local address = self._user.address
self:fill_item("item_address",address,function ()
local real_view = RealAddressView.new(1,function ()
self:fill_item("item_address", address, function()
local real_view = RealAddressView.new(1, function()
self:fill_user_info()
end)
real_view:Show()
end)
local phone = self._user.phone
self:fill_item("item_phone",phone and ViewUtil.phone_hide(phone) or nil,function ()
local phone_view = PhoneBindView.new(function ()
self:fill_item("item_phone", phone and ViewUtil.phone_hide(phone) or nil, function()
local phone_view = PhoneBindView.new(function()
self:fill_user_info()
end)
phone_view:Show()
end)
local password = self._user.password
self:fill_item("item_password",password,function ()
self:fill_item("item_password", password, function()
-- if not phone then
-- ViewUtil.ShowTips("请绑定手机号")
-- return
@ -92,24 +92,24 @@ function M:fill_user_info()
local item_invte = self.user_info:GetChild("item_invte")
local ctr_invte = item_invte:GetController("c1")
ctr_invte.selectedIndex = invitation
ctr_invte.onChanged:Set(function ()
ctr_invte.onChanged:Set(function()
ViewUtil.ShowModalWait()
local loddyctr = ControllerManager.GetController(LoddyController)
local _data = {}
_data.type =5
_data.type = 5
_data.invitation = ctr_invte.selectedIndex
loddyctr:UpdateUserInfo(_data,function( res)
loddyctr:UpdateUserInfo(_data, function(res)
ViewUtil.CloseModalWait()
if (res.ReturnCode ==0) then
if (res.ReturnCode == 0) then
DataManager.SelfUser.invitation = ctr_invte.selectedIndex
else
ViewUtil.ErrorTip(res.ReturnCode,"提交失败")
ViewUtil.ErrorTip(res.ReturnCode, "提交失败")
end
end)
end)
local acc = self._user.acc
self:fill_item("item_wx",acc and "(绑定:"..self._user.nick_name..")" or "",function ()
self:fill_item("item_wx", acc and "(绑定:" .. self._user.nick_name .. ")" or "", function()
local wx_view = WeChatView.new(function()
self:fill_user_info()
end)
@ -128,31 +128,30 @@ function M:fill_user_info()
end)
end
function M:ChangeToLogin()
local _curren_msg = MsgWindow.new(self._root_view, '您是否退出当前账号?', MsgWindow.MsgMode.OkAndCancel)
_curren_msg.onOk:Add(function()
PlayerPrefs.DeleteKey('session_id')
PlayerPrefs.Save()
RestartGame()
end)
_curren_msg:Show()
local _curren_msg = MsgWindow.new(self._root_view, '您是否退出当前账号?', MsgWindow.MsgMode.OkAndCancel)
_curren_msg.onOk:Add(function()
PlayerPrefs.DeleteKey('session_id')
PlayerPrefs.Save()
RestartGame()
end)
_curren_msg:Show()
end
function M:init(url)
BaseWindow.init(self,url)
BaseWindow.init(self, url)
self._close_destroy = true
self._close_zone = true
local view = self._view
local view = self._view
local ctr_nav = view:GetController("nav")
--ctr_nav.selectedIndex = self._agent and 1 or 0
local ct_state = view:GetController("state")
view:GetChild("tex_nickname").text = self._user.nick_name
local str_playerid = self._user.account_id
view:GetChild("tex_id").text = "ID:"..str_playerid
view:GetChild("tex_id").text = "ID:" .. str_playerid
local btn_head = view:GetChild("btn_head")
ImageLoad.Load(self._user.head_url, btn_head._iconObject)
btn_head.onClick:Set(function()
@ -175,4 +174,4 @@ function M:init(url)
self.user_info = view:GetChild("user_info")
end
return M
return M

View File

@ -3,8 +3,8 @@ local PhoneBindView = {}
local M = PhoneBindView
function PhoneBindView.new(callback)
setmetatable(M, {__index = BaseWindow})
local self = setmetatable({}, {__index = M})
setmetatable(M, { __index = BaseWindow })
local self = setmetatable({}, { __index = M })
self.class = "PhoneBindView"
self._callback = callback
self._close_destroy = true
@ -14,13 +14,13 @@ function PhoneBindView.new(callback)
end
function M:init(url)
BaseWindow.init(self,url)
BaseWindow.init(self, url)
if DataManager.SelfUser.phone then
local ctr_update = self._view:GetController("update")
ctr_update.selectedIndex = 1
end
local btn_getCode = self._view:GetChild("btn_getCode")
btn_getCode.onClick:Set(function()
self:GetCode()
@ -38,8 +38,8 @@ function M:GetCode()
if not phone then
return
end
local loddyctr = ControllerManager.GetController(LoddyController)
loddyctr:GetPhoneCode(phone,function( res)
local loddyctr = ControllerManager.GetController(LoddyController)
loddyctr:GetPhoneCode(phone, function(res)
if res.ReturnCode == 0 then
self._view:GetController("code").selectedIndex = 1
self._left_time = 120
@ -57,12 +57,12 @@ function M:OnUpdate()
_left_time = _left_time - deltaTime
_left_time = math.max(0, _left_time)
local leftTime = math.floor(_left_time)
self._view:GetChild("tex_time").text = tostring(leftTime).."后重新发送"
self._view:GetChild("tex_time").text = tostring(leftTime) .. "后重新发送"
self._left_time = _left_time
else
self._view:GetController("code").selectedIndex=0
self._view:GetController("code").selectedIndex = 0
UpdateBeat:Remove(self.OnUpdate, self)
end
end
end
function M:Destroy()
@ -80,19 +80,19 @@ function M:Bind()
if not code then
return
end
ViewUtil.ShowModalWait(self._root_view,"正在提交...")
local loddyctr = ControllerManager.GetController(LoddyController)
ViewUtil.ShowModalWait(self._root_view, "正在提交...")
local loddyctr = ControllerManager.GetController(LoddyController)
local _data = {}
_data.type =4
_data.type = 4
_data.phone = phone
_data.code = code
loddyctr:UpdateUserInfo(_data,function( res)
loddyctr:UpdateUserInfo(_data, function(res)
ViewUtil.CloseModalWait()
if (res.ReturnCode ==0) then
if (res.ReturnCode == 0) then
DataManager.SelfUser.phone = phone
if self._callback then self._callback() end
else
ViewUtil.ErrorTip(res.ReturnCode,"提交失败")
ViewUtil.ErrorTip(res.ReturnCode, "提交失败")
end
self:Close()
end)
@ -116,4 +116,4 @@ function M:CheckInputCode()
return code
end
return M
return M

View File

@ -18,9 +18,8 @@ end
--@function [parent=#LoginView] init
--@param self
function M:init()
UIPackage.AddPackage("base/login/ui/Login")
--UIPackage.AddPackage("UI/Card")
ViewUtil.PlaySoundBg()
@ -40,55 +39,54 @@ function M:init()
end
end
local _btn_login = view:GetChild("btn_wx")
_btn_login.onClick:Add(function()
ViewUtil.ShowModalWait(true, "正在登录游戏...", 2)
-- local _client = ControllerManager.WebClient
-- _client:send(Protocol.WEB_GET_APP_INFO, {id=1}, function(res)
--if (res.ReturnCode == 0) then
-- printlog(res.Data.appInfo)
--GameApplication.Instance:SetAppInfo(res.Data.appInfo)
-- GameApplication.Instance:SetAppInfo("KqIuT2bQt6fTD2aRLWM2Vcl3YmtOklMeGhADRWhfNjBBUQpzYZ/EdkRhyLZSh6sk8D4udeItmY37p3JLT99CQIobpJSKaLMVsGKxdhPhbiwcuRbShvW2OONETXi7kazNDayedFUZMDacj0e8f84uu8BVi203PyvYCZZ2wqSNPOIBgnC95ETtm3inoP9RvZpOPqbfYYDKESrr8dsPN+6KWXDxAXvAOmYr7/Q+gxN/WGNzayMB449BQTHmux4hgoLdvxJNvohpEjkMfPaRIio10TqnrhJeq4Flosbuhbn9YMEX4lWpdaoOeG1NK86uSnzUfJA4AM+5Xvq+p2XMVIBECZ1y52js653TQYGXgdz2sETpsgzXswsA/N7VNgVfPw1Zs3UXbD1v+7H39Aq9u3V9kav4Qh3tOlLO7sKSI7kVRnnp8krTYLB5SfkvnAQP7PctM74Lwyvx1vES6wCH97+TysWXF1YufdZag1j+F4vPjZVnFgnLaV00vXu65bpuK9NkIyx4TgVuQ/geIYE0jPfWluUn1JychQZu7Ih7dFKulWF8mY8dB+evuLqLNyK8pHHNXTGKMf7kMJCE/5m8pK8G3p1ubIDTapf0gkHSXgb+zM9cfx9cbfg0Tp3ZZTCaz5zsNomQKeNvKofWhVm4+7gcWBJ0ONQjhWLZBap1/fRJSXk=")
coroutine.start(function()
coroutine.wait(8)
if self.isWXCallBackMark then
return
end
ViewUtil.CloseModalWait()
ViewUtil.ErrorTip(10000, "微信登录失败!")
end)
if (not GameApplication.Instance.accountTest) then
GameApplication.Instance:WXLogin(handler(self, self.LoginCallBack))
else
--local ctr_user = view:GetController("user")
-- _client:send(Protocol.WEB_GET_APP_INFO, {id=1}, function(res)
--if (res.ReturnCode == 0) then
-- printlog(res.Data.appInfo)
--GameApplication.Instance:SetAppInfo(res.Data.appInfo)
-- GameApplication.Instance:SetAppInfo("KqIuT2bQt6fTD2aRLWM2Vcl3YmtOklMeGhADRWhfNjBBUQpzYZ/EdkRhyLZSh6sk8D4udeItmY37p3JLT99CQIobpJSKaLMVsGKxdhPhbiwcuRbShvW2OONETXi7kazNDayedFUZMDacj0e8f84uu8BVi203PyvYCZZ2wqSNPOIBgnC95ETtm3inoP9RvZpOPqbfYYDKESrr8dsPN+6KWXDxAXvAOmYr7/Q+gxN/WGNzayMB449BQTHmux4hgoLdvxJNvohpEjkMfPaRIio10TqnrhJeq4Flosbuhbn9YMEX4lWpdaoOeG1NK86uSnzUfJA4AM+5Xvq+p2XMVIBECZ1y52js653TQYGXgdz2sETpsgzXswsA/N7VNgVfPw1Zs3UXbD1v+7H39Aq9u3V9kav4Qh3tOlLO7sKSI7kVRnnp8krTYLB5SfkvnAQP7PctM74Lwyvx1vES6wCH97+TysWXF1YufdZag1j+F4vPjZVnFgnLaV00vXu65bpuK9NkIyx4TgVuQ/geIYE0jPfWluUn1JychQZu7Ih7dFKulWF8mY8dB+evuLqLNyK8pHHNXTGKMf7kMJCE/5m8pK8G3p1ubIDTapf0gkHSXgb+zM9cfx9cbfg0Tp3ZZTCaz5zsNomQKeNvKofWhVm4+7gcWBJ0ONQjhWLZBap1/fRJSXk=")
coroutine.start(function()
coroutine.wait(8)
if self.isWXCallBackMark then
return
end
ViewUtil.CloseModalWait()
ViewUtil.ErrorTip(10000, "微信登录失败!")
end)
if (not GameApplication.Instance.accountTest) then
GameApplication.Instance:WXLogin(handler(self, self.LoginCallBack))
else
--local ctr_user = view:GetController("user")
local _tex_unionid = view:GetChild("tex_unionid")
local _tex_unionid = view:GetChild("tex_unionid")
local utez = _tex_unionid.text --.. (ctr_user.selectedIndex + 1)
local utez = _tex_unionid.text --.. (ctr_user.selectedIndex + 1)
local _data = {}
_data["userId"] = utez
local key = "userId"
local s, e = pcall(function()
Utils.SaveLocalFile(key, json.encode(_data))
end)
if not s then
print("Error:" .. e)
end
local _data = {}
_data["userId"] = utez
local key = "userId"
local s, e = pcall(function()
Utils.SaveLocalFile(key, json.encode(_data))
end)
if not s then
print("Error:" .. e)
end
DataManager.SelfUser.acc = utez
-- DataManager.SelfUser.acc = utez
DataManager.SelfUser.nick_name = utez
DataManager.SelfUser.sex = 1
DataManager.SelfUser.head_url = ""
self:LoginCallBack(0)
end
DataManager.SelfUser.acc = utez
DataManager.SelfUser.nick_name = utez
DataManager.SelfUser.sex = 1
DataManager.SelfUser.head_url = ""
self:LoginCallBack(0)
end
-- end
-- end
-- end)
end)
local btn_phone = view:GetChild("btn_phone")

View File

@ -698,21 +698,25 @@ function M:RecursionGetPropLog(members, index)
self.groupumberTemp.valid_round = info.valid_count * 100
self.groupumberTemp.reward_hp = info.pump
self.groupumberTemp.total_win = 0
self.groupumberTemp.hpall = {}
self.groupumberTemp.hpall.hp = info.hp_num1
self.record_data[1] = self.groupumberTemp
self:NewRecordTable(1)
ViewUtil.CloseModalWait()
fgCtr:FG_GetMembersCount(self.group_id, function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then
self.groupumberTemp.hpall = {}
self.groupumberTemp.hpall.hp = res.Data.hp_num1 + res.Data.otherHp
self.record_data[1] = self.groupumberTemp
-- for i = 1, #members do
-- self.record_data[#self.record_data + 1] = members[i]
-- end
self:NewRecordTable(1)
else
ViewUtil.ErrorTip(res.ReturnCode, "目标没有总线值")
end
end)
-- fgCtr:FG_GetMembersCount(self.group_id, function(res)
-- ViewUtil.CloseModalWait()
-- if res.ReturnCode == 0 then
-- self.groupumberTemp.hpall = {}
-- self.groupumberTemp.hpall.hp = res.Data.hp_num1 + res.Data.otherHp
-- self.record_data[1] = self.groupumberTemp
-- -- for i = 1, #members do
-- -- self.record_data[#self.record_data + 1] = members[i]
-- -- end
-- self:NewRecordTable(1)
-- else
-- ViewUtil.ErrorTip(res.ReturnCode, "目标没有总线值")
-- end
-- end)
end
-- self.lst_record.numItems = #self.record_data
end)

View File

@ -138,6 +138,10 @@ function M:InitView()
if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, '找不到成员')
else
if not res.Data.members or #res.Data.members == 0 then
ViewUtil.ErrorTip(res.ReturnCode, '找不到成员')
return
end
self.ctr_search.selectedIndex = 1
self:ChangedClear(0)
self:InitListRecordFind()
@ -303,6 +307,12 @@ function M:ListRenderer(index, obj)
obj:GetChild('btn_super').visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0
obj:GetChild('btn_super').onClick:Set(function()
local myInfo = self._data_record[tempLev][tempIndex]
if myInfo._flag_normol then
ViewUtil.ErrorTip(nil, '已获取全部普通用户')
return
end
myInfo._flag_normol = true
if obj:GetController("more").selectedIndex == 0 then
self:ChangedClear(tempLev)
ViewUtil:ShowModalWait()
@ -433,22 +443,30 @@ function M:GetPropLog(index)
self.groupumberTemp.valid_round = info.valid_count * 100
self.groupumberTemp.reward_hp = info.pump
self.groupumberTemp.total_win = 0
self.groupumberTemp.hpall = {}
self.groupumberTemp.hpall.hp = info.hp_num1
self.groupumberTemp.hpall.total_member = info.member_num or 0
self:InsertTableRecord(1, self.groupumberTemp)
self._selectedLev = 1
self._selectIndex = 1
self._selectIndexList[self._selectedLev] = self._selectIndex
self:LevGetRecordData(0, self.groupumberTemp)
ViewUtil.CloseModalWait()
fgCtr:FG_GetMembersCount(self.group_id, function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then
self.groupumberTemp.hpall = {}
self.groupumberTemp.hpall.hp = res.Data.hp_num1 + res.Data.otherHp
self.groupumberTemp.hpall.total_member = res.Data.member_num
self:InsertTableRecord(1, self.groupumberTemp)
self._selectedLev = 1
self._selectIndex = 1
self._selectIndexList[self._selectedLev] = self._selectIndex
self:LevGetRecordData(0, self.groupumberTemp)
else
ViewUtil.ErrorTip(res.ReturnCode, "目标没有总线值")
end
end)
-- fgCtr:FG_GetMembersCount(self.group_id, function(res)
-- ViewUtil.CloseModalWait()
-- if res.ReturnCode == 0 then
-- self.groupumberTemp.hpall = {}
-- self.groupumberTemp.hpall.hp = res.Data.hp_num1 + res.Data.otherHp
-- self.groupumberTemp.hpall.total_member = res.Data.member_num
-- self:InsertTableRecord(1, self.groupumberTemp)
-- self._selectedLev = 1
-- self._selectIndex = 1
-- self._selectIndexList[self._selectedLev] = self._selectIndex
-- self:LevGetRecordData(0, self.groupumberTemp)
-- else
-- ViewUtil.ErrorTip(res.ReturnCode, "目标没有总线值")
-- end
-- end)
end
end)
end
@ -462,16 +480,52 @@ function M:MoreChanged(context, data)
if myInfo then
self:ChangedClear(data.lev)
ViewUtil:ShowModalWait()
if data.lev == 1 then
self._selectedLev = 1
self._selectIndex = data.index
self._selectIndexList[self._selectedLev] = self._selectIndex
self:LevGetRecordData(0, myInfo)
if self.ctr_search.selectedIndex == 1 then
local time_type = self._view:GetController("type").selectedIndex
if self.begin_time ~= nil and self.end_time ~= nil then
time_type = 0
end
local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_FindPartnerStat(
self.group_id,
myInfo.uid, 0, 6, time_type, self.begin_time, self.end_time,
function(res)
-- printlog("aaaaaaaaaaaaaaaa22222222222222222222222222222")
-- pt(res)
ViewUtil.CloseModalWait()
if self._is_destroy then
return
end
if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, '找不到成员')
else
if not res.Data.members or #res.Data.members == 0 then
ViewUtil.ErrorTip(res.ReturnCode, '找不到成员')
return
end
self.ctr_search.selectedIndex = 1
self:ChangedClear(0)
self:InitListRecordFind()
self:InsertTableRecord(1, res.Data.members[1])
self._selectedLev = 1
self._selectIndex = 1
self._selectIndexList[self._selectedLev] = self._selectIndex
self:GetAllRecordData(0, { lev = 1, index = 1 })
end
end
)
else
self._selectedLev = data.lev
self._selectIndex = data.index
self._selectIndexList[self._selectedLev] = self._selectIndex
self:GetAllRecordData(0, data)
if data.lev == 1 then
self._selectedLev = 1
self._selectIndex = data.index
self._selectIndexList[self._selectedLev] = self._selectIndex
self:LevGetRecordData(0, myInfo)
else
self._selectedLev = data.lev
self._selectIndex = data.index
self._selectIndexList[self._selectedLev] = self._selectIndex
self:GetAllRecordData(0, data)
end
end
else
ViewUtil.ErrorTip(nil, "统计页面失效,请重新打开")
@ -538,12 +592,12 @@ end
---@param index number 递归开始下标默认传0
---@param data table 自己拼接的信息lev为点击数据所在的层级index为点击数据所在的索引
function M:GetNumberRecord(index, data)
ViewUtil.ShowModalWait("正在获取成员中")
local time_type = self._view:GetController("type").selectedIndex
if self.begin_time ~= nil and self.end_time ~= nil then
time_type = 0
end
local myInfo = self._data_record[data.lev][data.index]
ViewUtil.ShowModalWait("正在获取成员中")
local fatherInfo
if self.ctr_search.selectedIndex == 1 then
fatherInfo = {}

View File

@ -2,72 +2,66 @@
"libview.firstColumnWidth": 522,
"libview.iconScale": 0,
"doc.openedDocs": [
"ui://m7iejg46ilon7ias",
"ui://m7iejg46ilon7ia2",
"ui://m7iejg46cvc87i5y",
"ui://m7iejg46r0qx7i6u",
"ui://27vd145bcvc87i5t",
"ui://m7iejg46ruljhmp",
"ui://m7iejg46r96th8e",
"ui://m7iejg4610xl7i1w",
"ui://m7iejg46qlxihsl",
"ui://m7iejg46kwi0hld",
"ui://m7iejg46kwi0hmb",
"ui://m7iejg46kwi0hk0",
"ui://m7iejg46qlxihsm",
"ui://m7iejg46ilon7i9k",
"ui://m7iejg46kwdo7i97",
"ui://m7iejg468h207i99",
"ui://m7iejg46nwgkhx0",
"ui://m7iejg46nwgkhx2",
"ui://m7iejg46kk3uhro",
"ui://m7iejg46l7wn7i83",
"ui://m7iejg46tqi8hwa",
"ui://m7iejg46f6brhwx",
"ui://m7iejg46imp57ih3",
"ui://m7iejg46imp57igy",
"ui://m7iejg46ilon7ibl",
"ui://2d9xdj6zab5pciv",
"ui://2d9xdj6zab5pcji",
"ui://2d9xdj6znld2cjm",
"ui://m7iejg46hsbhhjn",
"ui://m7iejg46imp57ihp",
"ui://m7iejg46f6brhww",
"ui://m7iejg46t1hqhxw",
"ui://2d9xdj6zlumrgj",
"ui://2d9xdj6znlwcgk",
"ui://2d9xdj6zl0lzb",
"ui://m7iejg4610snh5j",
"ui://2d9xdj6zfn7fao",
"ui://lx6k641gajzhoe",
"ui://lkq9ne9speuqbv",
"ui://m7iejg46kk3uhrs",
"ui://m7iejg46z3847i6r",
"ui://m7iejg46z3847i6m",
"ui://m7iejg46kwi0hkr"
"ui://v0j9abjygq7m8f",
"ui://v0j9abjygq7med",
"ui://1utjt0r2ufu92i",
"ui://lkq9ne9speuq20",
"ui://v0j9abjygq7mdk",
"ui://v0j9abjynlefsr",
"ui://9n9stu2eprgzf0",
"ui://9n9stu2eprgzab",
"ui://9n9stu2ethxkcit",
"ui://9n9stu2ethxkcis",
"ui://9n9stu2eprgzee",
"ui://27vd145b7jqkcdl",
"ui://27vd145bhznkce2",
"ui://egnzysm7ffp3c5",
"ui://1utjt0r2ufu980",
"ui://9n9stu2eprgz88",
"ui://vplxondscioehnx",
"ui://niy3ldiwl9mn2s",
"ui://z3z0ysurajif77",
"ui://eyxz924gffp33y",
"ui://v0j9abjygq7m8k",
"ui://v0j9abjygq7m74",
"ui://v0j9abjygq7mh2",
"ui://4skil1l6bw4ggk",
"ui://4skil1l6dzx8118",
"ui://lkq9ne9speuq5a",
"ui://yzaioi79f55qvx",
"ui://yzaioi79seby1av",
"ui://v6yvqp7wf55qvx",
"ui://9n9stu2eprgz89",
"ui://9n9stu2em9jaha",
"ui://9n9stu2ehxjccif"
],
"test.device": "720p Phone",
"canvasColor": 10066329,
"auxline2": true,
"doc.activeDoc": "ui://m7iejg46f6brhww",
"doc.activeDoc": "ui://vplxondscioehnx",
"libview.twoColumn": false,
"libview.expandedNodes": [
"27vd145b",
"442j0uep",
"/",
"27vd145b",
"/buttons/",
"27vd145b",
"/font/",
"27vd145b",
"/font/images/",
"27vd145b",
"/font/images/btn_keyboard/",
"27vd145b",
"/font/images/win/",
"m7iejg46",
"442j0uep",
"/component/",
"9n9stu2e",
"/",
"m7iejg46",
"/mgr/"
"9n9stu2e",
"/component/",
"9n9stu2e",
"/component/Result/",
"9n9stu2e",
"/image/",
"9n9stu2e",
"/image/btn/",
"lkq9ne9s",
"/",
"lkq9ne9s",
"/component/",
"lkq9ne9s",
"/component/clearing/"
],
"auxline1": true,
"snapToGrid": true,