[Summary] Bug fix #46783 "Please change AutoLock and AutoSave minimum value to "none" or "off"

[Feature reviewed] AMishyn
[Reviewed] VKamyshniy
This commit is contained in:
Nikolay 2015-03-25 10:57:18 +02:00
parent 19bc365c21
commit fbdeb3662d
2 changed files with 58 additions and 64 deletions

View file

@ -522,33 +522,39 @@ void
TracksControlPanel::populate_auto_lock_timer_dropdown()
{
int time = ARDOUR_UI::config()->get_auto_lock_timer();
std::stringstream ss;
ss << time;
std::string str_time = ss.str() + " Min";
_auto_lock_timer_dropdown.set_text( str_time );
int size = _auto_lock_timer_dropdown.get_menu ().items ().size ();
for (int i = 0; i < size; ++i) {
if (_auto_lock_timer_dropdown.get_item_data_u (i) == time) {
_auto_lock_timer_dropdown.set_current_item (i);
break;
}
}
}
void
TracksControlPanel::populate_auto_save_timer_dropdown()
{
int time = ARDOUR_UI::config()->get_auto_save_timer();
std::stringstream ss;
ss << time;
std::string str_time = ss.str() + " Min";
_auto_save_timer_dropdown.set_text( str_time );
int size = _auto_save_timer_dropdown.get_menu ().items ().size ();
for (int i = 0; i < size; ++i) {
if (_auto_save_timer_dropdown.get_item_data_u (i) == time) {
_auto_save_timer_dropdown.set_current_item (i);
break;
}
}
}
void
TracksControlPanel::populate_pre_record_buffer_dropdown()
{
int time = ARDOUR_UI::config()->get_pre_record_buffer();
std::stringstream ss;
ss << time;
std::string str_time = ss.str() + " Min";
_pre_record_buffer_dropdown.set_text( str_time );
int size = _pre_record_buffer_dropdown.get_menu ().items ().size ();
for (int i = 0; i < size; ++i) {
if (_pre_record_buffer_dropdown.get_item_data_u (i) == time) {
_pre_record_buffer_dropdown.set_current_item (i);
break;
}
}
}
#define UINT_TO_RGB(u,r,g,b) { (*(r)) = ((u)>>16)&0xff; (*(g)) = ((u)>>8)&0xff; (*(b)) = (u)&0xff; }
@ -1569,27 +1575,21 @@ TracksControlPanel::save_default_session_path()
void
TracksControlPanel::save_auto_lock_time()
{
std::string s = _auto_lock_timer_dropdown.get_text();
char * pEnd;
int time = strtol( s.c_str(), &pEnd, 10 );
int time = _auto_lock_timer_dropdown.get_item_data_u (_auto_lock_timer_dropdown.get_current_item ());
ARDOUR_UI::config()->set_auto_lock_timer(time);
}
void
TracksControlPanel::save_auto_save_time()
{
std::string s = _auto_save_timer_dropdown.get_text();
char * pEnd;
int time = strtol( s.c_str(), &pEnd, 10 );
int time = _auto_save_timer_dropdown.get_item_data_u (_auto_save_timer_dropdown.get_current_item ());
ARDOUR_UI::config()->set_auto_save_timer(time);
}
void
TracksControlPanel::save_pre_record_buffer()
{
std::string s = _pre_record_buffer_dropdown.get_text();
char * pEnd;
int time = strtol( s.c_str(), &pEnd, 10 );
int time = _pre_record_buffer_dropdown.get_item_data_u (_pre_record_buffer_dropdown.get_current_item ());
ARDOUR_UI::config()->set_pre_record_buffer(time);
}
@ -1648,29 +1648,9 @@ TracksControlPanel::reject ()
response(Gtk::RESPONSE_CANCEL);
// restore previous value in combo-boxes
std::stringstream ss;
int temp;
std::string str;
temp = ARDOUR_UI::config()->get_auto_lock_timer();
ss.str(std::string(""));
ss.clear();
ss << temp;
str = ss.str() + " Min";
_auto_lock_timer_dropdown.set_text(str);
temp = ARDOUR_UI::config()->get_auto_save_timer();
ss.str(std::string(""));
ss.clear();
ss << temp;
str = ss.str() + " Min";
_auto_save_timer_dropdown.set_text(str);
temp = ARDOUR_UI::config()->get_pre_record_buffer();
ss.str(std::string(""));
ss.clear();
ss << temp;
str = ss.str() + " Min";
_pre_record_buffer_dropdown.set_text(str);
populate_auto_lock_timer_dropdown ();
populate_auto_save_timer_dropdown ();
populate_pre_record_buffer_dropdown ();
std::string buffer_size_str = bufsize_as_string (EngineStateController::instance()->get_current_buffer_size() );
_buffer_size_dropdown.set_text(buffer_size_str);

View file

@ -650,18 +650,24 @@
width="117"/>
</HBox>
<DropdownMenu style="generic_dropdown_menu">
<Dropdownitem title="0 Min"
style="generic_dropdown_item"/>
<Dropdownitem title="none"
style="generic_dropdown_item"
data="0"/>
<Dropdownitem title="1 Min"
style="generic_dropdown_item"/>
style="generic_dropdown_item"
data="1"/>
<Dropdownitem title="3 Min"
style="generic_dropdown_item"/>
style="generic_dropdown_item"
data="3"/>
<Dropdownitem title="5 Min"
style="generic_dropdown_item"/>
style="generic_dropdown_item"
data="5"/>
<Dropdownitem title="10 Min"
style="generic_dropdown_item"/>
style="generic_dropdown_item"
data="10"/>
<Dropdownitem title="15 Min"
style="generic_dropdown_item"/>
style="generic_dropdown_item"
data="15"/>
</DropdownMenu>
</Dropdown>
<Label style="generic_control" text="Auto Save Timer" x="24" y="205"/>
@ -681,18 +687,24 @@
width="117"/>
</HBox>
<DropdownMenu style="generic_dropdown_menu">
<Dropdownitem title="0 Min"
style="generic_dropdown_item"/>
<Dropdownitem title="none"
style="generic_dropdown_item"
data="0"/>
<Dropdownitem title="1 Min"
style="generic_dropdown_item"/>
style="generic_dropdown_item"
data="1"/>
<Dropdownitem title="3 Min"
style="generic_dropdown_item"/>
style="generic_dropdown_item"
data="3"/>
<Dropdownitem title="5 Min"
style="generic_dropdown_item"/>
style="generic_dropdown_item"
data="5"/>
<Dropdownitem title="10 Min"
style="generic_dropdown_item"/>
style="generic_dropdown_item"
data="10"/>
<Dropdownitem title="15 Min"
style="generic_dropdown_item"/>
style="generic_dropdown_item"
data="15"/>
</DropdownMenu>
</Dropdown>
<Label style="generic_control"
@ -719,10 +731,12 @@
width="117"/>
</HBox>
<DropdownMenu style="generic_dropdown_menu">
<Dropdownitem title="0 Min"
style="generic_dropdown_item"/>
<Dropdownitem title="none"
style="generic_dropdown_item"
data="0"/>
<Dropdownitem title="1 Min"
style="generic_dropdown_item"/>
style="generic_dropdown_item"
data="1"/>
</DropdownMenu>
</Dropdown>
<Label style="generic_control"