Exemplo n.º 1
0
    private void TransitionAccordingToComponentSettings(SlideType slideType)
    {
        if (targetRect != null)
        {
            switch (slideType)
            {
            case SlideType.None:
                break;

            case SlideType.SlideToEnd:
                SlideToEnd();
                break;

            case SlideType.SlideToStart:
                SlideToStart();
                break;

            case SlideType.SlideEndToStart:
                SlideEndToStart();
                break;

            case SlideType.Reset:
                Reset();
                break;

            default:
                Debug.Log("Default case called in switch. Bug?");
                break;
            }
        }
        else
        {
            Debug.LogError("Target RectTransform is null in '" + this.name + "'. Did you forget to assign it in the inspector?");
        }
    }
Exemplo n.º 2
0
        public static double GetMedianTimePerSlide(List <VisitRecord> visits, SlideType slideType)
        {
            var manner = visits.ToList();

            if (!visits.Any())
            {
                return(0.0);
            }
            manner.Sort((x, y) =>
            {
                var first  = x.UserId.CompareTo(y.UserId);
                var second = x.DateTime.CompareTo(y.DateTime);
                if (first != 0)
                {
                    return(first);
                }
                return(second);
            });

            var selected = manner.Bigrams()
                           .Where(i => i.Item1.SlideType == slideType &&
                                  i.Item1.UserId == i.Item2.UserId &&
                                  i.Item1.SlideId != i.Item2.SlideId)
                           .Select(i => i.Item2.DateTime.Subtract(i.Item1.DateTime)
                                   .TotalMinutes)
                           .Where(j => 1.0 <= j && j <= 120.0);

            if (selected.Any())
            {
                return(selected.Median());
            }
            return(0.0);
        }
Exemplo n.º 3
0
        protected void LoadThemes(SlideType slideType)
        {
            var themes = SettingsManager.Instance.ThemeManager.GetThemes(slideType);

            FormMain.Instance.HideThemeButtons();
            ThemeButton.Visible = true;
            FormThemeSelector.Link(
                ThemeButton,
                FormMain.Instance,
                themes,
                SettingsManager.Instance.GetSelectedTheme(slideType)?.Name,
                SettingsManager.Instance,
                (theme, applyForAllSlideTypes) =>
            {
                SettingsManager.Instance.SetSelectedTheme(slideType, theme.Name, applyForAllSlideTypes);
                SettingsManager.Instance.SaveSettings();
            }
                );
            if (!themes.Any())
            {
                var selectorToolTip = new SuperTooltipInfo("Important Info", "", "Click to get more info why output is disabled", null, null, eTooltipColor.Gray);
                FormMain.Instance.buttonItemPowerPoint.Visible = false;
                FormMain.Instance.ribbonBarPowerPoint.Text     = "Important Info";
                FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeThemeCleanslate, selectorToolTip);
            }
            else
            {
                FormMain.Instance.buttonItemPowerPoint.Visible = true;
                var selectorToolTip = new SuperTooltipInfo("Slide Theme", "", "Select the PowerPoint Slide theme you want to use for this schedule", null, null, eTooltipColor.Gray);
                FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeThemeCleanslate, selectorToolTip);
            }
            FormMain.Instance.ribbonBarPowerPoint.RecalcLayout();
            FormMain.Instance.ribbonPanelHome.PerformLayout();
        }
Exemplo n.º 4
0
        public override void load(ContentManager content, string fileName)
        {
            setTitle("T-Block", content.Load <SpriteFont>("Matura Title"), Color.Red, new Vector2(15, 20));

            SlideType temp = new SlideType("Red", Font, Color.Red, new Vector2(25, 100), new Vector2(), "T-Block Color", 0, 255, 20, 95);

            temp.setSlider(new SliderType(content.Load <Texture2D>("Slide 2"), new Vector2(130, 100),
                                          content.Load <Texture2D>("Standard Slider"), new Vector2(130, 103), Color.White));
            temp.Selected += SetRed;
            options.Add(temp);

            temp = new SlideType("Blue", Font, Color.Red, new Vector2(25, 140), new Vector2(), "T-Block Color", 0, 255, 20, 135);
            temp.setSlider(new SliderType(content.Load <Texture2D>("Slide 2"), new Vector2(130, 140),
                                          content.Load <Texture2D>("Standard Slider"), new Vector2(130, 143), Color.White));
            temp.Selected += SetBlue;
            options.Add(temp);

            temp = new SlideType("Green", Font, Color.Red, new Vector2(25, 180), new Vector2(), "T-Block Color", 0, 255, 20, 175);
            temp.setSlider(new SliderType(content.Load <Texture2D>("Slide 2"), new Vector2(130, 180),
                                          content.Load <Texture2D>("Standard Slider"), new Vector2(130, 183), Color.White));
            temp.Selected += SetGreen;
            options.Add(temp);

            OptionType option = new OptionType("Save", Font, Color.Red, new Vector2(25, 220), "Block List", 20, 215);

            option.Selected += SetColor;
            options.Add(option);

            base.load(content, fileName);
        }
        public void SetMedia(Uri source, SlideType type)
        {
            _source = source;
            _type   = type;
            switch (type)
            {
            case SlideType.Video:
                ShowVideo();
                break;

            case SlideType.ChromaKeyVideo:
                ShowVideo();
                break;

            case SlideType.ChromaKeyStill:
                ShowImage();
                break;

            case SlideType.Full:
                ShowImage();
                break;

            case SlideType.Liturgy:
                ShowImage();
                break;

            case SlideType.Empty:
                ShowBlackSource();
                break;

            default:
                break;
            }
        }
Exemplo n.º 6
0
        public static double GetMedianTimePerSlide(List <VisitRecord> visits, SlideType slideType)
        {
            var sequence = visits.ToList();

            if (!visits.Any())
            {
                return(0.0);               // return 0 if empty list
            }
            sequence.Sort((a, b) =>
            {
                var c1 = a.UserId.CompareTo(b.UserId);
                var c2 = a.DateTime.CompareTo(b.DateTime);
                return((0 != c1) ? c1 : c2);
            });
            var filtered = sequence.Bigrams()
                           .Where(t => t.Item1.UserId == t.Item2.UserId &&
                                  t.Item1.SlideId != t.Item2.SlideId &&
                                  t.Item1.SlideType == slideType)
                           .Select(t => t.Item2.DateTime.Subtract(t.Item1.DateTime)
                                   .TotalMinutes)
                           .Where(d => (1.0 <= d && d <= 120.0));

            if (!filtered.Any())
            {
                return(0.0);                 // no slide views
            }
            return(filtered.Median());
        }
    public void Slide(GameObject beforeObject, GameObject afterObject, SlideType slideType)
    {
        if (isComplete == false)
        {
            return;
        }

        isComplete = false;
        _imgDefaultFade.enabled = true;

        if (beforeObject != null)
        {
            foreach (var uiCanvas in beforeObject.GetComponentsInChildren <UICanvas> ())
            {
                uiCanvas.SlideOut(_duration, SlideTypeConvert(slideType), OnCompleteSlide);
            }
        }

        if (afterObject != null)
        {
            foreach (var uiCanvas in afterObject.GetComponentsInChildren <UICanvas> ())
            {
                uiCanvas.SlideIn(_duration, SlideTypeConvert(slideType), OnCompleteSlide);
            }
        }
    }
Exemplo n.º 8
0
        private static MDSlide AssignSlide(SlideType type)
        {
            MDSlide slide;

            switch (type)
            {
            case SlideType.PresentationTitle:
                slide = new MDSlidePresentationTitle();
                break;

            case SlideType.TableOfContents:
                slide = new MDSlide();
                slide.IsTitleSlide = true;
                break;

            case SlideType.SectionStart:
                slide = new MDSlideSection();
                break;

            case SlideType.Demo:
                slide = new MDSlideDemo();
                break;

            default:
                slide = new MDSlide();
                break;
            }

            return(slide);
        }
Exemplo n.º 9
0
 public TabSlideLineGlyph(SlideType type, Note startNote, BeatContainerGlyph parent)
     : base(0, 0)
 {
     _type = type;
     _startNote = startNote;
     _parent = parent;
 }
Exemplo n.º 10
0
        private static SlideType GetSlideType(SlidePart slidePart, int slideIndex)
        {
            SlideType type = SlideType.None;

            if (slideIndex == 0)
            {
                type = SlideType.PresentationTitle;
            }
            else if (slideIndex == 1)
            {
                type = SlideType.TableOfContents;
            }
            else
            {
                var  placeHolders     = slidePart.Slide.Descendants <PlaceholderShape>().Where(ph => ph.Type != null);
                bool hasCenteredTitle = (placeHolders.Any(ph => (ph.Type ?? PlaceholderValues.Object) == PlaceholderValues.CenteredTitle));

                if (hasCenteredTitle)
                {
                    if (slidePart.Slide.InnerText.Contains("Demo"))
                    {
                        type = SlideType.Demo;
                    }
                    else
                    {
                        type = SlideType.SectionStart;
                    }
                }
            }

            return(type);
        }
Exemplo n.º 11
0
 public VisitRecord(int userId, int slideId, DateTime dateTime, SlideType slideType)
 {
     SlideType = slideType;
     UserId    = userId;
     SlideId   = slideId;
     DateTime  = dateTime;
 }
Exemplo n.º 12
0
 public ScoreSlideLineGlyph(SlideType type, Note startNote, BeatContainerGlyph parent)
     : base(0, 0)
 {
     _type      = type;
     _startNote = startNote;
     _parent    = parent;
 }
Exemplo n.º 13
0
		protected void LoadThemes(SlideType slideType)
		{
			var themes = SettingsManager.Instance.ThemeManager.GetThemes(slideType);
			FormMain.Instance.HideThemeButtons();
			ThemeButton.Visible = true;
			FormThemeSelector.Link(
				ThemeButton,
				themes,
				(SettingsManager.Instance.GetSelectedTheme(slideType) ?? new Theme(null)).Name,
				SettingsManager.Instance,
				(theme, applyForAllSlideTypes) =>
				{
					SettingsManager.Instance.SetSelectedTheme(slideType, theme.Name, applyForAllSlideTypes);
					SettingsManager.Instance.SaveSettings();
				}
			);
			if (!themes.Any())
			{
				var selectorToolTip = new SuperTooltipInfo("Important Info", "", "Click to get more info why output is disabled", null, null, eTooltipColor.Gray);
				FormMain.Instance.buttonItemPowerPoint.Visible = false;
				FormMain.Instance.ribbonBarPowerPoint.Text = "Important Info";
				FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeThemeCleanslate, selectorToolTip);
			}
			else
			{
				FormMain.Instance.buttonItemPowerPoint.Visible = true;
				var selectorToolTip = new SuperTooltipInfo("Slide Theme", "", "Select the PowerPoint Slide theme you want to use for this schedule", null, null, eTooltipColor.Gray);
				FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeThemeCleanslate, selectorToolTip);
			}
			FormMain.Instance.ribbonBarPowerPoint.RecalcLayout();
			FormMain.Instance.ribbonPanelHome.PerformLayout();
		}
Exemplo n.º 14
0
        private void typeLookup_EditValueChanged(object sender, EventArgs e)
        {
            Changed?.Invoke(this, EventArgs.Empty);
            if (typeLookup.EditValue == null)
            {
                return;
            }
            SlideType slideType = (SlideType)typeLookup.EditValue;

            songPanel.Visible    = slideType == SlideType.Song;
            messagePanel.Visible = slideType == SlideType.Message;
            passagePanel.Visible = slideType == SlideType.BiblePassage;
            filePanel.Visible    = (slideType == SlideType.File);
            if (slideType == SlideType.Song)
            {
                List <Book> books = DataSource.GetBooks();
                books.Add(new Book()
                {
                    Title  = "(Search Internet)",
                    BookID = -1
                });
                LookupEdit.Initialize(bookLookup, "Title", (string)null, (IEnumerable)books);
                Height = 50;
            }
            else
            {
                Height = 33;
            }

            if (slideType == SlideType.Message)
            {
                LookupEdit.Initialize(messageTypeLookup, "Description", (string)null, (IEnumerable)DataSource.GetMessageTypes());
            }
        }
Exemplo n.º 15
0
        public static ISlideViewModel Create(SlideType slideType, ScreenGameManager gameManager, ICardsProvider cardsProvider, ITextResource textResource)
        {
            var presenter = GetSlideViewModel(slideType);

            presenter.Initialize(gameManager, cardsProvider, textResource);

            return(presenter);
        }
Exemplo n.º 16
0
 public Slide(SlideType slideType, double displayDuration, List <string> slideImages, double blankDuration, string sound, string borderColor)
 {
     Images          = slideImages;
     SlideType       = slideType;
     DisplayDuration = displayDuration;
     BlankDuration   = blankDuration;
     Sound           = sound;
     BorderColor     = borderColor;
 }
Exemplo n.º 17
0
        private static MDSlide ParseSlidePart(IList <SlidePart> slideParts, int slideIndex)
        {
            var slidePart = slideParts[slideIndex];

            if (slidePart == null)
            {
                throw new ArgumentNullException("slidePart");
            }
            if (slidePart.Slide == null)
            {
                throw new ArgumentNullException("slidePart.Slide");
            }

            SlideType slideType = GetSlideType(slidePart, slideIndex);
            MDSlide   slide     = AssignSlide(slideType);

            // Extract texts
            var shapes = slidePart.Slide.Descendants <Shape>().Where(s => s.Descendants <Drawing.Paragraph>().Any());

            foreach (Shape shape in shapes)
            {
                if (string.IsNullOrWhiteSpace(shape.InnerText))
                {
                    continue;
                }
                slide.AddShapes(GetShapes(shape));
            }

            // Extract images
            var pictures = slidePart.Slide.Descendants <Picture>().ToList();

            foreach (var picture in pictures)
            {
                string    rId       = picture.BlipFill.Blip.Embed.Value;
                ImagePart imagePart = (ImagePart)slidePart.Slide.SlidePart.GetPartById(rId);
                Image     image     = Image.FromStream(imagePart.GetStream());

                SaveImageToFile(image, slideIndex);
                MDShapeImage mdImage = GetImage(slideIndex, image, picture);
                presentationImageIndex++;

                slide.AddShape(mdImage);
            }

            // Extract graphics
            var graphics = slidePart.Slide.Descendants <GraphicFrame>().ToList();

            foreach (var graphic in graphics)
            {
                // TODO: Find a way to export graphics as images
            }

            return(slide);
        }
 public IList <Theme> GetThemes(SlideType slideType)
 {
     if (!ApprovedThemes.ContainsKey(slideType))
     {
         return(_themes);
     }
     return(ApprovedThemes[slideType]
            .OrderByDescending(themeInfo => themeInfo.IsDefault)
            .Select(themeInfo => _themes.FirstOrDefault(theme => theme.Name == themeInfo.ThemName))
            .Where(theme => theme != null)
            .ToList());
 }
Exemplo n.º 19
0
        private static Tuple <int, SlideRecord> IsCorrectSlide(string[] columns)
        {
            int       id        = 0;
            SlideType slideType = default(SlideType);

            return(((columns.Length == 3) &&
                    (int.TryParse(columns[0], out id)) &&
                    (Enum.TryParse(columns[1], true, out slideType)) &&
                    (columns[2] != null)) ?
                   Tuple.Create(id, new SlideRecord(id, slideType, columns[2])) :
                   null);
        }
        public Theme GetSelectedTheme(SlideType slideType)
        {
            if (!_themeManager.ApprovedThemes.ContainsKey(slideType))
            {
                slideType = SlideType.None;
            }
            var themes = _themeManager.GetThemes(slideType);

            return(themes.FirstOrDefault(t => (
                                             _selectedThemes.ContainsKey(slideType) && t.Name.Equals(_selectedThemes[slideType])) ||
                                         !_selectedThemes.ContainsKey(slideType)));
        }
Exemplo n.º 21
0
        private void UpdateSlide(string question, SlideType type, SlideEntity slide)
        {
            if (question != slide.Question)
            {
                slide.Question = question;
            }

            if (type != (SlideType)slide.SlideTypeId)
            {
                slide.SlideTypeId = (short)type;
            }
        }
Exemplo n.º 22
0
 public static double GetMedianTimePerSlide(List <VisitRecord> visits, SlideType slideType)
 {
     return(visits
            .OrderBy(visit => visit.UserId)
            .ThenBy(visit => visit.DateTime)
            .GroupBy(visit => visit.UserId)
            .SelectMany(group => group.Bigrams().Where(visit => visit.Item1.SlideType == slideType))
            .Select(bigram => (bigram.Item2.DateTime - bigram.Item1.DateTime).TotalMinutes)
            .Where(time => time >= 1 && time <= 120)
            .DefaultIfEmpty(0)
            .Median());
 }
Exemplo n.º 23
0
 private static IEnumerable <double> GetUserSessionDurations
 (
     IEnumerable <VisitRecord> activity,
     SlideType slideType
 )
 {
     return(activity
            .OrderBy(record => record.DateTime)
            .Bigrams()
            .Where(interval => interval.Item1.SlideType == slideType)
            .Select(interval => (interval.Item2.DateTime - interval.Item1.DateTime).TotalMinutes)
            .Where(time => time >= 1 && time <= 120));
 }
 public static double GetMedianTimePerSlide(List <VisitRecord> visits, SlideType slideType)
 {
     return(visits
            .GroupBy(visit => visit.UserId)
            .Select(group => group.OrderBy(x => x.DateTime)
                    .Bigrams())
            .Select(bigram => GetAllTimes(bigram, slideType))
            .SelectMany(x => x)
            .Where(time => time >= 1 && time <= 120)
            .ToList()
            .DefaultIfEmpty(0)
            .Median());
 }
Exemplo n.º 25
0
        public static double GetMedianTimePerSlide(List <VisitRecord> visits, SlideType slideType)
        {
            List <double> minutes       = new List <double>();
            var           visitsByUsers = visits.GroupBy(visit => visit.UserId);

            foreach (var visitsByUser in visitsByUsers)
            {
                CalculateMinutesForAllSlidesForOneUser(visitsByUser.OrderBy(visit => visit.DateTime).Bigrams(), minutes, slideType);
            }
            if (minutes.Count == 0)
            {
                return(0);
            }
            return(ExtensionsTask.Median(minutes));
        }
Exemplo n.º 26
0
        private static ISlidePresenter GetSlidePresenter(SlideType slideType)
        {
            switch (slideType)
            {
            //case SlideType.Balancing:
            //    break;
            //case SlideType.BlackOrRed:
            //    break;
            //case SlideType.QuizTrust:
            //    break;
            case SlideType.Down:
                return(new DownPresenter());

            case SlideType.Drink:
                return(new DrinkPresenter());

            case SlideType.GroupGame:
                return(new GroupGamePresenter());

            case SlideType.NeverEver:
                return(new NeverEverPresenter());

            case SlideType.NoIdeaLoses:
                return(new NoIdeaLosesPresenter());

            case SlideType.Question:
                return(new QuestionPresenter());

            case SlideType.SocialMedia:
                return(new SocialMediaPresenter());

            case SlideType.Task:
                return(new TaskPresenter());

            case SlideType.Virus:
                return(new VirusPresenter());

            case SlideType.WouldYouRather:
                return(new WouldYouRatherPresenter());

            default:
                throw new ArgumentOutOfRangeException(nameof(slideType), slideType, null);
            }

            throw new ArgumentException();
        }
        public static double GetMedianTimePerSlide(List <VisitRecord> visits, SlideType slideType)
        {
            var filteredVisits = visits
                                 .OrderBy(record => record.UserId)
                                 .ThenBy(record => record.DateTime)
                                 .Bigrams()
                                 .Where(tuple =>
                                        tuple.Item1.SlideType == slideType &&
                                        tuple.Item1.UserId == tuple.Item2.UserId &&
                                        tuple.Item1.SlideId != tuple.Item2.SlideId)
                                 .Select(tuple => tuple.Item2.DateTime
                                         .Subtract(tuple.Item1.DateTime)
                                         .TotalMinutes)
                                 .Where(minutes => 1.0 <= minutes && minutes <= 120.0)
                                 .ToList();

            return(filteredVisits.Count == 0 ? 0.0 : filteredVisits.Median());
        }
Exemplo n.º 28
0
        public static VisitRecord ParseStringWithVisits(string str, IDictionary <int, SlideRecord> slides)
        {
            try
            {
                var       array     = str.Split(';');
                int       userID    = int.Parse(array[0]);
                int       slideID   = int.Parse(array[1]);
                SlideType slideType = slides[slideID].SlideType;
                DateTime  dateTime  = DateTime.ParseExact(array[2] + ' ' + array[3], "yyyy-MM-dd HH:mm:ss",
                                                          CultureInfo.InvariantCulture, DateTimeStyles.None);

                return(new VisitRecord(userID, slideID, dateTime, slideType));
            }
            catch (Exception exc)
            {
                throw new FormatException($"Wrong line [{str}]", exc);
            }
        }
Exemplo n.º 29
0
        public static double GetMedianTimePerSlide(List <VisitRecord> visits, SlideType slideType)
        {
            var minutes = visits
                          .GroupBy(v => v.UserId)
                          .SelectMany(gr => gr
                                      .OrderBy(x => x.DateTime)
                                      .Bigrams()
                                      .Where(x => x.Item1.SlideType == slideType &&
                                             x.Item2.DateTime - x.Item1.DateTime >= TimeSpan.FromMinutes(1) &&
                                             x.Item2.DateTime - x.Item1.DateTime <= TimeSpan.FromHours(2))
                                      .Select(x => (x.Item2.DateTime - x.Item1.DateTime).TotalMinutes));

            if (!minutes.Any())
            {
                return(0);
            }

            return(minutes.Median());
        }
Exemplo n.º 30
0
        public static double GetMedianTimePerSlide(List <VisitRecord> visits, SlideType slideType)
        {
            if (visits.Count > 0)
            {
                var group = visits
                            .OrderBy(x => x.DateTime)
                            .GroupBy(x => x.UserId)
                            .SelectMany(x => x.Select(v => new { v.SlideType, v.DateTime }).Bigrams())
                            .Where(x => x.Item1.SlideType == slideType)
                            .Select(x => (x.Item2.DateTime - x.Item1.DateTime).TotalMinutes)
                            .Where(x => x >= 1 && x <= 120);

                if (group.Count() > 0)
                {
                    return(group.Median());
                }
            }
            return(0);
        }
Exemplo n.º 31
0
 public static double GetMedianTimePerSlide(List <VisitRecord> visits, SlideType slideType)
 {
     try
     {
         var l = visits
                 .OrderBy(x => x.DateTime)
                 .GroupBy(x => x.UserId)
                 .SelectMany(x => x.Bigrams())
                 .Where(x => x.Item1.SlideType == slideType)
                 .Select(x => (x.Item2.DateTime - x.Item1.DateTime).TotalMinutes)
                 .Where(x => x >= 1 && x <= 120)
                 .Median();
         return(l);
     }
     catch
     {
         return(0);
     }
 }
Exemplo n.º 32
0
        public static double GetMedianTimePerSlide(List <VisitRecord> visits, SlideType slideType)
        {
            if (visits.Count == 0)
            {
                return(0);
            }
            var a = visits.OrderBy(visit => visit.UserId)
                    .ThenBy(x => x.DateTime)
                    .Bigrams();
            var b = a.Where(bigramm => bigramm.Item1.SlideType.Equals(slideType))
                    .Select(bigramm => GetTime(bigramm));
            var timeAll = b.Where(time => time <= 120 && time >= 1);

            if (timeAll.Count() == 0)
            {
                return(0);
            }
            return(timeAll.Median());
        }
Exemplo n.º 33
0
 private Practice()
 {
     _practiceName = "Neimenovano";
     try
     {
         var sdfjk = Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName);
         if (File.Exists(Path.GetFullPath("../../Resources/apps_icq2.png")))
             _practiceIconPath = Path.GetFullPath("../../Resources/apps_icq2.png");
         else
             _practiceIconPath = Path.GetFullPath("Resources/apps_icq2.png");
     }
     catch
     {
         _practiceIconPath = "";
     }
     _defaultBackground = Brushes.White;
     _slides = new LinkedList<Slide>();
     _practiceType = SlideType.Empty;
     State = new XmlDocument();
     ObjectIdCounter = 0;
     SlideFactory.ResetCounter();
 }
Exemplo n.º 34
0
    /*
     * Go To Slide
     * @param SlideType slide
     */
    public void GoToSlide(SlideType slide)
    {
        prevSlide = currentSlide;
        currentSlide = slide;

        if(currentSlide == SlideType.TEST)
            control.roundSetup = false;

        //	Animate the previous slide out
        PreviousLeave ();
    }
Exemplo n.º 35
0
    /*
     * Complete Objective
     * @param SlideType type
     * @param int objectiveIndex
     * @param int objectiveValue = -1
     */
    public void CompleteObjective(SlideType type, int objectiveIndex = 0, int objectiveValue = -1)
    {
        if (slideTimer.running || type != currentSlide)
            return;

        switch (type) {
        default:
            break;
        case SlideType.SHOOTING:
        case SlideType.WRIST:
            objectiveToggles[objectives[0]].isOn = true;
            objectives[0]++;

            //	Check to see if they are all on, if they are, set the slide timer to a couple seconds
            if(ObjectivesComplete())
            {
                slideTimer.time = 1;
                slideTimer.Start();
            }
            break;
        case SlideType.SCORING:
            if(objectiveIndex == 0 && objectiveValue >= 15)
                objectiveToggles[0].isOn = true;
            if(objectiveIndex == 1 && objectiveValue >= 3)
                objectiveToggles[1].isOn = true;

            if(ObjectivesComplete())
            {
                //	End current rounds go to next slide
                slideTimer.time = 1;
                slideTimer.Start();
            }
            break;
        case SlideType.CRADLING:
            objectiveToggles[objectives[0]].isOn = true;
            objectives[0]++;
            if(ObjectivesComplete())
            {
                slideTimer.time = 2;
                slideTimer.Start();
            }
            break;
        case SlideType.GOALIE1:
        case SlideType.GOALIE2:
        case SlideType.ORDERED:
        case SlideType.REINFORCED:
        case SlideType.HAZARD:
        case SlideType.MOVING:
            objectiveToggles[objectives[0]].isOn = true;
            objectives[0]++;
            if(ObjectivesComplete())
            {
                slideTimer.time = 0.5f;
                slideTimer.Start();
            }
            break;
        case SlideType.TEST:
            objectiveToggles[objectives[0]].isOn = true;
            objectives[0]++;
            if(ObjectivesComplete())
            {
                slideTimer.time = 1;
                slideTimer.Start();
            }
            break;
        }
    }
Exemplo n.º 36
0
 public void ExeFunctionCrushEffect(GameObject panelObj)
 {
     crushPanelObj = panelObj;
     pubbleSlideType = SlideType.SLIDE_CRUSH_TYPE;
     //冲击五行
     panelTransformNewPosY = transform.position.y + 5 * pubbleWorldMarginHeight;
     //1.5 是因为 冲击波光效的 大小为 222 是 泡泡的三倍
     crushPanelStopPosY = slideMostBottomObject.transform.position.y - 1.5f * pubbleWorldMarginHeight;
     SetDropButtonDisable();
 }
Exemplo n.º 37
0
        public override void deserialize(byte[] buffer, ref int offset)
        {
            size = 0;

            //Deserialize the index
            deserializeInt32(buffer, ref offset, ref index);
            size += sizeof(int);

            int slideType = 0;
            deserializeInt32(buffer, ref offset, ref slideType);
            type = (SlideType)slideType;

            size += sizeof(int);

            //Deserialize the duration list if it is an animation slide
            if (type == SlideType.Animation)
            {
                durationList = new List<int>();

                Int32 numDuration = 0;
                deserializeInt32(buffer, ref offset, ref numDuration);
                size += sizeof(int) * (numDuration + 1);

                //Deserialize the duration list
                for (int i = 0; i < numDuration; i++)
                {
                    Int32 duration = 0;
                    deserializeInt32(buffer, ref offset, ref duration);
                    durationList.Add(duration);
                }
            }

            /*
            //Deserialize the format
            int slideContentFormat = 0;
            deserializeInt32(buffer, ref offset, ref slideContentFormat);
            format = (SlideContentFormat)slideContentFormat;

            size += sizeof(int);

            //Deserialize and save the slides into hard-disk
            int dataSize = 0;
            deserializeInt32(buffer, ref offset, ref dataSize);
            size += sizeof(int) + dataSize;

            //Get the data size
            try
            {
                FileStream myStream = new FileStream(Source.LocalPath, FileMode.Create, System.IO.FileAccess.Write);
                myStream.Write(buffer, offset, dataSize);
                myStream.Close();

                //byte[] byteArrayIn = new byte[dataSize];

                //MemoryStream ms = new MemoryStream(buffer, offset, dataSize);

                //Image returnImage = Image.FromStream(ms);

                //returnImage.Save(Source.LocalPath);
               // ms.Close();

            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }

            //Increase the handled offset
            offset += dataSize;*/
        }
Exemplo n.º 38
0
 public void ChangeSlideStypeToStop()
 {
     orignCurrentType = pubbleSlideType;
     pubbleSlideType = SlideType.SLIDE_HANDLE_STOP_TYPE;
 }
Exemplo n.º 39
0
 /*
  * @brief       连消退后半格
  * @desc        每次连消都退后半格
  * @desc        冰冻效果不考虑在内
  */
 public void ExeFunctionGoOnEffect()
 {
     if (pubbleSlideType != SlideType.SLIDE_SNOW_TYPE && pubbleSlideType != SlideType.SLIDE_HANDLE_STOP_TYPE && pubbleSlideType != SlideType.SLIDE_CHALLANGE_TYPE)
     { 
         //非冰雪情况下, 非 购买步数情况下 后退,如果当前是生成 新泡泡,则不后退
         //修改为 后退 状态
         pubbleSlideType = SlideType.SLIDE_GOON_DISAPPEAR_TYPE;
         //后退之后的位置
         moveAfterPosY = transform.position.y + pubbleWorldMarginHeight / 2f;
     }
 }
Exemplo n.º 40
0
		public IEnumerable<Theme> GetThemes(SlideType slideType)
		{
			return _themes.Where(t => t.ApprovedSlides.Contains(slideType) || !ApprovedThemes.ContainsKey(slideType));
		}
Exemplo n.º 41
0
 public void SlideBuyStepType()
 {
     if (countStepMoveY < stepMoveDisY)
     {
         Vector3 transPos = transform.position;
         countStepMoveY += stepSlideSpeed * Time.deltaTime;
         Vector3 newTransPos = new Vector3(transPos.x, transPos.y + stepSlideSpeed * Time.deltaTime, transPos.z);
         transform.position = newTransPos;
     }
     else
     {
         //如果达到了之后,则:修改状态 为原先的状态
         pubbleSlideType = orignCurrentType;
     }
 }
Exemplo n.º 42
0
 public Slide()
 {
     Type = SlideType.Empty;
     SlideObjects = new List<IObject>();
 }
		public override Theme GetSelectedTheme(SlideType slideType)
		{
			return MediaMetaData.Instance.SettingsManager.GetSelectedTheme(slideType);
		}
 private static Slide CreateNewSlide(SlideType pType)
 {
     Slide slide = null;
     if (pType.Equals(SlideType.Empty))
         slide = SlideFactory.CreateEmptySlide();
     else if (pType.Equals(SlideType.TalkingPhotoAlbum))
     {
         slide = new TalkingPhotoAlbumSlideWidget();
         (slide as TalkingPhotoAlbumSlideWidget).Create();
         (slide as TalkingPhotoAlbumSlideWidget).Execute();
     }
     return slide;
 }
		public string GetSelectedThemeName(SlideType slideType)
		{
			return GetSelectedTheme(slideType).Name;
		}
        public void AddNewSlide(SlideType pType)
        {
            Slide slide = CreateNewSlide(pType);
            if (slide == null)
                return;

            canMainCanvas.SaveAllSlideData(_practice.GetSlideByPosition(_currentSlideNr));
            canMainCanvas.Children.Clear();
            canMainCanvas.Background = _practice.GetDefaultBackground();

            _slideNr++;
            _currentSlideNr++;

            // adding slide as the last slide
            if (_currentSlideNr.Equals(_slideNr))
            {
                _practice.AddNewSlide(slide);
                CheckButtonNextPreviousVisibility();

                // make new thumbnail
                Viewbox vb = MakeNewThumbnail();
                lbThumbs.Items.Add(vb);
                lbThumbs.SelectedIndex = _currentSlideNr;
            }

                //adding slide in the middle of list
            else
            {
                // add Slide to allSlides at correct position
                Slide previousSlide = _practice.GetSlideByPosition(_currentSlideNr - 1);
                _practice.AddNewSlide(previousSlide, slide);
                CheckButtonNextPreviousVisibility();

                // thumbnails must be updated
                List<Viewbox> thumbs = lbThumbs.Items.Cast<Viewbox>().ToList();
                lbThumbs.Items.Clear();
                Viewbox tmp = MakeNewThumbnail();

                for (int i = 0; i <= thumbs.Count; i++)
                {
                    if (i < _currentSlideNr)
                        lbThumbs.Items.Add(thumbs[i]);
                    else if (i == _currentSlideNr)
                        lbThumbs.Items.Add(tmp);
                    else
                        lbThumbs.Items.Add(thumbs[i - 1]);
                }
                lbThumbs.SelectedIndex = _currentSlideNr;
            }
            canMainCanvas.ShowSlideContent(_practice.GetSlideByPosition(_currentSlideNr));
        }
Exemplo n.º 47
0
 public void SlideGameOver()
 {
     pubbleSlideType = SlideType.SLIDE_STOP_TYPE;
     //
     StartCoroutine(GameManager.Instance.GameOverFunction());
 }
		public void SetSelectedTheme(SlideType slideType, string themeName, bool applyForAllSlidesTypes)
		{
			ApplyThemeForAllSlideTypes = applyForAllSlidesTypes;
			_themeSaveHelper.SetSelectedTheme(slideType, themeName, applyForAllSlidesTypes);
		}
Exemplo n.º 49
0
		public IEnumerable<Theme> GetThemes(SlideType slideType)
		{
			if (!ApprovedThemes.ContainsKey(slideType))
				return _themes;
			return ApprovedThemes[slideType]
				.OrderByDescending(themeInfo => themeInfo.IsDefault)
				.Select(themeInfo => _themes.FirstOrDefault(theme => theme.Name == themeInfo.ThemName))
				.Where(theme => theme != null);
		}
Exemplo n.º 50
0
 //当前存在问题的可能是 冰冻效果
 public void RestoreSlideType()
 {
     pubbleSlideType = lastSlideType;
 }
Exemplo n.º 51
0
 public void StarEndBuyStepMove()
 {
     //目前统一定好 退 4格 ,看效果
     stepMoveDisY = pubbleWorldMarginHeight * 4;
     pubbleSlideType = SlideType.SLIDE_BUY_STEP_END_TYPE;
     //currentType
 }
Exemplo n.º 52
0
 public List<Slide> GetSlideFor(SlideType slt)
 {
     SqlParameter[] sprms = new SqlParameter[] { new SqlParameter("@SlideType", slt) };
     DataTable dt = _dataAccess.Query("SlideAPI_GetSlides", sprms);
     return EntityHelper<Slide>.ConvertToList(dt);
 }
Exemplo n.º 53
0
 void SlideGoonDisappearType()
 {
     if (transform.position.y < moveAfterPosY)
     {
         Vector3 transPos = transform.position;
         Vector3 newTransPos = new Vector3(transPos.x, transPos.y + goonDisappearSpeed * Time.deltaTime, transPos.z);
         transform.position = newTransPos;
     }
     else
     { 
         //如果达到了之后,则:修改状态
         pubbleSlideType = SlideType.SLIDE_CONSTANT_TYPE;
     }
 }
Exemplo n.º 54
0
 public void PauseSlide()
 {
     lastSlideType = pubbleSlideType;
     //暂停滑动
     pubbleSlideType = SlideType.SLIDE_PAUSE_STOP_TYPE;
 }
Exemplo n.º 55
0
 void SlideCrushType()
 {
     if (crushPanelObj.transform.position.y < crushPanelStopPosY)
     {
         Vector3 myPos = crushPanelObj.transform.position;
         Vector3 newPos = new Vector3(0, myPos.y + crushSpeed * Time.deltaTime, myPos.z);
         crushPanelObj.transform.position = newPos;
     }
     else
     {
         //如果达到了停步位置,则整体上滑 五步
         if (transform.position.y < panelTransformNewPosY)
         {
             Vector3 transPos = transform.position;
             Vector3 newTransPos = new Vector3(transPos.x, transPos.y + crushSpeed * Time.deltaTime, transPos.z);
             transform.position = newTransPos;
         }
         else
         {
             //滑动完了:销毁特效,改当前为 匀速模式
             Destroy(crushPanelObj);
             pubbleSlideType = SlideType.SLIDE_CONSTANT_TYPE;
             //
             SetDropButtonActive();
         }
     }
 }
Exemplo n.º 56
0
		public void UpdatePageAccordingToggledButton(SlideType selectedSlide)
		{
			_selectedSlide = selectedSlide;
			switch (_selectedSlide)
			{
				case SlideType.Cleanslate:
					SlideCleanslate.SelectSlideType(selectedSlide);
					SlideCleanslate.UpdateOutputState();
					FormMain.Instance.LoadClick = SlideCleanslate.LoadClick;
					FormMain.Instance.OutputClick = SlideCleanslate.Output;
					FormMain.Instance.PreviewClick = SlideCleanslate.Preview;
					FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeLoad, SlideCleanslate.TooltipLoad);
					FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeHelp, SlideCleanslate.TooltipHelp);
					if (!Controls.Contains(SlideCleanslate))
						Controls.Add(SlideCleanslate);
					SlideCleanslate.BringToFront();
					break;
				case SlideType.Cover:
					SlideCover.SelectSlideType(selectedSlide);
					SlideCover.UpdateOutputState();
					FormMain.Instance.LoadClick = SlideCover.LoadClick;
					FormMain.Instance.OutputClick = SlideCover.Output;
					FormMain.Instance.PreviewClick = SlideCover.Preview;
					FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeLoad, SlideCover.TooltipLoad);
					FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeHelp, SlideCover.TooltipHelp);
					if (!Controls.Contains(SlideCover))
						Controls.Add(SlideCover);
					SlideCover.BringToFront();
					break;
				case SlideType.LeadoffStatement:
					SlideLeadoff.SelectSlideType(selectedSlide);
					SlideLeadoff.UpdateOutputState();
					FormMain.Instance.LoadClick = SlideLeadoff.LoadClick;
					FormMain.Instance.OutputClick = SlideLeadoff.Output;
					FormMain.Instance.PreviewClick = SlideLeadoff.Preview;
					FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeLoad, SlideLeadoff.TooltipLoad);
					FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeHelp, SlideLeadoff.TooltipHelp);
					if (!Controls.Contains(SlideLeadoff))
						Controls.Add(SlideLeadoff);
					SlideLeadoff.BringToFront();
					break;
				case SlideType.ClientGoals:
					SlideClientGoals.SelectSlideType(selectedSlide);
					SlideClientGoals.UpdateOutputState();
					FormMain.Instance.LoadClick = SlideClientGoals.LoadClick;
					FormMain.Instance.OutputClick = SlideClientGoals.Output;
					FormMain.Instance.PreviewClick = SlideClientGoals.Preview;
					FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeLoad, SlideClientGoals.TooltipLoad);
					FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeHelp, SlideClientGoals.TooltipHelp);
					if (!Controls.Contains(SlideClientGoals))
						Controls.Add(SlideClientGoals);
					SlideClientGoals.BringToFront();
					break;
				case SlideType.TargetCustomers:
					SlideTargetCustomers.SelectSlideType(selectedSlide);
					SlideTargetCustomers.UpdateOutputState();
					FormMain.Instance.LoadClick = SlideTargetCustomers.LoadClick;
					FormMain.Instance.OutputClick = SlideTargetCustomers.Output;
					FormMain.Instance.PreviewClick = SlideTargetCustomers.Preview;
					FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeLoad, SlideTargetCustomers.TooltipLoad);
					FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeHelp, SlideTargetCustomers.TooltipHelp);
					if (!Controls.Contains(SlideTargetCustomers))
						Controls.Add(SlideTargetCustomers);
					SlideTargetCustomers.BringToFront();
					break;
				case SlideType.SimpleSummary:
					SlideSimpleSummary.SelectSlideType(selectedSlide);
					SlideSimpleSummary.ResetTab();
					FormMain.Instance.LoadClick = SlideSimpleSummary.LoadClick;
					FormMain.Instance.OutputClick = SlideSimpleSummary.Output;
					FormMain.Instance.PreviewClick = SlideSimpleSummary.Preview;
					FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeLoad, SlideSimpleSummary.TooltipLoad);
					FormMain.Instance.superTooltip.SetSuperTooltip(FormMain.Instance.buttonItemHomeHelp, SlideSimpleSummary.TooltipHelp);
					if (!Controls.Contains(SlideSimpleSummary))
						Controls.Add(SlideSimpleSummary);
					SlideSimpleSummary.BringToFront();
					break;
				default:
					pnEmpty.BringToFront();
					break;
			}
		}
Exemplo n.º 57
0
 /*
  * @brief       创建完成后,所有的泡泡从下往上滑动展示左右泡泡
  * @desc        滑至limitWorldDis 处停止滑动,开始缓缓下落
  */
 public IEnumerator SlidePanelShowAllPubble()
 {
     //使用lerp方法
     float speedMove = 1.2f;
     //目标位置就是 至limitWorldDis 处
     Vector3 targetPos = new Vector3(transform.position.x, limitWorldDis, transform.position.z);
     //判断当前的 滑动类型:如果是展示,则展示
     while (pubbleSlideType == SlideType.SLIDE_SHOW_TYPE)
     {
         //使用Lerp方法
         transform.position = Vector3.Lerp(transform.position, targetPos, speedMove * Time.deltaTime);
         //如果快要接近目标位置的时候,修改游戏状态,使其可以发射泡泡了
         //当然后面可能会添加开始动画,那个时候需要再动画执行之后才修改 state
         if (GameManager.Instance.CurrentStateIsPrepare() && Mathf.Abs(targetPos.y - transform.position.y) < 0.3f)
         {
             GameManager.Instance.SetStateToPlaying();
         }
         //如果滑动小于 这个数值的时候,直接不再循环,修改状态到匀速滑动
         if (Mathf.Abs(targetPos.y - transform.position.y) < 0.02)
         {
             pubbleSlideType = SlideType.SLIDE_CONSTANT_TYPE;
         }
         yield return null;
     }
     //展示完成之后,开始进行匀速滑动
     StartCoroutine(ManageSlideAction());
     yield return null;
 }
        public static void Slide(this UIView view, SlideType type, float from, float to, Action complete = null)
        {
            CGRect detailRect = (CGRect)view.Frame;

            UIView.AnimateNotify(DURATION, (Action)delegate
                {
                    switch (type)
                    {
                        case SlideType.Horizontal:
                            view.Frame = new CGRect(from, detailRect.Y, detailRect.Width, detailRect.Height);
                            view.Frame = new CGRect(to, detailRect.Y, detailRect.Width, detailRect.Height);
                            break;
                        case SlideType.Vertical:
                            view.Frame = new CGRect(detailRect.X, from, detailRect.Width, detailRect.Height);
                            view.Frame = new CGRect(detailRect.X, to, detailRect.Width, detailRect.Height);
                            break;
                    }
                }, (UICompletionHandler)delegate(bool finished)
                {
                    if (complete != null)
                    {
                        complete();
                    }
                });
        }
Exemplo n.º 59
0
        public static SlidePart CloneSlide(this SlidePart templatePart, SlideType type)
        {
            Repository.Utility.WriteLog("CloneSlide started", System.Diagnostics.EventLogEntryType.Information);
            // find the presentationPart: makes the API more fluent
            var presentationPart = templatePart.GetParentParts().OfType<PresentationPart>().Single();

            int i = presentationPart.SlideParts.Count();

            // clone slide contents
            var slidePartClone = presentationPart.AddNewPart<SlidePart>("newSlide" + i);
            slidePartClone.FeedData(templatePart.GetStream(FileMode.Open));

            // copy layout part
            slidePartClone.AddPart(templatePart.SlideLayoutPart, templatePart.GetIdOfPart(templatePart.SlideLayoutPart));

            if (type == SlideType.Grid)
            {

                foreach (IdPartPair part in templatePart.Parts)
                {
                    var tPart = templatePart.GetPartById(part.RelationshipId);

                    var embeddedPackagePart = tPart as EmbeddedPackagePart;
                    if (embeddedPackagePart != null)
                    {
                        var newPart = slidePartClone.AddEmbeddedPackagePart(embeddedPackagePart.ContentType);
                        newPart.FeedData(embeddedPackagePart.GetStream());
                        slidePartClone.ChangeIdOfPart(newPart, templatePart.GetIdOfPart(embeddedPackagePart));
                    }

                    var vmlDrawingPart = tPart as VmlDrawingPart;
                    if (vmlDrawingPart != null)
                    {
                        var newPart = slidePartClone.AddNewPart<VmlDrawingPart>();
                        newPart.FeedData(vmlDrawingPart.GetStream());

                        var drawingImg = vmlDrawingPart.ImageParts.ToList()[0];
                        var newImgPart = newPart.AddImagePart(drawingImg.ContentType, templatePart.GetIdOfPart(drawingImg));
                        newImgPart.FeedData(drawingImg.GetStream());
                    }

                    var imagePart = tPart as ImagePart;
                    if (imagePart != null)
                    {
                        var newPart = slidePartClone.AddImagePart(imagePart.ContentType, templatePart.GetIdOfPart(imagePart));
                        newPart.FeedData(imagePart.GetStream());
                    }

                }

            }
            else
            {
                foreach (ChartPart cpart in templatePart.ChartParts)
                {
                    ChartPart newcpart = slidePartClone.AddNewPart<ChartPart>(templatePart.GetIdOfPart(cpart));
                    newcpart.FeedData(cpart.GetStream());
                    // copy the embedded excel file
                    EmbeddedPackagePart epart = newcpart.AddEmbeddedPackagePart(cpart.EmbeddedPackagePart.ContentType);
                    epart.FeedData(cpart.EmbeddedPackagePart.GetStream());
                    // link the excel to the chart
                    newcpart.ChartSpace.GetFirstChild<ExternalData>().Id = newcpart.GetIdOfPart(epart);
                    newcpart.ChartSpace.Save();
                }

            }
            Repository.Utility.WriteLog("CloneSlide completed successfully", System.Diagnostics.EventLogEntryType.Information);
            return slidePartClone;
        }
		public Theme GetSelectedTheme(SlideType slideType)
		{
			return _themeSaveHelper.GetSelectedTheme(slideType);
		}