{
hms = 0;
hmsf = 0;
+ timecode = 0;
samples = 0;
frames = 0;
hex = 0;
{
delete hms;
delete hmsf;
+ delete timecode;
delete samples;
delete frames;
delete hex;
add_subwindow(new BC_Title(x, y, _("Plugin Icons:")));
add_subwindow(plugin_icons = new ViewPluginIcons(x1, y, pwindow));
plugin_icons->create_objects();
- y += plugin_icons->get_h() + ys15;
+ y += plugin_icons->get_h() + ys10;
+ add_subwindow(new BC_Title(x, y, _("Language:")));
+ LayoutLocale *layout_locale;
+ add_subwindow(layout_locale = new LayoutLocale(x1, y, pwindow));
+ layout_locale->create_objects();
+ y += layout_locale->get_h() + ys15;
x1 = get_w()/2;
int x2 = x1 + xS(160), y2 = y;
pwindow->thread->edl->session->time_format == TIME_HMSF,
x, y));
y += ys20;
+ add_subwindow(timecode = new TimeFormatTimecode(pwindow, this,
+ pwindow->thread->edl->session->time_format == TIME_TIMECODE,
+ x, y));
+ y += ys20;
add_subwindow(samples = new TimeFormatSamples(pwindow, this,
pwindow->thread->edl->session->time_format == TIME_SAMPLES,
x, y));
x2, y, xS(80), yS(24), clr_color, clr_alpha));
draw_3d_border(x2-2,y-2, xS(80)+4,xS(24)+4, 1);
cwdw_bg_color->create_objects();
+ x2 += cwdw_bg_color->get_w();
y += ys35;
- x = x1;
- add_subwindow(title = new BC_Title(x, y, _("YUV color space:")));
- x += title->get_w() + margin;
+ add_subwindow(title = new BC_Title(x1, y, _("YUV color space:")));
+ x = x2 - xS(120);
add_subwindow(yuv_color_space = new YuvColorSpace(x, y, pwindow));
yuv_color_space->create_objects();
y += yuv_color_space->get_h() + ys5;
- x = x1;
- add_subwindow(title = new BC_Title(x, y, _("YUV color range:")));
- x += title->get_w() + margin;
+ add_subwindow(title = new BC_Title(x1, y, _("YUV color range:")));
+ x = x2 - xS(100);
add_subwindow(yuv_color_range = new YuvColorRange(x, y, pwindow));
yuv_color_range->create_objects();
y += yuv_color_range->get_h() + ys35;
UseWarnVersion *ver_warn = new UseWarnVersion(pwindow, x, y);
add_subwindow(ver_warn);
y += ver_warn->get_h() + ys5;
- UseWarnStack *stack_warn = new UseWarnStack(pwindow, x, y);
- add_subwindow(stack_warn);
- y += stack_warn->get_h() + ys5;
BD_WarnRoot *bdwr_warn = new BD_WarnRoot(pwindow, x, y);
add_subwindow(bdwr_warn);
y += bdwr_warn->get_h() + ys5;
DeactivateFocusPolicy *focus_deactivate = new DeactivateFocusPolicy(pwindow, x, y);
add_subwindow(focus_deactivate);
y += focus_deactivate->get_h() + ys5;
+ AutoRotate *auto_rotate = new AutoRotate(pwindow, x, y);
+ add_subwindow(auto_rotate);
+ y += auto_rotate->get_h() + ys5;
}
int AppearancePrefs::update(int new_value)
pwindow->thread->edl->session->time_format = new_value;
hms->update(new_value == TIME_HMS);
hmsf->update(new_value == TIME_HMSF);
+ timecode->update(new_value == TIME_TIMECODE);
samples->update(new_value == TIME_SAMPLES);
hex->update(new_value == TIME_SAMPLES_HEX);
frames->update(new_value == TIME_FRAMES);
return 1;
}
+TimeFormatTimecode::TimeFormatTimecode(PreferencesWindow *pwindow, AppearancePrefs *tfwindow, int value, int x, int y)
+ : BC_Radial(x, y, value, TIME_TIMECODE_TEXT)
+{ this->pwindow = pwindow; this->tfwindow = tfwindow; }
+
+int TimeFormatTimecode::handle_event()
+{
+ tfwindow->update(TIME_TIMECODE);
+ return 1;
+}
+
TimeFormatSamples::TimeFormatSamples(PreferencesWindow *pwindow, AppearancePrefs *tfwindow, int value, int x, int y)
: BC_Radial(x, y, value, TIME_SAMPLES_TEXT)
{ this->pwindow = pwindow; this->tfwindow = tfwindow; }
return 1;
}
+LayoutLocale::LayoutLocale(int x, int y, PreferencesWindow *pwindow)
+ : BC_PopupMenu(x, y, xS(200), pwindow->thread->preferences->locale, 1)
+{
+ this->pwindow = pwindow;
+}
+LayoutLocale::~LayoutLocale()
+{
+}
+
+const char *LayoutLocale::locale_list[] = { LOCALE_LIST, 0 };
+
+void LayoutLocale::create_objects()
+{
+ for( const char *tp, **lp=locale_list; (tp=*lp)!=0; ++lp )
+ add_item(new LayoutLocaleItem(this, tp));
+}
+
+int LayoutLocale::handle_event()
+{
+ return 1;
+}
+
+LayoutLocaleItem::LayoutLocaleItem(LayoutLocale *popup, const char *text)
+ : BC_MenuItem(text)
+{
+ this->popup = popup;
+}
+
+int LayoutLocaleItem::handle_event()
+{
+ popup->set_text(get_text());
+ strcpy(popup->pwindow->thread->preferences->locale, get_text());
+ popup->handle_event();
+ return 1;
+}
+
ViewLayoutScale::ViewLayoutScale(PreferencesWindow *pwindow,
AppearancePrefs *aprefs, int x, int y)
: BC_TumbleTextBox(aprefs,
return 1;
}
-UseWarnStack::UseWarnStack(PreferencesWindow *pwindow, int x, int y)
- : BC_CheckBox(x, y, pwindow->thread->preferences->warn_stack,
- _("Stack warns if reference not modified"))
-{
- this->pwindow = pwindow;
-}
-
-int UseWarnStack::handle_event()
-{
- pwindow->thread->preferences->warn_stack = get_value();
- return 1;
-}
-
BD_WarnRoot::BD_WarnRoot(PreferencesWindow *pwindow, int x, int y)
: BC_CheckBox(x, y, pwindow->thread->preferences->bd_warn_root,
_("Create Bluray warns if not root"))
return 1;
}
+AutoRotate::AutoRotate(PreferencesWindow *pwindow, int x, int y)
+ : BC_CheckBox(x, y, pwindow->thread->preferences->auto_rotate != 0,
+ _("Auto rotate ffmpeg media"))
+{
+ this->pwindow = pwindow;
+}
+
+int AutoRotate::handle_event()
+{
+ pwindow->thread->preferences->auto_rotate = get_value();
+ return 1;
+}
+
ForwardRenderDisplacement::ForwardRenderDisplacement(PreferencesWindow *pwindow, int x, int y)
: BC_CheckBox(x, y, pwindow->thread->preferences->forward_render_displacement,
_("Always show next frame"))