Mercurial > projects > dwt-linux
changeset 248:34409a2fc053
Fix call OS.gtk_label_set_text_with_mnemonic with valid ptr, even for zero length strings.
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Thu, 22 May 2008 19:00:47 +0200 |
parents | da992144273f |
children | e1ec1581e355 |
files | dwt/widgets/Button.d dwt/widgets/Group.d dwt/widgets/MenuItem.d dwt/widgets/TabItem.d dwt/widgets/TableColumn.d dwt/widgets/ToolItem.d dwt/widgets/TreeColumn.d |
diffstat | 7 files changed, 8 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/dwt/widgets/Button.d Mon May 19 22:20:13 2008 +0200 +++ b/dwt/widgets/Button.d Thu May 22 19:00:47 2008 +0200 @@ -193,7 +193,7 @@ override void createHandle (int index) { state |= HANDLE; - if ((style & (DWT.PUSH | DWT.TOGGLE)) is 0) state |= THEME_BACKGROUND; + if ((style & (DWT.PUSH | DWT.TOGGLE)) is 0) state |= THEME_BACKGROUND; int bits = DWT.ARROW | DWT.TOGGLE | DWT.CHECK | DWT.RADIO | DWT.PUSH; fixedHandle = cast(GtkWidget*)OS.g_object_new (display.gtk_fixed_get_type (), null); if (fixedHandle is null) error (DWT.ERROR_NO_HANDLES); @@ -796,7 +796,7 @@ if ((style & DWT.ARROW) !is 0) return; text = string; char [] chars = fixMnemonic (string); - OS.gtk_label_set_text_with_mnemonic (cast(GtkLabel*)labelHandle, toStringz(chars)); + OS.gtk_label_set_text_with_mnemonic (cast(GtkLabel*)labelHandle, chars.toStringzValidPtr() ); if (image is null) OS.gtk_widget_hide (imageHandle); OS.gtk_widget_show (labelHandle); _setAlignment (style);
--- a/dwt/widgets/Group.d Mon May 19 22:20:13 2008 +0200 +++ b/dwt/widgets/Group.d Thu May 22 19:00:47 2008 +0200 @@ -285,7 +285,7 @@ if (string is null) error (DWT.ERROR_NULL_ARGUMENT); text = string; char [] chars = fixMnemonic (string); - OS.gtk_label_set_text_with_mnemonic (cast(GtkLabel*)labelHandle, toStringz(chars)); + OS.gtk_label_set_text_with_mnemonic (cast(GtkLabel*)labelHandle, chars.toStringzValidPtr()); if (string.length !is 0) { if (OS.gtk_frame_get_label_widget (cast(GtkFrame*)handle) is null) { OS.gtk_frame_set_label_widget (cast(GtkFrame*)handle, labelHandle);
--- a/dwt/widgets/MenuItem.d Mon May 19 22:20:13 2008 +0200 +++ b/dwt/widgets/MenuItem.d Thu May 22 19:00:47 2008 +0200 @@ -852,9 +852,8 @@ string = string.substring (0, index); } char [] chars = fixMnemonic (string); - char* buffer = toStringz( chars ); auto label = OS.gtk_bin_get_child (cast(GtkBin*)handle); - OS.gtk_label_set_text_with_mnemonic (cast(GtkLabel*)label, buffer); + OS.gtk_label_set_text_with_mnemonic (cast(GtkLabel*)label, chars.toStringzValidPtr() ); auto ptr = cast(char*)OS.g_malloc (accelString.length + 1); ptr[ 0 .. accelString.length ] = accelString;
--- a/dwt/widgets/TabItem.d Mon May 19 22:20:13 2008 +0200 +++ b/dwt/widgets/TabItem.d Thu May 22 19:00:47 2008 +0200 @@ -345,8 +345,7 @@ if (string is null) error (DWT.ERROR_NULL_ARGUMENT); super.setText (string); char [] chars = fixMnemonic (string); - char* buffer = tango.stdc.stringz.toStringz( chars); - OS.gtk_label_set_text_with_mnemonic (labelHandle, buffer); + OS.gtk_label_set_text_with_mnemonic (labelHandle, chars.toStringzValidPtr() ); if (string.length !is 0) { OS.gtk_widget_show (labelHandle); } else {
--- a/dwt/widgets/TableColumn.d Mon May 19 22:20:13 2008 +0200 +++ b/dwt/widgets/TableColumn.d Thu May 22 19:00:47 2008 +0200 @@ -613,8 +613,7 @@ if (string is null) error (DWT.ERROR_NULL_ARGUMENT); super.setText (string); char [] chars = fixMnemonic (string); - char* buffer = tango.stdc.stringz.toStringz( chars ); - OS.gtk_label_set_text_with_mnemonic (labelHandle, buffer); + OS.gtk_label_set_text_with_mnemonic (labelHandle, chars.toStringzValidPtr() ); if (string.length !is 0) { OS.gtk_widget_show (labelHandle); } else {
--- a/dwt/widgets/ToolItem.d Mon May 19 22:20:13 2008 +0200 +++ b/dwt/widgets/ToolItem.d Thu May 22 19:00:47 2008 +0200 @@ -991,7 +991,7 @@ super.setText (string); if (labelHandle is null) return; char [] chars = fixMnemonic (string); - OS.gtk_label_set_text_with_mnemonic (labelHandle, toStringz(chars)); + OS.gtk_label_set_text_with_mnemonic (labelHandle, chars.toStringzValidPtr()); if (string.length !is 0) { OS.gtk_widget_show (labelHandle); } else {
--- a/dwt/widgets/TreeColumn.d Mon May 19 22:20:13 2008 +0200 +++ b/dwt/widgets/TreeColumn.d Thu May 22 19:00:47 2008 +0200 @@ -608,8 +608,7 @@ if (string is null) error (DWT.ERROR_NULL_ARGUMENT); super.setText (string); char [] chars = fixMnemonic (string); - char* buffer = tango.stdc.stringz.toStringz(chars); - OS.gtk_label_set_text_with_mnemonic (labelHandle, buffer); + OS.gtk_label_set_text_with_mnemonic (labelHandle, chars.toStringzValidPtr()); if (string.length !is 0) { OS.gtk_widget_show (labelHandle); } else {