make trnslation option actually toggle back and forth
git-svn-id: svn://localhost/ardour2/branches/3.0@13983 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
80b11d93ee
commit
02a21a4a3f
@ -480,28 +480,46 @@ ARDOUR::translation_enable_path ()
|
|||||||
bool
|
bool
|
||||||
ARDOUR::translations_are_enabled ()
|
ARDOUR::translations_are_enabled ()
|
||||||
{
|
{
|
||||||
if (Glib::file_test (translation_enable_path(), Glib::FILE_TEST_EXISTS)) {
|
int fd = ::open (ARDOUR::translation_enable_path().c_str(), O_RDONLY);
|
||||||
return true;
|
|
||||||
|
if (fd < 0) {
|
||||||
|
return translate_by_default;
|
||||||
}
|
}
|
||||||
|
|
||||||
return translate_by_default;
|
char c;
|
||||||
|
bool ret = false;
|
||||||
|
|
||||||
|
if (::read (fd, &c, 1) == 1 && c == '1') {
|
||||||
|
ret = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
::close (fd);
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool
|
bool
|
||||||
ARDOUR::set_translations_enabled (bool yn)
|
ARDOUR::set_translations_enabled (bool yn)
|
||||||
{
|
{
|
||||||
string i18n_enabler = ARDOUR::translation_enable_path();
|
string i18n_enabler = ARDOUR::translation_enable_path();
|
||||||
|
int fd = ::open (i18n_enabler.c_str(), O_WRONLY|O_CREAT|O_TRUNC, 0644);
|
||||||
|
|
||||||
if (yn) {
|
if (fd < 0) {
|
||||||
int fd = ::open (i18n_enabler.c_str(), O_RDONLY|O_CREAT, 0644);
|
|
||||||
if (fd >= 0) {
|
|
||||||
close (fd);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return unlink (i18n_enabler.c_str()) == 0;
|
char c;
|
||||||
|
|
||||||
|
if (yn) {
|
||||||
|
c = '1';
|
||||||
|
} else {
|
||||||
|
c = '0';
|
||||||
|
}
|
||||||
|
|
||||||
|
::write (fd, &c, 1);
|
||||||
|
::close (fd);
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user