X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fplugins%2Ftitler%2Ftitlerwindow.C;h=721bc6a10c0da64fbffaf070cd8fbcc37b0a16a5;hb=72a6abf751403bd91464e77ff2cece01c9756a6b;hp=9e577a9a3eb79372bb20f8a9a9e53d6d01c7fa5e;hpb=976d975e458fc1a088bd0cc58e5e483f5fbf7746;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/plugins/titler/titlerwindow.C b/cinelerra-5.1/plugins/titler/titlerwindow.C index 9e577a9a..721bc6a1 100644 --- a/cinelerra-5.1/plugins/titler/titlerwindow.C +++ b/cinelerra-5.1/plugins/titler/titlerwindow.C @@ -114,9 +114,13 @@ TitleWindow::TitleWindow(TitleMain *client) loop_playback = 0; } -TitleWindow::~TitleWindow() +void TitleWindow::done_event(int result) { ungrab(client->server->mwindow->cwindow->gui); +} + +TitleWindow::~TitleWindow() +{ delete color_popup; delete png_popup; for( int i=0; iupdate(fonts.values[current_font]->get_text()); strcpy(client->config.font, fonts.values[current_font]->get_text()); + check_style(client->config.font); client->send_configure_change(); } @@ -616,6 +621,7 @@ void TitleWindow::next_font() font->update(fonts.values[current_font]->get_text()); strcpy(client->config.font, fonts.values[current_font]->get_text()); + check_style(client->config.font); client->send_configure_change(); } @@ -670,6 +676,7 @@ void TitleWindow::update() fade_in->update((float)client->config.fade_in); fade_out->update((float)client->config.fade_out); font->update(client->config.font); + check_style(client->config.font); text->update(&client->config.wtext[0]); speed->update(client->config.pixels_per_second); outline->update((int64_t)client->config.outline_size); @@ -802,13 +809,7 @@ int TitleItalic::handle_event() TitleSize::TitleSize(TitleMain *client, TitleWindow *window, int x, int y, char *text) - : BC_PopupTextBox(window, - &window->sizes, - text, - x, - y, - 64, - 300) + : BC_PopupTextBox(window, &window->sizes, text, x, y, 64, 300) { this->client = client; this->window = window; @@ -967,9 +968,18 @@ int TitleFade::handle_event() return 1; } +void TitleWindow::check_style(const char *font_name) +{ + BC_FontEntry *font; + font = TitleMain::get_font(font_name, BC_FONT_ITALIC); + strcmp(font_name, font->displayname) ? italic->disable() : italic->enable(); + font = TitleMain::get_font(font_name, BC_FONT_BOLD); + strcmp(font_name, font->displayname) ? bold->disable() : bold->enable(); +} + TitleFont::TitleFont(TitleMain *client, TitleWindow *window, int x, int y) : BC_PopupTextBox(window, &window->fonts, client->config.font, - x, y, 200, 500, LISTBOX_ICON_LIST) + x, y, 240, 300, LISTBOX_ICON_LIST) { this->client = client; this->window = window; @@ -977,6 +987,7 @@ TitleFont::TitleFont(TitleMain *client, TitleWindow *window, int x, int y) int TitleFont::handle_event() { strcpy(client->config.font, get_text()); + window->check_style(client->config.font); client->send_configure_change(); return 1; }