summaryrefslogtreecommitdiff
path: root/src/nigui/private/gtk3/platform_impl.nim
diff options
context:
space:
mode:
authortrustable-code <krauter.simon@arcor.de>2019-08-31 15:42:20 +0200
committertrustable-code <krauter.simon@arcor.de>2019-08-31 15:42:20 +0200
commit41d7e103c09f23f158afd6df442275cc86a66937 (patch)
treea53985326393c4e10d65724b7ded6cf126bab7f6 /src/nigui/private/gtk3/platform_impl.nim
parent5f1590e390224b31fe9034953d217151a110ec5b (diff)
downloadNiGui-41d7e103c09f23f158afd6df442275cc86a66937.tar.gz
NiGui-41d7e103c09f23f158afd6df442275cc86a66937.zip
Rework initialization of colors
Diffstat (limited to 'src/nigui/private/gtk3/platform_impl.nim')
-rwxr-xr-xsrc/nigui/private/gtk3/platform_impl.nim16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/nigui/private/gtk3/platform_impl.nim b/src/nigui/private/gtk3/platform_impl.nim
index 098f02c..25d875f 100755
--- a/src/nigui/private/gtk3/platform_impl.nim
+++ b/src/nigui/private/gtk3/platform_impl.nim
@@ -867,7 +867,6 @@ proc pUpdateFont(control: ControlImpl) =
gtk_widget_modify_font(control.fHandle, font)
var rgba: GdkRGBA
control.textColor.pColorToGdkRGBA(rgba)
- gtk_widget_override_color(control.fHandle, GTK_STATE_FLAG_NORMAL, rgba)
method pAddButtonPressEvent(control: ControlImpl) =
gtk_widget_add_events(control.fHandle, GDK_BUTTON_PRESS_MASK)
@@ -1043,7 +1042,9 @@ method setFontBold(control: ControlImpl, fontBold: bool) =
method setTextColor(control: ControlImpl, color: Color) =
procCall control.Control.setTextColor(color)
- control.pUpdateFont()
+ var rgba: GdkRGBA
+ color.pColorToGdkRGBA(rgba)
+ gtk_widget_override_color(control.fHandle, GTK_STATE_FLAG_NORMAL, rgba)
method `setBackgroundColor`(control: ControlImpl, color: Color) =
procCall control.Control.setBackgroundColor(color)
@@ -1258,6 +1259,17 @@ proc init(textBox: NativeTextBox) =
discard g_signal_connect_data(textBox.fHandle, "changed", pControlChangedSignal, cast[pointer](textBox))
textBox.TextBox.init()
+method initStyle(textBox: NativeTextBox) =
+ procCall textBox.TextBox.initStyle()
+ var context = gtk_widget_get_style_context(textBox.fHandle)
+ var rgba: GdkRGBA
+ gtk_style_context_get_background_color(context, GTK_STATE_FLAG_NORMAL, rgba)
+ textBox.fBackgroundColor = rgba.pGdkRGBAToColor()
+ gtk_style_context_get_color(context, GTK_STATE_FLAG_NORMAL, rgba)
+ textBox.fTextColor = rgba.pGdkRGBAToColor()
+ textBox.fUseDefaultBackgroundColor = false
+ textBox.fUseDefaultTextColor = false
+
method text(textBox: NativeTextBox): string = $gtk_entry_get_text(textBox.fHandle)
method `text=`(textBox: NativeTextBox, text: string) =