13
0

add event type string function to canvas (since it does not use gtkmm2ext)

This commit is contained in:
Paul Davis 2014-01-16 10:52:34 -05:00
parent df7dae82cc
commit 620e1e6677
3 changed files with 87 additions and 1 deletions

View File

@ -536,7 +536,7 @@ GtkCanvas::deliver_event (GdkEvent* event)
return true;
}
DEBUG_TRACE (PBD::DEBUG::CanvasEvents, string_compose ("canvas event left unhandled by %1 %2\n", item->whatami(), item->name.empty() ? "[unknown]" : item->name));
DEBUG_TRACE (PBD::DEBUG::CanvasEvents, string_compose ("canvas event %3 left unhandled by %1 %2\n", item->whatami(), item->name.empty() ? "[unknown]" : item->name, event_type_string (event->type)));
if ((item = parent) == 0) {
break;

View File

@ -46,6 +46,7 @@ namespace ArdourCanvas {
LIBCANVAS_API extern std::map<std::string, struct timeval> last_time;
LIBCANVAS_API extern void checkpoint (std::string, std::string);
LIBCANVAS_API extern void set_epoch ();
LIBCANVAS_API extern const char* event_type_string (int event_type);
LIBCANVAS_API extern int render_count;
LIBCANVAS_API extern int render_depth;
LIBCANVAS_API extern int dump_depth;

View File

@ -19,6 +19,7 @@
#include <sys/time.h>
#include <iostream>
#include <gdk/gdk.h>
#include "canvas/debug.h"
using namespace std;
@ -70,3 +71,87 @@ ArdourCanvas::checkpoint (string group, string message)
last_time[group] = now;
}
const char*
ArdourCanvas::event_type_string (int event_type)
{
switch (event_type) {
case GDK_NOTHING:
return "nothing";
case GDK_DELETE:
return "delete";
case GDK_DESTROY:
return "destroy";
case GDK_EXPOSE:
return "expose";
case GDK_MOTION_NOTIFY:
return "motion_notify";
case GDK_BUTTON_PRESS:
return "button_press";
case GDK_2BUTTON_PRESS:
return "2button_press";
case GDK_3BUTTON_PRESS:
return "3button_press";
case GDK_BUTTON_RELEASE:
return "button_release";
case GDK_KEY_PRESS:
return "key_press";
case GDK_KEY_RELEASE:
return "key_release";
case GDK_ENTER_NOTIFY:
return "enter_notify";
case GDK_LEAVE_NOTIFY:
return "leave_notify";
case GDK_FOCUS_CHANGE:
return "focus_change";
case GDK_CONFIGURE:
return "configure";
case GDK_MAP:
return "map";
case GDK_UNMAP:
return "unmap";
case GDK_PROPERTY_NOTIFY:
return "property_notify";
case GDK_SELECTION_CLEAR:
return "selection_clear";
case GDK_SELECTION_REQUEST:
return "selection_request";
case GDK_SELECTION_NOTIFY:
return "selection_notify";
case GDK_PROXIMITY_IN:
return "proximity_in";
case GDK_PROXIMITY_OUT:
return "proximity_out";
case GDK_DRAG_ENTER:
return "drag_enter";
case GDK_DRAG_LEAVE:
return "drag_leave";
case GDK_DRAG_MOTION:
return "drag_motion";
case GDK_DRAG_STATUS:
return "drag_status";
case GDK_DROP_START:
return "drop_start";
case GDK_DROP_FINISHED:
return "drop_finished";
case GDK_CLIENT_EVENT:
return "client_event";
case GDK_VISIBILITY_NOTIFY:
return "visibility_notify";
case GDK_NO_EXPOSE:
return "no_expose";
case GDK_SCROLL:
return "scroll";
case GDK_WINDOW_STATE:
return "window_state";
case GDK_SETTING:
return "setting";
case GDK_OWNER_CHANGE:
return "owner_change";
case GDK_GRAB_BROKEN:
return "grab_broken";
case GDK_DAMAGE:
return "damage";
}
return "unknown";
}