delete this;
}
void apply(){
- Scene_EntitySetKeyValue_Selected_Undoable( m_key.c_str(), m_check.active() ? "1" : "0" );
+ Scene_EntitySetKeyValue_Selected_Undoable( m_key.c_str(), m_check.active() ? "1" : "" );
}
typedef MemberCaller<BooleanAttribute, void(), &BooleanAttribute::apply> ApplyCaller;
static gint EntityInspector_clearKeyValueKB( GtkEntry* widget, GdkEventKey* event, gpointer data ){
if ( event->keyval == GDK_Delete ) {
- // Get current selection text
- StringOutputStream key( 64 );
- key << gtk_entry_get_text( g_entityKeyEntry );
-
- if ( strcmp( key.c_str(), "classname" ) != 0 ) {
- StringOutputStream command;
- command << "entityDeleteKey -key " << key.c_str();
- UndoableCommand undo( command.c_str() );
- Scene_EntitySetKeyValue_Selected( key.c_str(), "" );
- }
+ EntityInspector_clearKeyValue();
return TRUE;
}
return FALSE;
}
static gint EntityClassList_keypress( ui::Widget widget, GdkEventKey* event, gpointer data ){
- unsigned int code = gdk_keyval_to_upper( event->keyval );
-
if ( event->keyval == GDK_KEY_Return ) {
EntityClassList_createEntity();
return TRUE;
}
// select the entity that starts with the key pressed
- if ( code <= 'Z' && code >= 'A' ) {
+/*
+ unsigned int code = gdk_keyval_to_upper( event->keyval );
+ if ( code <= 'Z' && code >= 'A' && event->state == 0 ) {
auto view = ui::TreeView(g_entityClassList);
GtkTreeModel* model;
GtkTreeIter iter;
return TRUE;
}
+*/
return FALSE;
}
static gint EntityEntry_keypress( ui::Entry widget, GdkEventKey* event, gpointer data ){
if ( event->keyval == GDK_KEY_Return ) {
if ( widget._handle == g_entityKeyEntry._handle ) {
- g_entityValueEntry.text( "" );
+ // g_entityValueEntry.text( "" );
gtk_window_set_focus( widget.window(), g_entityValueEntry );
}
else
gtk_widget_hide( GTK_WIDGET( GroupDialog_getWindow() ) );
return TRUE;
}
- if ( event->keyval == GDK_Tab ) {
+ /* this doesn't work, if tab is bound (func is not called then) */
+ if ( event->keyval == GDK_Tab ) {
gtk_window_set_focus( GTK_WINDOW( gtk_widget_get_toplevel( GTK_WIDGET( widget ) ) ), GTK_WIDGET( g_entityKeyEntry ) );
return TRUE;
}
ui::ListStore store = ui::ListStore::from(gtk_list_store_new( 2, G_TYPE_STRING, G_TYPE_POINTER ));
auto view = ui::TreeView( ui::TreeModel::from( store._handle ));
- gtk_tree_view_set_enable_search(view, FALSE );
+ // gtk_tree_view_set_enable_search(view, FALSE );
gtk_tree_view_set_headers_visible( view, FALSE );
view.connect( "button_press_event", G_CALLBACK( EntityClassList_button_press ), 0 );
view.connect( "key_press_event", G_CALLBACK( EntityClassList_keypress ), 0 );