_enable_player_http_server = false;
_player_http_server_port = 8080;
_relative_paths = false;
+ _layout_for_short_screen = false;
_allowed_dcp_frame_rates.clear ();
_allowed_dcp_frame_rates.push_back (24);
_enable_player_http_server = f.optional_bool_child("EnablePlayerHTTPServer").get_value_or(false);
_player_http_server_port = f.optional_number_child<int>("PlayerHTTPServerPort").get_value_or(8080);
_relative_paths = f.optional_bool_child("RelativePaths").get_value_or(false);
+ _layout_for_short_screen = f.optional_bool_child("LayoutForShortScreen").get_value_or(false);
#ifdef DCPOMATIC_GROK
if (auto grok = f.optional_node_child("Grok")) {
cxml::add_text_child(root, "PlayerHTTPServerPort", fmt::to_string(_player_http_server_port));
/* [XML] RelativePaths 1 to write relative paths to project metadata files, 0 to use absolute paths */
cxml::add_text_child(root, "RelativePaths", _relative_paths ? "1" : "0");
+ /* [XML] LayoutForShortScreen 1 to set up DCP-o-matic as if the screen were less than 800 pixels high */
+ cxml::add_text_child(root, "LayoutForShortScreen", _layout_for_short_screen ? "1" : "0");
#ifdef DCPOMATIC_GROK
if (_grok) {
return _relative_paths;
}
+ bool layout_for_short_screen() {
+ return _layout_for_short_screen;
+ }
+
/* SET (mostly) */
void set_master_encoding_threads (int n) {
maybe_set(_relative_paths, relative);
}
+ void set_layout_for_short_screen(bool layout) {
+ maybe_set(_layout_for_short_screen, layout);
+ }
+
void changed (Property p = OTHER);
boost::signals2::signal<void (Property)> Changed;
bool _enable_player_http_server;
int _player_http_server_port;
bool _relative_paths;
+ bool _layout_for_short_screen;
#ifdef DCPOMATIC_GROK
boost::optional<Grok> _grok;
table->Add (_only_servers_encode, 1, wxEXPAND | wxLEFT, DCPOMATIC_SIZER_GAP);
table->AddSpacer (0);
+ _layout_for_short_screen = new CheckBox(_panel, _("Layout for short screen"));
+ table->Add(_layout_for_short_screen, 1, wxEXPAND | wxLEFT, DCPOMATIC_SIZER_GAP);
+ table->AddSpacer (0);
+
{
add_label_to_sizer (table, _panel, _("Maximum number of frames to store per thread"), true, 0, wxLEFT | wxRIGHT | wxALIGN_CENTRE_VERTICAL);
auto s = new wxBoxSizer (wxHORIZONTAL);
_video_display_mode->Bind (wxEVT_CHOICE, boost::bind(&AdvancedPage::video_display_mode_changed, this));
_show_experimental_audio_processors->bind(&AdvancedPage::show_experimental_audio_processors_changed, this);
_only_servers_encode->bind(&AdvancedPage::only_servers_encode_changed, this);
+ _layout_for_short_screen->bind(&AdvancedPage::layout_for_short_screen_changed, this);
_frames_in_memory_multiplier->Bind (wxEVT_SPINCTRL, boost::bind(&AdvancedPage::frames_in_memory_multiplier_changed, this));
_dcp_metadata_filename_format->Changed.connect (boost::bind (&AdvancedPage::dcp_metadata_filename_format_changed, this));
_dcp_asset_filename_format->Changed.connect (boost::bind (&AdvancedPage::dcp_asset_filename_format_changed, this));
}
checked_set (_show_experimental_audio_processors, config->show_experimental_audio_processors ());
checked_set (_only_servers_encode, config->only_servers_encode ());
+ checked_set (_layout_for_short_screen, config->layout_for_short_screen());
checked_set (_log_general, config->log_types() & LogEntry::TYPE_GENERAL);
checked_set (_log_warning, config->log_types() & LogEntry::TYPE_WARNING);
checked_set (_log_error, config->log_types() & LogEntry::TYPE_ERROR);
Config::instance()->set_only_servers_encode (_only_servers_encode->GetValue());
}
+ void layout_for_short_screen_changed()
+ {
+ Config::instance()->set_layout_for_short_screen(_layout_for_short_screen->GetValue());
+ }
+
void dcp_metadata_filename_format_changed ()
{
Config::instance()->set_dcp_metadata_filename_format(_dcp_metadata_filename_format->get());
wxSpinCtrl* _frames_in_memory_multiplier = nullptr;
CheckBox* _show_experimental_audio_processors = nullptr;
CheckBox* _only_servers_encode = nullptr;
+ CheckBox* _layout_for_short_screen = nullptr;
NameFormatEditor* _dcp_metadata_filename_format = nullptr;
NameFormatEditor* _dcp_asset_filename_format = nullptr;
CheckBox* _log_general = nullptr;