예제 #1
0
 private void EmployeesButton_PreviewMouseUp(object sender, MouseButtonEventArgs e)
 {
     if (client.socket.Connected)
     {
         string msg = "EmployeeList: Login:"******"EmployeeList message NOT sent.");
     }
 }
예제 #2
0
        private async void receiveAsync()
        {
            bool reset = false;

            while (!reset)
            {
                try
                {
                    await TCP.ReceiveAllPacketsSync(client);

                    Console.WriteLine("Received complete packet: {0}", client.packet);

                    if (currentPacket == RECEIVED_PACKET_TYPE.EMPLOYEE_LIST)
                    {
                        createNewDataGridFromPacket(client.packet);
                        hideMenuGUI();
                        showEmployeeListGUI();
                        currentPacket = RECEIVED_PACKET_TYPE.DEFAULT;
                    }
                    else
                    {
                        //do nothing
                    }
                }
                catch (SocketException ex) // connection disconnected
                {
                    Console.WriteLine(ex.ToString());

                    this.Dispatcher.Invoke((Action)(() =>
                    {
                        connectedStatusImage.Fill = (Brush)Resources["XMarkImage"];
                        networkStatus.Content = "Attempting to reconnect...";
                    }));
                    reconnectTimer           = new System.Timers.Timer();
                    reconnectTimer.Elapsed  += reconnectTimerFunc;
                    reconnectTimer.Enabled   = true;
                    reconnectTimer.AutoReset = true;

                    reset = true;
                }
            }
        }
예제 #3
0
        public DataWindow(SharedData sharedData)
        {
            InitializeComponent();
            this.DataContext = this;

            // get data from shared data
            loginName   = sharedData._name;
            accessLevel = sharedData._accesslevel.ToString();
            client      = sharedData._clientObject;

            // set GUI info
            AccessLevel.Content = "Access level: " + accessLevel;
            UI_Username.Content = "Logged in as: " + loginName;

            // set client variables
            currentPacket = RECEIVED_PACKET_TYPE.DEFAULT;

            // show GUI
            showMenuGUI();

            // receive async
            receiveAsync();
        }
예제 #4
0
 private void EmployeesButton_PreviewMouseUp(object sender, MouseButtonEventArgs e)
 {
     if(client.socket.Connected){
         string msg = "EmployeeList: Login:"******"EmployeeList message NOT sent.");
     }
 }
예제 #5
0
        public DataWindow(SharedData sharedData)
        {
            InitializeComponent();
            this.DataContext = this;
            
            // get data from shared data
            loginName = sharedData._name;
            accessLevel = sharedData._accesslevel.ToString();
            client = sharedData._clientObject;

            // set GUI info
            AccessLevel.Content = "Access level: " + accessLevel;
            UI_Username.Content = "Logged in as: " + loginName;

            // set client variables
            currentPacket = RECEIVED_PACKET_TYPE.DEFAULT;

            // show GUI
            showMenuGUI();

            // receive async
            receiveAsync();
        }
예제 #6
0
        private async void receiveAsync()
        {
            bool reset = false;
            while (!reset)
            {
                try
                {
                    await TCP.ReceiveAllPacketsSync(client);
                    Console.WriteLine("Received complete packet: {0}", client.packet);

                    if (currentPacket == RECEIVED_PACKET_TYPE.EMPLOYEE_LIST)
                    {
                        createNewDataGridFromPacket(client.packet);
                        hideMenuGUI();
                        showEmployeeListGUI();
                        currentPacket = RECEIVED_PACKET_TYPE.DEFAULT;
                    }
                    else
                    {
                        //do nothing
                    }
                    
                }
                catch (SocketException ex) // connection disconnected
                {
                    Console.WriteLine(ex.ToString());

                    this.Dispatcher.Invoke((Action)(() =>
                    {
                        connectedStatusImage.Fill = (Brush)Resources["XMarkImage"];
                        networkStatus.Content = "Attempting to reconnect...";
                    }));
                    reconnectTimer = new System.Timers.Timer();
                    reconnectTimer.Elapsed += reconnectTimerFunc;
                    reconnectTimer.Enabled = true;
                    reconnectTimer.AutoReset = true;

                    reset = true;
                }
            }
        }