if (OS.GTK_VERSION >= OS.VERSION (2, 4, 0)) { OS.g_signal_handlers_unblock_matched (handle, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, CHANGED); }
public void setText (String string) {	checkWidget();	if (string == null) error (SWT.ERROR_NULL_ARGUMENT);	if ((style & SWT.READ_ONLY) != 0) {		int index = indexOf (string);		if (index == -1) return;	}	/*	* Feature in gtk.  When text is set in gtk, separate events are fired for the deletion and 	* insertion of the text.  This is not wrong, but is inconsistent with other platforms.  The	* fix is to block the firing of these events and fire them ourselves in a consistent manner. 	*/	if (hooks (SWT.Verify) || filters (SWT.Verify)) {		int /*long*/ ptr = OS.gtk_entry_get_text (entryHandle);		string = verifyText (string, 0, (int)/*64*/OS.g_utf8_strlen (ptr, -1));		if (string == null) return;	}	byte [] buffer = Converter.wcsToMbcs (null, string, true);	OS.g_signal_handlers_block_matched (entryHandle, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, CHANGED);	OS.g_signal_handlers_block_matched (entryHandle, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, DELETE_TEXT);	OS.g_signal_handlers_block_matched (entryHandle, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, INSERT_TEXT);	OS.gtk_entry_set_text (entryHandle, buffer);	OS.g_signal_handlers_unblock_matched (entryHandle, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, CHANGED);	OS.g_signal_handlers_unblock_matched (entryHandle, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, DELETE_TEXT);	OS.g_signal_handlers_unblock_matched (entryHandle, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, INSERT_TEXT);	sendEvent (SWT.Modify);}