Exemplo n.º 1
0
Arquivo: App.xaml.cs Projeto: lx223/Q3
        protected async override void OnStartup(StartupEventArgs e)
        {
            if (HasAnotherInstanceRunning())
            {
                Current.Shutdown();
            }

            InitLog();

            base.OnStartup(e);

            this.DispatcherUnhandledException += App_DispatcherUnhandledException;

            var config = DataCache.Load<UserConfig>();
            if (config == null)
            {
                config = new UserConfig();
                config.FirstRun = false;
                StartupRegistration.IsRegisteredForStartup = true;
                DataCache.Save(config);
            }
            if (!StartupRegistration.IsRegisteredForStartMenu)
            {
                StartupRegistration.RegisterForStartMenu();
            }

            user = GetUser();

            if (user == null)
            {
                Current.ShutdownMode = ShutdownMode.OnExplicitShutdown;
                var editUser = new EditUser();
                editUser.ShowDialog();
                user = new User()
                {
                    EmailAddress = editUser.FirstName + "." + editUser.LastName + "@placeholder",
                    FullName = editUser.FirstName + " " + editUser.LastName,
                    UserName = editUser.FirstName + "~" + editUser.LastName
                };
                DataCache.Save(user);
                Current.ShutdownMode = ShutdownMode.OnMainWindowClose;
            }

            hub = new Hub(user, Dispatcher);
            groupsCache = new GroupsCache();            
            queueUpdater = new QueueUpdater(hub, user, groupsCache);

            hub.QueueMembershipChanged += QueueMembershipChanged;
            hub.QueueCreated += QueueCreated;
            hub.QueueStatusChanged += QueueStatusChanged;
            hub.QueueMessageReceived += QueueMessageReceived;
            hub.QueueNagged += QueueNagged;

            hub.PropertyChanged += HubPropertyChanged;

            if (hub.ConnectionState == ConnectionState.Connected)
            {
                await queueUpdater.RefreshALl();
            }
        }
Exemplo n.º 2
0
        protected async override void OnStartup(StartupEventArgs e)
        {
            if (HasAnotherInstanceRunning())
            {
                Current.Shutdown();
            }

            InitLog();

            base.OnStartup(e);

            this.DispatcherUnhandledException += App_DispatcherUnhandledException;

            var config = DataCache.Load <UserConfig>();

            if (config == null)
            {
                config          = new UserConfig();
                config.FirstRun = false;
                StartupRegistration.IsRegisteredForStartup = true;
                DataCache.Save(config);
            }

            user = GetUser();

            if (user == null)
            {
                Current.ShutdownMode = ShutdownMode.OnExplicitShutdown;
                var editUser = new EditUser();
                editUser.ShowDialog();
                user = new User()
                {
                    EmailAddress = editUser.FirstName + "." + editUser.LastName + "@placeholder",
                    FullName     = editUser.FirstName + " " + editUser.LastName,
                    UserName     = editUser.FirstName + "~" + editUser.LastName
                };
                DataCache.Save(user);
                Current.ShutdownMode = ShutdownMode.OnMainWindowClose;
            }

            hub          = new Hub(user, Dispatcher);
            groupsCache  = new GroupsCache();
            queueUpdater = new QueueUpdater(hub, user, groupsCache);

            hub.QueueMembershipChanged += QueueMembershipChanged;
            hub.QueueCreated           += QueueCreated;
            hub.QueueStatusChanged     += QueueStatusChanged;
            hub.QueueMessageReceived   += QueueMessageReceived;
            hub.QueueNagged            += QueueNagged;

            hub.PropertyChanged += HubPropertyChanged;

            if (hub.ConnectionState == ConnectionState.Connected)
            {
                await queueUpdater.RefreshALl();
            }
        }
Exemplo n.º 3
0
        public QueueList(Hub hub, GroupsCache groupsCache)
        {
            InitializeComponent();
            Header.Hub         = hub;
            Header.GroupsCache = groupsCache;

            this.Activated       += (sender, args) => logger.Debug("Activated");
            this.Deactivated     += (sender, args) => logger.Debug("Deactivated");
            this.LocationChanged += (sender, args) => AdjustHeight();
        }
Exemplo n.º 4
0
        public QueueList(Hub hub, GroupsCache groupsCache)
        {
            InitializeComponent();
            Header.Hub = hub;
            Header.GroupsCache = groupsCache;

            this.Activated += (sender, args) => logger.Debug("Activated");
            this.Deactivated+= (sender, args) => logger.Debug("Deactivated");
            this.LocationChanged += (sender, args) => AdjustHeight();
        }
Exemplo n.º 5
0
        public QueueUpdater(Hub hub, User user, GroupsCache groupsCache)
        {
            this.hub  = hub;
            this.user = user;

            this.groupsCache = groupsCache;

            queueList = new QueueList(hub, groupsCache);
            queueList.Show();

            alertDisplayTimer = new DisplayTimer(queueList);
        }
Exemplo n.º 6
0
        public QueueUpdater(Hub hub, User user, GroupsCache groupsCache)
        {
            this.hub = hub;
            this.user = user;

            this.groupsCache = groupsCache;           

            queueList = new QueueList(hub, groupsCache);
            queueList.Show();

            alertDisplayTimer = new DisplayTimer(queueList);
        }
Exemplo n.º 7
0
        public NewQueue(GroupsCache groupsCache)
        {
            this.groupsCache = groupsCache;
            InitializeComponent();

            var defaultGroup = groupsCache.Groups.Intersect(defaultGroups).FirstOrDefault();

            if (defaultGroup != null)
            {
                GroupSelector.SelectedItem = defaultGroup;
            }
        }
Exemplo n.º 8
0
        public NewQueue(GroupsCache groupsCache)
        {
            this.groupsCache = groupsCache;
            InitializeComponent();

            var defaultGroup = groupsCache.Groups.Intersect(defaultGroups).FirstOrDefault();

            if (defaultGroup != null)
            {
                GroupSelector.SelectedItem = defaultGroup;

            }
        }