mirror of
https://github.com/greenshot/greenshot
synced 2025-08-19 21:13:23 -07:00
Installer, start and exit enhancements
git-svn-id: http://svn.code.sf.net/p/greenshot/code/trunk@762 7dccd23d-a4a3-4e1f-8c07-b4c1b4018ab4
This commit is contained in:
parent
0d6ffe1574
commit
49ac48a6e8
5 changed files with 175 additions and 148 deletions
|
@ -57,7 +57,6 @@ namespace Greenshot.Forms {
|
|||
private Rectangle captureRect = Rectangle.Empty;
|
||||
private ICapture capture = null;
|
||||
private AppConfig conf = AppConfig.GetInstance();
|
||||
private CopyData copyData = null;
|
||||
private ILanguage lang = Language.GetInstance();
|
||||
|
||||
public CaptureForm() {
|
||||
|
@ -65,56 +64,11 @@ namespace Greenshot.Forms {
|
|||
// The InitializeComponent() call is required for Windows Forms designer support.
|
||||
//
|
||||
InitializeComponent();
|
||||
// Create a new instance of the class: copyData = new CopyData();
|
||||
copyData = new CopyData();
|
||||
|
||||
// Assign the handle:
|
||||
copyData.AssignHandle(this.Handle);
|
||||
// Create the channel to send on:
|
||||
copyData.Channels.Add("Greenshot");
|
||||
// Hook up received event:
|
||||
copyData.DataReceived += new DataReceivedEventHandler(CopyDataDataReceived);
|
||||
|
||||
// Make sure the form is hidden (might be overdoing it...)
|
||||
this.Hide();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// DataReceivedEventHandler
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="dataReceivedEventArgs"></param>
|
||||
private void CopyDataDataReceived(object sender, DataReceivedEventArgs dataReceivedEventArgs) {
|
||||
// Cast the data to the type of object we sent:
|
||||
DataTransport dataTransport = (DataTransport)dataReceivedEventArgs.Data;
|
||||
HandleDataTransport(dataTransport);
|
||||
}
|
||||
|
||||
public void HandleDataTransport(DataTransport dataTransport) {
|
||||
LOG.Debug("Data received, Command = " + dataTransport.Command + ", Data: " + dataTransport.CommandData);
|
||||
switch(dataTransport.Command) {
|
||||
case CommandEnum.Exit:
|
||||
MainForm.instance.exit();
|
||||
break;
|
||||
case CommandEnum.ReloadConfig:
|
||||
AppConfig.Reload();
|
||||
// Even update language when needed
|
||||
MainForm.instance.UpdateUI();
|
||||
break;
|
||||
case CommandEnum.OpenFile:
|
||||
string filename = dataTransport.CommandData;
|
||||
if (File.Exists(filename)) {
|
||||
MakeCapture(filename);
|
||||
} else {
|
||||
LOG.Warn("No such file: " + filename);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
LOG.Error("Unknown command!");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void DoCaptureFeedback() {
|
||||
if((bool)conf.Ui_Effects_CameraSound) {
|
||||
SoundHelper.Play();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue