|
|
|
@@ -8,111 +8,118 @@ |
8 | #include "PumpKINDlg.h"
|
8 | #include "PumpKINDlg.h"
|
9 |
|
9 |
|
10 | #ifdef _DEBUG
|
10 | #ifdef _DEBUG
|
11 | #define new DEBUG_NEW
|
11 | #define new DEBUG_NEW
|
12 | #undef THIS_FILE
|
12 | #undef THIS_FILE
|
13 | static char THIS_FILE[] = __FILE__;
|
13 | static char THIS_FILE[] = __FILE__;
|
14 | #endif
|
14 | #endif
|
15 |
|
15 |
|
16 | /////////////////////////////////////////////////////////////////////////////
|
16 | /////////////////////////////////////////////////////////////////////////////
|
17 | // CTrayer
|
17 | // CTrayer
|
18 |
|
18 |
|
19 | CTrayer::CTrayer()
|
19 | CTrayer::CTrayer()
|
20 | {
|
20 | {
|
21 | m_inMenu=0;
|
21 | m_inMenu=0;
|
22 | }
|
22 | }
|
23 |
|
23 |
|
24 | CTrayer::~CTrayer()
|
24 | CTrayer::~CTrayer()
|
25 | {
|
25 | {
|
26 | }
|
26 | }
|
27 |
|
27 |
|
28 |
|
28 |
|
29 | BEGIN_MESSAGE_MAP(CTrayer, CWnd)
|
29 | BEGIN_MESSAGE_MAP(CTrayer, CWnd)
|
30 | //{{AFX_MSG_MAP(CTrayer)
|
30 | //{{AFX_MSG_MAP(CTrayer)
|
31 | ON_MESSAGE(WM_TRAYICON, OnTray)
|
31 | ON_MESSAGE(WM_TRAYICON, OnTray)
|
32 | ON_COMMAND(ID_TRAY_ABOUTPUMPKIN, OnTrayAboutpumpkin)
|
32 | ON_COMMAND(ID_TRAY_ABOUTPUMPKIN, OnTrayAboutpumpkin)
|
33 | ON_COMMAND(ID_TRAY_EXIT, OnTrayExit)
|
33 | ON_COMMAND(ID_TRAY_EXIT, OnTrayExit)
|
34 | ON_COMMAND(ID_TRAY_FETCHFILE, OnTrayFetchfile)
|
34 | ON_COMMAND(ID_TRAY_FETCHFILE, OnTrayFetchfile)
|
35 | ON_COMMAND(ID_TRAY_HELP, OnTrayHelp)
|
35 | ON_COMMAND(ID_TRAY_HELP, OnTrayHelp)
|
36 | ON_COMMAND(ID_TRAY_OPENFILESFOLDER, OnTrayOpenfilesfolder)
|
36 | ON_COMMAND(ID_TRAY_OPENFILESFOLDER, OnTrayOpenfilesfolder)
|
37 | ON_COMMAND(ID_TRAY_OPTIONS, OnTrayOptions)
|
37 | ON_COMMAND(ID_TRAY_OPTIONS, OnTrayOptions)
|
38 | ON_COMMAND(ID_TRAY_SENDFILE, OnTraySendfile)
|
38 | ON_COMMAND(ID_TRAY_SENDFILE, OnTraySendfile)
|
39 | ON_COMMAND(ID_TRAY_SHOWPUMPKINWINDOW, OnTrayShowpumpkinwindow)
|
39 | ON_COMMAND(ID_TRAY_SHOWPUMPKINWINDOW, OnTrayShowpumpkinwindow)
|
| |
40 | ON_COMMAND(ID_TRAY_LISTEN, OnTrayListen)
|
40 | //}}AFX_MSG_MAP
|
41 | //}}AFX_MSG_MAP
|
41 | END_MESSAGE_MAP()
|
42 | END_MESSAGE_MAP()
|
42 |
|
43 |
|
43 |
|
44 |
|
44 | /////////////////////////////////////////////////////////////////////////////
|
45 | /////////////////////////////////////////////////////////////////////////////
|
45 | // CTrayer message handlers
|
46 | // CTrayer message handlers
|
46 |
|
47 |
|
47 | CTrayer::CTrayer(CPumpKINDlg* daddy)
|
48 | CTrayer::CTrayer(CPumpKINDlg* daddy)
|
48 | : m_Daddy(daddy)
|
49 | : m_Daddy(daddy)
|
49 | {
|
50 | {
|
50 | m_inMenu=0;
|
51 | m_inMenu=0;
|
51 | }
|
52 | }
|
52 |
|
53 |
|
53 | LRESULT CTrayer::OnTray(WPARAM wP,LPARAM lP)
|
54 | LRESULT CTrayer::OnTray(WPARAM wP,LPARAM lP)
|
54 | {
|
55 | {
|
55 | ASSERT(wP==IDC_TRAYICON);
|
56 | ASSERT(wP==IDC_TRAYICON);
|
56 | switch(lP){
|
57 | switch(lP){
|
57 | case WM_RBUTTONDOWN:
|
58 | case WM_RBUTTONDOWN:
|
58 | {
|
59 | {
|
59 | CMenu menu;
|
60 | CMenu menu;
|
60 | VERIFY(menu.LoadMenu(IDM_POPUPS));
|
61 | VERIFY(menu.LoadMenu(IDM_POPUPS));
|
61 | CMenu *popUp = menu.GetSubMenu(0);
|
62 | CMenu *popUp = menu.GetSubMenu(0);
|
62 | ASSERT(popUp);
|
63 | ASSERT(popUp);
|
63 | CPoint pt;
|
64 | CPoint pt;
|
64 | VERIFY(::GetCursorPos(&pt));
|
65 | VERIFY(::GetCursorPos(&pt));
|
65 | m_inMenu++;
|
66 | m_inMenu++;
|
66 | SetForegroundWindow();
|
67 | SetForegroundWindow();
|
67 | popUp->CheckMenuItem(ID_TRAY_SHOWPUMPKINWINDOW,MF_BYCOMMAND|(IsWindowVisible()?MF_CHECKED:MF_UNCHECKED));
|
68 | popUp->CheckMenuItem(ID_TRAY_SHOWPUMPKINWINDOW,MF_BYCOMMAND|(IsWindowVisible()?MF_CHECKED:MF_UNCHECKED));
|
| |
69 | popUp->CheckMenuItem(ID_TRAY_LISTEN,MF_BYCOMMAND|(m_Daddy->m_Listener.m_bListen?MF_CHECKED:MF_UNCHECKED));
|
68 | popUp->TrackPopupMenu(TPM_RIGHTALIGN|TPM_LEFTBUTTON|TPM_RIGHTBUTTON,pt.x,pt.y,this);
|
70 | popUp->TrackPopupMenu(TPM_RIGHTALIGN|TPM_LEFTBUTTON|TPM_RIGHTBUTTON,pt.x,pt.y,this);
|
69 | m_inMenu--;
|
71 | m_inMenu--;
|
70 | SendMessage(WM_NULL);
|
72 | SendMessage(WM_NULL);
|
71 | }
|
73 | }
|
72 | break;
|
74 | break;
|
73 | case WM_LBUTTONDOWN:
|
75 | case WM_LBUTTONDOWN:
|
74 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_SHOWPUMPKINWINDOW);
|
76 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_SHOWPUMPKINWINDOW);
|
75 | break;
|
77 | break;
|
76 | }
|
78 | }
|
77 | return 0;
|
79 | return 0;
|
78 | }
|
80 | }
|
79 |
|
81 |
|
80 | void CTrayer::OnTrayAboutpumpkin()
|
82 | void CTrayer::OnTrayAboutpumpkin()
|
81 | {
|
83 | {
|
82 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_ABOUTPUMPKIN);
|
84 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_ABOUTPUMPKIN);
|
83 | }
|
85 | }
|
84 |
|
86 |
|
85 | void CTrayer::OnTrayExit()
|
87 | void CTrayer::OnTrayExit()
|
86 | {
|
88 | {
|
87 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_EXIT);
|
89 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_EXIT);
|
88 | }
|
90 | }
|
89 |
|
91 |
|
90 | void CTrayer::OnTrayFetchfile()
|
92 | void CTrayer::OnTrayFetchfile()
|
91 | {
|
93 | {
|
92 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_FETCHFILE);
|
94 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_FETCHFILE);
|
93 | }
|
95 | }
|
94 |
|
96 |
|
95 | void CTrayer::OnTrayHelp()
|
97 | void CTrayer::OnTrayHelp()
|
96 | {
|
98 | {
|
97 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_HELP);
|
99 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_HELP);
|
98 | }
|
100 | }
|
99 |
|
101 |
|
100 | void CTrayer::OnTrayOpenfilesfolder()
|
102 | void CTrayer::OnTrayOpenfilesfolder()
|
101 | {
|
103 | {
|
102 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_OPENFILESFOLDER);
|
104 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_OPENFILESFOLDER);
|
103 | }
|
105 | }
|
104 |
|
106 |
|
105 | void CTrayer::OnTrayOptions()
|
107 | void CTrayer::OnTrayOptions()
|
106 | {
|
108 | {
|
107 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_OPTIONS);
|
109 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_OPTIONS);
|
108 | }
|
110 | }
|
109 |
|
111 |
|
110 | void CTrayer::OnTraySendfile()
|
112 | void CTrayer::OnTraySendfile()
|
111 | {
|
113 | {
|
112 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_SENDFILE);
|
114 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_SENDFILE);
|
113 | }
|
115 | }
|
114 |
|
116 |
|
115 | void CTrayer::OnTrayShowpumpkinwindow()
|
117 | void CTrayer::OnTrayShowpumpkinwindow()
|
116 | {
|
118 | {
|
117 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_SHOWPUMPKINWINDOW);
|
119 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_SHOWPUMPKINWINDOW);
|
118 | }
|
120 | }
|
| |
121 |
|
| |
122 | void CTrayer::OnTrayListen()
|
| |
123 | {
|
| |
124 | m_Daddy->SendMessage(WM_COMMAND,ID_TRAY_LISTEN);
|
| |
125 | }
|
|