From c0e9c534de1eff8c530cb0cbf9d7f6f7224e7a7c Mon Sep 17 00:00:00 2001 From: azakhi Date: Tue, 21 Aug 2018 17:03:42 +0300 Subject: [PATCH] Add temporary block type for new type --- .../BlockItemBaseTypes/StringBlockItem.cs | 35 ++++++++++++++ .../BlockItemTypes/IconBlockItem.cs | 21 +++++++++ .../Filtration.ObjectModel.csproj | 2 + Filtration.ObjectModel/ItemFilterBlock.cs | 10 ++++ .../Services/TestItemFilterBlockTranslator.cs | 43 +++++++++++++++++- .../Services/ItemFilterBlockTranslator.cs | 17 +++++++ Filtration/Converters/DropIconConverter.cs | 36 +++++++++++++++ Filtration/Filtration.csproj | 14 ++++++ Filtration/Resources/DropIcons/Icon1.png | Bin 0 -> 9436 bytes Filtration/Resources/DropIcons/Icon2.png | Bin 0 -> 8037 bytes Filtration/Resources/DropIcons/Icon3.png | Bin 0 -> 6402 bytes Filtration/Resources/DropIcons/Icon4.png | Bin 0 -> 7424 bytes Filtration/Resources/DropIcons/Icon5.png | Bin 0 -> 6178 bytes Filtration/Resources/DropIcons/Icon6.png | Bin 0 -> 8934 bytes Filtration/UserControls/BlockItemControl.xaml | 7 +++ .../UserControls/BlockItemControl.xaml.cs | 4 ++ .../UserControls/ImageComboBoxControl.xaml | 26 +++++++++++ .../UserControls/ImageComboBoxControl.xaml.cs | 28 ++++++++++++ .../ViewModels/ItemFilterBlockViewModel.cs | 7 ++- Filtration/Views/ItemFilterBlockView.xaml | 5 +- 20 files changed, 250 insertions(+), 5 deletions(-) create mode 100644 Filtration.ObjectModel/BlockItemBaseTypes/StringBlockItem.cs create mode 100644 Filtration.ObjectModel/BlockItemTypes/IconBlockItem.cs create mode 100644 Filtration/Converters/DropIconConverter.cs create mode 100644 Filtration/Resources/DropIcons/Icon1.png create mode 100644 Filtration/Resources/DropIcons/Icon2.png create mode 100644 Filtration/Resources/DropIcons/Icon3.png create mode 100644 Filtration/Resources/DropIcons/Icon4.png create mode 100644 Filtration/Resources/DropIcons/Icon5.png create mode 100644 Filtration/Resources/DropIcons/Icon6.png create mode 100644 Filtration/UserControls/ImageComboBoxControl.xaml create mode 100644 Filtration/UserControls/ImageComboBoxControl.xaml.cs diff --git a/Filtration.ObjectModel/BlockItemBaseTypes/StringBlockItem.cs b/Filtration.ObjectModel/BlockItemBaseTypes/StringBlockItem.cs new file mode 100644 index 0000000..3d3f879 --- /dev/null +++ b/Filtration.ObjectModel/BlockItemBaseTypes/StringBlockItem.cs @@ -0,0 +1,35 @@ +using System.Windows.Media; + +namespace Filtration.ObjectModel.BlockItemBaseTypes +{ + public abstract class StringBlockItem : BlockItemBase, IAudioVisualBlockItem + { + private string _value; + + protected StringBlockItem() + { + } + + protected StringBlockItem(string value) + { + Value = value; + } + + public override string OutputText => PrefixText + " " + Value; + + public override string SummaryText => string.Empty; + public override Color SummaryBackgroundColor => Colors.Transparent; + public override Color SummaryTextColor => Colors.Transparent; + + public string Value + { + get { return _value; } + set + { + _value = value; + IsDirty = true; + OnPropertyChanged(); + } + } + } +} \ No newline at end of file diff --git a/Filtration.ObjectModel/BlockItemTypes/IconBlockItem.cs b/Filtration.ObjectModel/BlockItemTypes/IconBlockItem.cs new file mode 100644 index 0000000..4d84203 --- /dev/null +++ b/Filtration.ObjectModel/BlockItemTypes/IconBlockItem.cs @@ -0,0 +1,21 @@ +using Filtration.ObjectModel.BlockItemBaseTypes; + +namespace Filtration.ObjectModel.BlockItemTypes +{ + public class IconBlockItem : StringBlockItem + { + public IconBlockItem() + { + Value = "Icon1"; + } + + public IconBlockItem(string value) : base(value) + { + } + + public override string PrefixText => "Icon"; + public override int MaximumAllowed => 1; + public override string DisplayHeading => "Drop Icon"; + public override int SortOrder => 28; + } +} diff --git a/Filtration.ObjectModel/Filtration.ObjectModel.csproj b/Filtration.ObjectModel/Filtration.ObjectModel.csproj index 8db75c7..fcf9bdc 100644 --- a/Filtration.ObjectModel/Filtration.ObjectModel.csproj +++ b/Filtration.ObjectModel/Filtration.ObjectModel.csproj @@ -53,6 +53,7 @@ + @@ -65,6 +66,7 @@ + diff --git a/Filtration.ObjectModel/ItemFilterBlock.cs b/Filtration.ObjectModel/ItemFilterBlock.cs index 76eee4f..831d3d0 100644 --- a/Filtration.ObjectModel/ItemFilterBlock.cs +++ b/Filtration.ObjectModel/ItemFilterBlock.cs @@ -23,6 +23,7 @@ namespace Filtration.ObjectModel Color DisplayTextColor { get; } Color DisplayBorderColor { get; } double DisplayFontSize { get; } + string DisplayIcon { get; } bool HasBlockItemOfType(); bool HasBlockGroupInParentHierarchy(ItemFilterBlockGroup targetBlockGroup, ItemFilterBlockGroup startingBlockGroup); } @@ -260,5 +261,14 @@ namespace Filtration.ObjectModel return fontSizeBlockItem?.Value ?? 34; } } + + public string DisplayIcon + { + get + { + var displayIcon = BlockItems.OfType().FirstOrDefault(); + return (displayIcon != null) ? displayIcon.Value : ""; + } + } } } diff --git a/Filtration.Parser.Tests/Services/TestItemFilterBlockTranslator.cs b/Filtration.Parser.Tests/Services/TestItemFilterBlockTranslator.cs index c63fcc8..7ed7f01 100644 --- a/Filtration.Parser.Tests/Services/TestItemFilterBlockTranslator.cs +++ b/Filtration.Parser.Tests/Services/TestItemFilterBlockTranslator.cs @@ -890,6 +890,23 @@ namespace Filtration.Parser.Tests.Services Assert.AreEqual(1, result.BlockItems.Count(b => b is DisableDropSoundBlockItem)); var blockItem = result.BlockItems.OfType().First(); Assert.IsTrue(blockItem.BooleanValue); + } + + [Test] + public void TranslateStringToItemFilterBlock_DropIcon_ReturnsCorrectObject() + { + // Arrange + var inputString = "Show" + Environment.NewLine + + " Icon Icon1"; + + // Act + var result = _testUtility.Translator.TranslateStringToItemFilterBlock(inputString, _testUtility.MockItemFilterScript); + + // Assert + + Assert.AreEqual(1, result.BlockItems.Count(b => b is IconBlockItem)); + var blockItem = result.BlockItems.OfType().First(); + Assert.AreEqual("Icon1", blockItem.Value); } [Test] @@ -925,7 +942,8 @@ namespace Filtration.Parser.Tests.Services " SetBorderColor 0 0 0" + Environment.NewLine + " SetFontSize 50" + Environment.NewLine + " PlayAlertSound 3" + Environment.NewLine + - " DisableDropSound False" + Environment.NewLine; + " DisableDropSound False" + Environment.NewLine + + " Icon Icon2" + Environment.NewLine; // Act var result = _testUtility.Translator.TranslateStringToItemFilterBlock(inputString, _testUtility.MockItemFilterScript); @@ -1030,6 +1048,9 @@ namespace Filtration.Parser.Tests.Services var disableDropSoundBlockItem = result.BlockItems.OfType().First(); Assert.IsFalse(disableDropSoundBlockItem.BooleanValue); + + var iconBlockItem = result.BlockItems.OfType().First(); + Assert.AreEqual("Icon2", iconBlockItem.Value); } [Test] @@ -1856,6 +1877,22 @@ namespace Filtration.Parser.Tests.Services Assert.AreEqual(expectedResult, result); } + [Test] + public void TranslateItemFilterBlockToString_DropIcon_ReturnsCorrectString() + { + // Arrange + var expectedResult = "Show" + Environment.NewLine + + " Icon Icon3"; + + _testUtility.TestBlock.BlockItems.Add(new IconBlockItem("Icon3")); + + // Act + var result = _testUtility.Translator.TranslateItemFilterBlockToString(_testUtility.TestBlock); + + // Assert + Assert.AreEqual(expectedResult, result); + } + [Test] public void TranslateItemFilterBlockToString_Everything_ReturnsCorrectString() { @@ -1887,7 +1924,8 @@ namespace Filtration.Parser.Tests.Services " SetBorderColor 255 1 254" + Environment.NewLine + " SetFontSize 50" + Environment.NewLine + " PlayAlertSound 6 90" + Environment.NewLine + - " DisableDropSound True"; + " DisableDropSound True" + Environment.NewLine + + " Icon Icon4"; _testUtility.TestBlock.BlockItems.Add(new ActionBlockItem(BlockAction.Show)); _testUtility.TestBlock.BlockItems.Add(new IdentifiedBlockItem(true)); @@ -1931,6 +1969,7 @@ namespace Filtration.Parser.Tests.Services _testUtility.TestBlock.BlockItems.Add(new ShapedMapBlockItem(true)); _testUtility.TestBlock.BlockItems.Add(new ElderMapBlockItem(true)); _testUtility.TestBlock.BlockItems.Add(new DisableDropSoundBlockItem(true)); + _testUtility.TestBlock.BlockItems.Add(new IconBlockItem("Icon4")); // Act var result = _testUtility.Translator.TranslateItemFilterBlockToString(_testUtility.TestBlock); diff --git a/Filtration.Parser/Services/ItemFilterBlockTranslator.cs b/Filtration.Parser/Services/ItemFilterBlockTranslator.cs index cfe23d4..9f306fb 100644 --- a/Filtration.Parser/Services/ItemFilterBlockTranslator.cs +++ b/Filtration.Parser/Services/ItemFilterBlockTranslator.cs @@ -297,6 +297,23 @@ namespace Filtration.Parser.Services AddBooleanItemToBlockItems(block, trimmedLine); break; } + case "Icon": + { + // Only ever use the last PlayAlertSound item encountered as multiples aren't valid. + RemoveExistingBlockItemsOfType(block); + + var match = Regex.Match(trimmedLine, @"\S+\s+(\S+)"); + + if (match.Success) + { + var blockItemValue = new IconBlockItem + { + Value = match.Groups[1].Value, + }; + block.BlockItems.Add(blockItemValue); + } + break; + } } } diff --git a/Filtration/Converters/DropIconConverter.cs b/Filtration/Converters/DropIconConverter.cs new file mode 100644 index 0000000..1f4b21a --- /dev/null +++ b/Filtration/Converters/DropIconConverter.cs @@ -0,0 +1,36 @@ +using System; +using System.Globalization; +using System.Windows.Data; + +namespace Filtration.Converters +{ + internal class DropIconConverter : IValueConverter + { + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + var iconString = (string)value; + switch(iconString) + { + case "Icon1": + return "/Filtration;component/Resources/DropIcons/Icon1.png"; + case "Icon2": + return "/Filtration;component/Resources/DropIcons/Icon2.png"; + case "Icon3": + return "/Filtration;component/Resources/DropIcons/Icon3.png"; + case "Icon4": + return "/Filtration;component/Resources/DropIcons/Icon4.png"; + case "Icon5": + return "/Filtration;component/Resources/DropIcons/Icon5.png"; + case "Icon6": + return "/Filtration;component/Resources/DropIcons/Icon6.png"; + } + + return ""; + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + throw new NotImplementedException(); + } + } +} \ No newline at end of file diff --git a/Filtration/Filtration.csproj b/Filtration/Filtration.csproj index 4e0f402..c6a582b 100644 --- a/Filtration/Filtration.csproj +++ b/Filtration/Filtration.csproj @@ -167,6 +167,7 @@ + @@ -190,6 +191,9 @@ EditableListBoxControl.xaml + + ImageComboBoxControl.xaml + ItemPreviewControl.xaml @@ -230,6 +234,10 @@ Designer MSBuild:Compile + + Designer + MSBuild:Compile + Designer MSBuild:Compile @@ -538,6 +546,12 @@ + + + + + + diff --git a/Filtration/Resources/DropIcons/Icon1.png b/Filtration/Resources/DropIcons/Icon1.png new file mode 100644 index 0000000000000000000000000000000000000000..38a43144f5d044ec1785fbbd39583e22d27eec07 GIT binary patch literal 9436 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 inmV@*>SJWT|33hLZ?p7Ham7~v0000-UoXC literal 0 HcmV?d00001 diff --git a/Filtration/Resources/DropIcons/Icon2.png b/Filtration/Resources/DropIcons/Icon2.png new file mode 100644 index 0000000000000000000000000000000000000000..8d10d5d8c7a5a4e51f01a61685f96578ecfb946e GIT binary patch literal 8037 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 literal 0 HcmV?d00001 diff --git a/Filtration/Resources/DropIcons/Icon3.png b/Filtration/Resources/DropIcons/Icon3.png new file mode 100644 index 0000000000000000000000000000000000000000..2ef3b30813ea306853c23f35eef12e5629af9c1c GIT binary patch literal 6402 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 QasU7T07*qoM6N<$g1}NdrT_o{ literal 0 HcmV?d00001 diff --git a/Filtration/Resources/DropIcons/Icon4.png b/Filtration/Resources/DropIcons/Icon4.png new file mode 100644 index 0000000000000000000000000000000000000000..b4717237bdade96de9c3a2e777765fc1579fc5a0 GIT binary patch literal 7424 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 Aq5uE@ literal 0 HcmV?d00001 diff --git a/Filtration/Resources/DropIcons/Icon6.png b/Filtration/Resources/DropIcons/Icon6.png new file mode 100644 index 0000000000000000000000000000000000000000..8febb46da6276b465ebbc9368a5aa7bcce6a668f GIT binary patch literal 8934 zcmVKLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000;fNkl{Qldh6}#n(9`o-5!sG5ME{MKp1S1Q&au+TW`I!KW?=~`vVp!KlTs(r_W4x*T+-$KKHrLy`m_JqA2jI*EzoE zR}lQ;Uh?OC@SgYX+9>(&N&D8 zN=l^w=bX!J5csm9RyG?ADJwy%6$C+0QS~|y1VK=*2Z10@5;Yoy0}2-e0Fb7DwZ?S2 zTBqq!a;nqq#__4n@foc}c^yO^5os*|2eY=#B?y9*&GqY*3W8cRGVdC!(t05o%zOUb~ zee2fo@qhO@zA|e$va}`=5J(atK#(y&?yLcFo4ecsQhKr)0@hlaTOfD2b>{*gksv{U zAObO?*zk^PUwVnC7Cry{d;jc%cRcmvpGo(Xus*g z4I6+o?dzeaKxP&b;KB?0W@-um3Rek$kr6?Bxt?U;oJ;5W8erB60%J0()W`@BhD3lz z6(uFGl&o4kF)=&aOLy+PZ2gfVS8TZQ$~!(dIT=MS|Ky1$K5%&*7eG6^#c1Gz0+;TjDoebs8M zU%zM1cOHN2(VK31-!1?45AMEu=Z<63m%Q!fo1IJ3AZRvUc_nwo5Up90nb*5OqoH*i zbAjkCFkqR{8mK6xk_0fuUtq5Cy(9swHCY&PCai1%nOTgr1~P=u=q1 z%YXUL4}JT#+oq<*#&+!jv^J&^{P0j_7h+&^RO`7p=bFvTEG}jS&^nIO6mTw0dm4b{ z*i%suq$$wTb8`zZP`D_n27tAh>1m)q?&jwKK&e_C$jnl2KqX2Afl?J^?Z}8ynaQnE z3-OA^%4RRs`m#$ubSH4dhR=L$W~#^~to2OfNI_XB$#zUk)AfBun2Jb7Yn{rVfW2{I;4 zE5XbRGvw%KZWm)~qo}V>oH#MdY_<>sM17MPz`3QAxmLhApl<{?HnnE?(o2seK<;|l z7{0+~6Yy25^~SZ!oJ{1)z5$3*8OJ~z8?$a*6d99Q0H~;D6L{$*t>66XTeb)YNKer2 z-G>hS(H~uZ{dXR}X7k34m#)9-KV&9%nQgZ#fs~%?bb_D~oKp(>%2!IUzG^gpFsz1+ zMx*i7uYBYFuYTqJ`)<4KlfU<+d(Izjx8FYgo4dN*%%-U)0RgRn)vL8WIj=R)Hz!WK z-T^Y3BxwprDM)J|vvJ%@fy|~U7ov*FEYM4j&mNm*7OvNUp=fxx8UnfL=`;m$*Gm^- zpfC&Fl?g!P$=5raY6~%tyRfXpg;Po?0it@n*(6d*DZm&aU&S%-mN!pM7H(qVcYpWZ zFRx!u^ut46{mZH3))c6Y!-k>-ARaBOm#l zkAC*E|76|l?AzXY!*+qp_KhclAh+GFbHHNq(^tA(pxb@fiz``(3)jK5CFN$jB`MeOiwQ*Krfw}>voxuqy%!Sb&>$iX}u5w1v0Z3 z^WRGekUNfGU@7f%0OyjWUK&LnEhTAMuS=OE&i&{}-&}g>Ew{Y-YG1Ejy?y)c-3Jal zckpix{qv6z336_9)H&yJ7e!~?%7tMVo7{~zUaEB%0?sWZ z-7erOV~))z<=oV3fB$#QX5nUMPtL7b{Ls3If2B zQnFMc3PZr7T7A_B00{CV6Th!Gkl3BWUF=AyYBkE zPcFt6U$kLEZgbmg4n@ajolBA=0s3a<`0-glU@18^!ztA5as(y`ccNMY1NF#c09f1C z&H)0}#xdYYU*#6ataC#V!)pw4kgtH;W|li623>%N1y$jU0SZ`Klr38jaH?}B9LKM` z0$AJW{PYzT?70Ktc>37MIi>nKS;}m)sdeEh!J0L_^zCo|7azOga=zBd$)3)PwF6!~ ziy~4uu8Mcw`QeXz;u8}SQ&VqT^XnH^!`wLsOiksE6+4k9tz}N?c3DBPl8>SSKt@Z6 zF+gV7Y>=`NR0F^{rMagjVsc;TE~S7#H53FGYfRw=@dy+!E_Xm*Yh5@7kyD%_SP+mI zpm4cO%g;Fsh!(osDdi3zS&JGC{$AezxiiKX!0I>-!$!loH>|#LyxZNf8fOilF?};X9|Un+xO&}_ah#^LI+4~|7cK~LtF^U&bA8R^Zj9DI0b>?pj*G>F zYw3ASX30zgY1-{32?JcO1DWlcUJ5vurLS|5Nch3zt{SkQ@)b~&GMI^{;>GQv-A32S50wQ~2I{zxtJX{`6blT1=D*tA$I`+=b!nY+rY~f*OqiK@dfN zz{+MV;-b(?ITE>=@{`TX+}zX@ATSgK0Ry8oU~Q7{W%c!9!a9zVoLvx)q|7Xf<6g>5 zJ_G9dc-1jEUo=9>1q4P&hunwe$0@z6umb zd#nbmanqDd0RfVGRs z>kI5=aB2-~uBoZ1DZry3s6{|QT!o1OBg4;}h-0RRY6uW16%8>*FUEkitP4FEhQq^rTmUE}Ydveju-P2o&}y9{ zfJ6my>zCEeBful>F^tU%U8W>g)7*Iy@JJ~J!dh#A!c|ml1^2K@F+(mUKyDY~#YMoA z^?FzZq^yS3kgNBJlWcHW3s}VQ$&+laNeKw51l1~6TT#j!PW8-kQd{dufK;Q=YMs$4 z!a3ash;qwSx|GM3-55`1CbIy`e3nbhxlPk#iMh)dKAtNLST|s`vZ}JKB=RI6$X6^|#A!BU z`BFG*`TJ~o5D5TM=B}p!Ujlu-%zcF;ssuoRN^pLQA4CvvBy$n+PGhn>DmpcPjsQw2 z$QWY;d6aWRf!+U>Hzn%i!dt6FA(%=S|D3kRu?rb|ltzZJ;D=SzI^+GBb!oc920tfN%ms zLjVv2=MMv(^d+aHD@P9e{eg*r(>j%nV_#`~a_%3I!XLWx_SURNGU*&FT;>6e@>0OOsN8ccw*bCUqUO0Bb3Kanc*sF?fm@g2_UyDhzn$< zbYn_aCQTO?%U<`4h#qj8K<;|{Zj&WIP~XfPXFZr(=5Xe|awOpfDaybJDrFBz$z0#* z96dV7m4gS*8bFUcNu;$Wm(qVYIuuH|7|+jJTR^~*T1#0`gBWEXGRyz*WvvEC$qmq; zYI{_Rh9c%VzECP#HlDQzSeqmzm+564N8}vKoZQAS1MD1N%wo(kDUMm!^)o)( z3VS}kAbwyT0c?9QP(;3BDyRlgq_se1jG3Jcf|K)4eE0Fkw{PFNbzwQ9r|U#@Jfr~^PXSW#o6lid-m89es?1}Q^S zQLOjai6-J18PGRL!fH-RZu)C=?x_bdOz5?BZ`(-qE`wCqSY!hID~ z*d<)i;LfC0H%34yz7HTX)6@0(%P-%3_v>Zn@xTL85_z;-PJU?s7n8m&V67mJe3c|m zKmF8`Pd*8(s2}<9gAW2km7p57+dwsJHj^ZGz={SSNGTS+EO4dd!FX<^tknSlzZ@3{ zVt_K^NtQnxF+9W)r99#3a#?Hwz&Qb5F^A=6xH$r>PX#>wJu%4$@}(-Ng^%y6p%Cz> z8rGsDkunU2qIP>_bAJBC!xvuYE9d6te>Sy!`_`@FKWxp=Ddj zS3?nVq$fREHca^z87S6|%z*{isvqb=0Zwt}0Hs(0MG^nblWbe{HITc$HijddTgRbj zMU6X-dfgabMNz%p=_pl;hN9_d9;vQdHx$15>cbB=n@>IYz5PGO_!*W~0? z8?U>L$GPpcQoi)nz|ub(I}3$#&KM@qPDg+M2kh7}IeGP_&DZYT`^cVq{`9%$uH8~m z=QXQg;eO*SH{CQouJr}OZ&>}(O9Rs9aa0t+YMrJ^S(_PAaFObj254Uco>Zz(+`%xp za|gi?GN?@Uyn<0cz#~po?sd5dqmn{A8AXj1#t=0cYu6@;N40vZH9f7AQWe#1w_2}F zKeO-Um!CWM@I#;f_d&2@$K>S1#2^2$N1hazp3ZH7+;uvhEPi3P@e5Wv%B3P&HjfG< ziIl#QvfX~?j_W2jZoKl!@9zDJzqsqJ!!J%uy!$;%si54w^*3&M?wnQDrbyG zfUl|nM_{eKY9vXBR@B$5X}5`nqVt;L`i4X1@8Y_rL$0JFee$)y5-7 zg20zbO-~nKr-q2Dx;Sm5okIkQa>b+IO$7)TlRE*AIvs0?oCLOR-L&b-@rkSU?|)>^ z7r*em?_ITVDVd)S!!&){B{#iyd^}BCt&x%0St+BaUZ0)K>|)$#G#bwJO_BtGwTtmW z7s$*)99GXXMtQ5sxdMY_AMSBWT?eIj6Q-gX4ZxF?U?|kumqTGC=yp9>4QtW#bS-jj zDLH!dyjHvY_o3@vfew>VPfLTd70B)Jne&I|=Kj|UZySrEQ}ciQKabBync3qrAN|;_T{mpMdef03{6MCs zr6iIvNu(@SJ&3by&?yy8kf3whOt9QD=B{vnBwv!`$l$$zit?l}xhq^|JDmc?RAktYXE^Rn|Yn7IIevw)P#)10#c(At5F-~&20 z_?xF;?zBJXNni3#OBf~zf4AKh5D+vyef_pATgJyPy_6Fp44;1bfd~HJ5C87R*G+ET zeC4VXF4Uzv9NR3wr!g>{pclLi2RoyH^$n`9zE(x z(?BU-20^)S2_Sd8(O3>2BL6-OcLef#g}}a zY&LM>7LIeplRP%1|A%8Lezm3lt1bQiudn|z0Fq*h1y4YxFaQ7m07*qoM6N<$g6?4v AnE(I) literal 0 HcmV?d00001 diff --git a/Filtration/UserControls/BlockItemControl.xaml b/Filtration/UserControls/BlockItemControl.xaml index a9f2962..5aa6466 100644 --- a/Filtration/UserControls/BlockItemControl.xaml +++ b/Filtration/UserControls/BlockItemControl.xaml @@ -131,6 +131,13 @@ + + + + + + + diff --git a/Filtration/UserControls/BlockItemControl.xaml.cs b/Filtration/UserControls/BlockItemControl.xaml.cs index 5af5c2f..70d9d0d 100644 --- a/Filtration/UserControls/BlockItemControl.xaml.cs +++ b/Filtration/UserControls/BlockItemControl.xaml.cs @@ -88,6 +88,10 @@ namespace Filtration.UserControls "ShFusing", "ShRegal", "ShVaal" }; + public List IconsAvailable => new List { + "Icon1", "Icon2", "Icon3", "Icon4", "Icon5", "Icon6" + }; + private void OnSetBlockColorCommmand() { var blockItem = BlockItem as ColorBlockItem; diff --git a/Filtration/UserControls/ImageComboBoxControl.xaml b/Filtration/UserControls/ImageComboBoxControl.xaml new file mode 100644 index 0000000..1494353 --- /dev/null +++ b/Filtration/UserControls/ImageComboBoxControl.xaml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + diff --git a/Filtration/UserControls/ImageComboBoxControl.xaml.cs b/Filtration/UserControls/ImageComboBoxControl.xaml.cs new file mode 100644 index 0000000..0921355 --- /dev/null +++ b/Filtration/UserControls/ImageComboBoxControl.xaml.cs @@ -0,0 +1,28 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace Filtration.UserControls +{ + /// + /// Interaction logic for ImageComboBoxControl.xaml + /// + public partial class ImageComboBoxControl : UserControl + { + public ImageComboBoxControl() + { + InitializeComponent(); + } + } +} diff --git a/Filtration/ViewModels/ItemFilterBlockViewModel.cs b/Filtration/ViewModels/ItemFilterBlockViewModel.cs index f582a56..67761fd 100644 --- a/Filtration/ViewModels/ItemFilterBlockViewModel.cs +++ b/Filtration/ViewModels/ItemFilterBlockViewModel.cs @@ -174,7 +174,8 @@ namespace Filtration.ViewModels typeof (FontSizeBlockItem), typeof (SoundBlockItem), typeof (PositionalSoundBlockItem), - typeof (DisableDropSoundBlockItem) + typeof (DisableDropSoundBlockItem), + typeof (IconBlockItem) }; public bool BlockEnabled @@ -214,7 +215,8 @@ namespace Filtration.ViewModels public Color DisplayBackgroundColor => Block.DisplayBackgroundColor; public Color DisplayBorderColor => Block.DisplayBorderColor; public double DisplayFontSize => Block.DisplayFontSize/1.8; - + public string DisplayIcon => Block.DisplayIcon; + public bool HasSound => Block.HasBlockItemOfType(); public bool HasPositionalSound => Block.HasBlockItemOfType(); @@ -437,6 +439,7 @@ namespace Filtration.ViewModels RaisePropertyChanged(nameof(DisplayBackgroundColor)); RaisePropertyChanged(nameof(DisplayBorderColor)); RaisePropertyChanged(nameof(DisplayFontSize)); + RaisePropertyChanged(nameof(DisplayIcon)); RaisePropertyChanged(nameof(HasSound)); } diff --git a/Filtration/Views/ItemFilterBlockView.xaml b/Filtration/Views/ItemFilterBlockView.xaml index 98b941c..f6bb64a 100644 --- a/Filtration/Views/ItemFilterBlockView.xaml +++ b/Filtration/Views/ItemFilterBlockView.xaml @@ -18,6 +18,7 @@ +