internal static void For(WorkspaceInfo workspaceInfo, WorkspaceWindow workspaceWindow, IMergeViewLauncher mergeViewLauncher, IGluonViewSwitcher gluonSwitcher, bool isGluonMode, bool isVisible, NotificationPanelData notificationPanelData) { GUILayout.BeginVertical(); GUILayout.FlexibleSpace(); var icon = Images.GetImage( notificationPanelData.NotificationStyle == NotificationPanelData.StyleType.Green ? Images.Name.DownloadIconGreen : Images.Name.DownloadIconRed); GUILayout.Label(icon, GUILayout.Height(16), GUILayout.Width(16)); GUILayout.FlexibleSpace(); GUILayout.EndVertical(); GUILayout.BeginVertical(); GUILayout.FlexibleSpace(); GUIStyle labelStyle = new GUIStyle(EditorStyles.label); labelStyle.fontStyle = FontStyle.Bold; GUILayout.Label(notificationPanelData.InfoText, labelStyle); GUILayout.FlexibleSpace(); GUILayout.EndVertical(); GUILayout.BeginVertical(); GUILayout.FlexibleSpace(); GUIStyle buttonStyle = new GUIStyle(EditorStyles.miniButtonLeft); buttonStyle.fixedWidth = 60; DoActionButton( workspaceInfo, workspaceWindow, mergeViewLauncher, gluonSwitcher, isGluonMode, notificationPanelData.HasUpdateAction, new GUIContent( notificationPanelData.ActionText, notificationPanelData.TooltipText), buttonStyle); GUILayout.FlexibleSpace(); GUILayout.EndVertical(); }
internal static void ForMode( WorkspaceInfo workspaceInfo, bool isGluonMode, bool isIncomingChangesVisible, bool isVisible, NotificationPanelData notificationPanelData) { if (!isVisible) { return; } if (isIncomingChangesVisible) { return; } if (isGluonMode) { return; } GUIContent labelContent = new GUIContent( notificationPanelData.InfoText, notificationPanelData.TooltipText); GUIContent buttonContent = new GUIContent( notificationPanelData.ActionText, notificationPanelData.TooltipText); float panelWidth = DrawIncomingChangesNotificationPanel.GetPanelWidth( labelContent, buttonContent, UnityStyles.Notification.Label, EditorStyles.miniButton); EditorGUILayout.BeginHorizontal( UnityStyles.Notification.GreenNotification, GUILayout.Width(panelWidth)); GUILayout.Label(labelContent, UnityStyles.Notification.Label); DoActionButton(workspaceInfo, buttonContent, EditorStyles.miniButton); EditorGUILayout.EndHorizontal(); }
internal static void ForMode( WorkspaceInfo workspaceInfo, WorkspaceWindow workspaceWindow, IMergeViewLauncher mergeViewLauncher, IGluonViewSwitcher gluonSwitcher, bool isGluonMode, bool isVisible, NotificationPanelData notificationPanelData) { if (!isVisible) { return; } GUIContent labelContent = new GUIContent( notificationPanelData.InfoText, notificationPanelData.TooltipText); GUIContent buttonContent = new GUIContent( notificationPanelData.ActionText, notificationPanelData.TooltipText); float panelWidth = GetPanelWidth( labelContent, buttonContent, UnityStyles.Notification.Label, EditorStyles.miniButton); EditorGUILayout.BeginHorizontal( GetStyle(notificationPanelData.NotificationStyle), GUILayout.Width(panelWidth)); GUILayout.Label(labelContent, UnityStyles.Notification.Label); DoActionButton( workspaceInfo, workspaceWindow, mergeViewLauncher, gluonSwitcher, isGluonMode, notificationPanelData.HasUpdateAction, buttonContent, EditorStyles.miniButton); EditorGUILayout.EndHorizontal(); }