| 1273 if(freevalue) { |
1273 if(freevalue) { |
| 1274 free(data); |
1274 free(data); |
| 1275 } |
1275 } |
| 1276 break; |
1276 break; |
| 1277 } |
1277 } |
| |
1278 case UI_INTEGER_EDITABLE: { |
| |
1279 g_value_init(&value, G_TYPE_INT); |
| |
1280 intptr_t intptr = (intptr_t)data; |
| |
1281 g_value_set_int(&value, (int)intptr); |
| |
1282 break; |
| |
1283 } |
| 1278 case UI_BOOL_EDITABLE: { |
1284 case UI_BOOL_EDITABLE: { |
| 1279 g_value_init(&value, G_TYPE_BOOLEAN); |
1285 g_value_init(&value, G_TYPE_BOOLEAN); |
| 1280 intptr_t b = (intptr_t)data; |
1286 intptr_t b = (intptr_t)data; |
| 1281 g_value_set_boolean(&value, b != 0 ? TRUE : FALSE); |
1287 g_value_set_boolean(&value, b != 0 ? TRUE : FALSE); |
| 1282 if(freevalue) { |
1288 if(freevalue) { |
| 1356 case UI_ICON_TEXT_FREE: { |
1362 case UI_ICON_TEXT_FREE: { |
| 1357 types[c] = G_TYPE_OBJECT; |
1363 types[c] = G_TYPE_OBJECT; |
| 1358 types[++c] = G_TYPE_STRING; |
1364 types[++c] = G_TYPE_STRING; |
| 1359 } |
1365 } |
| 1360 case UI_STRING_EDITABLE: types[c] = G_TYPE_STRING; break; |
1366 case UI_STRING_EDITABLE: types[c] = G_TYPE_STRING; break; |
| |
1367 case UI_INTEGER_EDITABLE: types[c] = G_TYPE_INT; break; |
| 1361 case UI_BOOL_EDITABLE: types[c] = G_TYPE_BOOLEAN; break; |
1368 case UI_BOOL_EDITABLE: types[c] = G_TYPE_BOOLEAN; break; |
| 1362 } |
1369 } |
| 1363 } |
1370 } |
| 1364 int s = 0; |
1371 int s = 0; |
| 1365 for(int i=0;i<columns;i++) { |
1372 for(int i=0;i<columns;i++) { |
| 1610 i + addi, |
1617 i + addi, |
| 1611 NULL); |
1618 NULL); |
| 1612 g_signal_connect(renderer, "toggled", G_CALLBACK(table_cell_toggled), NULL); |
1619 g_signal_connect(renderer, "toggled", G_CALLBACK(table_cell_toggled), NULL); |
| 1613 } else { |
1620 } else { |
| 1614 GtkCellRenderer *textrenderer = gtk_cell_renderer_text_new(); |
1621 GtkCellRenderer *textrenderer = gtk_cell_renderer_text_new(); |
| 1615 if(model->types[i] == UI_STRING_EDITABLE) { |
1622 if(model->types[i] == UI_STRING_EDITABLE || model->types[i] == UI_INTEGER_EDITABLE) { |
| 1616 g_object_set(textrenderer, "editable", TRUE, NULL); |
1623 g_object_set(textrenderer, "editable", TRUE, NULL); |
| 1617 } |
1624 } |
| 1618 column = gtk_tree_view_column_new_with_attributes( |
1625 column = gtk_tree_view_column_new_with_attributes( |
| 1619 model->titles[i], |
1626 model->titles[i], |
| 1620 textrenderer, |
1627 textrenderer, |