diff options
Diffstat (limited to 'shared/mouse_move_dlg.cpp')
-rw-r--r-- | shared/mouse_move_dlg.cpp | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/shared/mouse_move_dlg.cpp b/shared/mouse_move_dlg.cpp deleted file mode 100644 index 7981df49..00000000 --- a/shared/mouse_move_dlg.cpp +++ /dev/null @@ -1,67 +0,0 @@ -// ************************************************************************** -// * This file is part of the FreeFileSync project. It is distributed under * -// * GNU General Public License: http://www.gnu.org/licenses/gpl.html * -// * Copyright (C) 2008-2011 ZenJu (zhnmju123 AT gmx.de) * -// ************************************************************************** - -#include "mouse_move_dlg.h" -#include <vector> -#include <wx/msw/wrapwin.h> //includes "windows.h" -#include <wx/stattext.h> -#include <wx/statbmp.h> -#include <wx/statline.h> -#include <wx/animate.h> -#include <wx/panel.h> -#include <wx/gauge.h> -#include <wx/statusbr.h> - -using namespace zen; - -namespace -{ -void getAllChildren(wxWindow& parent, std::vector<wxWindow*>& out) -{ - wxWindowList& wl = parent.GetChildren(); - for (wxWindowList::iterator i = wl.begin(); i != wl.end(); ++i) - { - if (dynamic_cast<wxStaticText*> (*i) || //redirect clicks on these "dead" controls to move dialog instead - dynamic_cast<wxStaticBitmap*> (*i) || - dynamic_cast<wxAnimationCtrl*>(*i) || - dynamic_cast<wxGauge*> (*i) || - dynamic_cast<wxStaticLine*> (*i) || - dynamic_cast<wxStatusBar*> (*i) || - dynamic_cast<wxPanel*> (*i)) - out.push_back(*i); - getAllChildren(**i, out); - } -} -} - -MouseMoveWindow::MouseMoveWindow(wxWindow& parent, bool includeParent) : wxWindow(&parent, wxID_ANY) -{ - std::vector<wxWindow*> windList; - if (includeParent) - windList.push_back(&parent); - getAllChildren(parent, windList); - - for (std::vector<wxWindow*>::const_iterator i = windList.begin(); i != windList.end(); ++i) - (*i)->Connect(wxEVT_LEFT_DOWN, wxMouseEventHandler(MouseMoveWindow::LeftButtonDown), NULL, this); - - Hide(); //this is just a dummy window so that its parent can have ownership - Disable(); -} - - -void MouseMoveWindow::LeftButtonDown(wxMouseEvent& event) -{ - if (GetParent() && allowMove(event)) - { - ::ReleaseCapture(); - //::SendMessage(GetHwndOf(dialogToMove_), WM_NCLBUTTONDOWN, HTCAPTION, 0); - ::SendMessage(static_cast<HWND>(GetParent()->GetHWND()), WM_NCLBUTTONDOWN, HTCAPTION, 0); - - return; - //event.Skip(); -> swallow event, to avoid other windows losing focus - } - event.Skip(); -} |