2.4 KiB
2.4 KiB
Content/UIAssets/MapEnvironments/Prop/WBP_MapEnvironmentSelectPropPopupView
搜索逻辑:
private ChangeSource(source: number/**@cpp:int*/): void {
this.curSelect = null;
MapEnvironmentSetting.SelectPropType = source;
this.widget.List.ClearListItems();
this.widget.List.BP_ClearSelection();
this.widget.Effect.SetVisibility((source == UE.EScenePropType.Item || source == UE.EScenePropType.LiveLink)? UE.ESlateVisibility.Visible: UE.ESlateVisibility.Collapsed);
let colorNormal = new UE.LinearColor(0, 0, 0, 0);
let colorSelect = new UE.LinearColor(73/255, 73/255, 73/255, 1);
for (let index = 0; index < this.btnBgs.Num(); index++) {
const element = this.btnBgs.GetRef(index);
element.SetBrushColor(index == source? colorSelect: colorNormal);
}
if (this.manager == null) {
return
}
let search =this.widget.SearchBox.GetText();
let assets = this.manager.AssetManager.AllScenePropAssetList
for (let index = 0; index < assets.Num(); index++) {
const element = assets.GetRef(index);
if (element.PropType === source) {
if (search === "" || element.DisplayName.includes(search)) {
this.widget.List.AddItem(element);
}
}
}
}
- WBP_AreaSelectPopupView
- WBP_MapEnvironmentSingleSelectItemView
private SetSelectLevel(levelData: UE.MapEnvironmentLevelItem): void {
this.curSelectLevelName = levelData.LevelData.LevelName;
this.curSelectAreaName = "";
this.curSelectAreaGuid = new UE.Guid();
this.bAreaIsDynamic = false;
this.widget.AreaList.ClearListItems();
this.widget.AreaList.BP_ClearSelection();
let areas = levelData.LevelData.Areas;
// let selectIdx = -1;
for (let i = 0; i < areas.Num(); i++) {
const area = areas.GetRef(i);
let data = new UE.MapEnvironmentAreaItem();
data.AreaData = area;
this.widget.AreaList.AddItem(data);
// if (DirectorCamUtil.IsGuidEqual(area.UUID, this.curSelectAreaGuid)) {
// selectIdx = i;
// }
}
// if (selectIdx >= 0) {
// this.widget.AreaList.SetSelectedIndex(selectIdx);
// }
this.RefreshDynamicBtn();
}