X-Git-Url: http://git.bytex64.net/?a=blobdiff_plain;f=SnapShooter%2FMainWindow.xaml.cs;h=45d8d836aab3494fed3bab9972ec52715c47d02f;hb=33fe743473bd0659f50a67ad53f9b8e819f23955;hp=c01c051832482d111c65c8c1099a6a447f16e55a;hpb=e90b253724d71799e2526f68aa5f74e05468168f;p=SnapShooter.git diff --git a/SnapShooter/MainWindow.xaml.cs b/SnapShooter/MainWindow.xaml.cs index c01c051..45d8d83 100644 --- a/SnapShooter/MainWindow.xaml.cs +++ b/SnapShooter/MainWindow.xaml.cs @@ -2,7 +2,9 @@ using System.IO; using System.Collections.Generic; using System.Linq; +using System.Net; using System.Text; +using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Data; @@ -28,7 +30,7 @@ namespace SnapShooter { public MainWindow() { InitializeComponent(); dt = new DispatcherTimer(); - foundstuff = new StockIcon(StockIconIdentifier.ImageFiles, StockIconSizes.ShellSize, false, false); + foundstuff = new StockIcon(StockIconIdentifier.Info, StockIconSizes.ShellSize, false, false); } private void Window_Loaded(object sender, RoutedEventArgs e) { @@ -41,9 +43,18 @@ namespace SnapShooter { if (Clipboard.ContainsImage()) { TaskbarManager.Instance.SetOverlayIcon(foundstuff.Icon, "Found Image"); + string filename = System.IO.Path.Combine( + Environment.GetEnvironmentVariable("TEMP"), + "SnapShoot.jpg" + ); + + Action localCleanup = new Action(delegate { + File.Delete(filename); + TaskbarManager.Instance.SetOverlayIcon(null, ""); + }); + BitmapSource b = Clipboard.GetImage(); - System.Console.WriteLine(b.GetHashCode()); - FileStream s = new FileStream("clipboard.jpg", FileMode.Create); + FileStream s = new FileStream(filename, FileMode.Create); JpegBitmapEncoder j = new JpegBitmapEncoder(); j.QualityLevel = 85; j.Frames.Add(BitmapFrame.Create(b)); @@ -51,7 +62,15 @@ namespace SnapShooter { s.Close(); Transit t = new Transit(); - t.Create(); + try { + t.Create(); + } catch (WebException we) { + MessageBox.Show("Could not connect to Transit: " + we.Message + "\nThe Clipboard has been cleared.", "FFFFFFFUUUUUUUUUUUUUU-"); + Clipboard.Clear(); + localCleanup(); + return; + } + t.TransferProgress += delegate(object sender2, TransferProgressArgs tpe) { TaskbarManager.Instance.SetProgressValue((int)tpe.PercentComplete, 100); }; @@ -59,19 +78,34 @@ namespace SnapShooter { TaskbarManager.Instance.SetProgressState(TaskbarProgressBarState.NoProgress); Dispatcher.Invoke(new Action(delegate { Clipboard.SetText(t.Url); - SnapShots.Items.Add(String.Format("Processed {0}x{1}\nUploaded to {2}", b.Width, b.Height, t.Url)); - TaskbarManager.Instance.SetOverlayIcon(null, ""); + localCleanup(); + + SnapShotItem i = new SnapShotItem(); + i.TransitURL = t.Url; + SnapShots.Items.Add(i); }), null); }; - t.UploadAsync("clipboard.jpg"); + t.UploadAsync(filename); Clipboard.Clear(); } - return; + } + + private void Enabled_Checked(object sender, RoutedEventArgs e) { + if (dt == null) return; + + dt.Start(); + } + + private void Enabled_Unchecked(object sender, RoutedEventArgs e) { + if (dt == null) return; + + dt.Stop(); + } - throw new NotImplementedException(); - TaskbarManager.Instance.SetProgressState(TaskbarProgressBarState.Normal); - TaskbarManager.Instance.SetProgressValue(50, 100); + private void Help_Click(object sender, RoutedEventArgs e) { + HelpWindow helpWindow = new HelpWindow(); + helpWindow.ShowDialog(); } } }