private Slide DuplicateSlide(Slide slide)
        {
            SlideRange slideRange = slide.Duplicate();

            slideRange.MoveTo(slides.Count);
            return(slides[slides.Count]);
        }
Example #2
0
        /// <summary>
        /// To avoid changing the clipboard during a copy/cut and paste action.
        /// One solution for this is to save clipboard into a temp slide and revert clipboard afterwards.
        /// </summary>
        public static TResult RestoreClipboardAfterAction <TResult>(System.Func <TResult> action, PowerPointPresentation pres, PowerPointSlide origSlide)
        {
            TResult result;

            if (!IsClipboardEmpty())
            {
                // Save clipboard onto a temp slide
                PowerPointSlide tempClipboardSlide  = null;
                ShapeRange      tempClipboardShapes = null;
                SlideRange      tempPastedSlide     = null;

                Logger.Log("RestoreClipboardAfterAction: Trying to paste as slide.", ActionFramework.Common.Logger.LogType.Info);
                tempPastedSlide = TryPastingAsSlide(pres, origSlide);

                if (tempPastedSlide == null)
                {
                    tempClipboardSlide = pres.AddSlide();
                    Logger.Log("RestoreClipboardAfterAction: Trying to paste as text.", ActionFramework.Common.Logger.LogType.Info);
                    tempClipboardShapes = TryPastingAsText(tempClipboardSlide);
                }

                if (CheckIfPastingFailed(tempPastedSlide, tempClipboardShapes))
                {
                    Logger.Log("RestoreClipboardAfterAction: Trying to paste as shape.", ActionFramework.Common.Logger.LogType.Info);
                    tempClipboardShapes = TryPastingAsShape(tempClipboardSlide);
                }

                if (CheckIfPastingFailed(tempPastedSlide, tempClipboardShapes))
                {
                    Logger.Log("RestoreClipboardAfterAction: Trying to paste as PNG picture", ActionFramework.Common.Logger.LogType.Info);
                    tempClipboardShapes = TryPastingAsPNG(tempClipboardSlide);
                }

                if (CheckIfPastingFailed(tempPastedSlide, tempClipboardShapes))
                {
                    Logger.Log("RestoreClipboardAfterAction: Trying to paste as bitmap picture", ActionFramework.Common.Logger.LogType.Info);
                    tempClipboardShapes = TryPastingAsBitmap(tempClipboardSlide);
                }

                if (CheckIfPastingFailed(tempPastedSlide, tempClipboardShapes))
                {
                    Logger.Log("RestoreClipboardAfterAction: Trying to paste onto view", ActionFramework.Common.Logger.LogType.Info);
                    tempClipboardShapes = TryPastingOntoView(pres, tempClipboardSlide, origSlide);
                }

                result = action();

                RestoreClipboard(tempClipboardShapes, tempPastedSlide);
                if (tempClipboardSlide != null)
                {
                    tempClipboardSlide.Delete();
                }
            }
            else
            {
                // Clipboard is empty, we can just run the action function
                result = action();
            }
            return(result);
        }
        private Slide DuplicateSlide(Slide slide, int position)
        {
            SlideRange slideRange = slide.Duplicate();

            slideRange.MoveTo(position);
            return(slides[position]);
        }
        static SlideRange CreateSlide(int copyOfIndex)
        {
            SlideRange newSlide = objSlides[copyOfIndex].Duplicate();

            newSlide.SlideShowTransition.Hidden = MsoTriState.msoFalse;
            newSlide.Tags.Add("isCreated", "true");
            //newSlide.MoveTo(objSlides.Count);
            return(newSlide);
        }
Example #5
0
        SlideNotes[] Extract(string filename)
        {
            List <SlideNotes> slideNotes    = new List <SlideNotes>();
            Application       app           = new Application();
            Presentations     presentations = app.Presentations;
            Presentation      presentation  = presentations.Open(filename);

            foreach (Slide slide in presentation.Slides)
            {
                if (slide.HasNotesPage != MsoTriState.msoTrue)
                {
                    continue;
                }

                List <string> list       = new List <string>();
                SlideRange    notesPages = slide.NotesPage;
                foreach (Microsoft.Office.Interop.PowerPoint.Shape shape in notesPages.Shapes)
                {
                    if (shape.Type == MsoShapeType.msoPlaceholder)
                    {
                        if (shape.PlaceholderFormat.Type == PpPlaceholderType.ppPlaceholderBody)
                        {
                            if (shape.HasTextFrame == MsoTriState.msoTrue)
                            {
                                if (shape.TextFrame.HasText == MsoTriState.msoTrue)
                                {
                                    var      textRange = shape.TextFrame.TextRange;
                                    string[] lines     = textRange.Text.Split(new[] { "\r\n", "\r", "\n" },
                                                                              StringSplitOptions.None
                                                                              );
                                    foreach (string line in lines)
                                    {
                                        if (line.Length > 0)
                                        {
                                            list.Add(line);
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
                SlideNotes current = new SlideNotes
                {
                    Name        = slide.Name,
                    Notes       = list.ToArray(),
                    SlideNumber = slide.SlideNumber,
                    Total       = presentation.Slides.Count
                };
                slideNotes.Add(current);
            }
            app.Quit();

            return(slideNotes.ToArray());
        }
Example #6
0
        } // private void ActOnShape

        private static void ActOnSelectedText(ActOnPPTText act, Config conf)
        {
            logger.ConditionalDebug("ActOnSelectedText");
            try
            {
                ProgressNotifier.thePN.Start();
                if (ColorizationPPT.thisAddIn.Application.Presentations.Count > 0)
                {
                    ColorizationPPT.thisAddIn.Application.StartNewUndoEntry();
                    var sel = ColorizationPPT.thisAddIn.Application.ActiveWindow.Selection;
                    if (sel.Type == PpSelectionType.ppSelectionText)
                    {
                        ShapeRange shapeR = sel.ShapeRange;
                        Debug.Assert(shapeR.Count == 1);
                        Shape      s      = shapeR[1];
                        SlideRange slideR = sel.SlideRange;
                        Debug.Assert(slideR.Count == 1);
                        act(new PPTText(ColorizationPPT.thisAddIn.Application.ActiveWindow.Selection.TextRange,
                                        slideR[1], s.HasTable == Microsoft.Office.Core.MsoTriState.msoTrue, s.Left, s.Top), conf);
                    }
                    else if (sel.Type == PpSelectionType.ppSelectionShapes)
                    {
                        // bool textFound = false;
                        foreach (Shape sh in sel.ShapeRange)
                        {
                            ActOnShape(sh, act, sel.ShapeRange.Count, conf);
                        } // foreach
                    }     // else no text selected
                    else if (sel.Type == PpSelectionType.ppSelectionSlides)
                    {
                        foreach (Slide s in sel.SlideRange)
                        {
                            foreach (Shape sh in s.Shapes)
                            {
                                ActOnShape(sh, act, s.Shapes.Count, conf);
                            }
                        }
                    }
                }
                ProgressNotifier.thePN.Completed();
            }
            catch (Exception e)
            {
                StringBuilder sb = new StringBuilder();
                sb.Append("Ouups. Une vilaine erreur s'est produite. Désolé. N'hésitez pas à nous ");
                sb.AppendLine("envoyer une description de votre problème à [email protected].");
                sb.AppendLine(e.Message);
                sb.AppendLine(e.StackTrace);
                logger.Error(sb.ToString());
                MessageBox.Show(sb.ToString(), ConfigBase.ColorizationName, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            logger.ConditionalDebug("EXIT ActOnSelectedText");
        } // void ColorizeSelectedPhons()
Example #7
0
        private void OnSlidesChanged(SlideRange sldRange)
        {
            if (_powerpointAdapter.HasSlides == false && _hasBar)
            {
                // When a user deletes all slides,
                // we can simulate Remove Event with button
                btn_Remove_Click(null, null);
            }

            Debug.WriteLine("OnSlidesChanged={0}", _powerpointAdapter.VisibleSlides().Count());
            // http://social.msdn.microsoft.com/Forums/en-US/22a64e2b-32eb-4eab-930f-f3ca526d9d3b/powerpoint-events-for-adding-a-shape-deleting-a-shape-and-deleting-a-slide?forum=vsto
        }
        private int getLastSelectedIndex(SlideRange range)
        {
            int index = -1;

            foreach (Slide slide in range)
            {
                if (slide.SlideIndex > index)
                {
                    index = slide.SlideIndex;
                }
            }
            return(index);
        }
Example #9
0
        /*
         * Is called whenever a slide in powerpoint is changed.
         */
        private void slideChanged(SlideRange sr)
        {
            if (presentation == null)
            {
                return;
            }

            foreach (Slide sld in sr)
            {
                // custom slides were removed
                if (presentation.Slides.Count < slidescount)
                {
                    removeCustomSlides(listOfSlideIds, slides);
                }

                // custom slides were added
                if (presentation.Slides.Count > slidescount)
                {
                    addCustomSlides(slides, listOfSlideIds);
                }

                // update all attributes
                SlideIndex  = sld.SlideIndex;
                SlideId     = sld.SlideID;
                slide       = slides[SlideIndex];
                slidescount = slides.Count;

                // TODO: maybe focus just one slide when more slides where added
            }

            // aktualisiere den index der verschobenen slides
            foreach (Slide sld in slides)
            {
                // aktualisiere den index der verschobenen slides
                myRibbon.pptNavigator.updateCustomSlideIndexIfSlideDraggedAndDropped(sld.SlideID, sld.SlideIndex);
            }

            // if selectQuestionsFor or evaluateQuestionsForm were open while slides changed,
            // than update their listviews
            if (myRibbon.selectQuestionsForm != null)
            {
                myRibbon.selectQuestionsForm.updateQuestionsPerSlideListView();
            }
            if (myRibbon.evaluateQuestionsForm != null)
            {
                myRibbon.evaluateQuestionsForm.updateListViews();
            }

            myRibbon.updateRibbonQuestionEvaluationCounter(SlideId);
            checkPushEvaluationOrder();
        }
Example #10
0
        public bool startSlideShow()
        {
            if (this.powerpoint == null)
            {
                return(false);
            }
            if (this.powerpoint.Presentations.Count == 0)
            {
                return(false);
            }

            stopSlideShow();
            if (slides == null)
            {
                presentations = powerpoint.Presentations;
                presentation  = presentations._Index(1);
                if (presentation != null)
                {
                    slides = presentation.Slides;
                }
            }
            if (slides != null)
            {
                int   all      = slides.Count;
                int[] SlideIdx = new int[all];
                for (int i = 0; i < all; i++)
                {
                    SlideIdx[i] = i + 1;
                }
                slideRange = slides.Range(SlideIdx);

                slideShowTransition = slideRange.SlideShowTransition;
                slideShowTransition.AdvanceOnTime = Microsoft.Office.Core.MsoTriState.msoFalse;
                slideShowTransition.EntryEffect   = Microsoft.Office.Interop.PowerPoint.PpEntryEffect.ppEffectBoxOut;

                //Prevent Office Assistant from displaying alert messages:
                //dumps if NotFiniteNumberException installed   bAssistantOn = powerpoint.Assistant.On;
                //   powerpoint.Assistant.On = false;
                //Run the Slide show
                slideShowSettings = presentation.SlideShowSettings;
                slideShowSettings.StartingSlide = 1;
                slideShowSettings.EndingSlide   = all;
                slideShowWindow  = slideShowSettings.Run();
                slideShowWindows = powerpoint.SlideShowWindows;
            }

            return(true);
        }
Example #11
0
 private void Application_SlideSelectionChanged(SlideRange SldRange)
 {
     if (SldRange.Count > 0)
     {
         presence.Details = SldRange.Application.ActivePresentation.Name;
         presence.State   = Shared.Shared.getString("editing");
         presence.Assets.LargeImageKey = "editing";
         presence.Party = new Party()
         {
             ID   = Secrets.CreateFriendlySecret(new Random()),
             Max  = Application.ActivePresentation.Slides.Count,
             Size = SldRange[1].SlideNumber
         };
         client.SetPresence(presence);
     }
 }
        /// <summary>
        /// To avoid changing the clipboard during a copy/cut and paste action.
        /// One solution for this is to save clipboard into a temp slide and revert clipboard afterwards.
        /// </summary>
        public static void RestoreClipboardAfterAction(System.Action action, PowerPointPresentation pres, PowerPointSlide origSlide)
        {
            if (!IsClipboardEmpty())
            {
                // Save clipboard onto a temp slide
                PowerPointSlide tempClipboardSlide  = null;
                ShapeRange      tempClipboardShapes = null;
                SlideRange      tempPastedSlide     = null;
                Shape           tempClipboardShape  = null;

                Logger.Log("RestoreClipboardAfterAction: Trying to paste as slide.", ActionFramework.Common.Logger.LogType.Info);
                tempPastedSlide = TryPastingAsSlide(pres, origSlide);

                if (tempPastedSlide == null)
                {
                    tempClipboardSlide = pres.AddSlide();
                    Logger.Log("RestoreClipboardAfterAction: Trying to paste as text.", ActionFramework.Common.Logger.LogType.Info);
                    tempClipboardShapes = TryPastingAsText(tempClipboardSlide);
                }

                if (tempPastedSlide == null && (tempClipboardShapes == null || tempClipboardShapes.Count < 1))
                {
                    Logger.Log("RestoreClipboardAfterAction: Trying to paste as shape.", ActionFramework.Common.Logger.LogType.Info);
                    tempClipboardShapes = TryPastingAsShape(tempClipboardSlide);
                }

                if (tempPastedSlide == null && (tempClipboardShapes == null || tempClipboardShapes.Count < 1))
                {
                    Logger.Log("RestoreClipboardAfterAction: Trying to paste onto current view of the document window.", ActionFramework.Common.Logger.LogType.Info);
                    tempClipboardShape = TryPastingOntoView(pres, tempClipboardSlide, origSlide);
                }

                action();

                RestoreClipboard(tempClipboardShape, tempClipboardShapes, tempPastedSlide);
                if (tempClipboardSlide != null)
                {
                    tempClipboardSlide.Delete();
                }
            }
            else
            {
                // Clipboard is empty, we can just run the action function
                action();
            }
        }
 private static SlideRange TryPastingAsSlide(PowerPointPresentation pres, PowerPointSlide origSlide)
 {
     try
     {
         // try pasting as slide
         SlideRange slides = pres.PasteSlide();
         // Ensure that the view is at the original slide
         pres.GotoSlide(origSlide.Index);
         return((slides.Count >= 1) ? slides : null);
     }
     catch (COMException e)
     {
         // May be thrown if clipboard is not a slide
         Logger.LogException(e, "TryPastingAsSlide");
         return(null);
     }
 }
Example #14
0
        static void GetTimes(int ID, SlideRange slide)
        {
            var query =
                from times in scheduleTable.AsEnumerable()
                where times.Field <int>("ID") == ID
                orderby times.Field <int>("Day"), times.Field <DateTime>("Start")
            select new {
                time = CultureInfo.CurrentCulture.DateTimeFormat.DayNames[times.Field <int>("Day") - 1] + " " + times.Field <DateTime>("Start").ToString("h:mm tt") + " — " + times.Field <DateTime>("End").ToString("h:mm tt") + "  " + times.Field <string>("Campus")
            };
            string availableTimes = "";

            foreach (var q in query)
            {
                availableTimes += q.time + "\n";
            }
            WriteToTextbox(slide, "TimesAvailable", availableTimes.TrimEnd('\n'));
        }
        private static ClipboardUtilData SaveClipboardUnsafe(PowerPointPresentation pres, PowerPointSlide origSlide)
        {
            PowerPointSlide tempClipboardSlide  = null;
            ShapeRange      tempClipboardShapes = null;
            SlideRange      tempPastedSlide     = null;

            tempPastedSlide = TryPastingAsSlide(pres, origSlide);

            if (tempPastedSlide == null)
            {
                tempClipboardSlide = pres.AddSlide();
                Logger.Log("RestoreClipboardAfterAction: Trying to paste as text.", ActionFramework.Common.Logger.LogType.Info);
                tempClipboardShapes = TryPastingAsText(tempClipboardSlide);
            }

            if (CheckIfPastingFailed(tempPastedSlide, tempClipboardShapes))
            {
                Logger.Log("RestoreClipboardAfterAction: Trying to paste as shape.", ActionFramework.Common.Logger.LogType.Info);
                tempClipboardShapes = TryPastingAsShape(tempClipboardSlide);
            }

            if (CheckIfPastingFailed(tempPastedSlide, tempClipboardShapes))
            {
                Logger.Log("RestoreClipboardAfterAction: Trying to paste as PNG picture", ActionFramework.Common.Logger.LogType.Info);
                tempClipboardShapes = TryPastingAsPNG(tempClipboardSlide);
            }

            if (CheckIfPastingFailed(tempPastedSlide, tempClipboardShapes))
            {
                Logger.Log("RestoreClipboardAfterAction: Trying to paste as bitmap picture", ActionFramework.Common.Logger.LogType.Info);
                tempClipboardShapes = TryPastingAsBitmap(tempClipboardSlide);
            }

            if (CheckIfPastingFailed(tempPastedSlide, tempClipboardShapes))
            {
                Logger.Log("RestoreClipboardAfterAction: Trying to paste onto view", ActionFramework.Common.Logger.LogType.Info);
                tempClipboardShapes = TryPastingOntoView(pres, tempClipboardSlide, origSlide);
            }
            return(new ClipboardUtilData()
            {
                tempClipboardSlide = tempClipboardSlide,
                tempClipboardShapes = tempClipboardShapes,
                tempPastedSlide = tempPastedSlide
            });
        }
Example #16
0
        static void DisplayTutors()
        {
            DateTime currentDayTime = DateTime.Now;

            createdImages.Clear();

            var query =
                from tutor in tutorTable.AsEnumerable()
                join schedule in scheduleTable
                on tutor.Field <int>("ID") equals schedule.Field <int>("ID")
                    where (schedule.Field <int>("Day") == (int)currentDayTime.DayOfWeek + 1) &&
                TimeBetween(currentDayTime, schedule.Field <DateTime>("Start").TimeOfDay, schedule.Field <DateTime>("End").TimeOfDay) &&
                (schedule.Field <string>("Campus") == currentCampus || schedule.Field <string>("Campus") == "Online" || currentCampus == "All")

                select new {
                TutorID = tutor.Field <int>("ID"),
                Name    = tutor.Field <string>("FirstName") + " " + tutor.Field <string>("LastName")
            };


            int i = objSlides.Count + 1;

            if (query.Any())
            {
                foreach (var q in query)
                {
                    SlideRange slide = CreateSlide(tutorsSlide);
                    WriteToTextbox(slide, "TutorName", q.Name);
                    GetSubject(q.TutorID, slide);
                    GetTimes(q.TutorID, slide);
                    string imageName = i.ToString(CultureInfo.CurrentCulture) + "_" + DateTime.Now.ToString("HH-mm-ss") + ".jpg";
                    slide.Export(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, strImagePath, imageName), "JPG");
                    i++;
                    createdImages.Add(imageName);
                }
            }
            else
            {
                SlideRange slide     = CreateSlide(noTutorsSlide);
                string     imageName = DateTime.Now.ToString("HH-mm-ss") + "_" + i.ToString("D2", CultureInfo.CurrentCulture) + ".jpg";
                slide.Export(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, strImagePath, imageName), "JPG");
                createdImages.Add(imageName);
            }
        }
Example #17
0
        private void isVotePPT(SlideRange sldRange)
        {
            if (sldRange.Count > 1 || sldRange.SlideIndex == 0)
            {
                _VoteTaskPane.Visible = false;
                return;
            }
            Slide activeSlide = (Slide)Globals.ThisAddIn.Application.ActiveWindow.View.Slide;

            if (ShapesUitls.IsExistedOfShape(activeSlide, "VoteQuestion"))
            {
                _VoteTaskPane.Visible = true;
                voteTaskPane.load_slide();
            }
            else
            {
                _VoteTaskPane.Visible = false;
            }
        }
Example #18
0
        /// <summary>
        /// 幻灯片监听事件
        /// </summary>
        /// <param name="sldRange"></param>
        private void isMultipleChoicePPT(SlideRange sldRange)
        {
            if (sldRange.Count > 1 || sldRange.SlideIndex == 0)
            {
                _MultipleChoiceTaskPane.Visible = false;
                return;
            }
            Slide activeSlide = (Slide)Globals.ThisAddIn.Application.ActiveWindow.View.Slide;

            if (ShapesUitls.IsExistedOfShape(activeSlide, "questionType") && activeSlide.Shapes["questionType"].TextFrame.TextRange.Text.Equals("1"))
            {
                _MultipleChoiceTaskPane.Visible = true;
                multipleChoiceTaskPane.load_slide();
            }
            else
            {
                _MultipleChoiceTaskPane.Visible = false;
            }
        }
Example #19
0
        private void IsSimpleQesttionPPT(SlideRange sldRange)
        {
            if (sldRange.Count > 1 || sldRange.SlideIndex == 0)
            {
                _SimpleQuestionTaskPane.Visible = false;
                return;
            }
            Slide activeSlide = (Slide)Globals.ThisAddIn.Application.ActiveWindow.View.Slide;

            if (ShapesUitls.IsExistedOfShape(activeSlide, "SimpleAnswerQuestion"))
            {
                _SimpleQuestionTaskPane.Visible = true;
                simplequestionTaskPane.load_slide();
            }
            else
            {
                _SimpleQuestionTaskPane.Visible = false;
            }
        }
Example #20
0
        static void GetSubject(int ID, SlideRange slide)
        {
            var query =
                from sub in subjectTable.AsEnumerable()
                where sub.Field <int>("ID") == ID
                select new {
                subject = sub.Field <string>("TutorSubject")
            };
            string subjects = "";

            foreach (var q in query)
            {
                subjects += q.subject + "\n";
                if (!AllSubjects.Contains(q.subject))
                {
                    AllSubjects.Add(q.subject);
                }
            }
            WriteToTextbox(slide, "SubjectsTutored", subjects.TrimEnd('\n'));
        }
        private void OnSlideSelectionChanged(SlideRange slideRange)
        {
            this.ribbon.OneArsnovaSlideSelected = false;

            if (slideRange.Count == 1)
            {
                var selectedSlide = slideRange[1];

                if (SlideTracker.IsArsnovaSlide(selectedSlide))
                {
                    this.ribbon.OneArsnovaSlideSelected = true;
                }
            }

            // update control ui's
            this.ribbon.RefreshRibbonControl("AddButton");
            this.ribbon.RefreshRibbonControl("EditButton");
            this.ribbon.RefreshRibbonControl("DeleteButton");
            this.ribbon.RefreshRibbonControl("HideButton");
        }
Example #22
0
 /// <summary>
 /// Tries to restore clipboard with provided SlideRange first, then ShapeRange then finally Shape.
 /// Note that clipboard cannot be restored if last copied item was a placeholder (for now)
 /// </summary>
 /// <returns>True if successfully restored</returns>
 private static void RestoreClipboard(ShapeRange shapes = null, SlideRange slides = null)
 {
     try
     {
         if (slides != null)
         {
             slides.Copy();
             slides.Delete();
         }
         else if (shapes != null && shapes.Count >= 1)
         {
             shapes.Copy();
             shapes.Delete();
         }
     }
     catch (COMException e)
     {
         // May be thrown when trying to copy
         Logger.LogException(e, "RestoreClipboard");
     }
 }
        public TransitionsViewModel(KynapseePaneModel submodel)
        {
            submodel_ = submodel;

            Gestures = submodel_.Presentation.GetNuiModel();
            Methods = new List<TransitionMethod>()
                          {
                              TransitionMethod.NextSlide,
                              TransitionMethod.PreviousSlide,
                              TransitionMethod.TargetSlide
                          };

            sr_ = submodel_.SlideRange;
            set_ = sr_.GetTransitions(submodel_.Presentation, Gestures);
            Transitions = new ObservableCollection<TransitionItem>(set_.Transitions.Select((x)
                => new TransitionItem(this, x)));

            NewTransitionCommand = new RelayCommand(NewTransition);

            submodel_.PropertyChanged += KynapseePropertyChanged;
        }
Example #24
0
        private void work_with_Slides(SlideRange SldRange)
        {
            PowerPoint.Presentation currentPresentation = Globals.ThisAddIn.Application.ActivePresentation;
            float slideWidth = currentPresentation.PageSetup.SlideWidth;

            foreach (Slide slide in SldRange)
            {
                foreach (Shape shape in slide.Shapes)
                {
                    if (shape.Type == Microsoft.Office.Core.MsoShapeType.msoTextBox)
                    {
                        if ((shape.Left + float.Parse(editBox1.Text, CultureInfo.InvariantCulture) * 1.333f) < slideWidth)
                        {
                            shape.Left += float.Parse(editBox1.Text, CultureInfo.InvariantCulture) * 1.333f;
                        }


                        shape.TextEffect.FontBold = Microsoft.Office.Core.MsoTriState.msoCTrue;
                        shape.TextFrame.TextRange.Font.Color.RGB = System.Drawing.ColorTranslator.ToOle(Color.Red);
                    }
                }
            }
        }
        static void DisplayTutors()
        {
            DateTime currentDayTime = DateTime.Now;
            var      query          =
                from tutor in tutorTable.AsEnumerable()
                join schedule in scheduleTable
                on tutor.Field <int>("ID") equals schedule.Field <int>("ID")
                    where schedule.Field <int>("Day") == (int)currentDayTime.DayOfWeek + 1 &&
                schedule.Field <DateTime>("Start").TimeOfDay <= currentDayTime.TimeOfDay &&
                schedule.Field <DateTime>("End").TimeOfDay >= currentDayTime.TimeOfDay
                select new {
                TutorID = tutor.Field <int>("ID"),
                Name    = tutor.Field <string>("FirstName") + " " + tutor.Field <string>("LastName")
            };
            int i = 0;

            foreach (var q in query)
            {
                SlideRange slide = CreateSlide(tutorsSlide);
                WriteToTextbox(slide, "TutorName", q.Name + i);
                i++;
                slide.Export(AppDomain.CurrentDomain.BaseDirectory + "\\Images\\" + (i + 23).ToString(CultureInfo.CurrentCulture), "JPG");
            }
        }
 static string WriteToTextbox(SlideRange slide, string textboxName, string inputString)
 {
     slide.Shapes[textboxName].TextFrame.TextRange.Text = inputString;
     return(inputString);
 }
 void KynapseePropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
 {
     switch (e.PropertyName)
     {
         case "Presentation":
             if (submodel_.Presentation != null)
                 Gestures = submodel_.Presentation.GetNuiModel();
             break;
         case "SlideRange":
             sr_ = submodel_.SlideRange;
             set_ = sr_.GetTransitions(submodel_.Presentation, Gestures);
             Transitions = new ObservableCollection<TransitionItem>(set_.Transitions.Select((x)
                 => new TransitionItem(this, x)));
             break;
     }
 }
        private static void SaveClipboard(PowerPointPresentation pres, PowerPointSlide origSlide, out PowerPointSlide tempClipboardSlide, out ShapeRange tempClipboardShapes, out SlideRange tempPastedSlide)
        {
            Logger.Log("RestoreClipboardAfterAction: Trying to paste as slide.", ActionFramework.Common.Logger.LogType.Info);
            ClipboardUtilData data = PPLClipboard.Instance.LockAndRelease(() => SaveClipboardUnsafe(pres, origSlide));

            tempClipboardSlide  = data.tempClipboardSlide;
            tempClipboardShapes = data.tempClipboardShapes;
            tempPastedSlide     = data.tempPastedSlide;
        }
Example #29
0
 public void ColorSchemeChanged(SlideRange SldRange)
 {
     //this.listBox1.Items.Add("ColorSchemeChanged");
 }
Example #30
0
 public void SlideSelectionChanged(SlideRange SldRange)
 {
     //this.listBox1.Items.Add("SlideSelectionChanged");
 }
Example #31
0
 protected override void When()
 {
     slideRange = this.slideManager.CloneSlide(this.presentationHandle, slide, Locations.Location.Last);
 }
Example #32
0
 private void PptApplication_SlideSelectionChanged(SlideRange SldRange)
 {
     logger.Info(">>>PptApplication_SlideShowNextSlide: " + SldRange.SlideIndex);
     Thread.Sleep(10);
 }
        private void OnSlidesChanged(SlideRange sldRange)
        {
            if (_powerpointAdapter.HasSlides == false && _hasBar)
            {
                // When a user deletes all slides,
                // we can simulate Remove Event with button
                btn_Remove_Click(null, null);
            }

            Debug.WriteLine("OnSlidesChanged={0}", _powerpointAdapter.VisibleSlides().Count());
            // http://social.msdn.microsoft.com/Forums/en-US/22a64e2b-32eb-4eab-930f-f3ca526d9d3b/powerpoint-events-for-adding-a-shape-deleting-a-shape-and-deleting-a-slide?forum=vsto
        }
Example #34
0
        public bool startSlideShow()
        {
            if (this.powerpoint == null) return false;
              if (this.powerpoint.Presentations.Count == 0) return false;

              stopSlideShow();
              if (slides == null)
              {
              presentations = powerpoint.Presentations;
              presentation = presentations._Index(1);
              if (presentation != null)
              {
              slides = presentation.Slides;
              }
              }
              if (slides != null)
              {

              int all = slides.Count;
              int[] SlideIdx = new int[all];
              for (int i = 0; i < all; i++) SlideIdx[i] = i + 1;
              slideRange = slides.Range(SlideIdx);

              slideShowTransition = slideRange.SlideShowTransition;
              slideShowTransition.AdvanceOnTime = Microsoft.Office.Core.MsoTriState.msoFalse;
              slideShowTransition.EntryEffect = Microsoft.Office.Interop.PowerPoint.PpEntryEffect.ppEffectBoxOut;

              //Prevent Office Assistant from displaying alert messages:
              //dumps if NotFiniteNumberException installed   bAssistantOn = powerpoint.Assistant.On;
              //   powerpoint.Assistant.On = false;
              //Run the Slide show
              slideShowSettings = presentation.SlideShowSettings;
              slideShowSettings.StartingSlide = 1;
              slideShowSettings.EndingSlide = all;
              slideShowWindow = slideShowSettings.Run();
              slideShowWindows = powerpoint.SlideShowWindows;
              }

              return true;
        }
Example #35
0
 void Application_SlideSelectionChanged(SlideRange SldRange)
 {
     paneModel_.SlideRange = SldRange;
 }