public MainWindow() { InitializeComponent(); _messageBoxManager = JhMessageBox.GetNewInstance("Invensys", "JhMessageBoxTestApp"); rbUserMistake.IsChecked = true; _viewModel = MsgBoxViewModel.The; DataContext = _viewModel; Loaded += new RoutedEventHandler(MainWindow_Loaded); }
public static JhMessageBox GetNewInstance(System.Windows.Application ownerApplication) { var newMessageBoxManager = new JhMessageBox(); newMessageBoxManager._ownerApplication = ownerApplication; newMessageBoxManager._captionPrefix = newMessageBoxManager.GetAReasonableTitlebarPrefix(); return newMessageBoxManager; }
/// <summary> /// Get a new instance of a JhMessageBox (which is an IInterlocution), /// given the text to use as a prefix for all captions. /// </summary> /// <param name="vendorName">the name of the business-entity that owns this application, which is included within the caption for all message-boxes</param> /// <param name="productName">the name of this application, which is included within the caption for all message-boxes</param> /// <returns>a new instance of JhMessageBox for use in your application</returns> public static JhMessageBox GetNewInstance(string vendorName, string productName) { if (String.IsNullOrWhiteSpace(vendorName)) { throw new ArgumentException("You must supply a value for vendorName - this is part of the mandatory title-bar prefix."); } if (String.IsNullOrWhiteSpace(productName)) { throw new ArgumentException("productName."); } var newMessageBoxManager = new JhMessageBox(); string titlebarPrefix = vendorName + " " + productName; newMessageBoxManager._captionPrefix = titlebarPrefix; return newMessageBoxManager; }
public static JhMessageBoxViewModel GetInstance(JhMessageBox manager, JhMessageBoxOptions options) { _theInstance = new JhMessageBoxViewModel(manager, options); return _theInstance; }
public JhMessageBoxViewModel(JhMessageBox manager, JhMessageBoxOptions options) { _options = options; DetailText = options.DetailText; SummaryText = options.SummaryText; // If there is no caption, then just put the caption-prefix without the spacer. if (String.IsNullOrWhiteSpace(options.CaptionAfterPrefix)) { if (String.IsNullOrWhiteSpace(options.CaptionPrefix)) { Title = manager.CaptionPrefix; } else { Title = options.CaptionPrefix; } } else { if (String.IsNullOrWhiteSpace(options.CaptionPrefix)) { Title = manager.CaptionPrefix + ": " + options.CaptionAfterPrefix; } else { Title = options.CaptionPrefix + ": " + options.CaptionAfterPrefix; } } }
/// <summary> /// Create a new JhMessageBoxWindow, with the given options if non-null - otherwise use the DefaultOptions. /// </summary> /// <param name="options">The options to use for this particular message-box invocation. Leave this null to use the DefaultOptions.</param> public JhMessageBoxWindow(JhMessageBox mgr, JhMessageBoxOptions options = null) { //Console.WriteLine("JhMessageBoxWindow ctor, with options.BackgroundTexture = " + options.BackgroundTexture.ToString()); _manager = mgr; // _options has to be set before InitializeComponent, since that causes properties to be bound, and hence the DataContext creates it's view-model. if (options == null) { _options = mgr.DefaultOptions; } else { _options = options; } _viewModel = JhMessageBoxViewModel.GetInstance(mgr, _options); InitializeComponent(); // Ensure the timeout value isn't ridiculously high (as when the caller mistakenly thinks it's in milliseconds). // Use the constant upper-limit value to test it against. if (_options.TimeoutPeriodInSeconds > JhMessageBoxOptions.MaximumTimeoutPeriodInSeconds) { _options.TimeoutPeriodInSeconds = JhMessageBoxOptions.GetDefaultTimeoutValueFor(_options.MessageType); } if (_options.IsToCenterOverParent) { this.WindowStartupLocation = System.Windows.WindowStartupLocation.CenterOwner; } // If the option to use custom styles for the buttons is turned off, then set these button styles to null // so that they do not inherit the styles of the parent application. if (!_options.IsCustomButtonStyles) { btnCancel.Style = btnClose.Style = btnNo.Style = btnOk.Style = btnRetry.Style = btnYes.Style = btnIgnore.Style = null; } #if SILVERLIGHT _viewModel.CopyCommand = new RelayCommand( () => OnCopyCommandExecuted() ); _viewModel.StayCommand = new RelayCommand( () => OnStayCommandExecuted(), () => StayCommand_CanExecute() ); #else _viewModel.CopyCommand = new RelayCommand( (x) => OnCopyCommandExecuted() ); _viewModel.StayCommand = new RelayCommand( (x) => OnStayCommandExecuted(), (x) => StayCommand_CanExecute() ); #endif Loaded += OnLoaded; #if SILVERLIGHT Closing += new EventHandler<System.ComponentModel.CancelEventArgs>(OnClosing); #else ContentRendered += OnContentRendered; Closing += new System.ComponentModel.CancelEventHandler(OnClosing); #endif }
/// <summary> /// Make a new JhMessageBoxTestFacility object with the default values. /// </summary> public JhMessageBoxTestFacility(JhMessageBox manager) { _messageBoxManager = manager; _isTesting = true; _isTimeoutsFast = true; }