예제 #1
0
 public MessageBox(string message, Action <MessageBoxResultEnum, object> result, string title, MessageBoxTypeEnum type,
                   MessageBoxButtonsEnum buttons,
                   MessageBoxButtonsDirectionEnum direction = MessageBoxButtonsDirectionEnum.Horizontal)
     : base(new Panel())
 {
     _message        = message;
     _buttonsType    = buttons;
     _direction      = direction;
     _messageBoxType = type;
     _result         = result;
     Title           = title;
 }
예제 #2
0
        public static MessageBox Show(string text, string caption, MessageBoxButtonsEnum buttons, MessageBoxIconEnum icon, MessageBoxDefaultButtonEnum defaultButton, MessageBoxCallback callback)
        {
            var r = new MessageBox();

            r.Centered       = true;
            r.Caption        = caption;
            r._buttons       = buttons;
            r._icon          = icon;
            r._defaultButton = defaultButton;
            r.Init();
            r._label.Value = text;
            r._callback    = callback;
            var root = (qxDotNet.UI.Container.Composite)Common.ApplicationState.Instance.GUI.GetRoot();

            r._host = root;
            root.Add(r);
            r.Open();
            return(r);
        }
예제 #3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="MessageBoxViewModel"/>.
        /// </summary>
        /// <param name="message">The message to display.</param>
        /// <param name="messageBoxButtons">The buttons to display.</param>
        /// <param name="copyToClipboardEnabled">Indicates whether to enable copy to clipboard.</param>
        public MessageBoxViewModel(Message message, MessageBoxButtonsEnum messageBoxButtons, bool copyToClipboardEnabled)
        {
            this.message = message;
            CopyToClipboardEnabled = copyToClipboardEnabled;

            switch (messageBoxButtons)
            {
                case MessageBoxButtonsEnum.Ok:
                    ButtonLeftVisible = false;
                    ButtonLeftText = String.Empty;
                    ButtonCentreVisible = true;
                    ButtonCentreText = OK;
                    ButtonRightVisible = false;
                    ButtonRightText = String.Empty;
                    break;
                case MessageBoxButtonsEnum.OkCancel:
                    ButtonLeftVisible = true;
                    ButtonLeftText = OK;
                    ButtonCentreVisible = false;
                    ButtonCentreText = String.Empty;
                    ButtonRightVisible = true;
                    ButtonRightText = CANCEL;
                    break;
                case MessageBoxButtonsEnum.YesNo:
                    ButtonLeftVisible = true;
                    ButtonLeftText = YES;
                    ButtonCentreVisible = false;
                    ButtonCentreText = String.Empty;
                    ButtonRightVisible = true;
                    ButtonRightText = NO;
                    break;
                case MessageBoxButtonsEnum.YesNoCancel:
                    ButtonLeftVisible = true;
                    ButtonLeftText = YES;
                    ButtonCentreVisible = true;
                    ButtonCentreText = NO;
                    ButtonRightVisible = true;
                    ButtonRightText = CANCEL;
                    break;
            }
        }
예제 #4
0
        public static void Show(string message, Action <MessageBoxResultEnum, object> resultAction = null,
                                string title = "Message", MessageBoxTypeEnum type = MessageBoxTypeEnum.Info,
                                MessageBoxButtonsEnum buttons            = MessageBoxButtonsEnum.Ok,
                                MessageBoxButtonsDirectionEnum direction = MessageBoxButtonsDirectionEnum.Horizontal)
        {
            int width = 0;

            ScoreboardContext.CurrentState.IsNavigating = true;
            MessageBox mb;
            int        minWidth = ScoreboardContext.Navigation.Current.Scoreboard.Size.Width / 2;

            width = message.Length > minWidth ? message.Length + 2 : minWidth;
            int left = ScoreboardContext.Navigation.Current.Scoreboard.Size.Width / 2 - width / 2;
            int top  = ScoreboardContext.Navigation.Current.Scoreboard.Size.Height / 2 - 4;

            left  = left < 0 ? 1 : left;
            top   = top < 0 ? 1 : top;
            width = width > ScoreboardContext.Navigation.Current.Scoreboard.Size.Width ?
                    ScoreboardContext.Navigation.Current.Scoreboard.Size.Width - 2 :
                    width;
            mb = new MessageBox(message, resultAction, title, type, buttons, direction)
            {
                BackgroundColor       = GetBackgroundColor(type),
                ForegroundColor       = GetForegroundColor(type),
                BorderForegroundColor = GetForegroundColor(type),
                BorderBackgroundColor = GetBackgroundColor(type),
                Size = new Size
                {
                    Height = direction == MessageBoxButtonsDirectionEnum.Horizontal ? 10 : 20,
                    Width  = width
                },
                Location = new Point
                {
                    Left = left,
                    Top  = top
                }
            };
            ScoreboardContext.Navigation.Navigate(mb);
            ScoreboardContext.RenderEngine.ConsoleAdapter.Beep();
        }
예제 #5
0
 public static MessageBox Show(string text, string caption, MessageBoxButtonsEnum buttons)
 {
     return(Show(text, caption, buttons, MessageBoxIconEnum.Information, MessageBoxDefaultButtonEnum.Button1, null));
 }
예제 #6
0
 public static MessageBox Show(string text, string caption, MessageBoxButtonsEnum buttons, MessageBoxIconEnum icon, MessageBoxCallback callback)
 {
     return(Show(text, caption, buttons, icon, MessageBoxDefaultButtonEnum.Button1, callback));
 }
예제 #7
0
 public static MessageBox Show(string text, string caption, MessageBoxButtonsEnum buttons, MessageBoxIconEnum icon, MessageBoxDefaultButtonEnum defaultButton)
 {
     return(Show(text, caption, buttons, icon, defaultButton, null));
 }