Update of /cvsroot/sharedaemon/ui-wx/src
In directory sc8-pr-cvs1:/tmp/cvs-serv25499
Modified Files:
SysTray.h SysTray.cpp MainDlg.cpp
Log Message:
Use wxHAS_TASK_BAR_ICON to detect its availablity instead of __WXMSW__. Also added dblclick functionality to taskbaricon.
Index: SysTray.h
===================================================================
RCS file: /cvsroot/sharedaemon/ui-wx/src/SysTray.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- SysTray.h 20 Nov 2003 01:27:26 -0000 1.4
+++ SysTray.h 20 Nov 2003 12:02:20 -0000 1.5
@@ -29,10 +29,9 @@
#endif
#include "defines.h"
-#include "wxInterface.h"
+#include "MainDlg.h"
-/* TaskBarIcon class is only supported under wxMSW */
-#ifdef __WXMSW__
+#ifdef wxHAS_TASK_BAR_ICON
class CSysTray: public wxTaskBarIcon {
public:
@@ -40,10 +39,11 @@
virtual ~CSysTray();
private:
void ShowContextMenu(wxTaskBarIconEvent &event);
- void HideShowGUI(wxCommandEvent &event);
+ void HideShowGUI();
void ChangeGUISettings(wxCommandEvent &event);
void ShowHelp(wxCommandEvent &event);
void Quit(wxCommandEvent &event);
+ void OnLButtonDClick();
DECLARE_EVENT_TABLE()
};
Index: SysTray.cpp
===================================================================
RCS file: /cvsroot/sharedaemon/ui-wx/src/SysTray.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- SysTray.cpp 20 Nov 2003 01:27:26 -0000 1.8
+++ SysTray.cpp 20 Nov 2003 12:02:20 -0000 1.9
@@ -30,11 +30,11 @@
#include "SysTray.h"
-/* TaskbarIcon class is only supported under wxMSW */
-#ifdef __WXMSW__
+#ifdef wxHAS_TASK_BAR_ICON
BEGIN_EVENT_TABLE(CSysTray,wxTaskBarIcon)
EVT_TASKBAR_RIGHT_DOWN(CSysTray::ShowContextMenu)
+ EVT_TASKBAR_LEFT_DCLICK(CSysTray::OnLButtonDClick)
EVT_MENU(MENU_TRAY_HIDESHOW_GUI, CSysTray::HideShowGUI)
EVT_MENU(MENU_TRAY_CHANGE_GUI_SETTINGS, CSysTray::ChangeGUISettings)
EVT_MENU(MENU_TRAY_HELP, CSysTray::ShowHelp)
@@ -74,9 +74,8 @@
/**
* This method will hide or show (iconize) the main dialog.
*/
-void CSysTray::HideShowGUI(wxCommandEvent &event) {
- bool iconized = mainframe->IsIconized();
- mainframe->Iconize(!iconized);
+void CSysTray::HideShowGUI() {
+ mainframe->Show(!mainframe->IsShown());
}
/**
@@ -109,5 +108,10 @@
*/
delete mainframe;
}
+
+void CSysTray::OnLButtonDClick() {
+ HideShowGUI();
+}
+
#endif
Index: MainDlg.cpp
===================================================================
RCS file: /cvsroot/sharedaemon/ui-wx/src/MainDlg.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MainDlg.cpp 20 Nov 2003 01:27:26 -0000 1.1
+++ MainDlg.cpp 20 Nov 2003 12:02:20 -0000 1.2
@@ -37,7 +37,7 @@
class CSharedFilesWnd *sharedfileswnd;
class CMessagesWnd *messageswnd;
class CStatisticsWnd *statisticswnd;
-#ifdef __WXMSW__
+#ifdef wxHAS_TASK_BAR_ICON
class CSysTray *systray;
#endif
class CStatusBar *statusbar;
@@ -108,7 +108,7 @@
icon.CopyFromBitmap(img->mule);
SetIcon(icon);
- #ifdef __WXMSW__
+ #ifdef wxHAS_TASK_BAR_ICON
systray = new CSysTray();
#endif
@@ -173,7 +173,7 @@
m_config->Write(wxT("/General/Start page"), m_lastbtn-1001);
}
- #ifdef __WXMSW__
+ #ifdef wxHAS_TASK_BAR_ICON
systray->RemoveIcon();
delete systray;
#endif
|