Inheritance: MonoBehaviour
Exemple #1
0
        /// <summary>
        ///     Copies the project settings to task settings.
        /// </summary>
        /// <param name="projectId">The project identifier.</param>
        /// <param name="taskId">The task identifier.</param>
        public void CopyProjectSettingsToTaskSettings(long projectId, long taskId)
        {
            var projectSettings =
                _settingValuesRepository
                .Get(PluginType.ServerAgent, (int)SettingOwner.Project, projectId)
                .ToDictionary(_ => _.Settings.Code + "_" + _.Settings.ParentSettingItemKey, _ => _);

            var taskSettings = _settingRepository.Query().Where(_ => _.SettingOwner == (int)SettingOwner.Task).ToArray();

            foreach (var taskSetting in taskSettings)
            {
                var value = new SettingValues
                {
                    EntityId  = taskId,
                    SettingId = taskSetting.Id,
                    ProjectId = projectId
                };

                var key = taskSetting.Code + "_" + taskSetting.ParentSettingItemKey;
                value.Value =
                    projectSettings.ContainsKey(key)
                                                ? projectSettings[key].Value
                                                : taskSetting.GetDefaultValue();

                _settingValuesRepository.Insert(value);
            }

            _settingValuesRepository.Save();
        }
        public ContextMenus(SettingValues settings)
        {
            this.settings = settings;

            // Add the default menu options.
            MenuStrip = new ContextMenuStrip();
            ToolStripMenuItem  item;
            ToolStripSeparator sep;

            // Settings
            item        = new ToolStripMenuItem();
            item.Text   = "Settings";
            item.Click += new EventHandler(Settings_Click);
            //item.Image = Resources.Explorer;
            MenuStrip.Items.Add(item);

            // About.
            item        = new ToolStripMenuItem();
            item.Text   = "About";
            item.Click += new EventHandler(About_Click);
            //item.Image = Resources.About;
            MenuStrip.Items.Add(item);

            // Separator.
            sep = new ToolStripSeparator();
            MenuStrip.Items.Add(sep);

            // Exit.
            item        = new ToolStripMenuItem();
            item.Text   = "Exit";
            item.Click += new System.EventHandler(Exit_Click);
            //item.Image = Resources.Exit;
            MenuStrip.Items.Add(item);
        }
Exemple #3
0
        private Hashtable CreateInitialSettingsDictionary()
        {
            Debug.Assert(m_settingNames != null, "m_settingNames != null");

            SettingValues values = new SettingValues();

            AddInitialValues(values);

            if (values.Count == 0)
            {
                throw new ApplicationException("The '" + GetType().FullName + "' settings class did not"
                                               + " return any initial setting values.");
            }
            if (values.Count != m_settingNames.Length)
            {
                throw new ApplicationException(string.Format("The array of initial values retruned by the"
                                                             + "'{0}' settings class has {1} elements, but the array of setting names has {2} elements.",
                                                             GetType().FullName, values.Count, m_settingNames.Length));
            }

            Hashtable hashtable = new Hashtable(m_settingNames.Length);

            for (int index = 0; index < m_settingNames.Length; index++)
            {
                hashtable.Add(m_settingNames[index], values[index]);
            }

            return(hashtable);
        }
 public void Default(SettingValues settingValues)
 {
     if (!settingValues.Default)
         return;
     foreach (var item in Items)
         if (item != settingValues)
             item.Default = false;
 }
        public SysTrayProcess(SettingValues settings)
        {
            notifyIcon         = new NotifyIcon();
            notifyIcon.Visible = true;
            notifyIcon.Text    = "Virtual Desktop Grid Switcher";

            contextMenu = new ContextMenus(settings);
            notifyIcon.ContextMenuStrip = contextMenu.MenuStrip;
        }
Exemple #6
0
        public VirtualDesktopGridManager(SysTrayProcess sysTrayProcess, SettingValues settings)
        {
            this.settings       = settings;
            this.sysTrayProcess = sysTrayProcess;

            foregroundWindowChangedDelegate = new WinAPI.WinEventDelegate(ForegroundWindowChanged);
            fgWindowHook = WinAPI.SetWinEventHook(WinAPI.EVENT_SYSTEM_FOREGROUND, WinAPI.EVENT_SYSTEM_FOREGROUND, IntPtr.Zero, foregroundWindowChangedDelegate, 0, 0, WinAPI.WINEVENT_OUTOFCONTEXT);

            Start();
        }
Exemple #7
0
 public static SettingValueDto ToDto([NotNull] this SettingValues settingValues) =>
 new SettingValueDto
 {
     Id           = settingValues.Id,
     Title        = settingValues.Settings.DisplayName,
     Value        = settingValues.Value,
     Type         = (SettingValueTypeDto)settingValues.Settings.SettingType,
     DefaultValue = settingValues.Settings.DefaultValue,
     ChildGroups  = new List <SettingGroupDto>()
 };
        public IEnumerable <PluginSetting> GetSettings(long projectId, long pluginid)
        {
            var settings = _settingValuesRepository.Query()
                           .Where(
                item =>
                (item.Settings.OwnerPluginId == pluginid) && (item.Settings.SettingOwner == (int)SettingOwner.Project) &&
                (item.EntityId == projectId) && !item.Settings.IsArchived)
                           .ToDictionary(item => item.Settings.Code, item => item);
            var existingSettings =
                _settingRepository.Query()
                .Where(
                    item =>
                    (item.OwnerPluginId == pluginid) && (item.SettingOwner == (int)SettingOwner.Project) && !item.IsArchived)
                .ToList();

            foreach (var existingSetting in existingSettings)
            {
                if (settings.ContainsKey(existingSetting.Code))
                {
                    continue;
                }

                var setting = new SettingValues
                {
                    EntityId  = projectId,
                    SettingId = existingSetting.Id,
                    Value     = existingSetting.DefaultValue,
                    Settings  = existingSetting,
                    ProjectId = projectId
                };
                _settingValuesRepository.Insert(setting);
                settings.Add(existingSetting.Code, setting);
            }

            _settingValuesRepository.Save();

            return(settings.Values.Select(
                       item => new PluginSetting
            {
                DisplayName = item.Settings.DisplayName,
                Value = item.Value,
                Description = item.Settings.DisplayName,
                PluginId = pluginid,
                SettingId = item.Id,
                ProjectId = projectId,
                ValueType =
                    item.Settings.SettingType == (int)SettingType.Boolean
                                                                        ? PluginSettingValueType.Bool
                                                                        : (item.Settings.SettingType == (int)SettingType.Password
                                                                                        ? PluginSettingValueType.Password
                                                                                        : PluginSettingValueType.Text)
            }));
        }
        protected override void AddInitialValues(SettingValues values)
        {
            values.Add(DefaultRemoveWhenReading, DefaultMaxCountToAutoStart);

            values.Add(new WindowSettings(FormWindowState.Maximized), new WindowSettings(), new WindowSettings(),
                       new WindowSettings(), new WindowSettings(), DefaultLogColumnWidths,
                       DefaultLogSplitterRatio, DefaultDetailsSplitterRatioTop, DefaultDetailsSplitterRatioBottom,
                       null, null);

            values.Add(DefaultPreviewPane, DefaultStatusBar, DefaultAutoScrollMessage, DefaultDisplayTimeZone);

            values.Add(DefaultMaxRecentlyUsed, new RecentlyUsedList(), null);
        }
Exemple #10
0
        // GET: Admin/Settings
        public ActionResult Index()
        {
            ViewBag.ColSizeLabel = "col-sm-8 col-md-9";
            ViewBag.ColSizeShort = "col-md-4 col-md-3";

            var model = m_settingsWorker.GetManagerSettingsEdit();

            this.Pair2List <SettingsEditViewModel, string, string>(SettingValues.GetYesNo(), m => m.WorkingStock, model.WorkingStock);
            this.Pair2List <SettingsEditViewModel, string, string>(SettingValues.GetYesNo(), m => m.ShowUnstockItem, model.ShowUnstockItem);
            this.Pair2List <SettingsEditViewModel, string, string>(SettingValues.GetYesNo(), m => m.PriceIncludeTax, model.PriceIncludeTax);
            this.Pair2List <SettingsEditViewModel, string, string>(SettingValues.GetYesNo(), m => m.ShowComments, model.ShowComments);
            this.Pair2List <SettingsEditViewModel, string, string>(SettingValues.GetYesNo(), m => m.UseFacebookComments, model.UseFacebookComments);
            return(View(model));
        }
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            var settings = SettingValues.Load();

            using (SysTrayProcess sysTrayProcess = new SysTrayProcess(settings)) {
                using (VirtualDesktopGridManager gridManager =
                           new VirtualDesktopGridManager(sysTrayProcess, settings)) {
                    // Make sure the application runs!
                    Application.Run();
                }
            }
        }
        public VirtualDesktopGridManager(SysTrayProcess sysTrayProcess, SettingValues settings)
        {
            this.settings       = settings;
            this.sysTrayProcess = sysTrayProcess;

            VDMHelper = VdmHelperFactory.CreateInstance();
            VDMHelper.Init();

            foregroundWindowChangedDelegate = new WinAPI.WinEventDelegate(ForegroundWindowChanged);
            fgWindowHook = WinAPI.SetWinEventHook(WinAPI.EVENT_SYSTEM_FOREGROUND, WinAPI.EVENT_SYSTEM_FOREGROUND, IntPtr.Zero, foregroundWindowChangedDelegate, 0, 0, WinAPI.WINEVENT_OUTOFCONTEXT);

            // Create a custom message ID for other processes to trigger actions.
            commandWindowMessage = RegisterWindowMessage("VIRTUALDESKTOPGRIDSWITCHER_COMMAND");
            Application.AddMessageFilter(this);

            Start();
        }
Exemple #13
0
        public ActionResult Parameters(List <int> setting, List <string> value, int id)
        {
            using (var e1 = setting.GetEnumerator())
                using (var e2 = value.GetEnumerator())
                {
                    while (e1.MoveNext() && e2.MoveNext())
                    {
                        var s = e1.Current;
                        var v = e2.Current;

                        SettingValues sv       = db.SettingValues.Where(x => !x.Deleted && x.Setting == s && x.Value == v).FirstOrDefault();
                        Settings      settings = db.Settings.Where(y => y.Geek == id && y.SettingValues.Setting == s).FirstOrDefault();
                        settings.SettingValues = sv;
                        db.SaveChanges();
                    }
                }
            return(RedirectToAction("Index"));
        }
Exemple #14
0
        /// <summary>
        /// Get all settings as a single class
        /// </summary>
        /// <returns>SettingValues class</returns>
        public SettingValues GetSettingValues()
        {
            var settings      = GetAllSettings();
            var settingValues = new SettingValues()
            {
                SiteName              = settings.First(s => s.Name == SettingsConstants.SiteName).Value,
                SiteDescription       = settings.First(s => s.Name == SettingsConstants.SiteDescription).Value,
                IsRegistrationEnabled = Convert.ToBoolean(settings.First(s => s.Name == SettingsConstants.SiteRegistrationEnabled).Value),
                IsCommentsEnabled     = Convert.ToBoolean(settings.First(s => s.Name == SettingsConstants.SiteCommmentsEnabled).Value),
                FacebookUrl           = settings.First(s => s.Name == SettingsConstants.FacebookUrl).Value,
                TwitterUrl            = settings.First(s => s.Name == SettingsConstants.TwitterUrl).Value,
                InstagramUrl          = settings.First(s => s.Name == SettingsConstants.InstagramUrl).Value,
                YoutubeUrl            = settings.First(s => s.Name == SettingsConstants.YoutubeUrl).Value,
                DefaultUserRoleId     = int.Parse(settings.First(s => s.Name == SettingsConstants.DefaultUserRole).Value),
                RaptorVersion         = settings.First(s => s.Name == SettingsConstants.RaptorVersion).Value
            };

            return(settingValues);
        }
Exemple #15
0
        /// <summary>
        ///     Gets setting value at the specified owner and for the specified setting.
        /// </summary>
        /// <param name="owner">The owner.</param>
        /// <param name="entityId">The entity identifier.</param>
        /// <param name="settingKey">The setting key.</param>
        /// <returns>The setting value.</returns>
        public SettingValueDto Get(SettingOwnerDto owner, long entityId, string settingKey)
        {
            var settingValue = _settingValuesRepository
                               .Get(PluginType.ServerAgent, (int)owner, entityId, settingKey);

            if (settingValue != null)
            {
                return(settingValue.ToDto());
            }

            var setting = _settingRepository.Get(PluginType.ServerAgent, (int)owner, settingKey);

            if (setting == null)
            {
                return(null);
            }

            var dto = setting.GetDefaultValueDto();

            var currentItem = dto.GetCurrentSubitem();

            dto.Value = setting.SettingType == (int)SettingType.List ? currentItem.Key : currentItem.Text;

            settingValue = new SettingValues
            {
                EntityId  = entityId,
                SettingId = setting.Id,
                Value     = dto.Value,
                ProjectId = entityId
            };

            _settingValuesRepository.Insert(settingValue);

            _settingGroupRepository.Save();

            dto.Id = settingValue.Id;

            return(dto);
        }
Exemple #16
0
 public ActionResult Index(SettingsEditViewModel model)
 {
     if (ModelState.IsValid)
     {
         try
         {
             m_settingsWorker.UpdateManagerSettingsEdit(model);
             Business.Layers.SettingsLayer.RegisterAppSettings();
             return(RedirectToAction("Index", "Manager"));
         }
         catch (Exception ex)
         {
             ModelState.AddModelError("General", ex.Message);
         }
     }
     this.Pair2List <SettingsEditViewModel, string, string>(SettingValues.GetYesNo(), m => m.WorkingStock, model.WorkingStock);
     this.Pair2List <SettingsEditViewModel, string, string>(SettingValues.GetYesNo(), m => m.ShowUnstockItem, model.ShowUnstockItem);
     this.Pair2List <SettingsEditViewModel, string, string>(SettingValues.GetYesNo(), m => m.PriceIncludeTax, model.PriceIncludeTax);
     this.Pair2List <SettingsEditViewModel, string, string>(SettingValues.GetYesNo(), m => m.ShowComments, model.ShowComments);
     this.Pair2List <SettingsEditViewModel, string, string>(SettingValues.GetYesNo(), m => m.UseFacebookComments, model.UseFacebookComments);
     return(View(model));
 }
Exemple #17
0
        private void InitializeEmptySettings(
            long entityId,
            [NotNull][ItemNotNull] IEnumerable <Settings> settings,
            [NotNull] IDictionary <long, SettingValues> values)
        {
            // ReSharper disable once LoopCanBePartlyConvertedToQuery
            foreach (var settingWithoutValue in settings)
            {
                var settingValue = new SettingValues
                {
                    EntityId  = entityId,
                    Value     = settingWithoutValue.GetDefaultValue(),
                    SettingId = settingWithoutValue.Id,
                    Settings  = settingWithoutValue,
                    ProjectId = entityId
                };

                _settingValuesRepository.Insert(settingValue);
                values.Add(settingValue.SettingId, settingValue);
            }

            _settingValuesRepository.Save();
        }
Exemple #18
0
 /// <summary>
 /// When implemented by a derived class adds the initial values of all the settings in that class.
 /// The settings must be added in the same order as the names added by <c>AddSettingNames</c>, so
 /// that the names and values are matched correctly.
 /// </summary>
 /// <param name="values">The collection of initial setting values. The derived class may only
 /// add to this collection.</param>
 protected abstract void AddInitialValues(SettingValues values);