Beispiel #1
0
    public override void OnInspectorGUI()
    {
        HelpshiftConfig helpshiftConfig = HelpshiftConfig.Instance;

        EditorGUILayout.LabelField("Install Time Configurations");
        EditorGUILayout.HelpBox("1) Add the Unity game object which will respond to Helpshift callbacks", MessageType.None);
        helpshiftConfig.UnityGameObject = EditorGUILayout.TextField(helpshiftConfig.UnityGameObject);
        EditorGUILayout.HelpBox("2) Filename of the notification icon which you want to display in the notification center. (Android only)", MessageType.None);
        helpshiftConfig.NotificationIcon = EditorGUILayout.TextField(helpshiftConfig.NotificationIcon);
        EditorGUILayout.HelpBox("3) Filename of the notification sound file which you want to use for Helpshift notifications. (Android only)", MessageType.None);
        helpshiftConfig.NotificationSound = EditorGUILayout.TextField(helpshiftConfig.NotificationSound);

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(apiKeyLabel);
        helpshiftConfig.ApiKey = EditorGUILayout.TextField(helpshiftConfig.ApiKey);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(domainNameLabel);
        helpshiftConfig.DomainName = EditorGUILayout.TextField(helpshiftConfig.DomainName);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(androidAppIdLabel);
        helpshiftConfig.AndroidAppId = EditorGUILayout.TextField(helpshiftConfig.AndroidAppId);
        EditorGUILayout.EndHorizontal();
        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(iOSAppIdLabel);
        helpshiftConfig.iOSAppId = EditorGUILayout.TextField(helpshiftConfig.iOSAppId);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.BeginHorizontal();
        helpshiftConfig.EnableInAppNotification = EditorGUILayout.ToggleLeft(enableInAppLabel, helpshiftConfig.EnableInAppNotification);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        helpshiftConfig.EnableDialogUIForTablets = EditorGUILayout.ToggleLeft(enableDialogUILabel, helpshiftConfig.EnableDialogUIForTablets);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        helpshiftConfig.EnableDefaultFallbackLanguage = EditorGUILayout.ToggleLeft(enableDefaultFallbackLabel, helpshiftConfig.EnableDefaultFallbackLanguage);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.Space();

        EditorGUILayout.LabelField("SDK Configurations");

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(enableContactUsLabel);
        EditorGUILayout.EndHorizontal();
        helpshiftConfig.ContactUs = EditorGUILayout.Popup(helpshiftConfig.ContactUs,
                                                          new string[] { "Always", "Never", "After viewing FAQs" });

        EditorGUILayout.Space();

        showHelpshiftConfig = EditorGUILayout.Foldout(showHelpshiftConfig, "SDK Configuration flags");
        if (showHelpshiftConfig)
        {
            helpshiftConfig.GotoConversation                   = EditorGUILayout.ToggleLeft(gotoConvLabel, helpshiftConfig.GotoConversation);
            helpshiftConfig.PresentFullScreenOniPad            = EditorGUILayout.ToggleLeft(presentFullScreenLabel, helpshiftConfig.PresentFullScreenOniPad);
            helpshiftConfig.RequireEmail                       = EditorGUILayout.ToggleLeft(requireEmailLabel, helpshiftConfig.RequireEmail);
            helpshiftConfig.HideNameAndEmail                   = EditorGUILayout.ToggleLeft(hideNameAndEmailLabel, helpshiftConfig.HideNameAndEmail);
            helpshiftConfig.EnablePrivacy                      = EditorGUILayout.ToggleLeft(enablePrivacyLabel, helpshiftConfig.EnablePrivacy);
            helpshiftConfig.ShowSearchOnNewConversation        = EditorGUILayout.ToggleLeft(showSearchLabel, helpshiftConfig.ShowSearchOnNewConversation);
            helpshiftConfig.ShowConversationResolutionQuestion = EditorGUILayout.ToggleLeft(showConversationResolutionLabel, helpshiftConfig.ShowConversationResolutionQuestion);
        }

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(conversationPrefillLabel);
        helpshiftConfig.ConversationPrefillText = EditorGUILayout.TextField(helpshiftConfig.ConversationPrefillText);
        EditorGUILayout.EndHorizontal();
    }
Beispiel #2
0
    public override void OnInspectorGUI()
    {
        HelpshiftConfig helpshiftConfig = HelpshiftConfig.Instance;

        EditorGUILayout.LabelField("Install Time Configurations");
        EditorGUILayout.HelpBox("1) Add the Unity game object which will respond to Helpshift callbacks", MessageType.None);
        helpshiftConfig.UnityGameObject = EditorGUILayout.TextField(helpshiftConfig.UnityGameObject);
        EditorGUILayout.HelpBox("2) Filename of the notification icon which you want to display in the notification center. (Android only)", MessageType.None);
        helpshiftConfig.NotificationIcon = EditorGUILayout.TextField(helpshiftConfig.NotificationIcon);
        EditorGUILayout.HelpBox("3) Filename of the large notification icon which you want to display in the notification center. (Android Only)", MessageType.None);
        helpshiftConfig.LargeNotificationIcon = EditorGUILayout.TextField(helpshiftConfig.LargeNotificationIcon);
        EditorGUILayout.HelpBox("4) Filename of the notification sound file which you want to use for Helpshift notifications. (Android only)", MessageType.None);
        helpshiftConfig.NotificationSound = EditorGUILayout.TextField(helpshiftConfig.NotificationSound);
        EditorGUILayout.HelpBox("5) Filename of the Custom Font (Path relative to \"assets\" folder) (Android only)", MessageType.None);
        helpshiftConfig.CustomFont = EditorGUILayout.TextField(helpshiftConfig.CustomFont);
        EditorGUILayout.HelpBox("6) Notification Channel ID for Support notifications (Android only)", MessageType.None);
        helpshiftConfig.SupportNotificationChannel = EditorGUILayout.TextField(helpshiftConfig.SupportNotificationChannel);
        EditorGUILayout.HelpBox("7) Notification Channel ID for Campaigns notifications (Android only)", MessageType.None);
        helpshiftConfig.CampaignsNotificationChannel = EditorGUILayout.TextField(helpshiftConfig.CampaignsNotificationChannel);

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(apiKeyLabel);
        helpshiftConfig.ApiKey = EditorGUILayout.TextField(helpshiftConfig.ApiKey);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(domainNameLabel);
        helpshiftConfig.DomainName = EditorGUILayout.TextField(helpshiftConfig.DomainName);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(androidAppIdLabel);
        helpshiftConfig.AndroidAppId = EditorGUILayout.TextField(helpshiftConfig.AndroidAppId);
        EditorGUILayout.EndHorizontal();
        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(iOSAppIdLabel);
        helpshiftConfig.iOSAppId = EditorGUILayout.TextField(helpshiftConfig.iOSAppId);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.BeginHorizontal();
        helpshiftConfig.EnableInAppNotification = EditorGUILayout.ToggleLeft(enableInAppNotificationLabel, helpshiftConfig.EnableInAppNotification);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        helpshiftConfig.EnableInboxPolling = EditorGUILayout.ToggleLeft(enableInboxPollingLabel, helpshiftConfig.EnableInboxPolling);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        helpshiftConfig.EnableLogging = EditorGUILayout.ToggleLeft(enableLoggingLabel, helpshiftConfig.EnableLogging);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        helpshiftConfig.EnableDefaultFallbackLanguage = EditorGUILayout.ToggleLeft(enableDefaultFallbackLabel, helpshiftConfig.EnableDefaultFallbackLanguage);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        helpshiftConfig.DisableEntryExitAnimations = EditorGUILayout.ToggleLeft(disableEntryExitAnimationsLabel, helpshiftConfig.DisableEntryExitAnimations);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(screenOrientationLabel);
        helpshiftConfig.ScreenOrientation = EditorGUILayout.IntField(helpshiftConfig.ScreenOrientation);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(supportedFileFormatsLabel);
        helpshiftConfig.SupportedFileFormats = EditorGUILayout.TextField(helpshiftConfig.SupportedFileFormats);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.Space();

        EditorGUILayout.LabelField("SDK Configurations");

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(enableContactUsLabel);
        EditorGUILayout.EndHorizontal();
        helpshiftConfig.ContactUs = EditorGUILayout.Popup(helpshiftConfig.ContactUs,
                                                          new string[] { "Always", "Never", "After viewing FAQs", "After marking answer unhelpful" });

        EditorGUILayout.Space();

        showHelpshiftConfig = EditorGUILayout.Foldout(showHelpshiftConfig, "SDK Configuration flags");
        if (showHelpshiftConfig)
        {
            helpshiftConfig.GotoConversation                   = EditorGUILayout.ToggleLeft(gotoConvLabel, helpshiftConfig.GotoConversation);
            helpshiftConfig.PresentFullScreenOniPad            = EditorGUILayout.ToggleLeft(presentFullScreenLabel, helpshiftConfig.PresentFullScreenOniPad);
            helpshiftConfig.RequireEmail                       = EditorGUILayout.ToggleLeft(requireEmailLabel, helpshiftConfig.RequireEmail);
            helpshiftConfig.HideNameAndEmail                   = EditorGUILayout.ToggleLeft(hideNameAndEmailLabel, helpshiftConfig.HideNameAndEmail);
            helpshiftConfig.EnablePrivacy                      = EditorGUILayout.ToggleLeft(enablePrivacyLabel, helpshiftConfig.EnablePrivacy);
            helpshiftConfig.ShowSearchOnNewConversation        = EditorGUILayout.ToggleLeft(showSearchLabel, helpshiftConfig.ShowSearchOnNewConversation);
            helpshiftConfig.ShowConversationResolutionQuestion = EditorGUILayout.ToggleLeft(showConversationResolutionLabel, helpshiftConfig.ShowConversationResolutionQuestion);
            helpshiftConfig.ShowConversationInfoScreen         = EditorGUILayout.ToggleLeft(showConversationInfoScreenLabel, helpshiftConfig.ShowConversationInfoScreen);
            helpshiftConfig.EnableTypingIndicator              = EditorGUILayout.ToggleLeft(enableTypingIndicatorLabel, helpshiftConfig.EnableTypingIndicator);
        }

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        EditorGUILayout.LabelField(conversationPrefillLabel);
        helpshiftConfig.ConversationPrefillText = EditorGUILayout.TextField(helpshiftConfig.ConversationPrefillText);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.Space();
        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal();
        if (GUILayout.Button("Save Config"))
        {
            helpshiftConfig.SaveConfig();
        }
        EditorGUILayout.EndHorizontal();
    }