Beispiel #1
0
        private async void Window_Loaded(object sender, RoutedEventArgs e)
        {
            int num = await UserForMessage.GetUnReadedMessages();

            txtMessage.Text        = num.ToString();
            brdrMessage.Visibility = num > 0 ? Visibility.Visible : Visibility.Collapsed;
        }
Beispiel #2
0
        public MainWindow()
        {
            InitializeComponent();
            Task.Run(() => UserForMessage.AllUsers = UserForMessage.GetAllUsers());
            Task.Run(() => DBMain.UpdateAllPregnant());

            this.MaxHeight = System.Windows.Forms.Screen.PrimaryScreen.WorkingArea.Height;
            btns           = new List <Button>()
            {
                btnSearch, btnAddFamily, btnOrphans, btnInventory, btnSystem, btnSettings
            };
            btnUser.Content = BaseDataBase.CurrentUser.Name;
            txtClock.Text   = DateTime.Now.ToString("t") + "  " + DateTime.Now.ToString("d");
            DispatcherTimer dt = new DispatcherTimer()
            {
                Interval = TimeSpan.FromMinutes(1), IsEnabled = true
            };

            dt.Tick += async delegate
            {
                txtClock.Text = DateTime.Now.ToString("t") + "  " + DateTime.Now.ToString("d");
                int num = await UserForMessage.GetUnReadedMessages();

                txtMessage.Text        = num.ToString();
                brdrMessage.Visibility = num > 0 ? Visibility.Visible : Visibility.Collapsed;
            };

            //sign out when application ilde 10 minutes
            mIdle = new DispatcherTimer()
            {
                Interval = TimeSpan.FromMinutes(10), IsEnabled = true
            };
            mIdle.Tick += delegate
            {
                mIdle.Stop();
                if (!SignInUser.IsActivated)
                {
                    SignInUser w = new SignInUser(false);
                    w.ShowDialog();
                    if (w.IsAccepted)
                    {
                        mIdle.Start();
                    }
                }
                else
                {
                    mIdle.Start();
                }
            };
            InputManager.Current.PreProcessInput += OnActivity;
        }
Beispiel #3
0
        public void StartDispatcher()
        {
            if (dt == null)
            {
                dt = new DispatcherTimer()
                {
                    Interval = TimeSpan.FromSeconds(10), IsEnabled = true
                }
            }
            ;
            dt.Tick += async delegate
            {
                var u = lbUsers.SelectedItem as UserForMessage;
                if (u != null)
                {
                    int num = await UserForMessage.GetUnReadedMessages();

                    if (u.UnreadedMessages > 0)
                    {
                        u.MakeMessagesReaded();
                        bool isAdded = await u.GetLastMessages();

                        if (isAdded)
                        {
                            messagesItems.Items.Refresh();
                        }
                    }
                    u.CheckMessages();
                }
                if (UserForMessage.AllUsers.Sum(x => x.UnreadedMessages) > 0)
                {
                    ICollectionView view = CollectionViewSource.GetDefaultView(lbUsers.ItemsSource);
                    view.SortDescriptions.Clear();
                    view.SortDescriptions.Add(new SortDescription("UnreadedMessages", ListSortDirection.Descending));
                    lbUsers.Items.Refresh();
                }
            };
            dt.Start();
        }