mirror of
https://git.mirrors.martin98.com/https://github.com/slic3r/Slic3r.git
synced 2025-07-20 22:24:24 +08:00
#715 push Max size of printer to 100m
This commit is contained in:
parent
a8bc17816e
commit
7cab79e7db
@ -105,7 +105,7 @@ void BedShape::append_option_line(ConfigOptionsGroupShp optgroup, Parameter para
|
||||
def.type = coPoints;
|
||||
def.set_default_value(new ConfigOptionPoints{ Vec2d(200, 200) });
|
||||
def.min = 0;
|
||||
def.max = 1200;
|
||||
def.max = 100000;
|
||||
def.label = get_option_label(param);
|
||||
def.tooltip = L("Size in X and Y of the rectangular plate.");
|
||||
|
||||
@ -115,8 +115,8 @@ void BedShape::append_option_line(ConfigOptionsGroupShp optgroup, Parameter para
|
||||
else if (param == Parameter::RectOrigin) {
|
||||
def.type = coPoints;
|
||||
def.set_default_value(new ConfigOptionPoints{ Vec2d(0, 0) });
|
||||
def.min = -600;
|
||||
def.max = 600;
|
||||
def.min = -100000;
|
||||
def.max = 100000;
|
||||
def.label = get_option_label(param);
|
||||
def.tooltip = L("Distance of the 0,0 G-code coordinate from the front left corner of the rectangle.");
|
||||
|
||||
|
@ -1412,62 +1412,62 @@ bool GUI_App::select_language()
|
||||
bool GUI_App::load_language(wxString language, bool initial)
|
||||
{
|
||||
if (initial) {
|
||||
// There is a static list of lookup path prefixes in wxWidgets. Add ours.
|
||||
wxFileTranslationsLoader::AddCatalogLookupPathPrefix(from_u8(localization_dir()));
|
||||
// Get the active language from PrusaSlicer.ini, or empty string if the key does not exist.
|
||||
// There is a static list of lookup path prefixes in wxWidgets. Add ours.
|
||||
wxFileTranslationsLoader::AddCatalogLookupPathPrefix(from_u8(localization_dir()));
|
||||
// Get the active language from PrusaSlicer.ini, or empty string if the key does not exist.
|
||||
language = app_config->get("translation_language");
|
||||
if (! language.empty())
|
||||
BOOST_LOG_TRIVIAL(trace) << boost::format("translation_language provided by SuperSlicer.ini: %1%") % language;
|
||||
BOOST_LOG_TRIVIAL(trace) << boost::format("translation_language provided by SuperSlicer.ini: %1%") % language;
|
||||
|
||||
// Get the system language.
|
||||
{
|
||||
const wxLanguage lang_system = wxLanguage(wxLocale::GetSystemLanguage());
|
||||
if (lang_system != wxLANGUAGE_UNKNOWN) {
|
||||
m_language_info_system = wxLocale::GetLanguageInfo(lang_system);
|
||||
BOOST_LOG_TRIVIAL(trace) << boost::format("System language detected (user locales and such): %1%") % m_language_info_system->CanonicalName.ToUTF8().data();
|
||||
const wxLanguage lang_system = wxLanguage(wxLocale::GetSystemLanguage());
|
||||
if (lang_system != wxLANGUAGE_UNKNOWN) {
|
||||
m_language_info_system = wxLocale::GetLanguageInfo(lang_system);
|
||||
BOOST_LOG_TRIVIAL(trace) << boost::format("System language detected (user locales and such): %1%") % m_language_info_system->CanonicalName.ToUTF8().data();
|
||||
}
|
||||
}
|
||||
{
|
||||
// Allocating a temporary locale will switch the default wxTranslations to its internal wxTranslations instance.
|
||||
wxLocale temp_locale;
|
||||
// Set the current translation's language to default, otherwise GetBestTranslation() may not work (see the wxWidgets source code).
|
||||
wxTranslations::Get()->SetLanguage(wxLANGUAGE_DEFAULT);
|
||||
// Let the wxFileTranslationsLoader enumerate all translation dictionaries for SuperSlicer
|
||||
// and try to match them with the system specific "preferred languages".
|
||||
// There seems to be a support for that on Windows and OSX, while on Linuxes the code just returns wxLocale::GetSystemLanguage().
|
||||
// The last parameter gets added to the list of detected dictionaries. This is a workaround
|
||||
// for not having the English dictionary. Let's hope wxWidgets of various versions process this call the same way.
|
||||
wxString best_language = wxTranslations::Get()->GetBestTranslation(SLIC3R_APP_KEY, wxLANGUAGE_ENGLISH);
|
||||
if (! best_language.IsEmpty()) {
|
||||
m_language_info_best = wxLocale::FindLanguageInfo(best_language);
|
||||
BOOST_LOG_TRIVIAL(trace) << boost::format("Best translation language detected (may be different from user locales): %1%") % m_language_info_best->CanonicalName.ToUTF8().data();
|
||||
}
|
||||
}
|
||||
}
|
||||
{
|
||||
// Allocating a temporary locale will switch the default wxTranslations to its internal wxTranslations instance.
|
||||
wxLocale temp_locale;
|
||||
// Set the current translation's language to default, otherwise GetBestTranslation() may not work (see the wxWidgets source code).
|
||||
wxTranslations::Get()->SetLanguage(wxLANGUAGE_DEFAULT);
|
||||
// Let the wxFileTranslationsLoader enumerate all translation dictionaries for SuperSlicer
|
||||
// and try to match them with the system specific "preferred languages".
|
||||
// There seems to be a support for that on Windows and OSX, while on Linuxes the code just returns wxLocale::GetSystemLanguage().
|
||||
// The last parameter gets added to the list of detected dictionaries. This is a workaround
|
||||
// for not having the English dictionary. Let's hope wxWidgets of various versions process this call the same way.
|
||||
wxString best_language = wxTranslations::Get()->GetBestTranslation(SLIC3R_APP_KEY, wxLANGUAGE_ENGLISH);
|
||||
if (! best_language.IsEmpty()) {
|
||||
m_language_info_best = wxLocale::FindLanguageInfo(best_language);
|
||||
BOOST_LOG_TRIVIAL(trace) << boost::format("Best translation language detected (may be different from user locales): %1%") % m_language_info_best->CanonicalName.ToUTF8().data();
|
||||
}
|
||||
}
|
||||
|
||||
const wxLanguageInfo *language_info = language.empty() ? nullptr : wxLocale::FindLanguageInfo(language);
|
||||
if (! language.empty() && (language_info == nullptr || language_info->CanonicalName.empty())) {
|
||||
// Fix for wxWidgets issue, where the FindLanguageInfo() returns locales with undefined ANSII code (wxLANGUAGE_KONKANI or wxLANGUAGE_MANIPURI).
|
||||
language_info = nullptr;
|
||||
BOOST_LOG_TRIVIAL(error) << boost::format("Language code \"%1%\" is not supported") % language.ToUTF8().data();
|
||||
}
|
||||
|
||||
const wxLanguageInfo *language_info = language.empty() ? nullptr : wxLocale::FindLanguageInfo(language);
|
||||
if (! language.empty() && (language_info == nullptr || language_info->CanonicalName.empty())) {
|
||||
// Fix for wxWidgets issue, where the FindLanguageInfo() returns locales with undefined ANSII code (wxLANGUAGE_KONKANI or wxLANGUAGE_MANIPURI).
|
||||
language_info = nullptr;
|
||||
BOOST_LOG_TRIVIAL(error) << boost::format("Language code \"%1%\" is not supported") % language.ToUTF8().data();
|
||||
if (language_info != nullptr && language_info->LayoutDirection == wxLayout_RightToLeft) {
|
||||
BOOST_LOG_TRIVIAL(trace) << boost::format("The following language code requires right to left layout, which is not supported by SuperSlicer: %1%") % language_info->CanonicalName.ToUTF8().data();
|
||||
language_info = nullptr;
|
||||
}
|
||||
|
||||
if (language_info != nullptr && language_info->LayoutDirection == wxLayout_RightToLeft) {
|
||||
BOOST_LOG_TRIVIAL(trace) << boost::format("The following language code requires right to left layout, which is not supported by SuperSlicer: %1%") % language_info->CanonicalName.ToUTF8().data();
|
||||
language_info = nullptr;
|
||||
}
|
||||
|
||||
if (language_info == nullptr) {
|
||||
// PrusaSlicer does not support the Right to Left languages yet.
|
||||
if (m_language_info_system != nullptr && m_language_info_system->LayoutDirection != wxLayout_RightToLeft)
|
||||
language_info = m_language_info_system;
|
||||
if (m_language_info_best != nullptr && m_language_info_best->LayoutDirection != wxLayout_RightToLeft)
|
||||
language_info = m_language_info_best;
|
||||
if (language_info == nullptr)
|
||||
language_info = wxLocale::GetLanguageInfo(wxLANGUAGE_ENGLISH_US);
|
||||
language_info = m_language_info_best;
|
||||
if (language_info == nullptr)
|
||||
language_info = wxLocale::GetLanguageInfo(wxLANGUAGE_ENGLISH_US);
|
||||
}
|
||||
|
||||
BOOST_LOG_TRIVIAL(trace) << boost::format("Switching wxLocales to %1%") % language_info->CanonicalName.ToUTF8().data();
|
||||
BOOST_LOG_TRIVIAL(trace) << boost::format("Switching wxLocales to %1%") % language_info->CanonicalName.ToUTF8().data();
|
||||
|
||||
// Alternate language code.
|
||||
wxLanguage language_dict = wxLanguage(language_info->Language);
|
||||
|
Loading…
x
Reference in New Issue
Block a user