Skip to content

Commit 73921e0

Browse files
committed
add: show encryption key toggle
1 parent 6a6a116 commit 73921e0

File tree

2 files changed

+19
-0
lines changed

2 files changed

+19
-0
lines changed

editor/export/project_export.cpp

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -391,6 +391,7 @@ void ProjectExportDialog::_edit_preset(int p_index) {
391391
enc_in_filters->set_editable(enc_pck_mode);
392392
enc_ex_filters->set_editable(enc_pck_mode);
393393
script_key->set_editable(enc_pck_mode);
394+
show_script_key->set_disabled(!enc_pck_mode);
394395
seed_input->set_editable(enc_pck_mode);
395396

396397
bool enc_directory_mode = current->get_enc_directory();
@@ -593,6 +594,11 @@ void ProjectExportDialog::_enc_pck_changed(bool p_pressed) {
593594
enc_in_filters->set_editable(p_pressed);
594595
enc_ex_filters->set_editable(p_pressed);
595596
script_key->set_editable(p_pressed);
597+
show_script_key->set_disabled(!p_pressed);
598+
if(!p_pressed){
599+
show_script_key->set_pressed_no_signal(false);
600+
script_key->set_secret(true);
601+
}
596602

597603
_update_current_preset();
598604
}
@@ -640,6 +646,10 @@ void ProjectExportDialog::_script_encryption_key_changed(const String &p_key) {
640646
updating_script_key = false;
641647
}
642648

649+
void ProjectExportDialog::_script_encryption_key_visibility_changed(const bool &p_visible) {
650+
script_key->set_secret(!p_visible);
651+
}
652+
643653
bool ProjectExportDialog::_validate_script_encryption_key(const String &p_key) {
644654
bool is_valid = false;
645655

@@ -1695,11 +1705,18 @@ ProjectExportDialog::ProjectExportDialog() {
16951705
script_key = memnew(LineEdit);
16961706
script_key->set_accessibility_name(TTRC("Encryption Key"));
16971707
script_key->connect(SceneStringName(text_changed), callable_mp(this, &ProjectExportDialog::_script_encryption_key_changed));
1708+
script_key->set_secret(true);
1709+
1710+
show_script_key = memnew(CheckButton);
1711+
show_script_key->set_text("Show Encryption Key");
1712+
show_script_key->connect(SceneStringName(toggled), callable_mp(this, &ProjectExportDialog::_script_encryption_key_visibility_changed));
1713+
16981714
script_key_error = memnew(Label);
16991715
script_key_error->set_focus_mode(Control::FOCUS_ACCESSIBILITY);
17001716
script_key_error->set_text(String::utf8("") + TTR("Invalid Encryption Key (must be 64 hexadecimal characters long)"));
17011717
script_key_error->add_theme_color_override(SceneStringName(font_color), EditorNode::get_singleton()->get_editor_theme()->get_color(SNAME("error_color"), EditorStringName(Editor)));
17021718
sec_vb->add_margin_child(TTR("Encryption Key (256-bits as hexadecimal):"), script_key);
1719+
sec_vb->add_child(show_script_key);
17031720
sec_vb->add_child(script_key_error);
17041721
sections->add_child(sec_scroll_container);
17051722

editor/export/project_export.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ class ProjectExportDialog : public ConfirmationDialog {
115115
RichTextLabel *custom_feature_display = nullptr;
116116

117117
LineEdit *script_key = nullptr;
118+
CheckButton *show_script_key = nullptr;
118119
Label *script_key_error = nullptr;
119120

120121
ProjectExportTextureFormatError *export_texture_format_error = nullptr;
@@ -198,6 +199,7 @@ class ProjectExportDialog : public ConfirmationDialog {
198199
void _enc_filters_changed(const String &p_text);
199200
void _seed_input_changed(const String &p_text);
200201
void _script_encryption_key_changed(const String &p_key);
202+
void _script_encryption_key_visibility_changed(const bool &p_visible);
201203
bool _validate_script_encryption_key(const String &p_key);
202204

203205
void _script_export_mode_changed(int p_mode);

0 commit comments

Comments
 (0)