Mercurial > vim
comparison src/gui_gtk_x11.c @ 714:0f9f4761ad9c v7.0216
updated for version 7.0216
author | vimboss |
---|---|
date | Mon, 06 Mar 2006 23:29:24 +0000 |
parents | 7cf327ccb632 |
children | d20041a02ee5 |
comparison
equal
deleted
inserted
replaced
713:0c381fb7846c | 714:0f9f4761ad9c |
---|---|
3185 if (send_tabline_event(index + 1) && gtk_main_level() > 0) | 3185 if (send_tabline_event(index + 1) && gtk_main_level() > 0) |
3186 gtk_main_quit(); | 3186 gtk_main_quit(); |
3187 } | 3187 } |
3188 } | 3188 } |
3189 | 3189 |
3190 #ifndef HAVE_GTK2 | |
3191 static int showing_tabline = 0; | |
3192 #endif | |
3193 | |
3190 /* | 3194 /* |
3191 * Show or hide the tabline. | 3195 * Show or hide the tabline. |
3192 */ | 3196 */ |
3193 void | 3197 void |
3194 gui_mch_show_tabline(int showit) | 3198 gui_mch_show_tabline(int showit) |
3195 { | 3199 { |
3196 if (gui.tabline == NULL) | 3200 if (gui.tabline == NULL) |
3197 return; | 3201 return; |
3198 | 3202 |
3203 #ifdef HAVE_GTK2 | |
3204 /* gtk_notebook_get_show_tabs does not exist in gtk+-1.2.10 */ | |
3199 if (!showit != !gtk_notebook_get_show_tabs(GTK_NOTEBOOK(gui.tabline))) | 3205 if (!showit != !gtk_notebook_get_show_tabs(GTK_NOTEBOOK(gui.tabline))) |
3206 #else | |
3207 if (!showit != !showing_tabline) | |
3208 #endif | |
3200 { | 3209 { |
3201 /* Note: this may cause a resize event */ | 3210 /* Note: this may cause a resize event */ |
3202 gtk_notebook_set_show_tabs(GTK_NOTEBOOK(gui.tabline), showit); | 3211 gtk_notebook_set_show_tabs(GTK_NOTEBOOK(gui.tabline), showit); |
3203 update_window_manager_hints(); | 3212 update_window_manager_hints(); |
3213 #ifndef HAVE_GTK2 | |
3214 showing_tabline = showit; | |
3215 #endif | |
3204 } | 3216 } |
3205 } | 3217 } |
3206 | 3218 |
3207 /* | 3219 /* |
3208 * Return TRUE when tabline is displayed. | 3220 * Return TRUE when tabline is displayed. |
3209 */ | 3221 */ |
3210 int | 3222 int |
3211 gui_mch_showing_tabline(void) | 3223 gui_mch_showing_tabline(void) |
3212 { | 3224 { |
3213 return gui.tabline != NULL | 3225 return gui.tabline != NULL |
3214 && gtk_notebook_get_show_tabs(GTK_NOTEBOOK(gui.tabline)); | 3226 #ifdef HAVE_GTK2 |
3227 /* gtk_notebook_get_show_tabs does not exist in gtk+-1.2.10 */ | |
3228 && gtk_notebook_get_show_tabs(GTK_NOTEBOOK(gui.tabline)) | |
3229 #else | |
3230 && showing_tabline | |
3231 #endif | |
3232 ; | |
3215 } | 3233 } |
3216 | 3234 |
3217 /* | 3235 /* |
3218 * Update the labels of the tabline. | 3236 * Update the labels of the tabline. |
3219 */ | 3237 */ |
4454 while (gui.fontdlg && GTK_WIDGET_DRAWABLE(gui.fontdlg)) | 4472 while (gui.fontdlg && GTK_WIDGET_DRAWABLE(gui.fontdlg)) |
4455 gtk_main_iteration_do(TRUE); | 4473 gtk_main_iteration_do(TRUE); |
4456 | 4474 |
4457 if (gui.fontname != NULL) | 4475 if (gui.fontname != NULL) |
4458 { | 4476 { |
4459 fontname = vim_strsave(gui.fontname); | 4477 /* Apparently some font names include a comma, need to escape that, |
4478 * because in 'guifont' it separates names. */ | |
4479 fontname = vim_strsave_escaped(gui.fontname, (char_u *)","); | |
4460 g_free(gui.fontname); | 4480 g_free(gui.fontname); |
4461 gui.fontname = NULL; | 4481 gui.fontname = NULL; |
4462 } | 4482 } |
4463 return fontname; | 4483 return fontname; |
4464 } | 4484 } |
4524 | 4544 |
4525 name = gtk_font_selection_dialog_get_font_name( | 4545 name = gtk_font_selection_dialog_get_font_name( |
4526 GTK_FONT_SELECTION_DIALOG(dialog)); | 4546 GTK_FONT_SELECTION_DIALOG(dialog)); |
4527 if (name != NULL) | 4547 if (name != NULL) |
4528 { | 4548 { |
4549 char_u *p; | |
4550 | |
4551 /* Apparently some font names include a comma, need to escape | |
4552 * that, because in 'guifont' it separates names. */ | |
4553 p = vim_strsave_escaped((char_u *)name, (char_u *)","); | |
4554 g_free(name); | |
4529 if (input_conv.vc_type != CONV_NONE) | 4555 if (input_conv.vc_type != CONV_NONE) |
4530 fontname = string_convert(&input_conv, (char_u *)name, NULL); | 4556 { |
4557 fontname = string_convert(&input_conv, p, NULL); | |
4558 vim_free(p); | |
4559 } | |
4531 else | 4560 else |
4532 fontname = vim_strsave((char_u *)name); | 4561 fontname = p; |
4533 g_free(name); | |
4534 } | 4562 } |
4535 } | 4563 } |
4536 | 4564 |
4537 if (response != GTK_RESPONSE_NONE) | 4565 if (response != GTK_RESPONSE_NONE) |
4538 gtk_widget_destroy(dialog); | 4566 gtk_widget_destroy(dialog); |