From 7ebd8973b5d20b82aa5da426dbd4ba1716534a46 Mon Sep 17 00:00:00 2001 From: Robin Date: Wed, 7 Nov 2018 16:16:42 +0100 Subject: [PATCH] Work in progress, solve resource issues. --- .../EditorDestination.cs | 3 +- .../Forms/ImageEditorForm.cs | 3 +- src/Greenshot.Addons/AddonsModule.cs | 9 + .../Controls/BackgroundForm.cs | 3 +- .../Controls/GreenshotForm.cs | 3 +- .../Controls/PleaseWaitForm.cs | 3 +- .../Core/AbstractDestination.cs | 3 +- .../Core/GreenshotResources.resx | 471 ------------------ src/Greenshot.Addons/Greenshot.Addons.csproj | 20 + .../Resources/Checkerboard.Image.png | Bin 0 -> 954 bytes .../Resources/Clipboard.Image.png | Bin 0 -> 493 bytes .../Resources/Close.Image.png | Bin 0 -> 440 bytes .../Resources/Email.Image.png | Bin 0 -> 745 bytes .../Resources/Greenshot.Icon.ico | Bin 0 -> 15227 bytes .../{Core => Resources}/GreenshotResources.cs | 60 ++- .../Resources/Printer.Image.png | Bin 0 -> 738 bytes src/Greenshot.Addons/Resources/Save.Image.png | Bin 0 -> 489 bytes .../ViewModels/ExportNotificationViewModel.cs | 4 +- .../Destinations/ClipboardDestination.cs | 3 +- .../Destinations/EmailDestination.cs | 3 +- src/Greenshot/Destinations/FileDestination.cs | 3 +- .../Destinations/FileWithDialogDestination.cs | 3 +- .../Destinations/PrinterDestination.cs | 3 +- src/Greenshot/Forms/CaptureForm.cs | 3 +- src/Greenshot/Forms/LanguageDialog.cs | 3 +- src/Greenshot/Forms/MainForm.cs | 10 +- .../contextmenu_capturearea.Image.png | Bin 0 -> 285 bytes .../contextmenu_captureclipboard.Image.png | Bin 0 -> 777 bytes .../contextmenu_capturefullscreen.Image.png | Bin 0 -> 647 bytes .../contextmenu_capturelastregion.Image.png | Bin 0 -> 628 bytes .../contextmenu_capturewindow.Image.png | Bin 0 -> 653 bytes .../Resources/contextmenu_donate.Image.png | Bin 0 -> 740 bytes .../Resources/contextmenu_exit.Image.png | Bin 0 -> 440 bytes .../Resources/contextmenu_help.Image.png | Bin 0 -> 722 bytes .../Resources/contextmenu_openfile.Image.png | Bin 0 -> 810 bytes .../Resources/contextmenu_present.Image.png | Bin 0 -> 830 bytes .../Resources/contextmenu_settings.Image.png | Bin 0 -> 643 bytes src/Greenshot/Resources/icon.ico | Bin 0 -> 15227 bytes src/Greenshot/Startup.cs | 3 +- .../ViewModels/UpdateNotificationViewModel.cs | 3 +- 40 files changed, 110 insertions(+), 509 deletions(-) delete mode 100644 src/Greenshot.Addons/Core/GreenshotResources.resx create mode 100644 src/Greenshot.Addons/Resources/Checkerboard.Image.png create mode 100644 src/Greenshot.Addons/Resources/Clipboard.Image.png create mode 100644 src/Greenshot.Addons/Resources/Close.Image.png create mode 100644 src/Greenshot.Addons/Resources/Email.Image.png create mode 100644 src/Greenshot.Addons/Resources/Greenshot.Icon.ico rename src/Greenshot.Addons/{Core => Resources}/GreenshotResources.cs (52%) create mode 100644 src/Greenshot.Addons/Resources/Printer.Image.png create mode 100644 src/Greenshot.Addons/Resources/Save.Image.png create mode 100644 src/Greenshot/Resources/contextmenu_capturearea.Image.png create mode 100644 src/Greenshot/Resources/contextmenu_captureclipboard.Image.png create mode 100644 src/Greenshot/Resources/contextmenu_capturefullscreen.Image.png create mode 100644 src/Greenshot/Resources/contextmenu_capturelastregion.Image.png create mode 100644 src/Greenshot/Resources/contextmenu_capturewindow.Image.png create mode 100644 src/Greenshot/Resources/contextmenu_donate.Image.png create mode 100644 src/Greenshot/Resources/contextmenu_exit.Image.png create mode 100644 src/Greenshot/Resources/contextmenu_help.Image.png create mode 100644 src/Greenshot/Resources/contextmenu_openfile.Image.png create mode 100644 src/Greenshot/Resources/contextmenu_present.Image.png create mode 100644 src/Greenshot/Resources/contextmenu_settings.Image.png create mode 100644 src/Greenshot/Resources/icon.ico diff --git a/src/Greenshot.Addon.LegacyEditor/EditorDestination.cs b/src/Greenshot.Addon.LegacyEditor/EditorDestination.cs index 417676afc..6bb5b2146 100644 --- a/src/Greenshot.Addon.LegacyEditor/EditorDestination.cs +++ b/src/Greenshot.Addon.LegacyEditor/EditorDestination.cs @@ -33,6 +33,7 @@ using Greenshot.Addons.Components; using Greenshot.Addons.Core; using Greenshot.Addons.Interfaces; using Greenshot.Addons.Interfaces.Forms; +using Greenshot.Addons.Resources; #endregion @@ -48,7 +49,7 @@ namespace Greenshot.Addon.LegacyEditor private readonly EditorFactory _editorFactory; private readonly IEditorLanguage _editorLanguage; private static readonly LogSource Log = new LogSource(); - private static readonly Bitmap greenshotIcon = GreenshotResources.GetGreenshotIcon().ToBitmap(); + private static readonly Bitmap greenshotIcon = GreenshotResources.Instance.GetGreenshotIcon().ToBitmap(); private readonly IImageEditor _editor; /// diff --git a/src/Greenshot.Addon.LegacyEditor/Forms/ImageEditorForm.cs b/src/Greenshot.Addon.LegacyEditor/Forms/ImageEditorForm.cs index 15ef13b72..279991307 100644 --- a/src/Greenshot.Addon.LegacyEditor/Forms/ImageEditorForm.cs +++ b/src/Greenshot.Addon.LegacyEditor/Forms/ImageEditorForm.cs @@ -53,6 +53,7 @@ using Greenshot.Addons.Extensions; using Greenshot.Addons.Interfaces; using Greenshot.Addons.Interfaces.Drawing; using Greenshot.Addons.Interfaces.Forms; +using Greenshot.Addons.Resources; using Greenshot.Gfx; using Greenshot.Gfx.Effects; @@ -288,7 +289,7 @@ namespace Greenshot.Addon.LegacyEditor.Forms { panel1.Controls.Add(_surface); } - var backgroundForTransparency = GreenshotResources.GetBitmap("Checkerboard.Image"); + var backgroundForTransparency = GreenshotResources.Instance.GetBitmap("Checkerboard.Image"); if (_surface != null) { _surface.TransparencyBackgroundBrush = new TextureBrush(backgroundForTransparency, WrapMode.Tile); diff --git a/src/Greenshot.Addons/AddonsModule.cs b/src/Greenshot.Addons/AddonsModule.cs index d28d6388b..7ee85df11 100644 --- a/src/Greenshot.Addons/AddonsModule.cs +++ b/src/Greenshot.Addons/AddonsModule.cs @@ -30,6 +30,7 @@ using Greenshot.Addons.Components; using Greenshot.Addons.Config.Impl; using Greenshot.Addons.Controls; using Greenshot.Addons.Core; +using Greenshot.Addons.Resources; using Greenshot.Addons.ViewModels; namespace Greenshot.Addons @@ -61,6 +62,7 @@ namespace Greenshot.Addons builder .RegisterType() .AsSelf(); + builder .RegisterType() .AsSelf(); @@ -72,8 +74,15 @@ namespace Greenshot.Addons builder.RegisterType() .AsSelf() .SingleInstance(); + builder.RegisterType() .AsSelf(); + + builder + .RegisterType() + .AsSelf() + .SingleInstance(); + base.Load(builder); } } diff --git a/src/Greenshot.Addons/Controls/BackgroundForm.cs b/src/Greenshot.Addons/Controls/BackgroundForm.cs index d96007089..e9958a493 100644 --- a/src/Greenshot.Addons/Controls/BackgroundForm.cs +++ b/src/Greenshot.Addons/Controls/BackgroundForm.cs @@ -28,6 +28,7 @@ using System.Drawing; using System.Threading; using System.Windows.Forms; using Greenshot.Addons.Core; +using Greenshot.Addons.Resources; #endregion @@ -46,7 +47,7 @@ namespace Greenshot.Addons.Controls // The InitializeComponent() call is required for Windows Forms designer support. // InitializeComponent(); - Icon = GreenshotResources.GetGreenshotIcon(); + Icon = GreenshotResources.Instance.GetGreenshotIcon(); _shouldClose = false; Text = title; label_pleasewait.Text = text; diff --git a/src/Greenshot.Addons/Controls/GreenshotForm.cs b/src/Greenshot.Addons/Controls/GreenshotForm.cs index 891b22768..f007fcaba 100644 --- a/src/Greenshot.Addons/Controls/GreenshotForm.cs +++ b/src/Greenshot.Addons/Controls/GreenshotForm.cs @@ -38,6 +38,7 @@ using Dapplo.Windows.Desktop; using Dapplo.Windows.Dpi; using Dapplo.Windows.Dpi.Forms; using Greenshot.Addons.Core; +using Greenshot.Addons.Resources; using Greenshot.Gfx; #endregion @@ -89,7 +90,7 @@ namespace Greenshot.Addons.Controls { // Every GreenshotForm should have it's default icon // And it might not ne needed for a Tool Window, but still for the task manager / switcher it's important - Icon = GreenshotResources.GetGreenshotIcon(); + Icon = GreenshotResources.Instance.GetGreenshotIcon(); if (!ManualLanguageApply) { ApplyLanguage(); diff --git a/src/Greenshot.Addons/Controls/PleaseWaitForm.cs b/src/Greenshot.Addons/Controls/PleaseWaitForm.cs index 4084e0c36..04d74c3c7 100644 --- a/src/Greenshot.Addons/Controls/PleaseWaitForm.cs +++ b/src/Greenshot.Addons/Controls/PleaseWaitForm.cs @@ -29,6 +29,7 @@ using System.Threading.Tasks; using System.Windows.Forms; using Dapplo.Log; using Greenshot.Addons.Core; +using Greenshot.Addons.Resources; #endregion @@ -57,7 +58,7 @@ namespace Greenshot.Addons.Controls // The InitializeComponent() call is required for Windows Forms designer support. // InitializeComponent(); - Icon = GreenshotResources.GetGreenshotIcon(); + Icon = GreenshotResources.Instance.GetGreenshotIcon(); } public PleaseWaitForm(IGreenshotLanguage greenshotLanguage, CancellationTokenSource cancellationTokenSource = default) : this(greenshotLanguage) diff --git a/src/Greenshot.Addons/Core/AbstractDestination.cs b/src/Greenshot.Addons/Core/AbstractDestination.cs index f65cd915c..5b44ef420 100644 --- a/src/Greenshot.Addons/Core/AbstractDestination.cs +++ b/src/Greenshot.Addons/Core/AbstractDestination.cs @@ -40,6 +40,7 @@ using Dapplo.Windows.Extensions; using Greenshot.Addons.Components; using Greenshot.Addons.Extensions; using Greenshot.Addons.Interfaces; +using Greenshot.Addons.Resources; using Greenshot.Gfx; #endregion @@ -390,7 +391,7 @@ namespace Greenshot.Addons.Core menu.Items.Add(new ToolStripSeparator()); var closeItem = new ToolStripMenuItem(GreenshotLanguage.ContextmenuExit) { - Image = GreenshotResources.GetBitmap("Close.Image") + Image = GreenshotResources.Instance.GetBitmap("Close.Image") }; closeItem.Click += (sender, args) => { diff --git a/src/Greenshot.Addons/Core/GreenshotResources.resx b/src/Greenshot.Addons/Core/GreenshotResources.resx deleted file mode 100644 index dce181b2b..000000000 --- a/src/Greenshot.Addons/Core/GreenshotResources.resx +++ /dev/null @@ -1,471 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - - 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 - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPSkpKSisCAAAAAAAAAQAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFTg9JgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAgAAAgABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApEIAAAAAAACkQgAAAAAAAKRCAAAAAAAApEIA - AAAAAACkQgAAAAAAAKRCAAAAAAAApEIAAAAAAACkQgAAAAAAAKRCAAAAAAAApEIAAAAAAACkQgAAAAAA - AKRCAAAAAAAApEIAAAAAAACkQgAAAAAAAKRCAAAAAAAApEIAAAAAAACkQgAAAAAAAKRCAAAAAAAApEIA - AAAAAACkQgAAAAAAAKRCAAAAAAAApEIAAAAAAACkQgAAAAAAAKRCAAAAAAAApEIAAAAAAACkQgAAAAAA - AKRCAAAAAAAApEIAAAAAAACkQgAAAAAAAKRCAAAAAAAApEIAAAAAAACkQgAAAAAAAKRCAAAAAAAApEIA - AAAAAACkQgAAAAAAAKRCAAAAAAAApEIAAAAAAACkQgAAAAAAAKRCAAAAAAAApEIAAAAAAACkQgAAAAAA - AKRCAAAAAAAApEIAAAAAAACkQgAAAAAAAKRCAAAAAAAApEIAAAAAAACkQgAAAAAAAKRCKAAAACAAAABA - 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 - YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAwBQTFRFgICA//// - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODgHVgAAAAlwSFlzAAAOvgAA - Dr4B6kKxwAAAABZJREFUGFdjYAABRhAAs4hlkq4DZDgACywAM12jTsYAAAAASUVORK5CYII= - - - - - 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 - mXizAAAAAElFTkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAXJJREFUOE+lk0FL - AkEYhlvwv3jzoiDoQdCbdEnYf6CrqCgoHgRRAk/9EQVLdEGyFiQNMS+dvHnoEkgglGAmCL7NO6RMIZvU - wsMO3zzzzGk0ACf/+hjQNO1ccKlXKsYx0OUZeflXoFmtVsUS2P4CHboi0FQDrXK5jM12i/VmYwsduiLQ - UgNmqVTCuzj8tlrZQoeuCJhqoFMsFvG6XmO2WNhCh64IdNRAt1Ao4EXc/jSf20KHrgh01YCVy+Uwnkzw - vFzaQoeuCFhqoJfJZBCLxY6Crgj01EA/lUrB4/HA7XYfhHs78vk8A301MIzH4/B6vRiNHjAY3H+DM+7p - ug6fz4dsNsvAUA2Mo9Eo/H4/LOsOTqdTYprXEs64x0AwGEQ6nWZgrAYeDcNAIBBAu30r/6Reb0t2MwbC - 4TCSySQDj/uAeEyngqnL5fpoNG4QCoUktVpHspsxEIlEkEgk+AKnaoAP8kwwczgcF4fg3g+u9gEu/son - bfJW/NwRDyIAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAUNJREFUOE+lk79L - QlEcxW9/gqCrm6vg4uYoOAgOrqLk4ioP0r2Glhp0SSjoF1FE0BIUDU3RdIOGoKBVGlpapaHTObeuCPe6 - 9ITD5fs9n3Pue8JbAWBS/VSQRvPwKR/j3JgaZXVqPv5TzPOXLhYoZDEcQidVWyhw3qzfn3tBAWH7PRjg - uV7HV5JAM6USyX50u86btlrOCwoOCR7Q+Oz1cFcu473dhmbppdFwu8dq1e3EBgU0zB6NXQJvzSaui0U8 - VCq4LZWwn8vhLJ+HPDFiowUEzITADsGrQgFHmYzTSTYL7eSJiRZs0timRoTGhC956wXDXtrJEyM2eAIt - t34Be8NgTPLELCuQYe8Z9tK8ZBf+ieuEnxj20rzB26SYF7zCGsGEoVeW6NTMoJFiXlDAkFllqMOwTs2+ - IOYFBf/9oFJ9ibr0B4f94vVG3bWDAAAAAElFTkSuQmCC - - - \ No newline at end of file diff --git a/src/Greenshot.Addons/Greenshot.Addons.csproj b/src/Greenshot.Addons/Greenshot.Addons.csproj index 6e73530af..2fcf0b957 100644 --- a/src/Greenshot.Addons/Greenshot.Addons.csproj +++ b/src/Greenshot.Addons/Greenshot.Addons.csproj @@ -31,6 +31,26 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/Greenshot.Addons/Resources/Checkerboard.Image.png b/src/Greenshot.Addons/Resources/Checkerboard.Image.png new file mode 100644 index 0000000000000000000000000000000000000000..798455aa5cc5267723855f8b394d9892fd3f34ea GIT binary patch literal 954 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2VGmzZ%#=aj&F%}28J29*~C-V}>VM%xNb!1@J z*w6hZkrl{SNcITwWnidMV_;}#VPNs;fBrFM zZQzrlsUk%-?)-uO??o?6Fl>_Cz27=!WoE&N`251E@`=VXWzskI$LLI}Ym&6S^WebL zS%t&9|7r%ke`^*! zwac*JftT-QThCWlE0@&l%mEwpL(QYsg8$2<94TgygQWGk*6jB9t6oqa?Q-8s$HPx#1ZP1_K>z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBUzHc3Q5R5(wikgZEYVHC#CzcAS9+Uj6sZE;{2EUb=+E30GR)-_l( zXi-q`3sFR{2#UcZrdKcs3RW>#tYYx-d0xFkc+bF(@Nn)qzu$c>Tm$g0xX0gQ{IG9k zhh|eu(A2*B6_0rZ0s*5DG_`*#i0rlBAG4%@Vt5}8aocF%Z7_g#MkPvk?sg-4Y_}sz z3brY35xn$zxTsd~)agLGa@TCe+jYGjZ*r3Y0^1;1r|{5f;j~=FRjr2eN(GyR0uG8r zh{=)b7ErJ?3ab=PN+s;%axr`PJaiM2;}$INxWp_|TA_T*uO9K`EV_xwk?R&LehT4? zFL)7?GpRrzTvE)UeZnpMiE{)u6tZZar>J-=DVU`=Ah@TXshy&VU6vFO*bKom1x@W) ifya`9zs5cOJg^V5XAjoF3xu}-0000Px#1ZP1_K>z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBU!XGugsR5(walV3=aVHm|<^eQy!DxuqgGLgFIpAdMVbWsU5HQ2=n z3}>yVoY`{A&E>>JR7%A}8rmF;Ojd$8`=e~8hAssMrZOd)GqMD;m*Vh#~HIL*gt$lqs_pk={Te_fsZAWdp9r{;xSO!KBT3*IY#qqYWd-0jByKD=y zspBq2|QeC?hfp8f0Mn%N)CcAaGCQif(q`BAMTB~6+$)oj#p6`e` z362-sEk910DVuHZE-s?>Ng3V^7$A}56tN7687}J{_=XN6 zIGKs5?tRhfdW!`UfdEtwlnBnxfLN9;7GM3ww@*%gMEl?%gz39+q$!1&UrtWUoM;yO$#1P943WX&BzR@#3 zk599+=yy8d=1u&(@>@sKc0$CwYlg~hAO8FLuIu}*_j}*Hy5@PFweI_OKkHe~de*vs_bmVn z;DA>!fQO?B0E^JIx%ouBPy%2SwP|Qf*6{#8>jEe$PSk6J0OpwiNJ&l9gOMp23P6gh z%Up30Wf5dboaw}H=Sle*NFV&x7OntL2xBtrJ=V9qJ@iANr>9!=&{C0OZqr?zGF2~9 zMIPI~lUp6IUhZZ+5%jA_4kcw?Xc#?x1ZM#h>uR&BP6a4NJO%{ki~GuGVK7qE8iT8b7&`xYBZ zbGqmXc&4HVkO*{)hW1i@;Ao5C*y)^~Kx((SEI3FfBBks9U6uB~!gbyXvRk=;`!wlu zol$kgop(>X_Kpp7ru062tMf3f?=xlKIZ--GAJ-XEG``Q~>ht!n2VGZsd)C=`aW5ss z>LCb`;WUh7Pn2zZrUT_wbRC@iv~Z)H7v|WHVG?7dg!e9ef^huGLiHnyQ&OUrG z)Lay|Xt%@_8Mf&xjLwl1O`3MkA>fDzw4K3No{=_F_c<~fPk2ASPf)`{^M23ynI>!R zKJ_l2b|uT^-0QjZLn~~s8P}Q6`S2z)DNgfpLPA<%c0sAG!{Tgl%F$S8ElB{&(^{8B zqzEUm?D-O>Da#(3>Z#@g_WNiZHredH?k7e3le$3}g)8enFZmSRA~;(~=CrH`xRfjW zxVbSnveM6SflZIpqE~AJlApJZzj@YYCq~~^HS>cY=-OTn3p!P{WNXXkXP3-Uyam=b zpQ8`^GMx%_P`#(Isd_KST_s4=f3 zmK+K=t~9r}++rVRW&g2h2UnJU+Pr^^l7Dd3$i3^AqE+U{i6{|j^CA~Z+)c-J{$}$mt2(CsCR3z75#OMh zeDGJhl@@y#8mWQuobHHcmMH<96=}77XF4y1VTPp~1h!Zt!)(%x9oYb(SBknSUByzgU$@KD! zl$N?2Pp;~{(PyYheGY%3ofDc3gK(Ou!u5Q})XV?>)hz9c4yZA-F2XmAKsb_R?&r z++PX;@$(u*^w(Zbc%6DJx@-Nb90+iG?((LnVZlgM!z)6-rO~9hNZ5#)Pa|TcW3nR}knH|B zvhQl>4y_IWVO(Zfpqm`D?+-uax_8cW(cc7``+j-Yx*=ud=hwqgF1kPN!(H2FCcIbW zvwHNb+qs57vG9u`t>Tns%jztBUO8~1JH|5Zk|9)#&g(Rsu{l`agQTFV96Qf?P-@S* z?4`!OSQ+zLD`$K6B@P7I0jPIa5?kU4v#qrmMN2cPersQsa9J-mI%CeOjq>t`WRd}8 z9;c~tmWos}_^;#St{z;JT%eq|UywE{RXMAciGN!2B1_xO!$p`v*Xb@0kTjY88NZ^C z@%U!8M!sa{&!;l&I~I%FdTJU(9!?i`Z~vUQ!sdCuZbA{H+K_XpHemc0vo9(B#g*t+V`9pg(< z3wMhbW7(;aR~KcjOI&55e5cA#aNEqm@Vht-kNM?4DvIXczn}LuIi@8(-*hx`)1u(e z+OqpA+)QYVOO@u=R|r*Q33?9k_+fX=1J?HKK_(Ag3u`Rd zWw1dm`KaK99h_uA*>KwYICtZpy4u9;^Y4#a^YUX@oqOGqjWw|(0oO;$BborPuA z4SkSP=2WZ4oU7nEZKjbRhnyH~Htam9LTN~E3S;5?c zB7YiFCDf2c5)9XLFUB!9=kEm%s-1&eU{$o9)_90dmf#!dkc!enBb8R7P_a`~c+M%q zWU~#gpMS8oWjy&%nxgipX7v4NT4KH|M>MkSXUeb6)!V1(VQAMSt;d5N$2qtp{{-m; z8X@A1yB%t8ip@U`olVt&9tt}7Ak|h+pO_$QVUp{Tv;ld}v`|8e9m0D-ry`!ZtT|&cW1bJt;dMp}Hh4x0BRXL0@WFF*j$#FVf!)H*g!grR=+ytyFAI`Yqp(tE^6oVSe#p{e?4x1={0^lL>~E1|d#>Z;->}96yDv`jhF53H z(H80W)Ryx$BB}bx2DCqRyd?A}rs9yPr&nf0wMNvkk8FLgkrRzxDAbJ&kFPotXGa&AxeSuD#rA9fWtq6;+2>uH zjuhS%Y*HS+)qR-rYN3xPd(&9Tw#5(Bx(C`1Dk^C(G8#f@ZzG>5d!}&GtGlqS(IcxU zL#l~AHJn!&X+lP?PwsHOS~}M9Ks}j=aTq8W6m056ewXiNnY<)VDC^@2%@M%YR~kb5 zF8|*;>RWJ4gxvRfB!*fMT;9?hmM)wJQh9S<76YO-18Cd6yXk`NX=!av&2l+N{j|lA z6XwEl3iZO#W{bDxJ~*5sdYcVozzwh+9M=KZ7VjN*%puu~qGgn7j%mu5lL5}@gGR1Dj z7@@wJ2@orwNv%1CkN6-XEx!^2if?V+cX*m9#hZ`Tk0l*Ek{;0{4fM>?fJDSqx)yG2 z9oUxMKSLS>IAEr*1N3YuHa26N=%hv1fNKxHHh$0YCnh5?F=lp|F(XHhFK`;_*91=b z76%@+lSex>HO) zKdh2%pkwM5S0A}^gY7_b;_jcRcG;i=Z>p;J!q3hjHcoX^3H&Dt@QxLv^ugxxT?OoMGVTPgle z8)zQzN^C&#^5^BFr*~YHyq<`740WJd=Q>(K6*A)dZMN9o9ryw7d#*aI5ZH*qB#!T_ z&s{g7qTl(Rj(J54u6gZ#swWdMsb#S-Rjv?=wdPKcs{@iPfr};5IOD?%ya;Up&7X_N zT=95Cg)ZgbMZv+OUim!iwLp!y;M!p0yyE0apIet4xo3Lb8?qL~m*g%r&e`c~FOgIT z_csm9RTl&t^9%iKej-UWpH`4;num=Tc{|@DWFAb>Xhw(4Crlz7Jn@9MI?smw_h_k}J&#OkpDCT90HM`O1}Xyc|wHs*BaE zU2-W)LKAzfi>Typ7qw{2CVZD)su4j_dc$Q=u;H%d)CeL6>U#UtkF8}x{(_GEh6Xzp zV*)G)-uHW>o^^Vj8#+r}TitQRe|A%g?BM>a8wa7ktA!M8si7LzzQE6eIwsz0M5^vw zvvTp>axKJB@`R;bOLea=Yw&f$bIy(8kujtS-qr;$20U5g0b-&w9*EVTt6 z@%mh?-%9M=gA!sdCEgv75)|9(6&$Lm9nHOY=CY^kg3l37H=o#hi}`;LneKd0KFF(O z!Kv}cj;d8Bms@D-1j(lg>y6P^f+wUS95|ZxkAvAtS!ZJJJa+#zK9iWFWE-{JM#=ze zgf!W2*piu#EOF=GAZN?&;+lf`nB94HJFrrih`S{6vEw1Tx=$r{UXXnn?G2lb&U-$} zRxId@QoOuwec;}0nxm2@F~e(02!5w=HSKJz^Y?5n6k$8t$=hoLX8BZCn05aKot>2m zInQkLDFH&289RFHBf6C%@|K>h#56bE71x2Fo)_+J8M5vf3Od-Q9&D=Oha}zFdPSBy zC;WC+^n8b2Dn8)=+qD91h?$ZZ={Gp~^U9BEuhMb6;g=RLAGd<4Yk+Opf%xEwieo0V zevQg0>+S`Gn9xLGG~CtSuAwjIqu z@HWM_P~sL@jdKqx_47!^pi?sKflp(vQ(1cJoX1pA82v1xf)~H8cfWi(F=h*A^hDd% zB-R}4EfENA%);p5%JwZx2p74r(=wZyAEFq!1j|M|87%!`nPl$l2U$ z-Vo+!@AL5~xqE4hl2zM%&+{n#w?86#I-bQ zq53^3kPMf)q#P`6kou`VQW_3^Iz4UI@z>r9+DIAAMvuMb#0G@+wk*)Ylst|rJ63g{ zq@NVHG_4HpRBPnC^opkl?bVhr(UfzR3!U=kreb<(yL<)RLw5NZKzZxR!Z2fhfzLnh z@iBVKto})m>!?yB+bj|)?XEP}-w=Whnt0gHX%w?>G?e&qOTs zIviosq0nM+!x5JLT+{YD>ym!8tMHq(1Gj7OG{@d&a?lYLUGRR)uXK@a;@Ym8*^Aoe zDyIpzyt}hn-`9F~UG$3@r|82^T{Sxbn>h!zh!x>(IEm8tS}AtcSjNOYo3k8)Cu>Qx zHcYp4Ios;oV(JqqYM+I*(LHgICBATI*1_q>2|BR6-S$HM_%+APgmZ^=%H2YiD6q@( z4*NJ?B_L_o>{#ZEjbS88qgxcIIy&y{2^hZTTy@c&p(p=zkZFWTzx`{uTVVVuy)zuK z<(~?6U^Vva-RTi{Siq->%ah zD(%pvRpqW}xP-N;Qa4vQM zK^XRT_U!g4bf&oK>A^jB>s5z}M66rzKQLcT3*Hf2-=pGC6N0n8UIg&S2s!d1&H>AQ z-skt=S>Ht%E?m%pUm6m$uFa)Gs&UKmyS-uYF&HQ~6#cmP%sPt;7mdO8$oz{(_s)rG zIdktKN%fbVcxwj+i0Q_)cSR_em|G||H3hbivJ_OZ=Ck%%)#p3X+QiNiR-jj&9Nw@- zhJnjXewy7|KGg2oQxkNHwtErthl8v3TJ9tC)TBl>End=uyEc=goZ0HW+fx2)^qhl| z>bo%U34O<%U!6P4OiDR*p@_g0ZqHVP*!bKb6n+P$qYI9cH>Pz=~-PR?c*=bYs8_&p9x|Yc5#$IKd2WCz!s331%zj zgK4M>n1n3=a=<(=U+xU%fzDvE+7*l=-M}!~9SmbUz+i(1=x<&GdhErZyUh!961+h> z*$1?D_vLC;|YV4j@tjAX*0?(T|cVTxsNV zkinPh1{=7Mu%DX&=eVWN#I65|mqmC@SM%-#`TJb~11exdHcdByfMtKsHN(`=b6EUI5_*5gsLw(g_HUQcHDW2#*p} zTn%a9+LD3m=LX!^NZ{_v0B(6HaGUDC;XwjiK>;Fw1nFP|B|w2Xpg}({flKrOE;$0Y zZi&E+%mHr38Q_-I0Jr|z`!fR#gr^|9Gr})J`1J_C3*qw-{w%^*Abd5#qkCpNLiiU5 z-~aXg#$X2XkcALrAqiPHiY!zi3r~@Sej*osBXeQEjSGX3To}sW!lzO$jMj6%;#Cmd z1mW!v-W}nWBm9pDpN#Mah+HTjbD_+Q3)dsLP?y1lN2OeNQ~wQ*M|j={$RWH6!jlkQ z7vYT&-j>J(FESS*-MFwb64}b&!qrkPwAFvbV|C4SvBE4=m=?k|ES5bQdeB8x8n4D; z&HirfprSS#ER!cP1gxwq7Re{7BsE^+w5j@7kma?p6b#UT$+OHaV*ExUm`0_ld}-sK z8L~=zkqW3;7=Kj>o;3Lt6EVj7~V01ZhkzO}Ph zI5`Iv9i=_LD_9~Z$=!gKigAgrc=KF;q7PxSpG8}sJIA1qG*k%a#JyTWSQ zQ~&T#llRe@Idv9%ck@53Dp*+jm9an5=TEoa&%r-a``X5v{k&oRhXu?3gwW#p4~x1M z&%VJw)CMra8ag@}f16ML38;Y-FbX8e|D^Xtjx1wlq8@2~Y4{Ikw3I9Go?yx+^tTAs zOx(mL^cV95eGST_DHE8*vXtbRXHLxWKR&n+8t^F}AyNhObNt$b zrYC@y9FEAJq`c;@BCI)!X^!Q8W~{Ft0*ggLIz+VEn0-~8d|*SKWqnoN5!sw9ru@0d zpA`Jhh7ZE>*E)NirY(ldV$JzB7z7g=Qv!c+p0bMZ`Y?wui>FUTe}o~62K`I1MQ!#I zU#tPI>tYHxtT69;WN9g)1M~Y&gC}7r@m4+lXUQL`iN)Cvq)g2IFi-gU${=e%;=KSF zUX>}ve;nil{7K=h+jDrTDzhgq0k^kD|ND|-P@ZX^Llg?O0+xGNY%xr6aq#8KD%2}g}b95vAgbW(iz z993(VA87BKc2eoe;`j)q!JxJGH?vcUx}m5plF5_lR+DVZmNtcB=rZUuB_tR9W|M*9Z(oZ!lHpWMr+QQj zhV54|$kOTLZ#Dka49YhSiU{i;{5DXvGDXhCUlsxyp6__y?{xXY_q&$gS5%DX)G5RF zdm*ZcBTw7p>)ZH)7_I#z2E%@eBm12SUDX8jQ1rW2tgh)~6T@EIo-yNhV)VF%42JbY z8#)UU)u+BCMSFV%OJs9mR4h^7C=7tYrDbg0k}F_a8wmVY%&;tU3wQ-4!r_0W6xxBMTB0MAe1%^nou{ChuTN<4iQ1NkWn zP%ND_5lg3_Sh^*OrSp80>Hf@#xH&Io{>3NZ#m)c9C*j4-zxX65ZqD;bG&3e+=h@3Z z?eOxiar0?Be`GRl&Wo8VqL?{9PLAT^lC>y4KIwl*-J0}28c}SV=YR0x;>iENKSllr zFDCvH`5&)&G4XBuc=*&>rYKLRQUui|wt6acA|xe%teZ*d zO}GvSPqo5Nn$faQoMMuw^v9imcRNYcO?2YlnSbEj6crUJ71`v61}2*)PLlE(Q+J%N zIE)a5syqSx_8h2Ak*891zOY1eB>(sB@A6{NVvARZm%85_Ol1-h!Ce*Fe4@+TfKa+Inc5 zRAn%egFE>o=2R-?=!KxaX(I2dx77=DITQPrI@+s9 zdjcl&yC|=Vc(XF%%e=fUKc|bhvfQOL{G2X-ue!b#h*fJ*9(Nr`)KBhHZ5u%Z5VFqyX&4>FBc%bT!#2^1>(#9 z?qmPvh5yY9f1ek|>L{7$iAsQpjy7`Q(7t0dO_;~;R26Z$JU@6cLm?_=u4cqrI?ed| zk`!50XChf?$XjFpr-J95P?0s5B*GI_P&WA@nP?D{=ig>hiq?J2uXI(3N3pd)jhDI* z#_8&ijL?Fsr);VVL@_g6b#?x(WS}NAO`5E&G$nIFo+kTs`RCacpI~~t%m4f3zW@&2 Bc;^5B literal 0 HcmV?d00001 diff --git a/src/Greenshot.Addons/Core/GreenshotResources.cs b/src/Greenshot.Addons/Resources/GreenshotResources.cs similarity index 52% rename from src/Greenshot.Addons/Core/GreenshotResources.cs rename to src/Greenshot.Addons/Resources/GreenshotResources.cs index c0052caab..8aae6a6b6 100644 --- a/src/Greenshot.Addons/Core/GreenshotResources.cs +++ b/src/Greenshot.Addons/Resources/GreenshotResources.cs @@ -26,30 +26,31 @@ using System.ComponentModel; using System.Drawing; using System.Windows.Media.Imaging; +using Dapplo.Addons; using Dapplo.Windows.Icons; +using Greenshot.Gfx; #endregion -namespace Greenshot.Addons.Core +namespace Greenshot.Addons.Resources { /// /// Centralized storage of the icons & bitmaps /// - public static class GreenshotResources + public class GreenshotResources { private static readonly ComponentResourceManager greenshotResources = new ComponentResourceManager(typeof(GreenshotResources)); + private readonly IResourceProvider _resourceProvider; + // TODO: Remove all usages + public static GreenshotResources Instance; - public static Bitmap GetBitmap(string imageName) - { - return (Bitmap) greenshotResources.GetObject(imageName); - } + public GreenshotResources(IResourceProvider resourceProvider) + { + _resourceProvider = resourceProvider; + Instance = this; + } - public static Icon GetIcon(string imageName) - { - return (Icon) greenshotResources.GetObject(imageName); - } - - public static BitmapSource GreenshotIconAsBitmapSource() + public BitmapSource GreenshotIconAsBitmapSource() { using (var icon = GetGreenshotIcon()) { @@ -57,14 +58,35 @@ namespace Greenshot.Addons.Core } } - public static Icon GetGreenshotIcon() + public Icon GetGreenshotIcon() + { + return GetIcon("Greenshot"); + } + + public Icon GetIcon(string name) + { + using (var iconStream = _resourceProvider.ResourceAsStream(GetType().Assembly, "Resources", $"{name}.Icon.ico")) + { + return new Icon(iconStream); + } + } + + public Bitmap GetGreenshotImage() { - return GetIcon("Greenshot.Icon"); + return GetBitmap("Greenshot.Image.png"); } - public static Image GetGreenshotImage() - { - return GetBitmap("Greenshot.Image"); - } - } + public Bitmap GetBitmap(string name) + { + if (name.EndsWith(".Image")) + { + name = name + ".png"; + + } + using (var pngStream = _resourceProvider.ResourceAsStream(GetType().Assembly, "Resources", name)) + { + return BitmapHelper.FromStream(pngStream); + } + } + } } \ No newline at end of file diff --git a/src/Greenshot.Addons/Resources/Printer.Image.png b/src/Greenshot.Addons/Resources/Printer.Image.png new file mode 100644 index 0000000000000000000000000000000000000000..18738f6c562946458eca6444fbd286c6a55e70b0 GIT binary patch literal 738 zcmV<80v-K{P)Px#1ZP1_K>z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBU!U`a$lR5(wKl3z$uQ5?q)>07IZk@mWWe3&RS1d}<)>6ooH;qH&j zNES$UlMx{}mASc*%0vjkXgwJ|xY&!R56M(i7)cxSSV4jhiOLAF&6(9EW_n;L6WR!YBHd{UWeM+J208<3uj?r6+=VA zlayu6&CLzd)6=WzbQ%VOfrs5N8copY8hG&TISht-!kL>}!q`}Jm9k8)*E>_G)W*un z3N#uGT3a7+$?{K(#unko{D{ZjZBUkJwc4kNL;|r`3@VihcKc&kEDtY)oQa7E%*@Py zvaF`2#+OXK$LwqZUhgxEjz%#u@(Phiw1C%nIy<|twDeIxS*BL2{maX1SX^8~TU*Px#1ZP1_K>z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBUzXGugsR5(wijZI4eQ5c04{4cX}qcETgL3h$7Vg7-RqN1R<5JU-F z^+yz}$N}kNAkq+X7EP9Eo73q@XWou?>W!70Q?L2al74Tf(xTo zGmn8;c2vPtyfrV=#C|ulMu~&bTuS1A#yQ z`Fx&&zA6~T<8cIoLD=>qG) _configViewModel; private readonly IConfigScreen _configScreen; private static readonly LogSource Log = new LogSource(); + public ExportNotificationViewModel( IDestination source, ExportInformation exportInformation, @@ -62,7 +64,7 @@ namespace Greenshot.Addons.ViewModels } } - public ImageSource GreenshotIcon => GreenshotResources.GreenshotIconAsBitmapSource(); + public ImageSource GreenshotIcon => GreenshotResources.Instance.GreenshotIconAsBitmapSource(); public ImageSource ExportBitmapSource { get; } diff --git a/src/Greenshot/Destinations/ClipboardDestination.cs b/src/Greenshot/Destinations/ClipboardDestination.cs index fdc2eec07..6a24944b1 100644 --- a/src/Greenshot/Destinations/ClipboardDestination.cs +++ b/src/Greenshot/Destinations/ClipboardDestination.cs @@ -34,6 +34,7 @@ using Greenshot.Addons.Core.Enums; using Greenshot.Addons.Extensions; using Greenshot.Addons.Interfaces; using Greenshot.Addons.Interfaces.Plugin; +using Greenshot.Addons.Resources; using Greenshot.Core.Enums; #endregion @@ -61,7 +62,7 @@ namespace Greenshot.Destinations public override Keys EditorShortcutKeys => Keys.Control | Keys.Shift | Keys.C; - public override Bitmap DisplayIcon => GreenshotResources.GetBitmap("Clipboard.Image"); + public override Bitmap DisplayIcon => GreenshotResources.Instance.GetBitmap("Clipboard.Image"); protected override ExportInformation ExportCapture(bool manuallyInitiated, ISurface surface, ICaptureDetails captureDetails) { diff --git a/src/Greenshot/Destinations/EmailDestination.cs b/src/Greenshot/Destinations/EmailDestination.cs index c06590e21..947186107 100644 --- a/src/Greenshot/Destinations/EmailDestination.cs +++ b/src/Greenshot/Destinations/EmailDestination.cs @@ -30,6 +30,7 @@ using Greenshot.Addons; using Greenshot.Addons.Components; using Greenshot.Addons.Core; using Greenshot.Addons.Interfaces; +using Greenshot.Addons.Resources; using Greenshot.Helpers; #endregion @@ -43,7 +44,7 @@ namespace Greenshot.Destinations public class EmailDestination : AbstractDestination { private readonly ExportNotification _exportNotification; - private static readonly Bitmap MailIcon = GreenshotResources.GetBitmap("Email.Image"); + private static readonly Bitmap MailIcon = GreenshotResources.Instance.GetBitmap("Email.Image"); private static bool _isActiveFlag; private static string _mapiClient; diff --git a/src/Greenshot/Destinations/FileDestination.cs b/src/Greenshot/Destinations/FileDestination.cs index 970126d56..cb00fb2ad 100644 --- a/src/Greenshot/Destinations/FileDestination.cs +++ b/src/Greenshot/Destinations/FileDestination.cs @@ -34,6 +34,7 @@ using Greenshot.Addons.Controls; using Greenshot.Addons.Core; using Greenshot.Addons.Interfaces; using Greenshot.Addons.Interfaces.Plugin; +using Greenshot.Addons.Resources; #endregion @@ -60,7 +61,7 @@ namespace Greenshot.Destinations public override Keys EditorShortcutKeys => Keys.Control | Keys.S; - public override Bitmap DisplayIcon => GreenshotResources.GetBitmap("Save.Image"); + public override Bitmap DisplayIcon => GreenshotResources.Instance.GetBitmap("Save.Image"); protected override ExportInformation ExportCapture(bool manuallyInitiated, ISurface surface, ICaptureDetails captureDetails) { diff --git a/src/Greenshot/Destinations/FileWithDialogDestination.cs b/src/Greenshot/Destinations/FileWithDialogDestination.cs index 261fb3c2f..fb3cd81a1 100644 --- a/src/Greenshot/Destinations/FileWithDialogDestination.cs +++ b/src/Greenshot/Destinations/FileWithDialogDestination.cs @@ -29,6 +29,7 @@ using Greenshot.Addons; using Greenshot.Addons.Components; using Greenshot.Addons.Core; using Greenshot.Addons.Interfaces; +using Greenshot.Addons.Resources; #endregion @@ -57,7 +58,7 @@ namespace Greenshot.Destinations public override Keys EditorShortcutKeys => Keys.Control | Keys.Shift | Keys.S; - public override Bitmap DisplayIcon => GreenshotResources.GetBitmap("Save.Image"); + public override Bitmap DisplayIcon => GreenshotResources.Instance.GetBitmap("Save.Image"); protected override ExportInformation ExportCapture(bool manuallyInitiated, ISurface surface, ICaptureDetails captureDetails) { diff --git a/src/Greenshot/Destinations/PrinterDestination.cs b/src/Greenshot/Destinations/PrinterDestination.cs index 0efe4c392..e8eedf3eb 100644 --- a/src/Greenshot/Destinations/PrinterDestination.cs +++ b/src/Greenshot/Destinations/PrinterDestination.cs @@ -33,6 +33,7 @@ using Greenshot.Addons; using Greenshot.Addons.Components; using Greenshot.Addons.Core; using Greenshot.Addons.Interfaces; +using Greenshot.Addons.Resources; using Greenshot.Helpers; #endregion @@ -86,7 +87,7 @@ namespace Greenshot.Destinations public override Keys EditorShortcutKeys => Keys.Control | Keys.P; - public override Bitmap DisplayIcon => GreenshotResources.GetBitmap("Printer.Image"); + public override Bitmap DisplayIcon => GreenshotResources.Instance.GetBitmap("Printer.Image"); public override bool IsDynamic => true; diff --git a/src/Greenshot/Forms/CaptureForm.cs b/src/Greenshot/Forms/CaptureForm.cs index c3eb447d8..78224fa9d 100644 --- a/src/Greenshot/Forms/CaptureForm.cs +++ b/src/Greenshot/Forms/CaptureForm.cs @@ -44,6 +44,7 @@ using Greenshot.Addons.Animation; using Greenshot.Addons.Controls; using Greenshot.Addons.Core; using Greenshot.Addons.Interfaces; +using Greenshot.Addons.Resources; using Greenshot.Gfx.Legacy; #endregion @@ -84,7 +85,7 @@ namespace Greenshot.Forms /// static CaptureForm() { - var backgroundForTransparency = GreenshotResources.GetBitmap("Checkerboard.Image"); + var backgroundForTransparency = GreenshotResources.Instance.GetBitmap("Checkerboard.Image"); BackgroundBrush = new TextureBrush(backgroundForTransparency, WrapMode.Tile); } diff --git a/src/Greenshot/Forms/LanguageDialog.cs b/src/Greenshot/Forms/LanguageDialog.cs index b1825c645..99434c97f 100644 --- a/src/Greenshot/Forms/LanguageDialog.cs +++ b/src/Greenshot/Forms/LanguageDialog.cs @@ -29,6 +29,7 @@ using System.Threading; using System.Windows.Forms; using Dapplo.Log; using Greenshot.Addons.Core; +using Greenshot.Addons.Resources; #endregion @@ -48,7 +49,7 @@ namespace Greenshot.Forms // The InitializeComponent() call is required for Windows Forms designer support. // InitializeComponent(); - Icon = GreenshotResources.GetGreenshotIcon(); + Icon = GreenshotResources.Instance.GetGreenshotIcon(); Load += FormLoad; FormClosing += PreventFormClose; } diff --git a/src/Greenshot/Forms/MainForm.cs b/src/Greenshot/Forms/MainForm.cs index bd5ab013f..18beb79b8 100644 --- a/src/Greenshot/Forms/MainForm.cs +++ b/src/Greenshot/Forms/MainForm.cs @@ -60,13 +60,15 @@ using Greenshot.Ui.Configuration.ViewModels; using Message = System.Windows.Forms.Message; using Screen = System.Windows.Forms.Screen; using Dapplo.Config.Ini; +using Dapplo.Addons; +using Greenshot.Addons.Resources; #endregion namespace Greenshot.Forms { /// - /// Description of MainForm. + /// The MainForm provides the "shell" of the application /// public partial class MainForm : GreenshotForm { @@ -89,6 +91,7 @@ namespace Greenshot.Forms public MainForm(ICoreConfiguration coreConfiguration, IWindowManager windowManager, IGreenshotLanguage greenshotLanguage, + GreenshotResources greenshotResources, Func> configViewModelFactory, Func> aboutFormFactory, DestinationHolder destinationHolder) : base(greenshotLanguage) @@ -119,7 +122,8 @@ namespace Greenshot.Forms ex.Data.Add("more information here", "http://support.microsoft.com/kb/943140"); throw; } - notifyIcon.Icon = GreenshotResources.GetGreenshotIcon(); + + notifyIcon.Icon = GreenshotResources.Instance.GetGreenshotIcon(); // Disable access to the settings, for feature #3521446 contextmenu_settings.Visible = !_coreConfiguration.DisableSettings; @@ -386,7 +390,7 @@ namespace Greenshot.Forms contextmenu_quicksettings.Size = new Size(170, width + 8); contextMenu.ResumeLayout(true); contextMenu.Refresh(); - notifyIcon.Icon = GreenshotResources.GetGreenshotIcon(); + notifyIcon.Icon = GreenshotResources.Instance.GetGreenshotIcon(); }); var contextMenuResourceScaleHandler = BitmapScaleHandler.WithComponentResourceManager(ContextMenuDpiHandler, GetType(), (bitmap, dpi) => bitmap.ScaleIconForDisplaying(dpi)); diff --git a/src/Greenshot/Resources/contextmenu_capturearea.Image.png b/src/Greenshot/Resources/contextmenu_capturearea.Image.png new file mode 100644 index 0000000000000000000000000000000000000000..0faf22263d8cb1bb5689e76a64ca62743e139c25 GIT binary patch literal 285 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCijiOI#yLg7ec#$`gxH85~pclTsBta}(23gHjVyDhp4h+5i*X@*P8<_xo$k__%JnD(2h>}CL}Y?yR9YZ5QR%SP!2Uq(ZTyoO!R`6k7J zR61P$uW^#C;mZNu1IrpDc+3x|y|X*12U7W9#-B$G$)CJ8C@Rdd_{Qy$rX>GAoq-{H XV%b``@^Dq4YZ*LU{an^LB{Ts5^&(?k literal 0 HcmV?d00001 diff --git a/src/Greenshot/Resources/contextmenu_captureclipboard.Image.png b/src/Greenshot/Resources/contextmenu_captureclipboard.Image.png new file mode 100644 index 0000000000000000000000000000000000000000..8edd1d9979571d27f14175de47740538503aa85e GIT binary patch literal 777 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 literal 0 HcmV?d00001 diff --git a/src/Greenshot/Resources/contextmenu_donate.Image.png b/src/Greenshot/Resources/contextmenu_donate.Image.png new file mode 100644 index 0000000000000000000000000000000000000000..3c045def031957a058cbf37a0a45d97eb09b398b GIT binary patch literal 740 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 literal 0 HcmV?d00001 diff --git a/src/Greenshot/Resources/contextmenu_settings.Image.png b/src/Greenshot/Resources/contextmenu_settings.Image.png new file mode 100644 index 0000000000000000000000000000000000000000..443fd0ce0bd0735c2ed33ceb4fcb2868dd025e68 GIT binary patch literal 643 zcmV-}0(||6P)Px#1ZP1_K>z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBU!0ZBwbR5(wikiSbCVI0QakRgyCkStkhLMaJS5{q0wa_tZhBs7;H zzy5(trAQ|splAm{L~yW}PA&?qyOOD?3K~wx1rl?iQ5tO;E-KkWA}`Y-99SS-fk@i2D^J5xG9xOB}s{Md#5#B9VB@fsg!sfp;(% zP`}@&(G1L!1Ck`Y%jI$#yT24Gh=^1JP&{`qXZ>Nm0tw?P^pg z6n<-(Mi6|f)zWWZz@lReh@!|Mk;qs&o&J1wR-;<2N>^8x)am@y1&<6jFksO!2EyTR zga>ob&dzqL(NJl3_j@xK41R^+k>NJv&@l!CLC94q3LPCC(&?#8^?IEqCf=-?&1MF{ zBf||0SaghmKp-$*DwU{MED~N-{Y8_L!m`O^Vh}vCQ3f4j!0-3Z_atiY64%<(XT6W`bP4K4rx002ovPDHLkV1h%56Mp~z literal 0 HcmV?d00001 diff --git a/src/Greenshot/Resources/icon.ico b/src/Greenshot/Resources/icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..fd1312dec58ecd9c413fb6a0a2120bd5bd30fa4a GIT binary patch literal 15227 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 Bc;^5B literal 0 HcmV?d00001 diff --git a/src/Greenshot/Startup.cs b/src/Greenshot/Startup.cs index a6b388f77..5a985c4cf 100644 --- a/src/Greenshot/Startup.cs +++ b/src/Greenshot/Startup.cs @@ -42,6 +42,7 @@ using Dapplo.Windows.Dpi.Forms; using Dapplo.Windows.Kernel32; using Greenshot.Addons; using Greenshot.Addons.Core; +using Greenshot.Addons.Resources; using Greenshot.Ui.Misc.ViewModels; namespace Greenshot @@ -173,7 +174,7 @@ namespace Greenshot // A dirty fix to make sure the messagebox is visible as a Greenshot window on the taskbar using (var multiInstanceForm = new DpiAwareForm { - Icon = GreenshotResources.GetGreenshotIcon(), + Icon = GreenshotResources.Instance.GetGreenshotIcon(), ShowInTaskbar = true, MaximizeBox = false, MinimizeBox = false, diff --git a/src/Greenshot/Ui/Notifications/ViewModels/UpdateNotificationViewModel.cs b/src/Greenshot/Ui/Notifications/ViewModels/UpdateNotificationViewModel.cs index 39ce40c0a..53799eea1 100644 --- a/src/Greenshot/Ui/Notifications/ViewModels/UpdateNotificationViewModel.cs +++ b/src/Greenshot/Ui/Notifications/ViewModels/UpdateNotificationViewModel.cs @@ -28,6 +28,7 @@ using Dapplo.CaliburnMicro.Toasts.ViewModels; using Dapplo.Log; using Greenshot.Addons; using Greenshot.Addons.Core; +using Greenshot.Addons.Resources; namespace Greenshot.Ui.Notifications.ViewModels { @@ -50,7 +51,7 @@ namespace Greenshot.Ui.Notifications.ViewModels public string Message => string.Format(_greenshotLanguage.UpdateFound, LatestVersion); - public ImageSource GreenshotIcon => GreenshotResources.GreenshotIconAsBitmapSource(); + public ImageSource GreenshotIcon => GreenshotResources.Instance.GreenshotIconAsBitmapSource(); /// /// Handle the click