diff options
author | Caolán McNamara <caolanm@redhat.com> | 2015-05-19 10:41:56 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2015-05-19 10:42:22 +0100 |
commit | 24945eaa513856b93296f20593e0eba30ac87b0d (patch) | |
tree | fde3b514bc0c4f3e1804292c508f73a996851a2b | |
parent | 88528b88bfa41d7c13c619ed0e17215924c589a9 (diff) |
gtk3: nwf for list node expanders
Change-Id: I710e4feca188836f6572e55132fd6c5941ad06e6
-rw-r--r-- | vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx index be39e6f79d5a..3f42fedf157d 100644 --- a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx +++ b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx @@ -996,6 +996,16 @@ bool GtkSalGraphics::drawNativeControl( ControlType nType, ControlPart nPart, co context = nPart == PART_SEPARATOR_HORZ ? mpFixedHoriLineStyle : mpFixedVertLineStyle; renderType = RENDER_SEPERATOR; break; + case CTRL_LISTNODE: + { + context = mpTreeHeaderButtonStyle; + ButtonValue aButtonValue = rValue.getTristateVal(); + if (aButtonValue == BUTTONVALUE_ON) + flags = (GtkStateFlags) (flags | GTK_STATE_FLAG_CHECKED); + renderType = RENDER_EXPANDER; + styleClass = GTK_STYLE_CLASS_EXPANDER; + break; + } case CTRL_LISTHEADER: context = mpTreeHeaderButtonStyle; if (nPart == PART_ARROW) @@ -1102,7 +1112,7 @@ bool GtkSalGraphics::drawNativeControl( ControlType nType, ControlPart nPart, co MIN(rControlRegion.GetWidth(), 1 + rControlRegion.GetHeight())); break; case RENDER_EXPANDER: - gtk_render_expander(context, cr, 0, 0, nWidth, nHeight); + gtk_render_expander(context, cr, -2, -2, nWidth+4, nHeight+4); break; case RENDER_SCROLLBAR: PaintScrollbar(context, cr, rControlRegion, nType, nPart, rValue); @@ -1758,7 +1768,7 @@ bool GtkSalGraphics::IsNativeControlSupported( ControlType nType, ControlPart nP case CTRL_RADIOBUTTON: case CTRL_CHECKBOX: case CTRL_PROGRESS: -// case CTRL_LISTNODE: + case CTRL_LISTNODE: case CTRL_LISTNET: if (nPart==PART_ENTIRE_CONTROL || nPart == PART_FOCUS) return true; |