public void Should_have_white_color_by_default() { var slideStyle = new SlideStyle("Hello"); Assert.AreEqual(Color.WhiteSmoke, slideStyle.Colors[0]); Assert.AreEqual(Color.Empty, slideStyle.Backgrounds[0]); }
public void Should_have_two_styles_of_text() { SlideStyle.TryParse("<b>test</b> styles", out var slideStyle); Assert.AreEqual(2, slideStyle.Texts.Count); Assert.AreEqual(" styles", slideStyle.Texts[1]); Assert.AreEqual(2, slideStyle.Colors.Count); }
public void Should_have_bold_style() { var slideStyle = new SlideStyle(); slideStyle.MakeBold("Hello"); Assert.AreEqual(FontStyle.Bold, slideStyle.Styles[0]); }
private static void PlaceTextOnPicture(Slide slide, Bitmap resizedBackground) { var offset = new Offset(100, 150, WordStyles.CommonFontSize, 400); SlideStyle.TryParse(slide.Text, out var slideStyle); for (int i = 0; i < slideStyle.Texts.Count; ++i) { WordStyle wordStyle = WordStyles.GetWordStyle( slideStyle.Styles[i], slideStyle.Colors[i], slideStyle.Backgrounds[i], WordStyles.CommonFontSize); var words = ExtractWordsFromText(slideStyle.Texts[i]); for (var j = 0; j < words.Length; j++) { var word = words[j]; if (word.Contains('\n')) { word = word.Replace("\n", ""); offset.NewLine(); } DrawWord(resizedBackground, word, wordStyle, offset); offset.TryMakeNewLine(); } } }
public void Should_have_regular_style_by_default() { SlideStyle.TryParse("test", out var slideStyle); Assert.AreEqual(FontStyle.Regular, slideStyle.Styles[0]); Assert.AreEqual("test", slideStyle.Texts[0]); Assert.AreEqual(Color.Empty, slideStyle.Backgrounds[0]); }
public static bool TryParse(string input, out SlideStyle slideStyle) { //при усложнении -- стек как в задаче про скобки slideStyle = new SlideStyle(); if (ExtractTag(input, "b", out string text)) { slideStyle.MakeBold(text); } else if (ExtractTag(input, "i", out text)) { slideStyle.MakeItalic(text); } slideStyle.ExtractColor(input); int plainTextBegins = FindWhereTagEndsInText(input); slideStyle.MakeTextPlain(input, plainTextBegins); return(true); }
public void AttachToActivity(Activity activity, SlideStyle slideStyle, bool actionbarOverlay) { if (Parent != null) { throw new ArgumentException("This SlidingMenu appears to already be attached"); } // get the window background var a = activity.Theme.ObtainStyledAttributes(new[] { Android.Resource.Attribute.WindowBackground }); var background = a.GetResourceId(0, 0); a.Recycle(); switch (slideStyle) { case SlideStyle.Window: _mActionbarOverlay = false; var decor = (ViewGroup)activity.Window.DecorView; var decorChild = (ViewGroup)decor.GetChildAt(0); // save ActionBar themes that have transparent assets decorChild.SetBackgroundResource(background); decor.RemoveView(decorChild); decor.AddView(this); SetContent(decorChild); break; case SlideStyle.Content: _mActionbarOverlay = actionbarOverlay; // take the above view out of var contentParent = (ViewGroup)activity.FindViewById(Android.Resource.Id.Content); var content = contentParent.GetChildAt(0); contentParent.RemoveView(content); contentParent.AddView(this); SetContent(content); // save people from having transparent backgrounds if (content.Background == null) { content.SetBackgroundResource(background); } break; } }
public void Should_be_two_colors_by_tag() { string inputString = GetColorText("My", Color.Red) + " " + GetColorText("test", Color.Blue); SlideStyle.TryParse(inputString, out var slideStyle); var expectedColor = new Color[] { Color.Red, Color.Blue }; var textElements = new string[] { "My", "test" }; var colorIterator = slideStyle.Colors.GetEnumerator(); var textIterator = slideStyle.Texts.GetEnumerator(); for (int i = 0; i < expectedColor.Length; ++i) { Assert.IsTrue(colorIterator.MoveNext()); Assert.IsTrue(ColorsAreEqual(expectedColor[i], colorIterator.Current)); Assert.IsTrue(textIterator.MoveNext()); Assert.AreEqual(textElements[i], textIterator.Current); } }
public void Should_be_two_backgrounds() { var twoColorString = GetColorBackground("My", Color.Red) + " " + GetColorBackground("test", Color.Blue); SlideStyle.TryParse(twoColorString, out var slideStyle); var expectedColor = new Color[] { Color.Red, Color.Blue }; var textElements = new string[] { "My", "test" }; var backgroundIterator = slideStyle.Backgrounds.GetEnumerator(); var textIterator = slideStyle.Texts.GetEnumerator(); for (int i = 0; i < expectedColor.Length; ++i) { Assert.IsTrue(backgroundIterator.MoveNext()); Assert.IsTrue(ColorsAreEqual(expectedColor[i], backgroundIterator.Current)); Assert.IsTrue(textIterator.MoveNext()); Assert.AreEqual(textElements[i], textIterator.Current); } }
public void AttachToActivity(Activity activity, SlideStyle slideStyle) { AttachToActivity(activity, slideStyle, false); }
public void AttachToActivity(Activity activity, SlideStyle slideStyle, bool actionbarOverlay) { if (Parent != null) throw new ArgumentException("This SlidingMenu appears to already be attached"); // get the window background var a = activity.Theme.ObtainStyledAttributes(new[] { Android.Resource.Attribute.WindowBackground }); var background = a.GetResourceId(0, 0); a.Recycle(); switch (slideStyle) { case SlideStyle.Window: _mActionbarOverlay = false; var decor = (ViewGroup)activity.Window.DecorView; var decorChild = (ViewGroup)decor.GetChildAt(0); // save ActionBar themes that have transparent assets decorChild.SetBackgroundResource(background); decor.RemoveView(decorChild); decor.AddView(this); SetContent(decorChild); break; case SlideStyle.Content: _mActionbarOverlay = actionbarOverlay; // take the above view out of var contentParent = (ViewGroup)activity.FindViewById(Android.Resource.Id.Content); var content = contentParent.GetChildAt(0); contentParent.RemoveView(content); contentParent.AddView(this); SetContent(content); // save people from having transparent backgrounds if (content.Background == null) content.SetBackgroundResource(background); break; } }
public void Should_change_color_by_tag() { SlideStyle.TryParse(GetColorText("test", Color.Red), out var slideStyle); Assert.IsTrue(ColorsAreEqual(Color.Red, slideStyle.Colors[0])); }
public void Should_change_background_by_tag() { SlideStyle.TryParse(GetColorBackground("test", Color.Red), out var slideStyle); Assert.IsTrue(ColorsAreEqual(Color.Red, slideStyle.Backgrounds[0])); }
public void Make_italic_from_tag() { SlideStyle.TryParse("<i>test</i>", out var slideStyle); Assert.AreEqual(FontStyle.Italic, slideStyle.Styles[0]); }
public void SmokeTest() { var slideStyle = new SlideStyle("Hello"); }
public void Should_have_default_style() { var slideStyle = new SlideStyle("Hello"); Assert.AreEqual(FontStyle.Regular, slideStyle.Styles[0]); }
public void Should_have_bold_style_when_text_tag() { SlideStyle.TryParse("<b>\r\n\"test\"</b>", out var slideStyle); Assert.AreEqual(FontStyle.Bold, slideStyle.Styles[0]); Assert.AreEqual("\r\n\"test\"", slideStyle.Texts[0]); }
public void Should_be_blue_by_tag() { SlideStyle.TryParse(GetColorText("test", Color.Blue), out var slideStyle); Assert.IsTrue(ColorsAreEqual(Color.Blue, slideStyle.Colors[0])); }