public virtual UIView GetViewForHeaderForSection(ISettingsViewController settingsViewController, UITableView tableView, nint section)
        {
            var key = settingsViewController.GetSettingsReader().GetKey(section);

            if (key == "IASKLogo")
            {
                var imageView = new UIImageView(UIImage.FromBundle("Icon.png"));
                imageView.ContentMode = UIViewContentMode.Center;
                return(imageView);
            }
            else if (key == "IASKCustomHeaderStyle")
            {
                var label = new UILabel();
                label.BackgroundColor = UIColor.Clear;
                label.TextAlignment   = UITextAlignment.Center;
                label.TextColor       = UIColor.Red;
                label.ShadowColor     = UIColor.White;
                label.ShadowOffset    = new CGSize(0, 1);
                label.Lines           = 0;
                label.Font            = UIFont.BoldSystemFontOfSize(16);

                //figure out the title from settingsbundle
                label.Text = settingsViewController.GetSettingsReader().GetTitle(section);

                return(label);
            }
            return(null);
        }
예제 #2
0
        private void CreateSettingsViewController()
        {
            _settingsViewController = Factory.ViewFactory.CreateSettingsViewController(UIViewHolder.GetView <SettingsView>());

            _settingsViewController.MusicSettingsChangedEvent += OnSettingsMusicSettingChangedHandler;
            _settingsViewController.SoundSettingsChangedEvent += OnSettingsSoundSettingsChangedHandler;
            _settingsViewController.OkButtonClickEvent        += OnSettingsOkButtonClickHandler;
        }
        public virtual nfloat GetHeightForHeaderForSection(ISettingsViewController settingsViewController, UITableView tableView, nint section)
        {
            var key = settingsViewController.GetSettingsReader().GetKey(section);

            if (key == "IASKLogo")
            {
                return(UIImage.FromBundle("Icon.png").Size.Height + 25);
            }
            else if (key == "IASKCustomHeaderStyle")
            {
                return(55);
            }
            return(0);
        }
예제 #4
0
        public ShellViewModel(
            ISystemService systemService,
            ISettingsViewController settingsViewController,
            GeneralSettingsViewModel generalSettingsVm,
            HotkeySettingsViewModel hotkeySettingsVm,
            CompositionContainer container,
            EventAggregator eventAggregator,
            ProcessMonitor processMonitor)
        {
            this.MainMenu = new ObservableCollection<IMenuItem>();
            this.container = container;

            generalSettingsVm.InitializeHotkeyCommandHandlers();

            this.hotkeySettingsVm = hotkeySettingsVm;
            this.hotkeySettingsVm.InitializeHotkeys();

            this.settingsViewController = settingsViewController;
            this.settingsViewController.Initialize();

            // Initialize the process monitor
            GW2PAO.Views.OverlayWindow.EventAggregator = eventAggregator;

            // Initialize shutdown handling
            Commands.ApplicationShutdownCommand.RegisterCommand(new DelegateCommand(this.Shutdown));

            // Start the game type monitor to monitor for player entering PvE/WvW
            this.processMonitor = processMonitor;
            this.processMonitor.Start();

            Properties.Settings.Default.PropertyChanged += (o, e) => this.OnPropertyChanged(() => this.IsOverlayMenuIconVisible);
            eventAggregator.GetEvent<GW2ProcessStarted>().Subscribe(o => this.OnPropertyChanged(() => this.IsOverlayMenuIconVisible));
            eventAggregator.GetEvent<GW2ProcessClosed>().Subscribe(o => this.OnPropertyChanged(() => this.IsOverlayMenuIconVisible));
            eventAggregator.GetEvent<GW2ProcessFocused>().Subscribe(o => this.OnPropertyChanged(() => this.IsOverlayMenuIconVisible));
            eventAggregator.GetEvent<GW2ProcessLostFocus>().Subscribe(o => this.OnPropertyChanged(() => this.IsOverlayMenuIconVisible));
        }
예제 #5
0
        public ShellViewModel(
            ISystemService systemService,
            ISettingsViewController settingsViewController,
            GeneralSettingsViewModel generalSettingsVm,
            HotkeySettingsViewModel hotkeySettingsVm,
            CompositionContainer container,
            EventAggregator eventAggregator,
            ProcessMonitor processMonitor)
        {
            this.MainMenu  = new ObservableCollection <IMenuItem>();
            this.container = container;

            generalSettingsVm.InitializeHotkeyCommandHandlers();

            this.hotkeySettingsVm = hotkeySettingsVm;
            this.hotkeySettingsVm.InitializeHotkeys();

            this.settingsViewController = settingsViewController;
            this.settingsViewController.Initialize();

            // Initialize the process monitor
            GW2PAO.Views.OverlayWindow.EventAggregator = eventAggregator;

            // Initialize shutdown handling
            Commands.ApplicationShutdownCommand.RegisterCommand(new DelegateCommand(this.Shutdown));

            // Start the game type monitor to monitor for player entering PvE/WvW
            this.processMonitor = processMonitor;
            this.processMonitor.Start();

            Properties.Settings.Default.PropertyChanged += (o, e) => this.OnPropertyChanged(() => this.IsOverlayMenuIconVisible);
            eventAggregator.GetEvent <GW2ProcessStarted>().Subscribe(o => this.OnPropertyChanged(() => this.IsOverlayMenuIconVisible));
            eventAggregator.GetEvent <GW2ProcessClosed>().Subscribe(o => this.OnPropertyChanged(() => this.IsOverlayMenuIconVisible));
            eventAggregator.GetEvent <GW2ProcessFocused>().Subscribe(o => this.OnPropertyChanged(() => this.IsOverlayMenuIconVisible));
            eventAggregator.GetEvent <GW2ProcessLostFocus>().Subscribe(o => this.OnPropertyChanged(() => this.IsOverlayMenuIconVisible));
        }