private void ShowErrorWin(string error) { ErrorWin errWin = new ErrorWin(); errWin.LabelError.Text = error; CUtilWin.ShowDialogOnCenter(errWin, this); }
public void OpenViewChildOnStart(string typeOfWin) { //find type of view model for this type of win Type typeViewModel = _dictKTypeWindowVTypeViewModelChild. FirstOrDefault(a => a.Key.ToString() == typeOfWin).Value; if (typeViewModel == null) { return; } //than find view model instance BaseViewModelChildWin viewMod = _dictKViewModelVView.FirstOrDefault(a => a.Key.GetType() == typeViewModel).Key; Type type = Type.GetType(typeOfWin + ", Terminal"); //than create win _dictKViewModelVView[viewMod] = (Window)Activator.CreateInstance(type); // viewMod.RegisterWindow(_dictKViewModelVView[viewMod]); Window win = _dictKViewModelVView[viewMod]; CUtilWin.ShowActivated(ref win); win.Closed += new EventHandler(OnChildWindowClosed); // return win; }
/// <summary> /// If we delete ControlMarket we need to shift /// elements for making correct order. /// For each elements with StockNum more than /// deleted do /// 1) Reduce StockNum /// 2) Set correct column. /// /// Note. /// 1) ControlMarket's column is even (0,2,4), /// GridSplitter is odd (1,3,5). /// 2)ControlMarket was previously removed from /// _lstControlMarket in DeleteControlMarket method /// /// Call from /// DeleteExistingStock /// </summary> public void ShiftStockNumber(int stockNumDeleted) { MainWindow mw = (MainWindow)CUtilWin.FindWindow <MainWindow>(); //note ! all ControlMarket have view model //shift ControlMarket StockNum and column _lstControlMarket.ForEach(controlMarket => { if (controlMarket.StockNum > stockNumDeleted) { controlMarket.StockNum--; Grid.SetColumn(controlMarket, 2 * controlMarket.StockNum); //even column (0,2,4, etc) } } ); //shift GridSplitter StockNum and column foreach (var child in mw.GridMarket.Children) { if (child is GridSplitter) { GridSplitter gs = (GridSplitter)child; { if ((int)gs.Tag > stockNumDeleted) { int newStockNum = ((int)gs.Tag - 1); gs.Tag = newStockNum; Grid.SetColumn(gs, 2 * newStockNum + 1); //odd column (1,3,5, etc) } } } } }
private void SubscribeMainWinEvents(ref ControlMarket controlMarket) { MainWindow mw = (MainWindow)CUtilWin.FindWindow <MainWindow>(); controlMarket.ButtonClose.PreviewMouseUp += mw.ControlStock_ButtonClose_PreviewMouseUp; controlMarket.ButtonMaximizeNormalize.PreviewMouseUp += mw.ControlStock_ButtonMaximizeNomalize_PreviewMouseUp; controlMarket.ButtonMinimize.PreviewMouseUp += mw.ControlStock_ButtonMinimize_PreviewMouseUp; controlMarket.ButtonMaximizeNormalize.PreviewMouseUp += controlMarket.ButtonMaximizeNmormilize_PreviewMouseUp; }
private void ShowVersionWindow() { if (_windowVersion == null) { _windowVersion = new VersionWindow(); CUtilWin.ShowDialogOnCenter(_windowVersion, this); _windowVersion = null; } }
void DatagridTickers_PreviewMouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e) { try { var dg = (DataGrid)sender; int conNum = (int)dg.Tag; int rowNum = CUtilWPF.GetDataGridClickedRowNum(e); CTIckerData tickerData = (CTIckerData)dg.Items[rowNum]; string ticker = tickerData.TickerName; if (KernelTerminal.ViewModelDispatcher.IsMarketViewModelExist(ticker)) { AllertWindow win = new AllertWindow("Невозможно выбрать инструмент. Стакан с таким инструментом уже существует."); win.Topmost = true; Window wn = (Window)win; // CUtilWin.ShowActivated(ref wn); Window windowRoot = (Window)CUtilWin.FindWindow <AvailableTickersWindow>(); CUtilWin.ShowDialogOnCenter(wn, windowRoot); //CUtilWin.ShowDialogOnCenter(ref wn, _); //win.Show(); return; } //note put to method marketViewModel as parameters MarketViewModel currMarketViewModel = _winAvailTicks.CurrentMarketViewModel; KernelTerminal.ChangeMarketInstrument(conNum, tickerData, currMarketViewModel); // (new Task(KernelTerminal.TaskSaveVisualConf)).Start(); _winAvailTicks.Close(); } catch (Exception exc) { Error("DatagridTickers_PreviewMouseDown", exc); } }
public void CallbackSuccess(string msg) { _dispatcher.BeginInvoke(new Action(() => { SuccessWin succWin = new SuccessWin(); succWin.TextBlockMessage.Text = msg; CUtilWin.ShowDialogOnCenter(succWin, this); succWin.Activate(); Close(); })); }
private void ButtonMarketSettings_Click(object sender, RoutedEventArgs e) { MarketSettingsWindow msw = new MarketSettingsWindow(StockNum); msw.DataContext = this.DataContext; msw.SetComboboxTimeFrame(ControlClustersInstance.TimeFrame); _mainWindow.SuspendTopMost(msw); CUtilWin.ShowDialogOnCenter(windowToShow: msw, windowRoot: _mainWindow); }
private void BindAlarm() { MainWindow mainWindows = (MainWindow)CUtilWin.FindWindowOrNull <MainWindow>(); if (mainWindows == null || mainWindows.ComboBoxAlarm == null) { return; } mainWindows.ComboBoxAlarm.ItemsSource = _alarmer.AlarmList; _alarmer.AlarmList.CollectionChanged += new NotifyCollectionChangedEventHandler(mainWindows.AlarmList_CollectionChanged); }
private void ButtonSettings_Click(object sender, RoutedEventArgs e) { SettingsWindow settingsWin = new SettingsWindow(); //_dataSource.VMAccount.User = "******"; settingsWin.DataContext = _dataSource.VMAccount; //as it is disable bind password directly by Microsoft settingsWin.PasswordBoxPasswod.Password = _dataSource.VMAccount.Password; Window winSet = (Window)settingsWin; CUtilWin.ShowDialogOnCenter(winSet, this); }
private void MenuItem_Click_AddInstrument(object sender, RoutedEventArgs e) { AddInstrumentWindow instrWindow = new AddInstrumentWindow(); int ind = DataGridInstruments.SelectedIndex; if (ind > -1) { VMInstrument instrData = (VMInstrument)DataGridInstruments.Items[ind]; instrWindow.ComboboxServerDB.ItemsSource = _dataSource.CollVMDBCon; if (instrData.ServerId > 0) { instrWindow.ComboboxServerDB.SelectedIndex = instrData.ServerId - 1; } instrWindow.ComboboxStockExch.ItemsSource = _dataSource.CollVMStockExchId; int i = -1; foreach (var el in _dataSource.CollVMStockExchId) { i++; if (el.StockExchId == instrData.StockExchId) { break; } } instrWindow.ComboboxStockExch.SelectedIndex = i; // System.Threading.Thread.Sleep(0); } else { instrWindow.ComboboxServerDB.SelectedIndex = 0; } CUtilWin.ShowDialogOnCenter(instrWindow, this); }
public ConnectionsWindow() { InitializeComponent(); GUIDispatcher = Dispatcher.CurrentDispatcher; ConnectionTable.DelOpenAuthWindow = OpenAuthWindow; this.WindowStyle = System.Windows.WindowStyle.ToolWindow; var win = CUtilWin.FindWindow <MainWindow>(); if (win != null) { this.Left = win.Left + 20; this.Top = win.Top + 10; } }
private void MenuItem_Click_ChangeProcFeeDealing(object sender, RoutedEventArgs e) { int ind = DataGridLimits.SelectedIndex; if (ind < 0) { return; } VMTradersLimits vmTrdLim = (VMTradersLimits)DataGridLimits.Items[ind]; ProcFeeDealingWindow win = new ProcFeeDealingWindow(); win.DataContext = vmTrdLim; CUtilWin.ShowDialogOnCenter(win, this); }
private void DeterimenOneButtonStatus <TWindow> (Button button) where TWindow : Window { bool bIsOpened = false; GUIDispMainWindow.Invoke(new Action(() => { bIsOpened = CUtilWin.IsWindowOpened <TWindow>(); } )); if (bIsOpened) { button.Background = Brushes.Green; } }
private void MenuItem_Click_ChangeSessionLimit(object sender, RoutedEventArgs e) { int ind = DataGridLimits.SelectedIndex; if (ind < 0) { return; } //Commands.CmdShowAddMoneyDialog.Execute(null, this); //VM avMoney = (VMAvailableMoney)DataGridLimits.Items[ind]; VMTradersLimits vmTrdLim = (VMTradersLimits)DataGridLimits.Items[ind]; MaxLossVMWindow win = new MaxLossVMWindow(); win.DataContext = vmTrdLim; CUtilWin.ShowDialogOnCenter(win, this); }
private void OpenAddWithDrawWindow(EnmAccountOperations op, string title) { int ind = DataGridAvailableMoney.SelectedIndex; if (ind < 0) { return; } VMAvailableMoney vm = (VMAvailableMoney)DataGridAvailableMoney.Items[ind]; AddWithdrawMoneyWindow win = new AddWithdrawMoneyWindow(op); win.DataContext = vm; win.Title = title; CUtilWin.ShowDialogOnCenter(win, this); }
public void OpenAuthWindow(int connId, string stockName) { _kernelTerminal = CKernelTerminal.GetKernelTerminalInstance(); AuthWindow aw = (AuthWindow)_kernelTerminal.ViewModelDispatcher.OpenChildWindow <AuthWindow>(false); aw.Left = this.Left + 30; aw.Top = this.Top + 30; aw.SetParams(connId, stockName); Window win = (Window)aw; CUtilWin.ShowActivated(ref win); /* * AuthWindow aw = (AuthWindow) _kernelTerminal.ViewModelDispatcher.GetViewChild<AuthWindow>(); * aw.SetParams(connId, stockName); * aw.Closed += new EventHandler(aw_Closed); * aw.ShowDialog(); */ }
/// <summary> /// Get (creates if not exist) child window and /// show it activated (if need) /// /// ///Call from /// ///KernelTerminal.OpenChildWindow ///MarketViewModel.ShowChangeInstrumentWindow ///ConnectionWindow.OpenAuthWindow ///VmWindow.OpenDetailedVM /// </summary> public Window OpenChildWindow <TChildWindow>(bool showAtStartup = true) where TChildWindow : Window { try { Window win = GetViewChildInstance <TChildWindow>(); if (showAtStartup) { CUtilWin.ShowActivated(ref win); } win.Closed += new EventHandler(OnChildWindowClosed); return(win); } catch (Exception e) { Error("OpenchildWindow", e); return(null); } }
private void ButtonTerminalSettings_Click(object sender, RoutedEventArgs e) { Window winSet = (Window) new SettingsTerminalWindow(); CViewModelDispatcher.BindTerminalViewModel(winSet); Point pnt = ButtonTerminalSettings.TransformToAncestor(_mainWindow).Transform(new Point(0, 0)); double xOffset = 10; double yOffset = 30; winSet.Left = _mainWindow.Left + pnt.X - winSet.Width - xOffset; winSet.Top = _mainWindow.Top + pnt.Y + yOffset; //winSet.Left = thi _mainWindow.SuspendTopMost(winSet); // winSet.ShowDialog(); CUtilWin.ShowDialogOnCenter(winSet, _mainWindow); }
private void ShowWindowKillTerminal() { WindowKillTerminal win = new WindowKillTerminal(TaskStartInstall); CUtilWin.ShowDialogOnCenter(win, this); }
private void MainWindow_PreviewKeyDown(object sender, KeyEventArgs e) { try { //Only this window key pressing if (e.Key == Key.F1) { ShowVersionWindow(); return; } if (e.Key == Key.F2) { HotKeyWindow hkw = new HotKeyWindow(); CUtilWin.ShowDialogOnCenter(hkw, this); } if (e.Key == Key.RightCtrl || e.Key == Key.LeftCtrl) { //If in stock zone do close only by instrument end get out. //Else close all instrument - do send data closeall positions //and cancell all orders commands foreach (var controlMarket in KernelTerminal.ViewDispatcher.LstControlMarket) { if (controlMarket.ControlStockInstance.IsInStockArea) { CloseInstrumentPositions(controlMarket); CancellInstrOrder(controlMarket); return; } } //not in ControlStock - do cancell and close all CloseAllPositions(); CancellAllOrders(); return; } if (e.Key == Key.Space) { //All the same as for close (see above) foreach (var controlMarket in KernelTerminal.ViewDispatcher.LstControlMarket) { if (controlMarket.ControlStockInstance.IsInStockArea) { CancellInstrOrder(controlMarket); return; } } CancellAllOrders(); return; } /** Cause on child control events not triggers (unknown reason) do it forcely. * */ foreach (var v in KernelTerminal.ViewDispatcher.LstControlMarket) { v.ControlMarket_PreviewKeyDown(sender, e); } } catch (Exception exc) { Error("MainWindow.MainWindow_PreviewKeyDown", exc); } }