コード例 #1
0
        private void ConfigureMainMenu()
        {
            var insertIndex = 0;
            var visible     = true;

            var configuration = BusinessObjects.Instance.RibbonTabPageManager.RibbonTabPageSettings.FirstOrDefault(item => item.Id == ContentIdentifiers.MainMenu);

            if (configuration != null)
            {
                MenuButtonMain.Text = configuration.Name;
                insertIndex         = configuration.Order;
                visible             = configuration.Visible;
            }
            if (visible)
            {
                Ribbon.Items.Insert(insertIndex, MenuButtonMain);
            }

            MenuSaveButton.Click           += ContentController.OnSaveSchedule;
            MenuSaveAsButton.Click         += ContentController.OnSaveAsSchedule;
            MenuOutputPdfButton.Click      += ContentController.OnOutputPdf;
            MenuEmailButton.Click          += ContentController.OnEmail;
            MenuSlideSettingsButton.Visible =
                MasterWizardManager.Instance.MasterWizards.Count > 1 ||
                (MasterWizardManager.Instance.MasterWizards.Count == 1 && SlideSettings.GetAvailableConfigurations().Count(MasterWizardManager.Instance.MasterWizards.First().Value.HasSlideConfiguration) > 1);
            MenuSlideSettingsButton.Click += OnSlideSettingsClick;
            MenuHelpButton.Click          += ContentController.OnGetHelp;
        }
コード例 #2
0
        public void Init()
        {
            FormStateHelper.Init(this, Common.Core.Configuration.ResourceManager.Instance.AppSettingsFolder, "6ms", false).LoadState();

            Text = AppManager.Instance.FormCaption;

            var userName = Environment.UserName;

            ribbonBarHomeOverview.Text   = userName;
            buttonItemHomeOverview.Image = Resources.RibbonLogo;
            ribbonBarHomeOverview.RecalcLayout();
            ribbonPanelHome.PerformLayout();

            ribbonTabItemSlides.Text   = ribbonTabItemSlides.Text;
            buttonItemSlidesLogo.Image = Resources.RibbonLogo;
            ribbonBarSlidesLogo.RecalcLayout();
            ribbonPanelSlides.PerformLayout();

            buttonItemSlidesPowerPoint.Click += TabSlidesMainPage.Instance.buttonItemSlidesPowerPoint_Click;

            ribbonControl.SelectedRibbonTabItem = ribbonTabItemHome;
            ribbonControl_SelectedRibbonTabChanged(ribbonControl, EventArgs.Empty);
            ribbonControl.SelectedRibbonTabChanged += ribbonControl_SelectedRibbonTabChanged;

            buttonItemSlideSettings.Visible =
                MasterWizardManager.Instance.MasterWizards.Count > 1 ||
                (MasterWizardManager.Instance.MasterWizards.Count == 1 && SlideSettings.GetAvailableConfigurations().Count(MasterWizardManager.Instance.MasterWizards.First().Value.HasSlideConfiguration) > 1);
        }
コード例 #3
0
        private void SetSlideSettings(Presentation presentation, SlideSettings settings)
        {
            try
            {
                MessageFilter.Register();
                presentation.PageSetup.SlideWidth  = (float)settings.SlideSize.Width * 72;
                presentation.PageSetup.SlideHeight = (float)settings.SlideSize.Height * 72;

                switch (settings.SlideSize.Orientation)
                {
                case SlideOrientationEnum.Landscape:
                    presentation.PageSetup.SlideOrientation = MsoOrientation.msoOrientationHorizontal;
                    break;

                case SlideOrientationEnum.Portrait:
                    presentation.PageSetup.SlideOrientation = MsoOrientation.msoOrientationVertical;
                    break;
                }
            }
            catch { }
            finally
            {
                MessageFilter.Revoke();
            }
        }
コード例 #4
0
        public bool IsFitToInsert(SlideSettings currentSlideSettings)
        {
            var currentWidth = (Int32)Math.Round(currentSlideSettings.SlideSize.Width);
            var slideWidth   = (Int32)Math.Round(_slideWidth);

            return(slideWidth == 0 || currentWidth == slideWidth);
        }
コード例 #5
0
 public void SetSlideSettings(SlideSettings settings)
 {
     if (_powerPointObject?.ActivePresentation == null)
     {
         return;
     }
     SetSlideSettings(_powerPointObject.ActivePresentation, settings);
 }
コード例 #6
0
        public void Init()
        {
            FormStateHelper.Init(this, ResourceManager.Instance.AppSettingsFolder, "add slides", false).LoadState();

            Text = AppManager.Instance.FormCaption;
            Icon = AppManager.Instance.ImageResourcesManager.MainAppIcon ?? Icon;

            ribbonTabItemSlides.Text  = AppManager.Instance.TextResourcesManager.RibbonTabTitle ?? ribbonTabItemSlides.Text;
            ribbonBarSlidesLogo.Text  = Environment.UserName;
            labelItemSlidesLogo.Image = AppManager.Instance.ImageResourcesManager.MainAppRibbonLogo ?? Resources.AddSlidesLogo;
            labelItemAppTitle.Text    = AppManager.Instance.TextResourcesManager.RibbonTabTitle ?? labelItemAppTitle.Text;
            itemContainerStatusBarMainInfo.RecalcSize();
            barBottom.RecalcLayout();

            buttonItemSlidesPowerPoint.Image =
                AppManager.Instance.ImageResourcesManager.RibbonOutputImage ?? buttonItemSlidesPowerPoint.Image;
            buttonItemSlidesPowerPoint.Click += TabSlidesMainPage.Instance.buttonItemSlidesPowerPoint_Click;

            buttonItemApplicationMenuSlideSettings.Image = AppManager.Instance.ImageResourcesManager.MainMenuSlideSettingsImage ??
                                                           buttonItemApplicationMenuSlideSettings.Image;
            buttonItemApplicationMenuHelp.Image = AppManager.Instance.ImageResourcesManager.MainMenuHelpImage ??
                                                  buttonItemApplicationMenuHelp.Image;
            buttonItemApplicationMenuExit.Image = AppManager.Instance.ImageResourcesManager.MainMenuExitImage ??
                                                  buttonItemApplicationMenuExit.Image;


            buttonItemQatFloater.Image = AppManager.Instance.ImageResourcesManager.QatFloaterImage ??
                                         buttonItemQatFloater.Image;
            buttonItemQatHelp.Image = AppManager.Instance.ImageResourcesManager.QatHelpImage ??
                                      buttonItemQatHelp.Image;

            buttonItemApplicationMenuSlideSettings.Visible =
                MasterWizardManager.Instance.MasterWizards.Count > 1 ||
                (MasterWizardManager.Instance.MasterWizards.Count == 1 && SlideSettings.GetAvailableConfigurations().Count(MasterWizardManager.Instance.MasterWizards.First().Value.HasSlideConfiguration) > 1);

            if (AppManager.Instance.FormStyleManager.Style.AccentColor.HasValue)
            {
                styleManager.MetroColorParameters = new MetroColorGeneratorParameters(
                    styleManager.MetroColorParameters.CanvasColor,
                    AppManager.Instance.FormStyleManager.Style.AccentColor.Value);
            }

            if (AppManager.Instance.FormStyleManager.Style.StatusBarTextColor.HasValue)
            {
                labelItemAppTitle.ForeColor  = AppManager.Instance.FormStyleManager.Style.StatusBarTextColor.Value;
                labelItemSlideSize.ForeColor = AppManager.Instance.FormStyleManager.Style.StatusBarTextColor.Value;
            }

            SlideSettingsManager.Instance.SettingsChanged += OnSlideSettingsChanged;
            OnSlideSettingsChanged(null, EventArgs.Empty);
        }
コード例 #7
0
        public void GetDefaultSettings()
        {
            if (!ResourceManager.Instance.DefaultSlideSettingsFile.ExistsLocal())
            {
                return;
            }
            var document = new XmlDocument();

            document.Load(ResourceManager.Instance.DefaultSlideSettingsFile.LocalPath);
            var node = document.SelectSingleNode(@"/Settings/Size");

            if (node != null)
            {
                SlideSettings = SlideSettings.ReadFromString(node.InnerText.Trim());
            }
        }
コード例 #8
0
        public void ApplySettings(SlideSettings newSettings, PowerPointProcessor powerPointProcessor)
        {
            var args = new SlideSettingsChangingEventArgs();

            SettingsChanging?.Invoke(this, args);
            if (args.Cancel)
            {
                return;
            }
            SlideSettings = newSettings;
            if (powerPointProcessor.Connect())
            {
                powerPointProcessor.SetSlideSettings(SlideSettings);
            }
            SettingsChanged?.Invoke(this, EventArgs.Empty);
        }
コード例 #9
0
        private void FormEditSlideSettings_Load(object sender, System.EventArgs e)
        {
            buttonXSize43.Tag  = SlideSettings.ReadFromString("4x3");
            buttonXSize169.Tag = SlideSettings.ReadFromString("16x9");
            buttonXSize34.Tag  = SlideSettings.ReadFromString("3x4");

            var availableWizards = MasterWizardManager.Instance.MasterWizards.Values.Where(w => SlideSettings.GetAvailableConfigurations().Any(w.HasSlideConfiguration)).ToList();

            comboBoxEditSlideFormat.Properties.Items.AddRange(availableWizards);
            comboBoxEditSlideFormat.EditValue = availableWizards.FirstOrDefault(w => w.Name == SettingsManager.Instance.SelectedWizard);

            var buttons = GetSizeButtons().ToList();

            buttons.ForEach(b => b.Checked = false);
            buttons.First(b => ((SlideSettings)b.Tag).IsEqual(SlideSettingsManager.Instance.SlideSettings)).Checked = true;
        }
コード例 #10
0
 public SlideSettings GetActiveSlideSettings()
 {
     try
     {
         MessageFilter.Register();
         var settings = new SlideSettings();
         if (_powerPointObject?.ActivePresentation == null)
         {
             return(null);
         }
         settings.SlideSize.Width  = Math.Round(Convert.ToDecimal(_powerPointObject.ActivePresentation.PageSetup.SlideWidth / 72), 3);
         settings.SlideSize.Height = Math.Round(Convert.ToDecimal(_powerPointObject.ActivePresentation.PageSetup.SlideHeight / 72), 3);
         return(settings);
     }
     catch
     {
         return(null);
     }
     finally
     {
         MessageFilter.Revoke();
     }
 }
コード例 #11
0
 public SlideSettingsManager()
 {
     SlideSettings = new SlideSettings();
 }