WPF NotifyIcon

--------------
FIX   Removed debug output in WindowMessageSink.
CHG   Major rework on sample project.

git-svn-id: https://svn.evolvesoftware.ch/repos/evolve.net/WPF/NotifyIcon@104 9f600761-6f11-4665-b6dc-0185e9171623
This commit is contained in:
Philipp Sumi
2009-05-15 09:51:55 +00:00
parent af046cf7bf
commit 97ef369a02
47 changed files with 1405 additions and 107 deletions

View File

@@ -1,10 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<ClassDiagram MajorVersion="1" MinorVersion="1">
<Class Name="Hardcodet.Wpf.TaskbarNotification.TaskbarIcon">
<Position X="0.5" Y="0.5" Width="3.5" />
<Position X="1" Y="0.5" Width="3.5" />
<Compartments>
<Compartment Name="Fields" Collapsed="true" />
<Compartment Name="Methods" Collapsed="true" />
<Compartment Name="Properties" Collapsed="true" />
</Compartments>
<TypeIdentifier>
@@ -14,11 +13,18 @@
<Lollipop Position="0.2" />
</Class>
<Enum Name="Hardcodet.Wpf.TaskbarNotification.PopupActivationMode">
<Position X="5.25" Y="0.5" Width="2" />
<Position X="6.75" Y="0.5" Width="2" />
<TypeIdentifier>
<HashCode>ABAEAAAAAAAAAAABAAAAAAAAAAAAAAAAAIAKAIAAAAA=</HashCode>
<FileName>PopupActivationMode.cs</FileName>
</TypeIdentifier>
</Enum>
<Enum Name="Hardcodet.Wpf.TaskbarNotification.BalloonIcon">
<Position X="9.25" Y="0.5" Width="1.5" />
<TypeIdentifier>
<HashCode>AAAAAAAAAAAAAQAAAAAAABAAAAAAAAAAAAAAAEEAAAA=</HashCode>
<FileName>BalloonIcon.cs</FileName>
</TypeIdentifier>
</Enum>
<Font Name="Segoe UI" Size="9" />
</ClassDiagram>

View File

@@ -233,17 +233,14 @@ namespace Hardcodet.Wpf.TaskbarNotification.Interop
switch (lParam)
{
case 0x200:
// Debug.WriteLine("MOVE");
MouseEventReceived(MouseEvent.MouseMove);
break;
case 0x201:
Debug.WriteLine("left down 1");
MouseEventReceived(MouseEvent.IconLeftMouseDown);
break;
case 0x202:
Debug.WriteLine("left up");
if (!isDoubleClick)
{
MouseEventReceived(MouseEvent.IconLeftMouseUp);
@@ -252,69 +249,57 @@ namespace Hardcodet.Wpf.TaskbarNotification.Interop
break;
case 0x203:
Debug.WriteLine("left click 2");
isDoubleClick = true;
MouseEventReceived(MouseEvent.IconDoubleClick);
break;
case 0x204:
Debug.WriteLine("right click 1");
MouseEventReceived(MouseEvent.IconRightMouseDown);
break;
case 0x205:
Console.Out.WriteLine("right mouse up");
MouseEventReceived(MouseEvent.IconRightMouseUp);
break;
case 0x206:
//double click with right mouse button - do not trigger event
Debug.WriteLine("right click 2");
break;
case 0x207:
Debug.WriteLine("middle click 1");
MouseEventReceived(MouseEvent.IconMiddleMouseDown);
break;
case 520:
Debug.WriteLine("mouse up middle");
MouseEventReceived(MouseEvent.IconMiddleMouseUp);
break;
case 0x209:
//double click with middle mouse button - do not trigger event
Debug.WriteLine("middle click 2");
break;
case 0x402:
Debug.WriteLine("balloon shown");
BallonToolTipChanged(true);
break;
case 0x403:
case 0x404:
Debug.WriteLine("balloon close");
BallonToolTipChanged(false);
break;
case 0x405:
Debug.WriteLine("balloon clicked");
MouseEventReceived(MouseEvent.BalloonToolTipClicked);
break;
case 0x406:
Debug.WriteLine("show custom tooltip");
ChangeToolTipStateRequest(true);
break;
case 0x407:
Debug.WriteLine("close custom tooltip");
ChangeToolTipStateRequest(false);
break;
default:
Debug.WriteLine("Unhandled message ID: " + lParam);
Debug.WriteLine("Unhandled NotifyIcon message ID: " + lParam);
break;
}

View File

@@ -156,6 +156,7 @@ namespace Hardcodet.Wpf.TaskbarNotification
/// <param name="balloon"></param>
/// <param name="animation">An optional animation for the popup.</param>
/// <param name="timeout">The time after which the popup is being closed.
/// Submit null in order to keep the balloon open inde
/// </param>
/// <exception cref="ArgumentNullException">If <paramref name="balloon"/>
/// is a null reference.</exception>