Exemplo n.º 1
0
        private static TSetting GetSettings <TEmulator, TSetting>()
            where TSetting : class, new()
            where TEmulator : IEmulator
        {
            // should we complain if we get a successful object from the config file, but it is the wrong type?
            object fromcore = null;
            var    settable = new SettingsAdapter(Global.Emulator);

            if (settable.HasSettings)
            {
                fromcore = settable.GetSettings();
            }

            return(fromcore as TSetting
                   ?? Global.Config.GetCoreSettings <TEmulator>() as TSetting
                   ?? new TSetting());             // guaranteed to give sensible defaults
        }
Exemplo n.º 2
0
        private GenericCoreConfig(
            IMainFormForConfig mainForm,
            bool isMovieActive,
            bool ignoreSettings     = false,
            bool ignoreSyncSettings = false)
        {
            InitializeComponent();
            _mainForm = mainForm;

            var settable = new SettingsAdapter(_mainForm.Emulator);

            if (settable.HasSettings && !ignoreSettings)
            {
                _s = settable.GetSettings();
            }

            if (settable.HasSyncSettings && !ignoreSyncSettings)
            {
                _ss = settable.GetSyncSettings();
            }

            if (_s != null)
            {
                propertyGrid1.SelectedObject = _s;
                propertyGrid1.AdjustDescriptionHeightToFit();
            }
            else
            {
                tabControl1.TabPages.Remove(tabPage1);
            }

            if (_ss != null)
            {
                propertyGrid2.SelectedObject = _ss;
                propertyGrid2.AdjustDescriptionHeightToFit();
            }
            else
            {
                tabControl1.TabPages.Remove(tabPage2);
            }

            if (isMovieActive)
            {
                propertyGrid2.Enabled = false;                 // disable changes to sync setting when movie, so as not to confuse user
            }
        }
Exemplo n.º 3
0
        private GenericCoreConfig(MainForm mainForm, bool ignoreSettings = false, bool ignoreSyncSettings = false)
        {
            _mainForm = mainForm;
            InitializeComponent();

            var settable = new SettingsAdapter(Global.Emulator);

            if (settable.HasSettings && !ignoreSettings)
            {
                _s = settable.GetSettings();
            }

            if (settable.HasSyncSettings && !ignoreSyncSettings)
            {
                _ss = settable.GetSyncSettings();
            }

            if (_s != null)
            {
                propertyGrid1.SelectedObject = _s;
                ChangeDescriptionHeight(propertyGrid1);
            }
            else
            {
                tabControl1.TabPages.Remove(tabPage1);
            }

            if (_ss != null)
            {
                propertyGrid2.SelectedObject = _ss;
                ChangeDescriptionHeight(propertyGrid2);
            }
            else
            {
                tabControl1.TabPages.Remove(tabPage2);
            }

            if (Global.MovieSession.Movie.IsActive())
            {
                propertyGrid2.Enabled = false;                 // disable changes to sync setting when movie, so as not to confuse user
            }
        }
 private void SettingsForm_Load(object sender, EventArgs e)
 {
     try
     {
         this.Cursor    = Cursors.WaitCursor;
         _settingsProxy = SettingsAdapter.GetSettings().FirstOrDefault();
         List <PointListProxy> lists = PointListAdapter.GetItems();
         pointListProxyBindingSource.DataSource = lists;
         if (_settingsProxy != null)
         {
             pointsSourceComboBox.SelectedItem = (PointsSource)_settingsProxy.PointsSource;
             countNumeric.Value               = _settingsProxy.PointsCount;
             listComboBox.SelectedItem        = (from qr in lists where qr.Id == _settingsProxy.SelectedListId select qr).FirstOrDefault();
             controlTypeComboBox.SelectedItem = (PointsSource)_settingsProxy.ControlType;
             displayTimeNumeric.Value         = _settingsProxy.DisplayTime;
             intervalNumeric.Value            = _settingsProxy.Interval;
             ColorButton.BackColor            = Color.FromArgb(_settingsProxy.BackgroundColorArgb);
             pathToDbTextBox.Text             = Properties.Settings.Default.PathToDatabase;
         }
         else
         {
             _settingsProxy = new SettingsProxy();
         }
     }
     catch (FileNotFoundException ioEx)
     {
         if (openFileDialog1.ShowDialog() == DialogResult.OK)
         {
             Properties.Settings.Default.PathToDatabase = openFileDialog1.FileName;
             Properties.Settings.Default.Save();
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.StackTrace, ex.Message);
     }
     finally
     {
         this.Cursor = Cursors.Arrow;
     }
 }
Exemplo n.º 5
0
        private async void SignalForm_Load(object sender, EventArgs e)
        {
            try
            {
                this.Cursor  = Cursors.WaitCursor;
                this._isBusy = true;
                //this.WindowState = FormWindowState.Maximized;
                //this.FormBorderStyle = FormBorderStyle.None;
                //this.TopMost = true;

                _settings      = SettingsAdapter.GetSettings()?.FirstOrDefault();
                _graphics      = this.CreateGraphics();
                this.BackColor = _settings.BackgroundColor;
                _graphics.Clear(_settings.BackgroundColor);
                if (_settings.PointsSource == (int)PointsSource.FromDatabase)
                {
                    _points = PointListAdapter.GetItemProxy(_settings.SelectedListId);
                }
                else
                {
                    _points = await this.CreatePoints();
                }
            }
            catch (FileNotFoundException ioEx)
            {
                MessageBox.Show("Please set database file in settings", ioEx.Message);
                this.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.StackTrace, ex.Message);
            }
            finally
            {
                this.Cursor  = Cursors.Arrow;
                this._isBusy = false;
            }
        }
Exemplo n.º 6
0
		GenericCoreConfig(bool ignoresettings, bool ignoresyncsettings)
		{
			InitializeComponent();

			var settable = new SettingsAdapter(Global.Emulator);

			if (settable.HasSettings && !ignoresettings)
				s = settable.GetSettings();
			if (settable.HasSyncSettings && !ignoresyncsettings)
				ss = settable.GetSyncSettings();

			if (s != null)
				propertyGrid1.SelectedObject = s;
			else
				tabControl1.TabPages.Remove(tabPage1);
			if (ss != null)
				propertyGrid2.SelectedObject = ss;
			else
				tabControl1.TabPages.Remove(tabPage2);

			if (Global.MovieSession.Movie.IsActive)
				propertyGrid2.Enabled = false; // disable changes to sync setting when movie, so as not to confuse user
		}
        GenericCoreConfig(bool ignoresettings, bool ignoresyncsettings)
        {
            InitializeComponent();

            var settable = new SettingsAdapter(Global.Emulator);

            if (settable.HasSettings && !ignoresettings)
            {
                s = settable.GetSettings();
            }
            if (settable.HasSyncSettings && !ignoresyncsettings)
            {
                ss = settable.GetSyncSettings();
            }

            if (s != null)
            {
                propertyGrid1.SelectedObject = s;
            }
            else
            {
                tabControl1.TabPages.Remove(tabPage1);
            }
            if (ss != null)
            {
                propertyGrid2.SelectedObject = ss;
            }
            else
            {
                tabControl1.TabPages.Remove(tabPage2);
            }

            if (Global.MovieSession.Movie.IsActive)
            {
                propertyGrid2.Enabled = false;                 // disable changes to sync setting when movie, so as not to confuse user
            }
        }
Exemplo n.º 8
0
        private static void CommitCoreSettingsToConfig()
        {
            // save settings object
            var t = Global.Emulator.GetType();
            var settable = new SettingsAdapter(Global.Emulator);

            if (settable.HasSettings)
            {
                Global.Config.PutCoreSettings(settable.GetSettings(), t);
            }

            if (settable.HasSyncSettings && !Global.MovieSession.Movie.IsActive)
            {
                // don't trample config with loaded-from-movie settings
                Global.Config.PutCoreSyncSettings(settable.GetSyncSettings(), t);
            }
        }