Skip to content
This repository has been archived by the owner on Jul 24, 2024. It is now read-only.

Commit

Permalink
Update #19 在托盘菜单中加入“粘贴”按钮
Browse files Browse the repository at this point in the history
Update #27 增加一个一键关闭所有参考图的功能
  • Loading branch information
tylearymf committed Jan 6, 2021
1 parent 9a1e4ce commit 2db7a1d
Show file tree
Hide file tree
Showing 7 changed files with 94 additions and 3 deletions.
3 changes: 2 additions & 1 deletion SETUNA/Main/ScrapBook.cs
Original file line number Diff line number Diff line change
Expand Up @@ -242,7 +242,8 @@ public void HideAllScrap()
// Token: 0x060001C8 RID: 456 RVA: 0x00009E5C File Offset: 0x0000805C
public void CloseAllScrap()
{
foreach (var obj in _scraps)
var list = _scraps.ToArray();
foreach (var obj in list)
{
var scrapBase = (ScrapBase)obj;
scrapBase.Close();
Expand Down
28 changes: 28 additions & 0 deletions SETUNA/Main/Style/CDustScrapStyle.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
using System.Windows.Forms;

namespace SETUNA.Main.Style
{
// Token: 0x02000049 RID: 73
public class CDustScrapStyle : CPreStyle
{
// Token: 0x060002BE RID: 702 RVA: 0x0000F520 File Offset: 0x0000D720
public CDustScrapStyle()
{
_styleid = -12;
_stylename = "关闭所有截图";
}

// Token: 0x060002BF RID: 703 RVA: 0x0000F53B File Offset: 0x0000D73B
public override void Apply(ref ScrapBase scrap)
{
Layer.LayerManager.Instance.SuspendRefresh();
var result = MessageBox.Show(Mainform.Instance, "是否关闭所有截图", "提示", MessageBoxButtons.YesNo);
Layer.LayerManager.Instance.ResumeRefresh();

if (result == DialogResult.Yes)
{
scrap.Manager.CloseAllScrap();
}
}
}
}
56 changes: 56 additions & 0 deletions SETUNA/Main/Style/CPasteStyle.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
using System.Drawing;
using System.IO;
using System.Windows.Forms;

namespace SETUNA.Main.Style
{
// Token: 0x02000049 RID: 73
public class CPasteStyle : CPreStyle
{
// Token: 0x060002BE RID: 702 RVA: 0x0000F520 File Offset: 0x0000D720
public CPasteStyle()
{
_styleid = -13;
_stylename = "从剪贴板中粘贴截图";
}

// Token: 0x060002BF RID: 703 RVA: 0x0000F53B File Offset: 0x0000D73B
public override void Apply(ref ScrapBase scrap)
{
Image image = null;
if (Clipboard.ContainsImage())
{
image = Clipboard.GetImage();
}
else if (Clipboard.ContainsText())
{
var text = Clipboard.GetText();
if (File.Exists(text))
{
FileStream fileStream = null;
try
{
fileStream = new FileStream(text, FileMode.Open, FileAccess.Read);
image = (Bitmap)Image.FromStream(fileStream);
fileStream.Close();
fileStream = null;
}
catch
{
}
finally
{
if (fileStream != null)
{
fileStream.Close();
}
}
}
}
if (image != null)
{
scrap.Manager.AddScrap(image, scrap.Left, scrap.Top, image.Width, image.Height);
}
}
}
}
4 changes: 3 additions & 1 deletion SETUNA/Main/Style/CPreStyles.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,11 @@ public static List<CStyle> GetPreStyleList()
new CScrapListStyle(),
new CDustBoxStyle(),
new CDustEraseStyle(),
new CDustScrapStyle(),
new CCaptureStyle(),
new CPasteStyle(),
new COptionStyle(),
new CShutDownStyle()
new CShutDownStyle(),
};
}

Expand Down
2 changes: 2 additions & 0 deletions SETUNA/Mainform.cs
Original file line number Diff line number Diff line change
Expand Up @@ -99,8 +99,10 @@ private void SetSubMenu()
setunaIconMenu.Items.Add(new CScrapListStyle().GetToolStrip(scrapBook));
setunaIconMenu.Items.Add(new CDustBoxStyle().GetToolStrip(scrapBook));
setunaIconMenu.Items.Add(new CDustEraseStyle().GetToolStrip());
setunaIconMenu.Items.Add(new CDustScrapStyle().GetToolStrip());
setunaIconMenu.Items.Add(new ToolStripSeparator());
setunaIconMenu.Items.Add(new CCaptureStyle().GetToolStrip());
setunaIconMenu.Items.Add(new CPasteStyle().GetToolStrip());
setunaIconMenu.Items.Add(new ToolStripSeparator());
setunaIconMenu.Items.Add(new CShowVersionStyle().GetToolStrip());
setunaIconMenu.Items.Add(new COptionStyle().GetToolStrip());
Expand Down
2 changes: 1 addition & 1 deletion SETUNA/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@
[assembly: AssemblyInformationalVersion("3.0")]
[assembly: AssemblyDescription("")]
[assembly: NeutralResourcesLanguage("zh-CN")]
[assembly: AssemblyVersion("3.0.0.1")]
[assembly: AssemblyVersion("3.0.0.2")]
2 changes: 2 additions & 0 deletions SETUNA/SETUNA.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,8 @@
</Compile>
<Compile Include="Main\Common\Utils.cs" />
<Compile Include="Main\HotKeyID.cs" />
<Compile Include="Main\Style\CPasteStyle.cs" />
<Compile Include="Main\Style\CDustScrapStyle.cs" />
<Compile Include="Main\ToolStripEx.cs" />
<Compile Include="Main\Window\WindowManager.cs" />
<Compile Include="Main\ContextStyleMenuStrip.cs">
Expand Down

0 comments on commit 2db7a1d

Please sign in to comment.