diff options
author | Caolán McNamara <caolanm@redhat.com> | 2015-04-28 15:00:49 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2015-04-28 15:01:27 +0100 |
commit | a31991c4188e91326941fbe510ce70129d1ccde8 (patch) | |
tree | 0c4890b8e7d1718bbcdec76b8e95c81cb897d98d | |
parent | 84c73c983577e33dda266bbfcdd89b9e1202906b (diff) |
gtk3: draw native tab activate/roll-over status
Change-Id: I37cfc2e2a02fe047150988abfe02cb953c6848f6
-rw-r--r-- | vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx index 68b52bf19957..268fd2d89114 100644 --- a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx +++ b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx @@ -926,6 +926,11 @@ bool GtkSalGraphics::drawNativeControl( ControlType nType, ControlPart nPart, co break; } break; + case CTRL_TAB_ITEM: + context = mpNoteBookStyle; + if (nState & ControlState::SELECTED) + flags = (GtkStateFlags) (flags | GTK_STATE_FLAG_ACTIVE); + break; default: return false; } @@ -936,8 +941,15 @@ bool GtkSalGraphics::drawNativeControl( ControlType nType, ControlPart nPart, co gtk_style_context_save(context); gtk_style_context_set_state(context, flags); + if (nType == CTRL_TAB_ITEM) + { + gtk_style_context_add_region(mpNoteBookStyle, GTK_STYLE_REGION_TAB, GTK_REGION_EVEN); + gtk_style_context_add_class(context, GTK_STYLE_CLASS_TOP); + } if (styleClass) + { gtk_style_context_add_class(context, styleClass); + } switch(renderType) { @@ -947,9 +959,11 @@ bool GtkSalGraphics::drawNativeControl( ControlType nType, ControlPart nPart, co 0, 0, rControlRegion.GetWidth(), rControlRegion.GetHeight()); if (renderType == RENDER_BACKGROUND_AND_FRAME) + { gtk_render_frame(context, cr, 0, 0, rControlRegion.GetWidth(), rControlRegion.GetHeight()); + } break; case RENDER_CHECK: case RENDER_RADIO: |