diff --git a/.gitignore b/.gitignore index 0c5ff375..28b243f5 100644 --- a/.gitignore +++ b/.gitignore @@ -16,6 +16,7 @@ Makefile POTFILES SparkleLib/windows/GlobalAssemblyInfoGit.cs intltool-* +SparkleShare/data configure config.guess config.h diff --git a/SparkleShare/Windows/SparkleAbout.cs b/SparkleShare/Windows/SparkleAbout.cs index 1ecff510..017bb70e 100644 --- a/SparkleShare/Windows/SparkleAbout.cs +++ b/SparkleShare/Windows/SparkleAbout.cs @@ -18,19 +18,18 @@ using System; using System.ComponentModel; using System.Diagnostics; -using System.Drawing; using System.IO; using System.Linq; using System.Net; -using System.Windows.Forms; +using System.Windows; +using System.Windows.Controls; namespace SparkleShare { - public class SparkleAbout : Form { + public class SparkleAbout : Window { public SparkleAboutController Controller = new SparkleAboutController (); - private IContainer components; private Label version; private Label copyright; private Label updates; @@ -45,61 +44,48 @@ namespace SparkleShare { public SparkleAbout () { - Name = "SparkleAbout"; + Title = "About SparkleShare"; +// Icon = Icons.sparkleshare; - Text = "About SparkleShare"; - Icon = Icons.sparkleshare; - - MaximizeBox = false; - MinimizeBox = false; - - BackgroundImage = Icons.about; - ClientSize = BackgroundImage.Size; - AutoScaleDimensions = new SizeF (6F, 13F); - AutoScaleMode = AutoScaleMode.Font; - ClientSize = new Size (640, 260); - MaximumSize = Size; - MinimumSize = Size; + - FormBorderStyle = FormBorderStyle.FixedDialog; - - SizeGripStyle = SizeGripStyle.Hide; - StartPosition = FormStartPosition.CenterScreen; - - FormClosing += Close; - CreateHandle (); + //BackgroundImage = Icons.about; + Height = 300; + Width = 600; + //Closing + // += Close; CreateAbout (); - + Controller.ShowWindowEvent += delegate { - this.version.Invoke ((Action) delegate { + Dispatcher.Invoke ((Action) delegate { Show (); - BringToFront (); + BringIntoView (); }); }; Controller.HideWindowEvent += delegate { - Invoke ((Action) delegate { + Dispatcher.Invoke ((Action) delegate { Hide (); }); }; Controller.NewVersionEvent += delegate (string new_version) { - Invoke ((Action) delegate { - this.updates.Text = "A newer version (" + new_version + ") is available!"; + Dispatcher.Invoke ((Action) delegate { + this.updates.Content = "A newer version (" + new_version + ") is available!"; }); }; Controller.VersionUpToDateEvent += delegate { - Invoke ((Action) delegate { - this.updates.Text = "You are running the latest version."; + Dispatcher.Invoke ((Action) delegate { + this.updates.Content = "You are running the latest version."; }); }; Controller.CheckingForNewVersionEvent += delegate { - Invoke ((Action) delegate { - this.updates.Text = "Checking for updates..."; + Dispatcher.Invoke ((Action) delegate { + this.updates.Content = "Checking for updates..."; }); }; } @@ -107,59 +93,47 @@ namespace SparkleShare { private void CreateAbout () { - ComponentResourceManager resources = - new ComponentResourceManager (typeof (SparkleAbout)); - - SuspendLayout (); - this.version = new Label () { - AutoSize = true, - BackColor = Color.Transparent, - ForeColor = Color.LightGray, - Location = new Point (302, 102), - Size = new Size (34, 13), - Text = "version " + Controller.RunningVersion + + + Content = "version " + Controller.RunningVersion }; + + this.version.SetValue(Canvas.LeftProperty, 302.0); + this.version.SetValue(Canvas.TopProperty, 102.0); this.updates = new Label () { - AutoSize = true, - BackColor = Color.Transparent, - ForeColor = Color.White, - Location = new Point (302, 89), - Size = new Size (106, 13), - Text = "Checking for updates..." + Content = "Checking for updates..." }; + + this.version.SetValue(Canvas.LeftProperty, 302.0); + this.version.SetValue(Canvas.TopProperty, 98.0); + this.copyright = new Label () { - BackColor = Color.Transparent, - Font = new Font ("Microsoft Sans Serif", 8.25F, FontStyle.Regular, GraphicsUnit.Point, ((byte) (0))), - ForeColor = Color.White, - Location = new Point (302, 135), - Size = new Size (298, 84), - Text = "Copyright © 2010–" + DateTime.Now.Year + " Hylke Bons and others.\n" + + Content = "Copyright © 2010–" + DateTime.Now.Year + " Hylke Bons and others.\n" + "SparkleShare is Free and Open Source Software. You are free to use, modify, " + "and redistribute it under the GNU General Public License version 3 or later." }; - Controls.Add (this.version); - Controls.Add (this.updates); - Controls.Add (this.copyright); - - ResumeLayout (false); - PerformLayout (); + this.version.SetValue(Canvas.LeftProperty, 302.0); + this.version.SetValue(Canvas.TopProperty, 84.0); + AddVisualChild (this.version); + Button b = new Button (); + b.Content = "FFF"; + Content = this.copyright; + //AddChild(this.version); + //AddChild(this.updates); + //AddChild(this.copyright); + Show (); } - protected override void Dispose (bool disposing) { - if (disposing && (components != null)) - components.Dispose (); + + /* - base.Dispose (disposing); - } - - - private void Close (object sender, FormClosingEventArgs args) + private void Close (object sender, Clos) { if (args.CloseReason != CloseReason.ApplicationExitCall && args.CloseReason != CloseReason.TaskManagerClosing && @@ -168,6 +142,6 @@ namespace SparkleShare { Controller.WindowClosed (); args.Cancel = true; } - } + }*/ } } diff --git a/SparkleShare/Windows/SparkleEventLog.cs b/SparkleShare/Windows/SparkleEventLog.cs index aec2bff3..56db705a 100644 --- a/SparkleShare/Windows/SparkleEventLog.cs +++ b/SparkleShare/Windows/SparkleEventLog.cs @@ -53,30 +53,31 @@ namespace SparkleShare { Program.TranslateWinForm (this); - this.Icon = Icons.sparkleshare; - + // this.Icon = Icons.sparkleshare; + this.change_sets = Program.Controller.GetLog (null); GenerateHTML (); - + _browserControl = new CefWebBrowser ("application://sparkleshare/eventlog"); _browserControl.Dock = DockStyle.Fill; //_browserControl.PropertyChanged += HandleBrowserPropertyChanged; //_browserControl.ConsoleMessage += HandleConsoleMessage; _browserControl.BeforeResourceLoadHandler = this; WebViewPanel.Controls.Add (_browserControl); - UpdateChooser (); + } public void UpdateChooser () { this.combo_box.Items.Add (_ ("All Projects")); this.combo_box.Items.Add (""); - foreach (string folder_name in Program.Controller.Folders) this.combo_box.Items.Add (folder_name); - - this.combo_box.SelectedItem = this.combo_box.Items[0]; + + + //this.combo_box.SelectedItem = this.combo_box.Items[0]; + } diff --git a/SparkleShare/Windows/SparkleShare.csproj b/SparkleShare/Windows/SparkleShare.csproj index 63674022..480f7883 100644 --- a/SparkleShare/Windows/SparkleShare.csproj +++ b/SparkleShare/Windows/SparkleShare.csproj @@ -54,9 +54,6 @@ - - ..\..\bin\CefSharp.dll - False ..\..\tools\gettext-cs-utils\Gettext.CsUtils\Core\Gettext.Cs\bin\Release\Gettext.Cs.dll @@ -70,6 +67,12 @@ + + ..\..\bin\CefSharp.dll + + + + @@ -115,7 +118,6 @@ True Resources.resx - diff --git a/SparkleShare/Windows/SparkleStatusIcon.cs b/SparkleShare/Windows/SparkleStatusIcon.cs index c5e0a6a7..ff2175e3 100644 --- a/SparkleShare/Windows/SparkleStatusIcon.cs +++ b/SparkleShare/Windows/SparkleStatusIcon.cs @@ -21,7 +21,9 @@ using System.IO; using System.Runtime.InteropServices; using SparkleLib; -using System.Windows.Forms; +using WinForms = System.Windows.Forms; +using System.Windows.Controls; +using System.Windows; namespace SparkleShare { @@ -30,13 +32,12 @@ namespace SparkleShare { public SparkleStatusIconController Controller = new SparkleStatusIconController(); - private Timer Animation; + private WinForms.Timer Animation; private Bitmap [] AnimationFrames; private int FrameNumber; private string StateText; - private ToolStripItem status_menu_item; - private NotifyIcon status_icon; + private WinForms.NotifyIcon status_icon; // Short alias for the translations public static string _ (string s) @@ -45,15 +46,70 @@ namespace SparkleShare { } - public SparkleStatusIcon () + + + void notifier_MouseDown(object sender, WinForms.MouseEventArgs e) + { + ContextMenu menu = new ContextMenu (); + + MenuItem item = new MenuItem () {Header = " SparkleShare"}; + + MenuItem item2 = new MenuItem () {Header = " Add Hosted Project..."}; + + MenuItem item3 = new MenuItem () {Header = " View Recent Changes..."}; + MenuItem item4 = new MenuItem () {Header = " Turn Notifications Off"}; + MenuItem item5 = new MenuItem () {Header = " About SparkleShare"}; + + MenuItem item6 = new MenuItem () {Header = " Quit"}; + + menu.Items.Add (item); + menu.Items.Add (new Separator ());menu.Items.Add (item2); + menu.Items.Add (new Separator ()); + menu.Items.Add (item3); + menu.Items.Add (item4); + menu.Items.Add (new Separator ()); + menu.Items.Add (item5); + menu.Items.Add (new Separator ()); + menu.Items.Add (item6); + + menu.Placement = System.Windows.Controls.Primitives.PlacementMode.MousePoint; + menu.IsOpen = true; + menu.IsHitTestVisible=true; + + Window w = new Window (); + + w.Title = "test"; + w.Show (); + w.Height = 300; + w.Width = 300; + w.BringIntoView (); + + + + } + + + + public SparkleStatusIcon () { AnimationFrames = CreateAnimationFrames (); Animation = CreateAnimation (); - this.status_icon = new NotifyIcon (); + this.status_icon = new WinForms.NotifyIcon (); status_icon.Text = "SparkleShare"; status_icon.Icon = Icons.sparkleshare; status_icon.Visible = true; + + this.status_icon.MouseDown += new WinForms.MouseEventHandler(notifier_MouseDown); + + + + + + + + + CreateMenu (); SetNormalState (); @@ -108,11 +164,11 @@ namespace SparkleShare { // Creates the Animation that handles the syncing animation - private Timer CreateAnimation () + private WinForms.Timer CreateAnimation () { FrameNumber = 0; - Timer Animation = new Timer () { + WinForms.Timer Animation = new WinForms.Timer () { Interval = 35 }; @@ -135,7 +191,7 @@ namespace SparkleShare { // user clicks the status icon public void CreateMenu () { - ContextMenuStrip Menu = new ContextMenuStrip (); + /* ContextMenuStrip Menu = new ContextMenuStrip (); // The menu item showing the status and size of the SparkleShare folder status_menu_item = new ToolStripLabel (StateText); @@ -252,7 +308,11 @@ namespace SparkleShare { Menu.Items.Add (quit_item); status_icon.ContextMenuStrip = Menu; - } + */ + + + // ShowBalloon ("Hi!", "...", null); + } public void ShowBalloon (string title, string subtext, string image_path) @@ -261,7 +321,7 @@ namespace SparkleShare { status_icon.BalloonTipText = title; status_icon.BalloonTipText = subtext; - status_icon.BalloonTipIcon = ToolTipIcon.None; + status_icon.BalloonTipIcon = WinForms.ToolTipIcon.None; status_icon.ShowBalloonTip (5 * 1000); } @@ -269,7 +329,7 @@ namespace SparkleShare { public void UpdateMenu () { - status_menu_item.Text=StateText; +// status_menu_item.Text=StateText; } @@ -350,7 +410,7 @@ namespace SparkleShare { public static class ControlExtention { - public static void SafeInvoke (this Control ui_element, + public static void SafeInvoke (this WinForms.Control ui_element, Action updater, bool force_synchronous) { if (ui_element == null) @@ -377,7 +437,7 @@ namespace SparkleShare { } - public static void SafeInvoke (this Control ui_element, Action updater) + public static void SafeInvoke (this WinForms.Control ui_element, Action updater) { ui_element.SafeInvoke (updater, false); } diff --git a/SparkleShare/Windows/SparkleUI.cs b/SparkleShare/Windows/SparkleUI.cs index 37b106d8..319d2abd 100644 --- a/SparkleShare/Windows/SparkleUI.cs +++ b/SparkleShare/Windows/SparkleUI.cs @@ -64,7 +64,7 @@ namespace SparkleShare { #endif Setup = new SparkleSetup (); - //EventLog = new SparkleEventLog (); + EventLog = new SparkleEventLog (); About = new SparkleAbout (); Bubbles = new SparkleBubbles (); StatusIcon = new SparkleStatusIcon ();