LogSystemForm.cs 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. using UnityEngine;
  2. using UnityEngine.UI;
  3. using QFramework;
  4. using ChivaXR;
  5. using UnityEngine.PlayerLoop;
  6. namespace QFramework
  7. {
  8. public class LogSystemFormData : UIPanelData
  9. {
  10. }
  11. public partial class LogSystemForm : UIPanel
  12. {
  13. protected override void OnInit(IUIData uiData = null)
  14. {
  15. mData = uiData as LogSystemFormData ?? new LogSystemFormData();
  16. ScrollView.gameObject.SetActive(false);
  17. ProcessManagement.Instance.processElementDisActiveEvent += OnPrcessElementDisActive;
  18. }
  19. protected override void OnOpen(IUIData uiData = null)
  20. {
  21. }
  22. protected override void OnShow()
  23. {
  24. }
  25. protected override void OnHide()
  26. {
  27. ScrollView.gameObject.SetActive(false);
  28. }
  29. protected override void OnClose()
  30. {
  31. ProcessManagement.Instance.processElementDisActiveEvent -= OnPrcessElementDisActive;
  32. }
  33. public void SetLogState(bool state)
  34. {
  35. ScrollView.gameObject.SetActive(state);
  36. if (state)
  37. {
  38. SetTipPointState(false);
  39. }
  40. }
  41. public void AddCurrentStepLog(string logType)
  42. {
  43. StepListProxy tmpStepListProxy = DAL.Instance.Get<StepListProxy>();
  44. OperationStepDataInfo tmpOperationStepDataInfo = tmpStepListProxy.GetOperationStepDataInfoById(ProcessManagement.Instance.currentStepID);
  45. AddLogItem(tmpOperationStepDataInfo, logType);
  46. if (ScrollView.gameObject.activeSelf)
  47. {
  48. SetTipPointState(false);
  49. }else
  50. {
  51. SetTipPointState(true);
  52. }
  53. }
  54. /// <summary>
  55. /// Ìí¼ÓÈÕÖ¾
  56. /// </summary>
  57. private void AddLogItem(OperationStepDataInfo operationStepDataInfo,string logType)
  58. {
  59. GameObject tmpObj = Instantiate(LogItem.gameObject, Content);
  60. LogItem tmpLogItem = tmpObj.GetComponent<LogItem>();
  61. tmpLogItem.InitData(operationStepDataInfo, logType);
  62. tmpObj.SetActive(true);
  63. LayoutRebuilder.ForceRebuildLayoutImmediate(Content);
  64. ScrollView.verticalNormalizedPosition = 0;
  65. }
  66. private void OnPrcessElementDisActive(ProcessElement processElement)
  67. {
  68. AddCurrentStepLog("²Ù×÷²½Öè");
  69. }
  70. public void SetTipPointState(bool state)
  71. {
  72. PC_OperatePanel tmpOperatePanel = UIKit.GetPanel<PC_OperatePanel>();
  73. tmpOperatePanel.OperateStep.OperateLogBtn.transform.Find("TipPoint").gameObject.SetActive(state);
  74. }
  75. }
  76. }