From: | Kari Karkkainen <kari_karkkainen(at)yahoo(dot)com> |
---|---|
To: | Guillaume Lelarge <guillaume(at)lelarge(dot)info> |
Cc: | pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org> |
Subject: | Re: Detecting mouse events in the SQL grid |
Date: | 2013-02-23 16:04:19 |
Message-ID: | 1361635459.2576.YahooMailNeo@web122104.mail.ne1.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgadmin-hackers |
Hi Guillaume,
No, I don't know if it is dealt with at the window level. I also thought that this could be the issue, i.e. that the event is intercepted and handled somewhere else, but I could not find out where that might be. Any advice?
Also, one (probably basic) thing is unclear to me: If I handle this mouse event (or most other input events), do I then prevent the event from being managed by its default handler, which maybe I need to invoke from my event handler to make sure no default behavior is missed?
Thanks,
KariK
________________________________
From: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
To: Kari Karkkainen <kari_karkkainen(at)yahoo(dot)com>
Cc: pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>
Sent: Saturday, February 23, 2013 4:50 PM
Subject: Re: [pgadmin-hackers] Detecting mouse events in the SQL grid
On Sun, 2013-02-17 at 12:21 -0800, Kari Karkkainen wrote:
> Hi,
>
> I'm trying to add some additional mouse event detection into the SQL grid, but I'm not succeeding. Besides pgAdmin, also wxWidgets is new to me, so I'm probably missing something obvious...
>
> The grid was already detecting EVT_MOUSEWHEEL, so I tried to use that as my guideline:
>
> In ctlSQLGrid.h for the ctlSQLGrid class I added two private functions on the bottom:
> private:
> void OnCopy(wxCommandEvent &event);
> void OnMouseWheel(wxMouseEvent &event);
> void OnMouseLeftDown(wxMouseEvent &event);
> void OnMouseLeftUp(wxMouseEvent &event);
>
> In ctlSQLGrid.cpp I added two events:
> BEGIN_EVENT_TABLE(ctlSQLGrid, wxGrid)
> EVT_MENU(MNU_COPY, ctlSQLGrid::OnCopy)
> EVT_MOUSEWHEEL(ctlSQLGrid::OnMouseWheel)
> EVT_LEFT_DOWN(ctlSQLGrid::OnMouseLeftDown)
> EVT_LEFT_UP(ctlSQLGrid::OnMouseLeftUp)
> END_EVENT_TABLE()
>
> An then in ctlSQLGrid.cpp I defined the functions e.g. like this:
> void ctlSQLGrid::OnMouseLeftUp(wxMouseEvent &event)
> {
> SetTotals();
> }
>
> However, I never hit these functions by clicking the mouse, and I don't understand why. Would really appreciate any advice.
>
Are you sure it's not already dealt with at the window level?
--
Guillaume
http://blog.guillaume.lelarge.info
http://www.dalibo.com
From | Date | Subject | |
---|---|---|---|
Next Message | Guillaume Lelarge | 2013-02-23 18:06:40 | Re: Detecting mouse events in the SQL grid |
Previous Message | Guillaume Lelarge | 2013-02-23 14:50:39 | Re: Detecting mouse events in the SQL grid |