private void RefreshList()
        {
            if (listView.InvokeRequired)
            {
                RefreshListCallback d = new RefreshListCallback(RefreshList);
                this.BeginInvoke(d);
            }
            else
            {
                CancelRefreshList();
                listView.Items.Clear();
                _itemCollection.Clear();

                if (_exObject == null)
                {
                    return;
                }
                if (_exObject.Object is SqlFDBImageCatalogClass)
                {
                    SqlFDBImageCatalogClass layer = (SqlFDBImageCatalogClass)_exObject.Object;

                    _cancelWorker = false;
                    _gui_worker.RunWorkerAsync(layer.ImageList);
                }
                else if (_exObject.Object is AccessFDBImageCatalogClass)
                {
                    AccessFDBImageCatalogClass layer = (AccessFDBImageCatalogClass)_exObject.Object;

                    _cancelWorker = false;
                    //_gui_worker.RunWorkerAsync(layer.ImageList);
                    //
                    // Wirft eine Fehler beim Lesen, wenn List in einem
                    // Workerthread ausgeführt wird...
                    // funzt nur bei SQL Server!!
                    //
                    worker_DoWork(_gui_worker, new DoWorkEventArgs(layer.ImageList));
                }
                else if (_exObject.Object is pgImageCatalogClass)
                {
                    pgImageCatalogClass layer = (pgImageCatalogClass)_exObject.Object;

                    _cancelWorker = false;
                    _gui_worker.RunWorkerAsync(layer.ImageList);
                }
                else if (_exObject.Object is SQLiteFDBImageCatalogClass)
                {
                    SQLiteFDBImageCatalogClass layer = (SQLiteFDBImageCatalogClass)_exObject.Object;

                    _cancelWorker = false;
                    _gui_worker.RunWorkerAsync(layer.ImageList);
                }
            }
        }
Esempio n. 2
0
        void Notify(int option, string message)
        {
            //Option:
            //1. Connection Died
            //2. Users information changed (need to update)
            //3. File Received (Rethink)

            switch(option)
            {
                case 1:
                    //TODO do this
                    MessageBox.Show(message);
                    signOutToolStripMenuItem_Click();
            //                    Console.WriteLine("Connection Died:\n " + message);
                    break;
                case 2:
                    if (Application.OpenForms[0].InvokeRequired)
                    {
                        RefreshListCallback d = new RefreshListCallback(RefreshFriendsList);
                        this.Invoke(d);
                    }
                    else
                        RefreshFriendsList();
            //                    MessageBox.Show(message);
                    break;
                case 3:
            //                    Console.WriteLine(message);
                    MessageBox.Show(message);
                    break;
            }

            //TODO
        }