From 2877cba8908078ff4875f2abc13aaff5662d24e8 Mon Sep 17 00:00:00 2001 From: Vadim Lopatin Date: Thu, 2 Apr 2015 09:50:28 +0300 Subject: [PATCH] new example: DML editor --- dlangui.sln | 38 ++++ dub.json | 1 + examples/dmledit/dmledit.visualdproj | 210 ++++++++++++++++++ examples/dmledit/dub.json | 15 ++ examples/dmledit/src/dmledit.d | 20 ++ .../dmledit/views/res/hdpi/document-close.png | Bin 0 -> 1504 bytes .../views/res/hdpi/document-open-recent.png | Bin 0 -> 1576 bytes .../dmledit/views/res/hdpi/document-open.png | Bin 0 -> 1798 bytes .../views/res/hdpi/document-save-as.png | Bin 0 -> 2152 bytes .../dmledit/views/res/hdpi/document-save.png | Bin 0 -> 1263 bytes .../dmledit/views/res/hdpi/edit-clear.png | Bin 0 -> 2066 bytes examples/dmledit/views/res/hdpi/edit-copy.png | Bin 0 -> 828 bytes examples/dmledit/views/res/hdpi/edit-cut.png | Bin 0 -> 892 bytes .../dmledit/views/res/hdpi/edit-delete.png | Bin 0 -> 1259 bytes .../dmledit/views/res/hdpi/edit-paste.png | Bin 0 -> 1406 bytes examples/dmledit/views/res/hdpi/edit-redo.png | Bin 0 -> 1998 bytes examples/dmledit/views/res/hdpi/edit-undo.png | Bin 0 -> 2020 bytes examples/dmledit/views/res/i18n/en.ini | 36 +++ examples/dmledit/views/res/i18n/ru.ini | 34 +++ examples/dmledit/views/res/mdpi/cr3_logo.png | Bin 0 -> 8433 bytes .../dmledit/views/res/mdpi/document-close.png | Bin 0 -> 605 bytes .../views/res/mdpi/document-open-recent.png | Bin 0 -> 593 bytes .../dmledit/views/res/mdpi/document-open.png | Bin 0 -> 701 bytes .../views/res/mdpi/document-properties.png | Bin 0 -> 635 bytes .../views/res/mdpi/document-save-as.png | Bin 0 -> 771 bytes .../dmledit/views/res/mdpi/document-save.png | Bin 0 -> 559 bytes examples/dmledit/views/res/mdpi/edit-copy.png | Bin 0 -> 436 bytes examples/dmledit/views/res/mdpi/edit-cut.png | Bin 0 -> 368 bytes .../dmledit/views/res/mdpi/edit-indent.png | Bin 0 -> 413 bytes .../dmledit/views/res/mdpi/edit-paste.png | Bin 0 -> 598 bytes examples/dmledit/views/res/mdpi/edit-redo.png | Bin 0 -> 753 bytes examples/dmledit/views/res/mdpi/edit-undo.png | Bin 0 -> 810 bytes .../dmledit/views/res/mdpi/edit-unindent.png | Bin 0 -> 367 bytes examples/dmledit/views/resources.list | 16 ++ examples/example1/src/example1.d | 1 - src/dlangui/package.d | 2 + 36 files changed, 372 insertions(+), 1 deletion(-) create mode 100644 examples/dmledit/dmledit.visualdproj create mode 100644 examples/dmledit/dub.json create mode 100644 examples/dmledit/src/dmledit.d create mode 100644 examples/dmledit/views/res/hdpi/document-close.png create mode 100644 examples/dmledit/views/res/hdpi/document-open-recent.png create mode 100644 examples/dmledit/views/res/hdpi/document-open.png create mode 100644 examples/dmledit/views/res/hdpi/document-save-as.png create mode 100644 examples/dmledit/views/res/hdpi/document-save.png create mode 100644 examples/dmledit/views/res/hdpi/edit-clear.png create mode 100644 examples/dmledit/views/res/hdpi/edit-copy.png create mode 100644 examples/dmledit/views/res/hdpi/edit-cut.png create mode 100644 examples/dmledit/views/res/hdpi/edit-delete.png create mode 100644 examples/dmledit/views/res/hdpi/edit-paste.png create mode 100644 examples/dmledit/views/res/hdpi/edit-redo.png create mode 100644 examples/dmledit/views/res/hdpi/edit-undo.png create mode 100644 examples/dmledit/views/res/i18n/en.ini create mode 100644 examples/dmledit/views/res/i18n/ru.ini create mode 100644 examples/dmledit/views/res/mdpi/cr3_logo.png create mode 100644 examples/dmledit/views/res/mdpi/document-close.png create mode 100644 examples/dmledit/views/res/mdpi/document-open-recent.png create mode 100644 examples/dmledit/views/res/mdpi/document-open.png create mode 100644 examples/dmledit/views/res/mdpi/document-properties.png create mode 100644 examples/dmledit/views/res/mdpi/document-save-as.png create mode 100644 examples/dmledit/views/res/mdpi/document-save.png create mode 100644 examples/dmledit/views/res/mdpi/edit-copy.png create mode 100644 examples/dmledit/views/res/mdpi/edit-cut.png create mode 100644 examples/dmledit/views/res/mdpi/edit-indent.png create mode 100644 examples/dmledit/views/res/mdpi/edit-paste.png create mode 100644 examples/dmledit/views/res/mdpi/edit-redo.png create mode 100644 examples/dmledit/views/res/mdpi/edit-undo.png create mode 100644 examples/dmledit/views/res/mdpi/edit-unindent.png create mode 100644 examples/dmledit/views/resources.list diff --git a/dlangui.sln b/dlangui.sln index 398d18a2..c0b832ec 100644 --- a/dlangui.sln +++ b/dlangui.sln @@ -33,6 +33,8 @@ Project("{002A2DE9-8BB6-484D-9802-7E4AD4084715}") = "dlanguisfml", "..\dsfml_pro EndProject Project("{002A2DE9-8BB6-484D-9802-7E4AD4084715}") = "dsfml", "..\DSFML\dsfml\dsfml.visualdproj", "{DB490C05-D9F8-431C-91DD-CEE646A64FDA}" EndProject +Project("{002A2DE9-8BB6-484D-9802-7E4AD4084715}") = "dmledit", "examples\dmledit\dmledit.visualdproj", "{06D73450-2919-48A8-B2C3-738B12505D74}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug COFF32|Any CPU = Debug COFF32|Any CPU @@ -349,6 +351,42 @@ Global {DB490C05-D9F8-431C-91DD-CEE646A64FDA}.TestDebug|Win32.ActiveCfg = Debug|Win32 {DB490C05-D9F8-431C-91DD-CEE646A64FDA}.TestDebug|Win32.Build.0 = Debug|Win32 {DB490C05-D9F8-431C-91DD-CEE646A64FDA}.TestDebug|x64.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug COFF32|Any CPU.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug COFF32|Mixed Platforms.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug COFF32|Mixed Platforms.Build.0 = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug COFF32|Win32.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug COFF32|Win32.Build.0 = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug COFF32|x64.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug GDC|Any CPU.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug GDC|Mixed Platforms.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug GDC|Mixed Platforms.Build.0 = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug GDC|Win32.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug GDC|Win32.Build.0 = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug GDC|x64.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug LDC|Any CPU.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug LDC|Mixed Platforms.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug LDC|Mixed Platforms.Build.0 = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug LDC|Win32.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug LDC|Win32.Build.0 = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug LDC|x64.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug|Any CPU.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug|Mixed Platforms.Build.0 = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug|Win32.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug|Win32.Build.0 = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Debug|x64.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Release|Any CPU.ActiveCfg = Release|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Release|Mixed Platforms.ActiveCfg = Release|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Release|Mixed Platforms.Build.0 = Release|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Release|Win32.ActiveCfg = Release|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Release|Win32.Build.0 = Release|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.Release|x64.ActiveCfg = Release|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.TestDebug|Any CPU.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.TestDebug|Mixed Platforms.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.TestDebug|Mixed Platforms.Build.0 = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.TestDebug|Win32.ActiveCfg = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.TestDebug|Win32.Build.0 = Debug|Win32 + {06D73450-2919-48A8-B2C3-738B12505D74}.TestDebug|x64.ActiveCfg = Debug|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/dub.json b/dub.json index 0445bd7c..f9b4803b 100644 --- a/dub.json +++ b/dub.json @@ -35,6 +35,7 @@ "subPackages": [ "./examples/helloworld/", "./examples/example1/", + "./examples/dmledit/", "./examples/tetris/" ], diff --git a/examples/dmledit/dmledit.visualdproj b/examples/dmledit/dmledit.visualdproj new file mode 100644 index 00000000..3933df6e --- /dev/null +++ b/examples/dmledit/dmledit.visualdproj @@ -0,0 +1,210 @@ + + {06D73450-2919-48A8-B2C3-738B12505D74} + + 0 + 0 + 0 + 2 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 2.043 + 0 + 0 + 0 + 0 + 0 + $(CC) -c + 1 + $(DMDInstallDir)windows\bin\dmd.exe + $(SolutionDir)/src $(SolutionDir)/3rdparty $(SolutionDir)/3rdparty/libpng/source $(SolutionDir)/../DerelictGL3/source $(SolutionDir)/../DerelictUtil/source $(SolutionDir)/../DerelictFT/source $(SolutionDir)/../DerelictSDL2/source $(SolutionDir)/../de_image/source/interfaces $(SolutionDir)/../de_image/source/png $(SolutionDir)/../dlib + views views/res views/res/i18n views/res/mdpi + $(ConfigurationName) + $(OutDir) + + + 0 + + + + + 0 + + + 1 + $(IntDir)\$(TargetName).json + 0 + + 0 + Unicode USE_FREETYPE USE_OPENGL + 0 + 0 + 0 + + + + 0 + + 1 + $(VisualDInstallDir)cv2pdb\cv2pdb.exe + 0 + 0 + 0 + + + + ole32.lib kernel32.lib user32.lib comctl32.lib comdlg32.lib + + + + $(OutDir)\$(ProjectName).exe + 1 + 2 + + + + *.obj;*.cmd;*.build;*.json;*.dep + + + 0 + 0 + 0 + 2 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 2.043 + 0 + 0 + 0 + 0 + 0 + $(CC) -c + 1 + $(DMDInstallDir)windows\bin\dmd.exe + + + $(ConfigurationName) + $(OutDir) + + + 0 + + + + + 0 + + + 1 + $(IntDir)\$(TargetName).json + 0 + + 0 + + 0 + 0 + 0 + + + + 0 + + 0 + $(VisualDInstallDir)cv2pdb\cv2pdb.exe + 0 + 0 + 0 + + + + ole32.lib kernel32.lib user32.lib comctl32.lib comdlg32.lib + + + + $(OutDir)\$(ProjectName).exe + 1 + 1 + + + + *.obj;*.cmd;*.build;*.json;*.dep + + + + + + + diff --git a/examples/dmledit/dub.json b/examples/dmledit/dub.json new file mode 100644 index 00000000..5913f583 --- /dev/null +++ b/examples/dmledit/dub.json @@ -0,0 +1,15 @@ +{ + "name": "dmledit", + "description": "dlangui library example DML Editor", + "homepage": "https://github.com/buggins/dlangui", + "license": "Boost", + "authors": ["Vadim Lopatin"], + + "targetPath": "bin", + "targetName": "dmledit", + "targetType": "executable", + + "dependencies": { + "dlangui": "*", + } +} diff --git a/examples/dmledit/src/dmledit.d b/examples/dmledit/src/dmledit.d new file mode 100644 index 00000000..d15abbf9 --- /dev/null +++ b/examples/dmledit/src/dmledit.d @@ -0,0 +1,20 @@ +module dmledit; + +import dlangui; + +mixin APP_ENTRY_POINT; + +/// entry point for dlangui based application +extern (C) int UIAppMain(string[] args) { + // create window + Window window = Platform.instance.createWindow("DlangUI example - HelloWorld", null); + + // create some widget to show in window + window.mainWidget = (new Button()).text("Hello, world!"d).margins(Rect(20,20,20,20)); + + // show window + window.show(); + + // run message loop + return Platform.instance.enterMessageLoop(); +} diff --git a/examples/dmledit/views/res/hdpi/document-close.png b/examples/dmledit/views/res/hdpi/document-close.png new file mode 100644 index 0000000000000000000000000000000000000000..0bcfe981630a13e513e3053404df96c831caa025 GIT binary patch literal 1504 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 literal 0 HcmV?d00001 diff --git a/examples/dmledit/views/res/hdpi/document-save-as.png b/examples/dmledit/views/res/hdpi/document-save-as.png new file mode 100644 index 0000000000000000000000000000000000000000..9695a56424eda300496caf56addc00657abfbc75 GIT binary patch literal 2152 zcmV-u2$%PXP)40bdUMYLM+G3ZQN z8LL)XFtx&fw8ct8%YYeeJ3z}IZAWEl2`x>3bQ~(SpKmZbDK&86oGA%j)ch5Hv z^n0=YH5Jcx^kFTnxiua~LRIm>4>sYJl`CN}0))l)oQ9Pv12fXh!1X7~0%oQ_Pex&! z`WgyCF1&S|;kiQwB9RE1Mn`e*-b%#Z9KvKG0fPjXHcc>VdI?O+oST5fh&L@f(>ppn zQn4Fxn32fiE5ZBx|faI-}h}E^AtA7k7VIKj`C;?5(O~3*S zda=AX$jj~6VB31k59{a~G_YZhfP|K^!Pnkbg8Kp{;KK87!K|XqO2f> zh;k>+qk*yzpt=WVjDsU`WJ=u+TgJZ+I~dz1D#fJ^8fRFk-O? znzshAxHJMytwTp*9sB_aq9nuZ^OEQ?ea|ul=Ng!{zjZkpXm5K9H-<+MTC^1H?f=5h z_J0Un&-QzRgfG@kAYm2b*KgE=$;aUFcHg7Jmn_B!j6I-^^(@ii`m5Imh{YR+Y#O zpH9FVDp?;aT_S{QX^ORg+n4J{@V)y4Bn=h2U#TZhFTm`eY|%|6lN^+%mXBPt9AH`& zII2UG6Qji*TI=)sF+m!Uv+0+rm)(247U@Anv4O3RU4vH-x8f&jO-PjLH9K4gmHAQR zQvh&qFPMEu8JL=yasX&_GC`y5I+2nkDKke7{;mK{-aaAaO!UQHfv72oXfL$rIn2)= z#TvR;3`YjAy@jEBz=a2Iu0T~)75;wY2!Zivbq?wXi=uZ*kOj|>)G0f*2s3vAfks)B z5Q|0;2nI6*PMnSHzRuGHuQYl7#SJK5O}BkgT*f&K8D90n9m9VzJLGbrSV0h zkx2e0`qfGIo?q+%nIkm12j&u?^K9rkZ$pQGB#QR@;NYO$J@V#tUw!n#(6CTj?(TfM z_2NS>9zHpq7Yu&8thDrLNtC=G(+%AQl4W^XnrXCCpH2U?Lx*op#_R0NIl{aYm@aFR zljrKI0>yuL<#+^un>;TXi=9lSQY|h;Er9@5Rb4H%zW3e&HDih-%Zef^sw9aD^}i&D z{0IVrAn?NLmc{gR+At!~s3xmQ&(MXT6tksw>0(doOd@nlZvNA|tpKhdUr4TGTQfr9 z`ZKu%!0hhsHv9YgQxug+3oX8wh*%Vj#pfu+CS}2*uO9Pyy%uH4;=d0M52q<}QuhBr e0ggFDQvU;t#p**?D{M;u0000M8$}SF`)$W|Vz+h^3K1d&siN<^An_F5_&0!O z)Rzj0@&v6^_10 zg~*Nh4_Qv0^%;Z#{w#!k|1X#ZQ;;@Dp6+HDfFwzvR;z(y+w7a5d4<3CPl}Rf7-tVSvZMG^9)A0BAQf8V&LJ zVG9{>Z3|Y_U^M`ViOHx#!ZB013K_`6*9ZV_uqB#YC@zDZ2d0D?f6(P|tQ3#a@s(2L z01}P3@xh-TA45^onUU7wF%q&o*g97OmE=lL4uFOcKDoWQ{=CRE|L5o=qZ!D84eqm0 z(TY!}fpk-G0x@+f4Xgl&tX`6`UHUODLTUZqH4rBXBHE6TT3rHJy|_6BfHj~JeTEX? z(^0ITcRZGj$IvMk;Sv)L>kUjP&dLt6R- zyYa=Bbgatf8{D{glU698=svQ`7Y~CniEsL{qWLobmqjQA_hgE!!xHWaYvFXB9A-fFUE*Y87hrIt&Mc0u2-(v~0T& zKomz11c4+VD@>5(9wI1v4m741bguyr;G&{9J{<$#x*U9p55;jL|g$=_H zfzf=j5U4rdp6zxU`u#o_*fcf*z=O+|E`3m`*1o|~wbT1m=)U#UEdfQHwk8G7iBS9~ z3|T7zz%osq?{>Q^UTjrN8wdl&ql1G#H#RoD-hSocXL!RJi!cf~kv-Q!YQ;po(4Rhx zD7a`UT{6*-j6*c%v3CUk-TC)uH2Mye-|{@~A`$TRl`GZ{4<78euIssuZ~ literal 0 HcmV?d00001 diff --git a/examples/dmledit/views/res/hdpi/edit-clear.png b/examples/dmledit/views/res/hdpi/edit-clear.png new file mode 100644 index 0000000000000000000000000000000000000000..631ed4457342d9e6f224012c842463ef09bfb8c7 GIT binary patch literal 2066 zcmV+t2<`WYP)x*e)JWac-SH#wQ-nR8CQ z??V9a&birHyP>V2D6Oi1xANEi_WvUA?O=O#N1Yt{FO}b!bpZ~OI%n`&{aCwN2zNS9 z<;}Xl^-CIRSECYcHRXZsglPS&3*5WjSf$N705{Jm`}F5o6%ZbYHS29I`~HkF7JAMW z9h!B4-ixPvn@;edOOyWUnB?HHSr-`S)M$I}4mtW`5AwSp2HFJOx?;+$L~N8m^(Bff|Ht{ui9&=7Wp`+_rHI)*!@x7XeD= zg~}9-Dj8ZUgp)(O_~DmAA;#H!Tty@*5nA)#^~VwVxSGK4al`P7qet=I3Kh7;_ETI< zB;HCO%6|(-!i#t%PmY*8D?9w+No*|EXCf&P-%sP>910ptM#xTIn~somDMGgf#@e37#LwL%m)+;BfE*HhU`HL`UPBN&7IH zg6{4`C^QS9zW%5{{3vSQbj`!CP&}f_#V1V+AD%?We#Y=5wo7uolKVr0G9HxaQBab3 z0OanQ{(ghzgunFh!TnU~RBp2vxHE={1r&sDgi`Tf5OexFeeU!2;}Zm~LTKlVM-b22 zw!bbv?p3!o4Vp_6K`ROdb#??Kc-o&XHZ-``>-`zNzI{9Hb#}%*B-cGX@YmcB+~@77 z|7Z@}RYn4;mp0bn;M;a;fJP2ssoG ziJo0{xZCbexXae|O~}~}-w6uBePm4i@xfS0;Q7<=83>RUMf%0={<8(KaJf7QE|eya z90W}U6Lcav$Pf9p>FZ=fB3IuDuTA)>g9E<0Wee_dalu_X-EhOaxwy@71{#^bp8BM12vn=r`+xhI4vboUDhwTr_v+mZ|YjpPBLS4Rh1s zc9(U-H_ge}aL!P_0R<138sp2Kufyp?BArP5qJSW5o1#oW1O2V`d*M|Y<+xh z;oR@;n;H&1FfhR1n3>=!uA6Zxkq{7xpA|?B+7ezZ^m~>OxdU2?BS9@q|v_3JGcuf()^)G z9t@gvI@F1opi1_$fOX49 zMb2w@HL~D8W;m=4-SOUnp$?kI@DHX&L(ho7GlcNOMq8|Q-GQ?#EErSpcEMId`2ja4 z1=qFzQV|C-BAuZvKO8RRv!VWIAk<{hq3Y-!(5BI#DK`kTS%FXxEOyFAZ|kN;vCvQu;@{m4DddIe+e>emV{RWNwbfY^-qQI%}MY zP$?OM5mLv}%ue!sw|hESb)U+hy_6i-0hi<)&`BAS4e5bX5@mcJXe$f>ozM@|nR}qK zBpeD7sIA2Tn|mr4&QCjH111t3t)Jw1+l%TXtk3ImLN+vrLzdUcg669QG-I))B{gB0 z<->lK{~LIj9zL}LIuUzGd758v5@%~~ZI(Zr6EonPoIP1DrcX9zFyMR+lg!-@+7wJs z6M^p1Fz7tKcQQAASBX|c7pQ#fJ7tbmqXoX7iECxS+Zv=S>sm3xLM^44snxVO`imI| z1V%Yam+n4dZ2Ywzo{Nz2o6%2ophgzo%gv^!w-4V@Z#_QvJ+GxFmd8k&x zVrryx$1|Bs%l7=p-?j?`hI;T@Jrk;Fv^i7uQqIB}8U6hRF=M$}#I(zfbx%%WZ&OwA zcRxKL@P1hq?=>QfcJHf~F`XL}jO7)%f%D!1Je{At0f9cGD^0o4CKZCfdHOw3C3tK~ w4tEYMH2CfEFY~e(IA|La%m4rY07*qoM6N<$f+Lgg_5c6? literal 0 HcmV?d00001 diff --git a/examples/dmledit/views/res/hdpi/edit-copy.png b/examples/dmledit/views/res/hdpi/edit-copy.png new file mode 100644 index 0000000000000000000000000000000000000000..477e83a6abd5d7b2f83f57f76406086e4bbcc2a0 GIT binary patch literal 828 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabRA=0U^EKw332`Z|36R!D{yvo1&aFy z`o||FC8woE#l@uOWM$=L@7S~V_T77j4j(>$;X?0(-o6PFCQX|%bN1|+b7n1AxNzyR zWh+;%T(uem)~;Q(_7Cuwm1tP209@+qrY+u6_G=@7{gz;K4(O4jn#n_{515 zr%#_gd-m+PbLW5tUb}Yf#*G`df#B}FJ9lnBeE9IuqeqV)KYsG$$sPPA;0+kO1%r2B@c#X~4lYCH`t=(G{`~p#_wV0-|Ne2@JbMZlE}|tte!&ckOw6j*uHHTsjgw|9Tet1V z_h0}1U7Yx(6BxWpJY5_^DsJ^oz8Ut&LBut1qww>}cVW!uKHHS6zWbnqt&zu7$Y9#a z5C8Wk+}$M_e5$!NuHwe*UDX@KX1GYvNSpT4)PTT3s1?vA6*xS|6c7rxp0!vz57R5-%j4J*YL1i5Sx{;!iF#EU2gTe~ HDWM4fC}qXE literal 0 HcmV?d00001 diff --git a/examples/dmledit/views/res/hdpi/edit-cut.png b/examples/dmledit/views/res/hdpi/edit-cut.png new file mode 100644 index 0000000000000000000000000000000000000000..073232808a62fba614f56f1daeac9e4addc97ccd GIT binary patch literal 892 zcmV-?1B3jDP)kdg00002b3#c}2nbc| zMg#x=010qNS#tmY19kua19ky@)q>0b000?uMObuGZ)S9NVRB^vcXxL#X>MzCV_|S* zE^l&Yo9;Xs0008}Nklpqd-%TR z|2P*vK`+{{^o5}LLo7{%!9>5_s(X6h6!4&|@wG|7Gj({ZFmArnqtBeLl6m=@OEcNdT02My0)1X$-i2NUA8lO)N72t?3bsjBer@&O??6`$nZpH-O9m zi>d@lw6_?3>DfIM8k)(`ECAxBjVa}-nylHg^2CV=nJ&2iWC1{&#t#Y%3^+N=Ol&$k zmH5&}t1SXR8D(Oq@$%7hZ>Ul+5|rGf1r`G2{YfZ;L{gG4)v~>Yh7|ZQ?i3HQ6rlap zlTe|%n{0{I`c@4w$_2F8VgN*eAB9qAv<(+-&%2sm~ONpS6-?k>+_aRT8l%mV()gRX@>3M$+ogXIGs+SLs_r&rYOhGu<^&tH?Z}VX` zW1Za1j(aYFNs<}>#EO=M4o|h9VIEvYjr}?}pJNfpc(FnL?I{Qh*8{xysR(ES`5lbW z`Rdp?pt)gtx+{3_eFzFF%7EWZJ%F2^iR8a=kNIjIoLWG}<5U&Q?9)ZJMfc`{`$`XR zvsh-A*A1~JTvZ3au^ZsZQQjDArrz|KuMFVjX1p SYgWbp0000~INfC^Ha& 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 M07*qoM6N<$f>H#b?EnA( literal 0 HcmV?d00001 diff --git a/examples/dmledit/views/res/hdpi/edit-redo.png b/examples/dmledit/views/res/hdpi/edit-redo.png new file mode 100644 index 0000000000000000000000000000000000000000..d759f1367b60716926c7904c4cfdc8fe88cbb8ff GIT binary patch literal 1998 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 literal 0 HcmV?d00001 diff --git a/examples/dmledit/views/res/hdpi/edit-undo.png b/examples/dmledit/views/res/hdpi/edit-undo.png new file mode 100644 index 0000000000000000000000000000000000000000..c893a1a65e2d8bac79d3ed7313780605ff0b6d74 GIT binary patch literal 2020 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 T;=!W_00000NkvXXu0mjfkMScx literal 0 HcmV?d00001 diff --git a/examples/dmledit/views/res/mdpi/document-close.png b/examples/dmledit/views/res/mdpi/document-close.png new file mode 100644 index 0000000000000000000000000000000000000000..411031eb8bdd03d3229155f1aa95fea1489ed7c8 GIT binary patch literal 605 zcmV-j0;2tiP)sxded32#5rSkY z2Y&xvG7_=Vk%+V5_ixV;U10XVAZQpSG);$IDx+LBV3;N-HT!;On7;i8dAXfm9S-@R;%G}K9Bg!3^q^rU?{uT zTaH3~5k)P#iw~!LctZ3;3IybV9mheV(Lic_9dE@pwvPMo`5a;A3LzQt;fcT@`aMXL{PwOYNnu8UkQhjcpK zOQBF;Xv*^+*aEa|8})jf0V!y=+vs#U94YH|yI{s6a0Do;_rVNsc#WTnVqL*ZdIX}f zr+Pok-DNTv{K;nVaAhUV+#tcg>b#~XinzLnEiQgxW{_ZL`<7+lm#99su;76`f?*$y rhhbK__a8mp=!ZGp<2*d4B-EFG{*ujozX)tM00000NkvXXu0mjf0Gko@ literal 0 HcmV?d00001 diff --git a/examples/dmledit/views/res/mdpi/document-open-recent.png b/examples/dmledit/views/res/mdpi/document-open-recent.png new file mode 100644 index 0000000000000000000000000000000000000000..15847ce445e7f6265a5fe2ac848c8266a986dee1 GIT binary patch literal 593 zcmV-X0gmnOM`fmqJd&s z+ahABm4dwp0gc!+W`m8i=EwYGck{EGY+h#;7u*c{!OI7;JkQH8ECE31^wYR((?2vy zjtP&*@dpud^zH=NJA8yOj5P%=*i2$ehTFRYUo?s6r=+pnzBeGFmoIRF-?<#}g(Cix zN+?$<*e;Z?=iE~)CW>gN8YZWvP_9atc(I0^XC@Wm3GcQD3dMhLxr|D+3g5FB4&3g!K?W>tgNmgyPe12SPbNp5ViSlie{XznY>wTMQB4$B+dE`YdBOjB-$MWEE{Fkwy8&~CSl{WkU<9{)5B-3sIEjSylh9~tE4 zo{_=LX47ak1)WX@x~`ks2ph(50tVA|4(@ilEbNSaS5c7^oiZbwfWl@w2iNKKL{Y@% zuPprIfkk$IUSQMC&Qhrq-74+{gK-n)1SZ@oU{9OQi0}sj7MK&*O}~TIX7QTU-Bp_I?#hm zV{_(grov1Ksu7uPW}!~a+)B|l&>BwnAzs}+?@Q)rH~hHn=l;0fkB77B{VlT^WL2MD=uEXjq;WW zXiaWps?FdAM{_keT_{QhYipoo&Kl)DpAU_VjlB13c^U4RX`IL|#kGfa#OGE@21l~4 zgG?d~_?!6semtQ!*cR&{WE50DkyR!c9LOlazO+)_qo?x45E+ESA&~O_V6|G&)7=eo zM+aV5ELidV#14g0GT5J5jGe~||NMh+Xmc@yS@%3fK0D#~G>+ksF$~&A@$S6?uWcXT z`Zf<1mmnGJPPzoPHyw+M9ymtF@R1gJ``Zht>Z!0&`XxB zeoTijjKdxnhJL_6+UD3C@}Tb76lx3;s3!CT&t*ij8|Mqk!E!20s5O0owsjm;GCCQ- z;6$}?iyA_Z5j*KBi|8g)nszjFy2xajQ!lGX)Dd?g>ZDYg!riVpD2udUNmrYYqVB<& zo0e^)L}(;wnm!yncLgk8Z>H~=<*s!^y`=mcS*!i4*I@aMoMHh?dCSlzw9U}BJE42( zgqF0tb&_b8lYI6!CNY+Z>#g0)+jEP)Xi%%w{vE(0iX^`YPa+cR!LH7Be46XU!y6}9S{Ds;T9$y4s#5bLK0NM6 zw`V&Rp7bF&JqDU=qsZ{FHQ?RTYxp=jj4qE83-i4Q+%)7Cv0kq;)(OUZTVK2n4WM&J zJ3fc|5tu&7pQ|x8%ZWq+u~-bzXcX~yyvDz?AzwJ%@!;*tKxOZqo%lj>@YX4d%&jc) zoRA$-%Ize<%U1WB^mc_4cALWP8MRf6dU!Ire|GRkJX9Dm~v}{o-2CR!8 z_ZbWq2lMijf8M1dGb3Xtb#W?}I|b#_2e_yE)WqhgG!x>2ER$k_E;^MoLz!Wc0^RzIjLSiumsSo5vWwl|YgZ&2&W| z-6w;&-duo5>`yWz$pT-oyr`HDpGO$_&6B=%yuFEJT4M=O26LfSL3fjps@fyithVuj zh4U9skniC2`(bLEIyu^Sf{~|NS>@29QmLrh9>ld%YSQc_9BXjnu;(LYWWoG-0`_Hj z48DBJodgEcNwCh#6UsFlR0~8EM>awQ+ubFj}n^>w-XDv;>eM zC{Tr|#Hky_zt0#$%*cW{aq(O{5<^%0G-76IFzS`OY7JylNjw&dh5Gt>1_lO*(MF?< zj3UiyL(Is6P0nn(8e*9p8-*}e&BL?)tji5Rr_M^ literal 0 HcmV?d00001 diff --git a/examples/dmledit/views/res/mdpi/document-save.png b/examples/dmledit/views/res/mdpi/document-save.png new file mode 100644 index 0000000000000000000000000000000000000000..3f7fd63cb9d6dd2d024290892c6f6077cd75bc66 GIT binary patch literal 559 zcmV+~0?_@5P)aB)o!U!^iJPX2-yDW~-xn5#GXPG7Kd$?Hm6gjYc)yd@*-0`VkWB4D zPVXW`(u8GM=XhY*yM%z>k7`53k-*<;O%?T47tKx&ZKVgLtKr47=U|=V0q-Rbo<4p8 zMb+>snbmpC$XUFRbBLvK(6qliOC2%bUUcKpgNNw$G<1|M6hbH0?x<+CRWw=(YK;zR zbh0dU#DMFf3-|p29M;>Y^f_c|EtIP*{61>pXQhEsxz4lH5d#Zz^Vqy|7vFwW5q_7_ z*?KF3+m`WiJBj`8WuB#u7?^X;;`Ys3`1JJ$a$oxFmyl)lO8B^UfXwFuWC_bsM+`U} z4s5L7I1%cIf$7O9tX=b+2zA83G8q($MHCAK6bOCh^7%Y$W(&+?MxLXN z7#O$NvF!13@pv4bMK}M6iA16wzdTlp1*>!usUrr=MiX4~3tTiB#mv++tR^#Jv6#*h zT^^PVY~Ew17%+~GmM83XIH?%k3S-=A!-zDDNF<^&>zLu+Z>+6jYD0000-?)JUISV`@i-D@I zgD|6$#_S59pk#?_L`iUdT1k0gQ7S`udAVL@UUqSEVnM22eo^}DcQ#T$MejXb978H@ z<@Oq8F$Ida_AlUg=iqzbmh20?rl|@>J}bFBvZddo?kbdj=ip)NEYWoIwxfrjspE&I zf7kzXeO5gCv;OnD{r8;bw;$;L!puHH-#BVsl-uWB6J%O8F5eg^B)IOC*`2?k$%mE* zZGZSqJ26OnS7zPD-qf;-Cd;FRd6qBT6YZ6_>Ilp2AJ^pTp`U_QHfz-`{!$52l`)9UY%*8-9&1?@*h#)SHUM zk6ZgL_O)%DJ$u9RPC53rhxZrmt-AK^znEXmL=D9W5yeH^`@hV2(!JrW#zdgk89ZJ6 KT-G@yGywp$wU*=n literal 0 HcmV?d00001 diff --git a/examples/dmledit/views/res/mdpi/edit-indent.png b/examples/dmledit/views/res/mdpi/edit-indent.png new file mode 100644 index 0000000000000000000000000000000000000000..ffd0730d8fb289098ee222778cf7d986a89cb79b GIT binary patch literal 413 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