コード例 #1
0
 public void CustomizeBackButtonContainerRectTransform <T>(T value, CustomizerDelegate <RectTransform, T> customizerDelegate)
 {
     foreach (AbstractPanel panel in m_Panels)
     {
         CustomizeComponent(panel.actionBar.backButton?.GetComponent <RectTransform>(), value, customizerDelegate);
     }
 }
コード例 #2
0
 public void CustomizeSecondaryActionBtnImage <T>(T value, CustomizerDelegate <Image, T> customizerDelegate)
 {
     foreach (AbstractPanel panel in m_Panels)
     {
         CustomizeComponent(panel.secondaryActionFooter?.secondaryActionButton?.GetComponent <Image>(), value, customizerDelegate);
     }
 }
コード例 #3
0
 public void CustomizeActionBarTitleText <T>(T value, CustomizerDelegate <TextMeshProUGUI, T> customizerDelegate)
 {
     foreach (AbstractPanel panel in m_Panels)
     {
         CustomizeComponent(panel.actionBar?.title?.GetComponent <TextMeshProUGUI>(), value, customizerDelegate);
     }
 }
コード例 #4
0
 public void CustomizeActionBarSeparationLineImage <T>(T value, CustomizerDelegate <Image, T> customizerDelegate)
 {
     foreach (AbstractPanel panel in m_Panels)
     {
         CustomizeComponent(panel.actionBar.separationLine.GetComponent <Image>(), value, customizerDelegate);
     }
 }
コード例 #5
0
        // Vertical Layout

        public void CustomizeVerticalLayoutGroupSpacing <T>(T value, CustomizerDelegate <VerticalLayoutGroup, T> customizerDelegate)
        {
            foreach (VerticalLayoutGroup verticalLayoutGroup in m_MainController.GetComponentsInChildren <VerticalLayoutGroup>())
            {
                CustomizeComponent(verticalLayoutGroup, value, customizerDelegate);
            }
        }
コード例 #6
0
        // Providers Login Btn

        public void CustomizeProvidersLoginBtnRectTransform <T>(T value, CustomizerDelegate <RectTransform, T> customizerDelegate)
        {
            SignInPanel  signinPanel  = m_MainController.GetComponentInChildren <SignInPanel>();
            AccountPanel accountPanel = m_MainController.GetComponentInChildren <AccountPanel>();

            // buttons in signin panel (email and anonymous sign in)
            foreach (GameObject obj in signinPanel.genericProviderButtonsList)
            {
                CustomizeComponent(obj.GetComponent <RectTransform>(), value, customizerDelegate);
            }

            // providers button
            foreach (var provider in PlayerIdentityManager.Current.loginProviders)
            {
                CustomizeComponent(provider.GetButton().GetComponent <RectTransform>(), value, customizerDelegate);
            }

            // we only customize all the prefabs and not the instantiated providers button
            // we dont need this call only on playmode since the providers button are only instantiated during runtime
            if (EditorApplication.isPlaying)
            {
                signinPanel.ReBuildProvidersList();
                accountPanel.UpdatePanel();
            }
        }
コード例 #7
0
        // Panel Background

        public void CustomizePanelBgImage <T>(T value, CustomizerDelegate <Image, T> customizerDelegate)
        {
            foreach (AbstractPanel panel in m_Panels)
            {
                CustomizeComponent(panel.GetComponent <Image>(), value, customizerDelegate);
            }
        }
コード例 #8
0
        // General Font

        public void CustomizeAllText <T>(T value, CustomizerDelegate <TextMeshProUGUI, T> customizerDelegate)
        {
            foreach (TextMeshProUGUI textComponent in m_MainController.GetComponentsInChildren <TextMeshProUGUI>())
            {
                CustomizeComponent(textComponent, value, customizerDelegate);
            }
        }
コード例 #9
0
 public void CustomizeInputFieldRectTransform <T>(T value, CustomizerDelegate <RectTransform, T> customizerDelegate)
 {
     foreach (TMP_InputField inputField in m_MainController.GetComponentsInChildren <TMP_InputField>())
     {
         CustomizeComponent(inputField.GetComponent <RectTransform>(), value, customizerDelegate);
     }
 }
コード例 #10
0
 public void CustomizeInputFieldPlaceHolderText <T>(T value, CustomizerDelegate <TextMeshProUGUI, T> customizerDelegate)
 {
     foreach (TMP_InputField inputField in m_MainController.GetComponentsInChildren <TMP_InputField>())
     {
         CustomizeComponent(inputField.placeholder as TextMeshProUGUI, value, customizerDelegate);
     }
 }
コード例 #11
0
        // Input Field

        public void CustomizeInputFieldImage <T>(T value, CustomizerDelegate <Image, T> customizerDelegate)
        {
            foreach (TMP_InputField inputField in m_MainController.GetComponentsInChildren <TMP_InputField>())
            {
                CustomizeComponent(inputField.GetComponent <Image>(), value, customizerDelegate);
            }
        }
コード例 #12
0
 public void CustomizeSecondaryActionBtnText <T>(T value, CustomizerDelegate <TextMeshProUGUI, T> customizerDelegate)
 {
     foreach (AbstractPanel panel in m_Panels)
     {
         CustomizeComponent(panel.secondaryActionFooter?.secondaryActionButton?.GetComponentInChildren <TextMeshProUGUI>(), value, customizerDelegate);
     }
 }
コード例 #13
0
 public void CustomizeActionBarBackgroundImage <T>(T value, CustomizerDelegate <Image, T> customizerDelegate)
 {
     foreach (AbstractPanel panel in m_Panels)
     {
         CustomizeComponent(panel.actionBar?.content?.GetComponent <Image>(), value, customizerDelegate);
     }
 }
コード例 #14
0
 public void CustomizeBackBtnImage <T>(T value, CustomizerDelegate <Image, T> customizerDelegate)
 {
     // we want the back button image itself and not the image used for managing the hitbox as a raycast target
     foreach (AbstractPanel panel in m_Panels)
     {
         CustomizeComponent(panel.actionBar.backButton?.GetComponentsInChildren <Image>()[1], value, customizerDelegate);
     }
 }
コード例 #15
0
 public void CustomizeBackButtonRectTransform <T>(T value, CustomizerDelegate <RectTransform, T> customizerDelegate)
 {
     // we want the close button rectTransform and not the rectTransform used for managing the hitbox as a raycast target
     foreach (AbstractPanel panel in m_Panels)
     {
         CustomizeComponent(panel.actionBar.backButton?.GetComponentsInChildren <RectTransform>()[1], value, customizerDelegate);
     }
 }
コード例 #16
0
 public void CustomizePrimaryActionBtnImageColor <T>(T value, CustomizerDelegate <Button, T> customizerDelegate)
 {
     foreach (AbstractPanel panel in m_Panels)
     {
         foreach (Button btn in panel.GetComponentsInChildren <UI.PrimaryActionButton>())
         {
             CustomizeComponent(btn, value, customizerDelegate);
         }
     }
 }
コード例 #17
0
 public void CustomizePrimaryActionBtnText <T>(T value, CustomizerDelegate <TextMeshProUGUI, T> customizerDelegate)
 {
     foreach (AbstractPanel panel in m_Panels)
     {
         foreach (Button btn in panel.GetComponentsInChildren <UI.PrimaryActionButton>())
         {
             CustomizeComponent(btn.GetComponentInChildren <TextMeshProUGUI>(), value, customizerDelegate);
         }
     }
 }
コード例 #18
0
 public void CustomizePrimaryActionBtnRectTransform <T>(T value, CustomizerDelegate <RectTransform, T> customizerDelegate)
 {
     foreach (AbstractPanel panel in m_Panels)
     {
         foreach (Button btn in panel.GetComponentsInChildren <UI.PrimaryActionButton>())
         {
             CustomizeComponent(btn.GetComponent <RectTransform>(), value, customizerDelegate);
         }
     }
 }
コード例 #19
0
        // Secondary Action Footer

        public void CustomizeFooterSeparationLineImage <T>(T value, CustomizerDelegate <Image, T> customizerDelegate)
        {
            foreach (AbstractPanel panel in m_Panels)
            {
                if (panel.secondaryActionFooter?.separationLine != null)
                {
                    CustomizeComponent(panel.secondaryActionFooter?.separationLine.GetComponent <Image>(), value, customizerDelegate);
                }
            }
        }
コード例 #20
0
 public void CustomizeSecondaryActionBtnHeight <T>(T value, CustomizerDelegate <RectTransform, T> customizerDelegate)
 {
     foreach (AbstractPanel panel in m_Panels)
     {
         Button btn = panel.secondaryActionFooter?.secondaryActionButton;
         if (btn != null)
         {
             CustomizeComponent(btn.GetComponent <RectTransform>(), value, customizerDelegate);
             UpdateContainerHeight(value, panel.secondaryActionFooter?.rectTransform, panel.secondaryActionFooter?.separationLine as RectTransform);
         }
     }
 }
コード例 #21
0
        // Action Bar

        public void CustomizeActionBarHeight <T>(T value, CustomizerDelegate <RectTransform, T> customizerDelegate)
        {
            foreach (AbstractPanel panel in m_Panels)
            {
                RectTransform content = panel.actionBar?.content;
                if (content != null)
                {
                    CustomizeComponent(content, value, customizerDelegate);
                    UpdateContainerHeight(value, panel.actionBar?.container, panel.actionBar?.separationLine as RectTransform);
                }
            }
        }
コード例 #22
0
 public void CustomizeFooterSeparationLineHeight <T>(T value, CustomizerDelegate <RectTransform, T> customizerDelegate)
 {
     foreach (AbstractPanel panel in m_Panels)
     {
         Transform line = panel.secondaryActionFooter?.separationLine;
         if (line != null)
         {
             CustomizeComponent(line.GetComponent <RectTransform>(), value, customizerDelegate);
             UpdateContainerHeight(value, panel.secondaryActionFooter.rectTransform, panel.secondaryActionFooter.secondaryActionButton.GetComponent <RectTransform>());
         }
     }
 }
コード例 #23
0
        private void CustomizeComponent <T, U>(T component, U customizableValue, CustomizerDelegate <T, U> customizerDelegate)
        {
            if (component == null)
            {
                return;
            }

            Object componentObject = component as Object;

            Undo.RecordObject(componentObject, "Customize Component");

            customizerDelegate(component, customizableValue);

            PrefabUtility.RecordPrefabInstancePropertyModifications(componentObject);

            if (PrefabStageUtility.GetCurrentPrefabStage() != null)
            {
                EditorSceneManager.MarkSceneDirty(gameObject.scene);
            }
        }
コード例 #24
0
 public void CustomizePanelBgRectTransform <T>(T value, CustomizerDelegate <RectTransform, T> customizerDelegate)
 {
     CustomizeComponent(m_MainController.PanelController.transform as RectTransform, value, customizerDelegate);
 }
コード例 #25
0
 public void CustomizeInfoText <T>(T value, CustomizerDelegate <TextMeshProUGUI, T> customizerDelegate)
 {
     CustomizeComponent(m_MainController.PopupController.infoPopup.GetComponentInChildren <TextMeshProUGUI>(), value, customizerDelegate);
 }
コード例 #26
0
 public void CustomizeInfoPopupImage <T>(T value, CustomizerDelegate <Image, T> customizerDelegate)
 {
     CustomizeComponent(m_MainController.PopupController.infoPopup.GetComponent <Image>(), value, customizerDelegate);
 }
コード例 #27
0
        // Popup

        public void CustomizePopupOptions <T>(T value, CustomizerDelegate <PopupController, T> customizerDelegate)
        {
            CustomizeComponent(m_MainController.PopupController, value, customizerDelegate);
        }