public void ShowSlotItemCatalog() { var catalog = new SlotItemCatalogViewModel(); var message = new TransitionMessage(catalog, "Show/SlotItemCatalogWindow"); this.Messenger.RaiseAsync(message); }
public void ShowFleetWindow() { var fleetwd = new FleetWindowViewModel(); var message = new TransitionMessage(fleetwd, "Show/FleetWindow"); this.Messenger.RaiseAsync(message); }
public void Settings() { var binding = new MainWindowViewModel(); var message = new TransitionMessage(binding, ShowOptionWindowMessageKey); this.Messenger.Raise(message); }
/// <summary>設定画面を表示します。</summary> private void ShowSetting() { var vm = new SettingWindowViewModel(_modelCore.CharacterSetting); var message = new TransitionMessage(vm, "Show/SettingWindow"); Messenger.Raise(message); }
public void ExpeditionsCatalogWindow() { var catalog = new ExpeditionsCatalogWindowViewModel(); var message = new TransitionMessage(catalog, "Show/ExpeditionsCatalogWindow"); this.Messenger.RaiseAsync(message); }
public void ShowPreviewPopUp() { var window = new BattlePreviewsPopUpViewModel(); var message = new TransitionMessage(window, "Show/BattlePreviewsPopup"); this.Messenger.RaiseAsync(message); }
public void TransitToDetailWindow(int semanticLinkId) { var semanticLink = SemanticLinks.FirstOrDefault(s => s.SemanticLinkId == semanticLinkId); var message = new TransitionMessage(typeof(GraphWindow), new GraphWindowViewModel(semanticLink, _direction), TransitionMode.Normal); Messenger.Raise(message); }
public override void OnDataArrival(byte[] buffer) { try { CustomDataReader reader = new CustomDataReader(buffer); bool isRequest = reader.ReadBoolean(); int num = reader.ReadInt(); var guid = new Guid(reader.ReadBytes(num)); TransitionMessage message = SSyncCore.BuildMessage(reader.ReadBytes(reader.BytesAvailable)) as TransitionMessage; message.Guid = guid; if (SSyncCore.ShowProtocolMessage) { logger.Color2("Receive " + message.ToString()); } if (isRequest) { MessagePool.HandleRequest(this, message); } else { MessagePool.HandleAnswer(this, message); } } catch (Exception ex) { logger.Error(ex.ToString()); } }
public void ShowRefreshPopup() { var window = new RefreshPopupViewModel(); var message = new TransitionMessage(window, "Show/RefreshPopup"); this.Messenger.RaiseAsync(message); }
public void ShowNotePad() { var window = new NotePadViewModel(); var message = new TransitionMessage(window, "Show/NotePad"); this.Messenger.RaiseAsync(message); }
public void CalExp() { var catalog = new CalExpViewModel(); var message = new TransitionMessage(catalog, "Show/CalExp"); this.Messenger.RaiseAsync(message); }
public void ShowShipCatalog() { var catalog = new ShipCatalogWindowViewModel(); var message = new TransitionMessage(catalog, TransitionMode.Normal, "Show/ShipCatalogWindow"); this.Messenger.Raise(message); }
public void Close() { this.CanClose = true; var message = new TransitionMessage(this, "Close"); this.Messenger.Raise(message); }
/// <summary> /// 非同期で、任意の画面を、任意の形式で表示します。 /// </summary> /// <param name="self">ViewModel</param> /// <param name="vm">表示したい画面にバインドする ViewModel</param> /// <param name="mode">表示形式</param> /// <param name="messageKey">メッセージキー</param> /// <returns></returns> private async static Task <TransitionMessage> ShowTargetWindowAsync(ViewModel self, ViewModel vm, TransitionMode mode, string messageKey) { var msg = new TransitionMessage(vm, mode, messageKey); await self.Messenger.RaiseAsync(msg); return(msg); }
public void ShowRemodelWindow() { var catalog = new RemodelListWindowViewModel(); var message = new TransitionMessage(catalog, "Show/RemodelListWindow"); this.Messenger.RaiseAsync(message); }
public void ShowFleetWindow() { var fleetwd = new FleetWindowViewModel(); var message = new TransitionMessage(fleetwd, TransitionMode.Normal, "FleetWindow.Show"); this.Messenger.Raise(message); }
public void ShowMasterInfoModify() { var window = new MasterInfoModifyViewModel(); var message = new TransitionMessage(window, "Show/MasterInfoModify"); this.Messenger.RaiseAsync(message); }
/* コマンド、プロパティの定義にはそれぞれ * * lvcom : ViewModelCommand * lvcomn : ViewModelCommand(CanExecute無) * llcom : ListenerCommand(パラメータ有のコマンド) * llcomn : ListenerCommand(パラメータ有のコマンド・CanExecute無) * lprop : 変更通知プロパティ * lsprop : 変更通知プロパティ(ショートバージョン) * * を使用してください。 * * Modelが十分にリッチであるならコマンドにこだわる必要はありません。 * View側のコードビハインドを使用しないMVVMパターンの実装を行う場合でも、ViewModelにメソッドを定義し、 * LivetCallMethodActionなどから直接メソッドを呼び出してください。 * * ViewModelのコマンドを呼び出せるLivetのすべてのビヘイビア・トリガー・アクションは * 同様に直接ViewModelのメソッドを呼び出し可能です。 */ /* ViewModelからViewを操作したい場合は、View側のコードビハインド無で処理を行いたい場合は * Messengerプロパティからメッセージ(各種InteractionMessage)を発信する事を検討してください。 */ /* Modelからの変更通知などの各種イベントを受け取る場合は、PropertyChangedEventListenerや * CollectionChangedEventListenerを使うと便利です。各種ListenerはViewModelに定義されている * CompositeDisposableプロパティ(LivetCompositeDisposable型)に格納しておく事でイベント解放を容易に行えます。 * * ReactiveExtensionsなどを併用する場合は、ReactiveExtensionsのCompositeDisposableを * ViewModelのCompositeDisposableプロパティに格納しておくのを推奨します。 * * LivetのWindowテンプレートではViewのウィンドウが閉じる際にDataContextDisposeActionが動作するようになっており、 * ViewModelのDisposeが呼ばれCompositeDisposableプロパティに格納されたすべてのIDisposable型のインスタンスが解放されます。 * * ViewModelを使いまわしたい時などは、ViewからDataContextDisposeActionを取り除くか、発動のタイミングをずらす事で対応可能です。 */ /* UIDispatcherを操作する場合は、DispatcherHelperのメソッドを操作してください。 * UIDispatcher自体はApp.xaml.csでインスタンスを確保してあります。 * * LivetのViewModelではプロパティ変更通知(RaisePropertyChanged)やDispatcherCollectionを使ったコレクション変更通知は * 自動的にUIDispatcher上での通知に変換されます。変更通知に際してUIDispatcherを操作する必要はありません。 */ public void Initialize() { /* 初期画面にMypageを出力させる ゆうき */ var message = new TransitionMessage(typeof(Views.Mypage), new MainWindowViewModel(), TransitionMode.Modal, "ShowMypage"); Messenger.Raise(message); }
public void SendAllUnique(TransitionMessage message) { foreach (var server in this.m_servers) { server.SendUnique(message); } }
public void ShowNdockShipCatalog() { var catalog = new NeedNdockShipCatalogWindowViewModel(); var message = new TransitionMessage(catalog, "Show/NeedNdockShipCatalogWindow"); this.Messenger.RaiseAsync(message); }
public void ShowRelocatingSquadronsWindow() { var rsvm = new RelocatingSquadronsWindowViewModel(this.source); var message = new TransitionMessage(rsvm, TransitionMode.NewOrActive, "RelocatinSquadronsWindow.Show"); this.Messenger.Raise(message); }
public void Closing() { if (!this.CanClose) { var message = new TransitionMessage(this, "Show/ExitDialog"); this.Messenger.Raise(message); } }
/// <summary> /// 任意の画面を、任意の形式で表示します。 /// </summary> /// <param name="self">ViewModel</param> /// <param name="vm">表示したい画面にバインドする ViewModel</param> /// <param name="mode">表示形式</param> /// <param name="messageKey">メッセージキー</param> /// <returns></returns> private static TransitionMessage ShowTargetWindow(ViewModel self, ViewModel vm, TransitionMode mode, string messageKey) { var msg = new TransitionMessage(vm, mode, messageKey); self.Messenger.Raise(msg); return(msg); }
void Open() { var folderSelect = new FolderSelectWindowViewModel(); var message = new TransitionMessage(typeof(Views.FolderSelectWindow), folderSelect, TransitionMode.Modal); Messenger.Raise(message); FolderNumber = folderSelect.FolderNumber; SetFolder(); }
public ClosingResult ConfirmCloseProject() { var vm = new ClosingViewModel(); var message = new TransitionMessage(vm, "ConfirmClose"); Messenger.Raise(message); return(vm.Response); }
public void ProcessMessage(TransitionMessage message) { this.TimeoutTimer.Stop(); if (message is T) { this.Callback(message as T); } }
async Task<Models.Twitter> Authorize() { Process.Start(await authorizer.AuthorizeUri()); var config = new ConfigViewModel(); var message = new TransitionMessage(typeof(ConfigWindow), config, TransitionMode.Modal); await Messenger.RaiseAsync(message); return await authorizer.Authorize(config.PinCode); }
public void OpenDetailWindow() { var message = new TransitionMessage("Show/DetailWindow") { TransitionViewModel = new DetailViewModel() }; this.Messenger.Raise(message); }
public void ShowRanking() { var window = Application.Current.Windows.OfType <Window>().SingleOrDefault((w) => w.IsActive); window.Hide(); var showranking = new TransitionMessage(typeof(Views.Ranking), new RankingViewModel(), TransitionMode.Modal, "ShowRanking"); Messenger.Raise(showranking); }
public static void SendRequest <T>(TransitionClient client, TransitionMessage message, RequestCallbackDelegate <T> requestCallback, RequestCallbackErrorDelegate errorCallback = null) where T : TransitionMessage { lock (m_requests) { var messageRequest = new MessageRequest <T>(requestCallback, Guid.NewGuid(), errorCallback); m_requests.Add(messageRequest); client.Send(messageRequest.Guid, message, true); } }
public void ShowKeiziban() { var window = Application.Current.Windows.OfType <Window>().SingleOrDefault((w) => w.IsActive); window.Hide(); var showkeiziban = new TransitionMessage(typeof(Views.Keiziban), new KeizibanViewModel(), TransitionMode.Modal, "ShowKeiziban"); Messenger.Raise(showkeiziban); }
public static void HandleAnswer(TransitionClient client, TransitionMessage message) { lock (m_requests) { var request = m_requests.FirstOrDefault(x => x.Guid == message.Guid); request.ProcessMessage(message); m_requests.Remove(request); } }
void Open() { var folderSelect = new FolderSelectWindowViewModel(); var message = new TransitionMessage(typeof(Views.FolderSelectWindow), folderSelect, TransitionMode.Modal); Messenger.Raise(message); FolderName = DirectoryInfos.SelectedDirectoryName; ClearAttributeChecked(); VideoFormat = string.Empty; AudioFormat = string.Empty; }
private void AddAccount() { var auth = new AuthenticateViewModel(); var msg = new TransitionMessage(auth, "ShowAuth"); this.Messenger.Raise(msg); var ainfo = auth.GetAccountInfo(); if (auth.Success && ainfo != null) { if (AccountStorage.Contains(ainfo.ScreenName)) { this.Messenger.Raise(new InformationMessage("アカウント @" + ainfo.ScreenName + " は既に存在します。", "アカウント追加エラー", System.Windows.MessageBoxImage.Error, "Information")); } else { ShowAccountConfig(ainfo); AccountStorage.RegisterAccount(ainfo); UserInformationManager.ReceiveInidividualInfo(ainfo); } } }
public void OpenChartWindow() { var message = new TransitionMessage("Show/ChartWindow"); this.Messenger.RaiseAsync(message); }
public void OpenMessageWindow() { var msg = new TransitionMessage("OpenMessageWindowMessageKey"); Messenger.Raise(msg); }
public void OpenComposeWindow() { if (Settings.Current.Accounts.Count == 0) return; var msg = new TransitionMessage("OpenComposeWindowMessageKey"); Messenger.Raise(msg); }
protected void Transition(ViewModel viewModel, Type windowType, TransitionMode mode, bool isOwned) { var message = new TransitionMessage(windowType, viewModel, mode, isOwned ? "Window.Transition.Child" : "Window.Transition"); this.Messenger.Raise(message); }
private void ShowAccountConfig(AccountInfo parameter) { string prevId = parameter.ScreenName; var apcvm = new AccountPropertyConfigViewModel(parameter); var msg = new TransitionMessage(apcvm, "ShowConfig"); this.Messenger.Raise(msg); if (apcvm.AccountInfo != null && apcvm.AccountInfo.ScreenName != prevId) { // User ID changed UserInformationManager.ReceiveInidividualInfo(apcvm.AccountInfo); } }
public void Open() { var msg = new TransitionMessage(new ImageWindowViewModel(this), "OpenImageWindowMessageKey"); Messenger.Raise(msg); }
//フルスクリーンにする public void GoToFullScreen() { if(IsFullScreen) { return; } IsFullScreen = true; Type type; if(Settings.Instance.UseWindowMode) { type = typeof(WindowedWindow); } else { type = typeof(FullScreenWindow); } //リソースに登録 var message = new TransitionMessage(type, this, TransitionMode.NewOrActive); //ウィンドウからFlash部分を消去 var temp = LiveFlash; LiveFlash = null; FullScreenLiveFlash = temp; var temp2 = Controller; Controller = null; FullScreenContoller = temp2; App.ViewModelRoot.Visibility = Visibility.Hidden; //フルスクリーンウィンドウ表示 Messenger.Raise(message); }
public void ShowRefreshPopup() { if (Settings2.Current.RefreshConfirm && (!Settings2.Current.RefreshConfirmOnlyInSortie || !KanColleClient.Current.IsInSortie)) { KanColleViewer.Views.MainWindow.Current.RefreshNavigator(); return; } var window = new RefreshPopupViewModel(); var message = new TransitionMessage(window, "Show/RefreshPopup"); this.Messenger.RaiseAsync(message); }
public void OpenEnemyWindow() { var message = new TransitionMessage("Show/EnemyWindow") { TransitionViewModel = new EnemyWindowViewModel() }; this.Messenger.RaiseAsync(message); }
public void Closing() { if(!Settings.Instance.ConfirmExit) { CanClose = true; DispatcherHelper.UIDispatcher.BeginInvoke(new Action(() => { Messenger.Raise(new WindowActionMessage(WindowAction.Close, "WindowAction")); })); return; } var message = new TransitionMessage(typeof(ExitDialog), this, TransitionMode.Modal); // View側がメッセージを処理し終えるまでブロックされる Messenger.Raise(message); }
//フルスクリーンにする public void GoToFullScreen() { if(IsFullScreen) { return; } IsFullScreen = true; //リソースに登録 Application.Current.Resources["VideoFlashKey"] = VideoFlash; var message = new TransitionMessage(typeof(FullScreenWindow), this, TransitionMode.NewOrActive); //ウィンドウからFlash部分を消去 Video.Grid.Children.Remove(VideoFlash); App.ViewModelRoot.Visibility = Visibility.Hidden; //フルスクリーンウィンドウ表示 Messenger.Raise(message); }