diff --git a/docs/changes.txt b/docs/changes.txt index 50873d7eaf..8474299b82 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -51,6 +51,8 @@ wxMSW: wxGTK: +- wxEVT_MENU_CLOSE and wxEVT_MENU_OPENED for popup menus are now generated +- Implemented wxCURSOR_BLANK support - Fixed problem with choice editor in wxGrid whereby the editor lost focus when the combobox menu was shown. - Fixed problem trying to print from a preview, whereby wrong printer diff --git a/src/gtk/cursor.cpp b/src/gtk/cursor.cpp index 3ddd0650f8..1421608aa9 100644 --- a/src/gtk/cursor.cpp +++ b/src/gtk/cursor.cpp @@ -66,6 +66,20 @@ wxCursor::wxCursor( int cursorId ) GdkCursorType gdk_cur = GDK_LEFT_PTR; switch (cursorId) { + case wxCURSOR_BLANK: + { + static const gchar bits[] = { 0 }; + static const GdkColor color = { 0, 0, 0, 0 }; + + GdkPixmap *pixmap = gdk_bitmap_create_from_data(NULL, bits, 1, 1); + M_CURSORDATA->m_cursor = gdk_cursor_new_from_pixmap(pixmap, + pixmap, + &color, + &color, + 0, 0); + } + return; + case wxCURSOR_ARROW: // fall through to default case wxCURSOR_DEFAULT: gdk_cur = GDK_LEFT_PTR; break; case wxCURSOR_RIGHT_ARROW: gdk_cur = GDK_RIGHT_PTR; break; @@ -100,6 +114,7 @@ wxCursor::wxCursor( int cursorId ) case wxCURSOR_BASED_ARROW_UP: gdk_cur = GDK_BASED_ARROW_UP; break; case wxCURSOR_BASED_ARROW_DOWN: gdk_cur = GDK_BASED_ARROW_DOWN; break; */ + default: wxFAIL_MSG(wxT("unsupported cursor type")); // will use the standard one diff --git a/src/gtk1/cursor.cpp b/src/gtk1/cursor.cpp index 3ddd0650f8..1421608aa9 100644 --- a/src/gtk1/cursor.cpp +++ b/src/gtk1/cursor.cpp @@ -66,6 +66,20 @@ wxCursor::wxCursor( int cursorId ) GdkCursorType gdk_cur = GDK_LEFT_PTR; switch (cursorId) { + case wxCURSOR_BLANK: + { + static const gchar bits[] = { 0 }; + static const GdkColor color = { 0, 0, 0, 0 }; + + GdkPixmap *pixmap = gdk_bitmap_create_from_data(NULL, bits, 1, 1); + M_CURSORDATA->m_cursor = gdk_cursor_new_from_pixmap(pixmap, + pixmap, + &color, + &color, + 0, 0); + } + return; + case wxCURSOR_ARROW: // fall through to default case wxCURSOR_DEFAULT: gdk_cur = GDK_LEFT_PTR; break; case wxCURSOR_RIGHT_ARROW: gdk_cur = GDK_RIGHT_PTR; break; @@ -100,6 +114,7 @@ wxCursor::wxCursor( int cursorId ) case wxCURSOR_BASED_ARROW_UP: gdk_cur = GDK_BASED_ARROW_UP; break; case wxCURSOR_BASED_ARROW_DOWN: gdk_cur = GDK_BASED_ARROW_DOWN; break; */ + default: wxFAIL_MSG(wxT("unsupported cursor type")); // will use the standard one