Exemplo n.º 1
0
        /// <summary>
        /// Zajistí uložení konfigurace. Ne hned, provede se za 30 sekund od prvního požadavku.
        /// </summary>
        protected void ConfigSaveDeffered()
        {
            SchedulerConfig config = this.Config;

            if (config != null)
            {
                config.Save(TimeSpan.FromSeconds(30d));
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Inicializace objektu pro Layout
        /// </summary>
        private void _LayoutInit()
        {
            SchedulerConfig   config = this.Config;
            MainControlLayout layout = (config != null ? config.UserConfigSearch <MainControlLayout>().FirstOrDefault() : null);

            if (layout == null)
            {   // Pokud nemáme MainData, nebo nemáme Config, nebo v něm dosud není Layout, vytvoříme si Layout nový:
                layout = new MainControlLayout();
                // Pokud máme Config, pak Layout do něj přidáme:
                if (config != null)
                {
                    config.UserConfig.Add(layout);
                }
            }
            this._ControlLayout = layout;
        }
Exemplo n.º 3
0
        /// <summary>
        /// Napojí zdejší Layout do/z Configu, protože tak se bude ukládat a načítat rozložení stránky.
        /// Je vyvoláno na konci načítání dat.
        /// </summary>
        /// <param name="guiPage"></param>
        protected void ConnectConfigLayout(GuiPage guiPage)
        {
            SchedulerConfig config = this.Config;

            if (config == null)
            {
                return;
            }

            // Máme načtená data z GUI, zkusíme najít SchedulerPanelLayout našeho jména v Configu, aneo tam náš přidáme:
            string name = guiPage.Name;

            if (String.IsNullOrEmpty(name))
            {
                name = guiPage.Title;
            }
            SchedulerPanelLayout panelLayout = config.UserConfigSearch <SchedulerPanelLayout>(l => String.Equals(l.Name, name)).FirstOrDefault();

            if (panelLayout != null)
            {   // Máme data nalezená z konfigurace => použijeme je:
                panelLayout.CurrentControlSize = this.ClientSize;
                this._PanelLayout = panelLayout;
                this.CalculateLayout();
            }
            else
            {   // V konfiguraci ještě náš PanelLayout není => přidáme tam zdejší:
                panelLayout      = this._PanelLayout;
                panelLayout.Name = name;
                config.UserConfig.Add(panelLayout);
            }

            // Načteme Layouty sloupců pro jednotlivé GGridy:
            foreach (GGrid gGrid in this._GGridList)
            {
                if (!String.IsNullOrEmpty(gGrid.Name))
                {
                    string layout = this._PanelLayout.GridColumns[gGrid.Name];
                    gGrid.ColumnLayout = layout;
                }
            }
        }
Exemplo n.º 4
0
 /// <summary>
 /// Konstruktor
 /// </summary>
 /// <param name="config"></param>
 public EditingScope(SchedulerConfig config)
 {
     this._Config               = config;
     this._SuppressSave         = config._SuppressSave;
     this._Config._SuppressSave = true;
 }