|
@@ -80,7 +80,7 @@ void ProjectExportDialog::popup_export() {
|
|
|
|
|
|
_update_presets();
|
|
_update_presets();
|
|
if (presets->get_current() >= 0) {
|
|
if (presets->get_current() >= 0) {
|
|
- _edit_preset(presets->get_current()); // triggers rescan for templates if newly installed
|
|
|
|
|
|
+ _update_current_preset(); // triggers rescan for templates if newly installed
|
|
}
|
|
}
|
|
|
|
|
|
// Restore valid window bounds or pop up at default size.
|
|
// Restore valid window bounds or pop up at default size.
|
|
@@ -137,13 +137,18 @@ void ProjectExportDialog::_add_preset(int p_platform) {
|
|
_edit_preset(EditorExport::get_singleton()->get_export_preset_count() - 1);
|
|
_edit_preset(EditorExport::get_singleton()->get_export_preset_count() - 1);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+void ProjectExportDialog::_update_current_preset() {
|
|
|
|
+
|
|
|
|
+ _edit_preset(presets->get_current());
|
|
|
|
+}
|
|
|
|
+
|
|
void ProjectExportDialog::_update_presets() {
|
|
void ProjectExportDialog::_update_presets() {
|
|
|
|
|
|
updating = true;
|
|
updating = true;
|
|
|
|
|
|
Ref<EditorExportPreset> current;
|
|
Ref<EditorExportPreset> current;
|
|
if (presets->get_current() >= 0 && presets->get_current() < presets->get_item_count())
|
|
if (presets->get_current() >= 0 && presets->get_current() < presets->get_item_count())
|
|
- current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ current = get_current_preset();
|
|
|
|
|
|
int current_idx = -1;
|
|
int current_idx = -1;
|
|
presets->clear();
|
|
presets->clear();
|
|
@@ -300,12 +305,33 @@ void ProjectExportDialog::_edit_preset(int p_index) {
|
|
_update_export_all();
|
|
_update_export_all();
|
|
minimum_size_changed();
|
|
minimum_size_changed();
|
|
|
|
|
|
|
|
+ int script_export_mode = current->get_script_export_mode();
|
|
|
|
+ script_mode->select(script_export_mode);
|
|
|
|
+
|
|
|
|
+ String key = current->get_script_encryption_key();
|
|
|
|
+ if (!updating_script_key) {
|
|
|
|
+ script_key->set_text(key);
|
|
|
|
+ }
|
|
|
|
+ if (script_export_mode == EditorExportPreset::MODE_SCRIPT_ENCRYPTED) {
|
|
|
|
+ script_key->set_editable(true);
|
|
|
|
+
|
|
|
|
+ bool key_valid = _validate_script_encryption_key(key);
|
|
|
|
+ if (key_valid) {
|
|
|
|
+ script_key_error->hide();
|
|
|
|
+ } else {
|
|
|
|
+ script_key_error->show();
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ script_key->set_editable(false);
|
|
|
|
+ script_key_error->hide();
|
|
|
|
+ }
|
|
|
|
+
|
|
updating = false;
|
|
updating = false;
|
|
}
|
|
}
|
|
|
|
|
|
void ProjectExportDialog::_update_feature_list() {
|
|
void ProjectExportDialog::_update_feature_list() {
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
|
|
|
|
Set<String> fset;
|
|
Set<String> fset;
|
|
@@ -342,7 +368,7 @@ void ProjectExportDialog::_custom_features_changed(const String &p_text) {
|
|
if (updating)
|
|
if (updating)
|
|
return;
|
|
return;
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
|
|
|
|
current->set_custom_features(p_text);
|
|
current->set_custom_features(p_text);
|
|
@@ -359,7 +385,7 @@ void ProjectExportDialog::_patch_button_pressed(Object *p_item, int p_column, in
|
|
|
|
|
|
patch_index = ti->get_metadata(0);
|
|
patch_index = ti->get_metadata(0);
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
|
|
|
|
if (p_id == 0) {
|
|
if (p_id == 0) {
|
|
@@ -379,7 +405,7 @@ void ProjectExportDialog::_patch_edited() {
|
|
return;
|
|
return;
|
|
int index = item->get_metadata(0);
|
|
int index = item->get_metadata(0);
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
|
|
|
|
Vector<String> patches = current->get_patches();
|
|
Vector<String> patches = current->get_patches();
|
|
@@ -397,7 +423,7 @@ void ProjectExportDialog::_patch_edited() {
|
|
|
|
|
|
void ProjectExportDialog::_patch_selected(const String &p_path) {
|
|
void ProjectExportDialog::_patch_selected(const String &p_path) {
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
|
|
|
|
Vector<String> patches = current->get_patches();
|
|
Vector<String> patches = current->get_patches();
|
|
@@ -410,25 +436,25 @@ void ProjectExportDialog::_patch_selected(const String &p_path) {
|
|
current->set_patch(patch_index, ProjectSettings::get_singleton()->get_resource_path().path_to(p_path) + enabled);
|
|
current->set_patch(patch_index, ProjectSettings::get_singleton()->get_resource_path().path_to(p_path) + enabled);
|
|
}
|
|
}
|
|
|
|
|
|
- _edit_preset(presets->get_current());
|
|
|
|
|
|
+ _update_current_preset();
|
|
}
|
|
}
|
|
|
|
|
|
void ProjectExportDialog::_patch_deleted() {
|
|
void ProjectExportDialog::_patch_deleted() {
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
|
|
|
|
Vector<String> patches = current->get_patches();
|
|
Vector<String> patches = current->get_patches();
|
|
if (patch_index < patches.size()) {
|
|
if (patch_index < patches.size()) {
|
|
|
|
|
|
current->remove_patch(patch_index);
|
|
current->remove_patch(patch_index);
|
|
- _edit_preset(presets->get_current());
|
|
|
|
|
|
+ _update_current_preset();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
void ProjectExportDialog::_update_parameters(const String &p_edited_property) {
|
|
void ProjectExportDialog::_update_parameters(const String &p_edited_property) {
|
|
|
|
|
|
- _edit_preset(presets->get_current());
|
|
|
|
|
|
+ _update_current_preset();
|
|
}
|
|
}
|
|
|
|
|
|
void ProjectExportDialog::_runnable_pressed() {
|
|
void ProjectExportDialog::_runnable_pressed() {
|
|
@@ -436,7 +462,7 @@ void ProjectExportDialog::_runnable_pressed() {
|
|
if (updating)
|
|
if (updating)
|
|
return;
|
|
return;
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
|
|
|
|
if (runnable->is_pressed()) {
|
|
if (runnable->is_pressed()) {
|
|
@@ -460,7 +486,7 @@ void ProjectExportDialog::_name_changed(const String &p_string) {
|
|
if (updating)
|
|
if (updating)
|
|
return;
|
|
return;
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
|
|
|
|
current->set_name(p_string);
|
|
current->set_name(p_string);
|
|
@@ -468,34 +494,77 @@ void ProjectExportDialog::_name_changed(const String &p_string) {
|
|
}
|
|
}
|
|
|
|
|
|
void ProjectExportDialog::set_export_path(const String &p_value) {
|
|
void ProjectExportDialog::set_export_path(const String &p_value) {
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
|
|
|
|
current->set_export_path(p_value);
|
|
current->set_export_path(p_value);
|
|
}
|
|
}
|
|
|
|
|
|
String ProjectExportDialog::get_export_path() {
|
|
String ProjectExportDialog::get_export_path() {
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND_V(current.is_null(), String(""));
|
|
ERR_FAIL_COND_V(current.is_null(), String(""));
|
|
|
|
|
|
return current->get_export_path();
|
|
return current->get_export_path();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+Ref<EditorExportPreset> ProjectExportDialog::get_current_preset() const {
|
|
|
|
+
|
|
|
|
+ return EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
+}
|
|
|
|
+
|
|
void ProjectExportDialog::_export_path_changed(const StringName &p_property, const Variant &p_value) {
|
|
void ProjectExportDialog::_export_path_changed(const StringName &p_property, const Variant &p_value) {
|
|
|
|
|
|
if (updating)
|
|
if (updating)
|
|
return;
|
|
return;
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
|
|
|
|
current->set_export_path(p_value);
|
|
current->set_export_path(p_value);
|
|
_update_presets();
|
|
_update_presets();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+void ProjectExportDialog::_script_export_mode_changed(int p_mode) {
|
|
|
|
+
|
|
|
|
+ if (updating)
|
|
|
|
+ return;
|
|
|
|
+
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
|
|
+ ERR_FAIL_COND(current.is_null());
|
|
|
|
+
|
|
|
|
+ current->set_script_export_mode(p_mode);
|
|
|
|
+
|
|
|
|
+ _update_current_preset();
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+void ProjectExportDialog::_script_encryption_key_changed(const String &p_key) {
|
|
|
|
+
|
|
|
|
+ if (updating)
|
|
|
|
+ return;
|
|
|
|
+
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
|
|
+ ERR_FAIL_COND(current.is_null());
|
|
|
|
+
|
|
|
|
+ current->set_script_encryption_key(p_key);
|
|
|
|
+
|
|
|
|
+ updating_script_key = true;
|
|
|
|
+ _update_current_preset();
|
|
|
|
+ updating_script_key = false;
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+bool ProjectExportDialog::_validate_script_encryption_key(const String &p_key) {
|
|
|
|
+
|
|
|
|
+ bool is_valid = false;
|
|
|
|
+
|
|
|
|
+ if (!p_key.empty() && p_key.is_valid_hex_number(false) && p_key.length() == 64) {
|
|
|
|
+ is_valid = true;
|
|
|
|
+ }
|
|
|
|
+ return is_valid;
|
|
|
|
+}
|
|
|
|
+
|
|
void ProjectExportDialog::_duplicate_preset() {
|
|
void ProjectExportDialog::_duplicate_preset() {
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
if (current.is_null())
|
|
if (current.is_null())
|
|
return;
|
|
return;
|
|
|
|
|
|
@@ -550,7 +619,7 @@ void ProjectExportDialog::_duplicate_preset() {
|
|
|
|
|
|
void ProjectExportDialog::_delete_preset() {
|
|
void ProjectExportDialog::_delete_preset() {
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
if (current.is_null())
|
|
if (current.is_null())
|
|
return;
|
|
return;
|
|
|
|
|
|
@@ -688,12 +757,12 @@ void ProjectExportDialog::drop_data_fw(const Point2 &p_point, const Variant &p_d
|
|
to_pos--;
|
|
to_pos--;
|
|
}
|
|
}
|
|
|
|
|
|
- Ref<EditorExportPreset> preset = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> preset = get_current_preset();
|
|
String patch = preset->get_patch(from_pos);
|
|
String patch = preset->get_patch(from_pos);
|
|
preset->remove_patch(from_pos);
|
|
preset->remove_patch(from_pos);
|
|
preset->add_patch(patch, to_pos);
|
|
preset->add_patch(patch, to_pos);
|
|
|
|
|
|
- _edit_preset(presets->get_current());
|
|
|
|
|
|
+ _update_current_preset();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -702,7 +771,7 @@ void ProjectExportDialog::_export_type_changed(int p_which) {
|
|
if (updating)
|
|
if (updating)
|
|
return;
|
|
return;
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
if (current.is_null())
|
|
if (current.is_null())
|
|
return;
|
|
return;
|
|
|
|
|
|
@@ -717,7 +786,7 @@ void ProjectExportDialog::_filter_changed(const String &p_filter) {
|
|
if (updating)
|
|
if (updating)
|
|
return;
|
|
return;
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
if (current.is_null())
|
|
if (current.is_null())
|
|
return;
|
|
return;
|
|
|
|
|
|
@@ -731,7 +800,7 @@ void ProjectExportDialog::_fill_resource_tree() {
|
|
include_label->hide();
|
|
include_label->hide();
|
|
include_margin->hide();
|
|
include_margin->hide();
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
if (current.is_null())
|
|
if (current.is_null())
|
|
return;
|
|
return;
|
|
|
|
|
|
@@ -793,7 +862,7 @@ void ProjectExportDialog::_tree_changed() {
|
|
if (updating)
|
|
if (updating)
|
|
return;
|
|
return;
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
if (current.is_null())
|
|
if (current.is_null())
|
|
return;
|
|
return;
|
|
|
|
|
|
@@ -818,7 +887,7 @@ void ProjectExportDialog::_export_pck_zip() {
|
|
|
|
|
|
void ProjectExportDialog::_export_pck_zip_selected(const String &p_path) {
|
|
void ProjectExportDialog::_export_pck_zip_selected(const String &p_path) {
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
Ref<EditorExportPlatform> platform = current->get_platform();
|
|
Ref<EditorExportPlatform> platform = current->get_platform();
|
|
ERR_FAIL_COND(platform.is_null());
|
|
ERR_FAIL_COND(platform.is_null());
|
|
@@ -857,7 +926,7 @@ void ProjectExportDialog::_validate_export_path(const String &p_path) {
|
|
|
|
|
|
void ProjectExportDialog::_export_project() {
|
|
void ProjectExportDialog::_export_project() {
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
Ref<EditorExportPlatform> platform = current->get_platform();
|
|
Ref<EditorExportPlatform> platform = current->get_platform();
|
|
ERR_FAIL_COND(platform.is_null());
|
|
ERR_FAIL_COND(platform.is_null());
|
|
@@ -895,7 +964,7 @@ void ProjectExportDialog::_export_project_to_path(const String &p_path) {
|
|
default_filename = p_path.get_file().get_basename();
|
|
default_filename = p_path.get_file().get_basename();
|
|
EditorSettings::get_singleton()->set_project_metadata("export_options", "default_filename", default_filename);
|
|
EditorSettings::get_singleton()->set_project_metadata("export_options", "default_filename", default_filename);
|
|
|
|
|
|
- Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
|
|
|
|
|
+ Ref<EditorExportPreset> current = get_current_preset();
|
|
ERR_FAIL_COND(current.is_null());
|
|
ERR_FAIL_COND(current.is_null());
|
|
Ref<EditorExportPlatform> platform = current->get_platform();
|
|
Ref<EditorExportPlatform> platform = current->get_platform();
|
|
ERR_FAIL_COND(platform.is_null());
|
|
ERR_FAIL_COND(platform.is_null());
|
|
@@ -971,6 +1040,8 @@ void ProjectExportDialog::_bind_methods() {
|
|
ClassDB::bind_method("_open_export_template_manager", &ProjectExportDialog::_open_export_template_manager);
|
|
ClassDB::bind_method("_open_export_template_manager", &ProjectExportDialog::_open_export_template_manager);
|
|
ClassDB::bind_method("_validate_export_path", &ProjectExportDialog::_validate_export_path);
|
|
ClassDB::bind_method("_validate_export_path", &ProjectExportDialog::_validate_export_path);
|
|
ClassDB::bind_method("_export_path_changed", &ProjectExportDialog::_export_path_changed);
|
|
ClassDB::bind_method("_export_path_changed", &ProjectExportDialog::_export_path_changed);
|
|
|
|
+ ClassDB::bind_method("_script_export_mode_changed", &ProjectExportDialog::_script_export_mode_changed);
|
|
|
|
+ ClassDB::bind_method("_script_encryption_key_changed", &ProjectExportDialog::_script_encryption_key_changed);
|
|
ClassDB::bind_method("_export_project", &ProjectExportDialog::_export_project);
|
|
ClassDB::bind_method("_export_project", &ProjectExportDialog::_export_project);
|
|
ClassDB::bind_method("_export_project_to_path", &ProjectExportDialog::_export_project_to_path);
|
|
ClassDB::bind_method("_export_project_to_path", &ProjectExportDialog::_export_project_to_path);
|
|
ClassDB::bind_method("_export_all", &ProjectExportDialog::_export_all);
|
|
ClassDB::bind_method("_export_all", &ProjectExportDialog::_export_all);
|
|
@@ -980,6 +1051,7 @@ void ProjectExportDialog::_bind_methods() {
|
|
ClassDB::bind_method("_tab_changed", &ProjectExportDialog::_tab_changed);
|
|
ClassDB::bind_method("_tab_changed", &ProjectExportDialog::_tab_changed);
|
|
ClassDB::bind_method("set_export_path", &ProjectExportDialog::set_export_path);
|
|
ClassDB::bind_method("set_export_path", &ProjectExportDialog::set_export_path);
|
|
ClassDB::bind_method("get_export_path", &ProjectExportDialog::get_export_path);
|
|
ClassDB::bind_method("get_export_path", &ProjectExportDialog::get_export_path);
|
|
|
|
+ ClassDB::bind_method("get_current_preset", &ProjectExportDialog::get_current_preset);
|
|
|
|
|
|
ADD_PROPERTY(PropertyInfo(Variant::STRING, "export_path"), "set_export_path", "get_export_path");
|
|
ADD_PROPERTY(PropertyInfo(Variant::STRING, "export_path"), "set_export_path", "get_export_path");
|
|
}
|
|
}
|
|
@@ -1127,6 +1199,25 @@ ProjectExportDialog::ProjectExportDialog() {
|
|
feature_vb->add_margin_child(TTR("Feature List:"), features_panel, true);
|
|
feature_vb->add_margin_child(TTR("Feature List:"), features_panel, true);
|
|
sections->add_child(feature_vb);
|
|
sections->add_child(feature_vb);
|
|
|
|
|
|
|
|
+ updating_script_key = false;
|
|
|
|
+
|
|
|
|
+ VBoxContainer *script_vb = memnew(VBoxContainer);
|
|
|
|
+ script_vb->set_name(TTR("Script"));
|
|
|
|
+ script_mode = memnew(OptionButton);
|
|
|
|
+ script_vb->add_margin_child(TTR("Script Export Mode:"), script_mode);
|
|
|
|
+ script_mode->add_item(TTR("Text"), (int)EditorExportPreset::MODE_SCRIPT_TEXT);
|
|
|
|
+ script_mode->add_item(TTR("Compiled"), (int)EditorExportPreset::MODE_SCRIPT_COMPILED);
|
|
|
|
+ script_mode->add_item(TTR("Encrypted (Provide Key Below)"), (int)EditorExportPreset::MODE_SCRIPT_ENCRYPTED);
|
|
|
|
+ script_mode->connect("item_selected", this, "_script_export_mode_changed");
|
|
|
|
+ script_key = memnew(LineEdit);
|
|
|
|
+ script_key->connect("text_changed", this, "_script_encryption_key_changed");
|
|
|
|
+ script_key_error = memnew(Label);
|
|
|
|
+ script_key_error->set_text("- " + TTR("Invalid Encryption Key (must be 64 characters long)"));
|
|
|
|
+ script_key_error->add_color_override("font_color", EditorNode::get_singleton()->get_gui_base()->get_color("error_color", "Editor"));
|
|
|
|
+ script_vb->add_margin_child(TTR("Script Encryption Key (256-bits as hex):"), script_key);
|
|
|
|
+ script_vb->add_child(script_key_error);
|
|
|
|
+ sections->add_child(script_vb);
|
|
|
|
+
|
|
sections->connect("tab_changed", this, "_tab_changed");
|
|
sections->connect("tab_changed", this, "_tab_changed");
|
|
|
|
|
|
//disable by default
|
|
//disable by default
|
|
@@ -1135,6 +1226,7 @@ ProjectExportDialog::ProjectExportDialog() {
|
|
runnable->set_disabled(true);
|
|
runnable->set_disabled(true);
|
|
duplicate_preset->set_disabled(true);
|
|
duplicate_preset->set_disabled(true);
|
|
delete_preset->set_disabled(true);
|
|
delete_preset->set_disabled(true);
|
|
|
|
+ script_key_error->hide();
|
|
sections->hide();
|
|
sections->hide();
|
|
parameters->edit(NULL);
|
|
parameters->edit(NULL);
|
|
|
|
|