using GalaSoft.MvvmLight.Command; using Server.Models; using SharedClientServer; using System; using System.Collections.Generic; using System.Diagnostics; using System.Net; using System.Net.Sockets; using System.Text; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; namespace Server.ViewModels { class MainViewModel : ObservableObject { private ServerCommunication serverCommunication; public ICommand ServerStartCommand { get; set; } public Information InformationModel { get; set; } private MainWindow mainWindow; public MainViewModel(MainWindow mainWindow) { this.mainWindow = mainWindow; Debug.WriteLine("init mainviewmodel"); InformationModel = new Information(); InformationModel.ClientsConnected = 0; InformationModel.CanStartServer = true; InformationModel.ServerOnline = false; //BitmapImage onlineImg = new BitmapImage(new Uri(@"/img/online.png",UriKind.Relative)); //BitmapImage offlineImg = new BitmapImage(new Uri(@"/img/offline.png", UriKind.Relative)); this.ServerStartCommand = new RelayCommand(() => { Debug.WriteLine("connect button clicked"); if (serverCommunication == null) { Debug.WriteLine("making new server communication"); serverCommunication = ServerCommunication.INSTANCE; } if (!serverCommunication.Started) { serverCommunication.Start(); InformationModel.ServerOnline = true; InformationModel.CanStartServer = false; } }); } } }