diff options
author | Juan Linietsky <reduz@Juans-MBP.fibertel.com.ar> | 2016-05-30 00:28:29 -0300 |
---|---|---|
committer | Juan Linietsky <reduz@Juans-MBP.fibertel.com.ar> | 2016-05-30 00:28:29 -0300 |
commit | 9b1f8230ec435d9289b53afa8da02367daf8b5af (patch) | |
tree | caa9383d77d9865cfa8e41c0ca0e74318d2d9365 /tools/editor | |
parent | c7d24b7814b335fb9503f6a957ac5923a47da161 (diff) |
-Some fixes to OSX retina scaling for window functions
-Implemented HiDPI detection and support for Godot Editor!
Diffstat (limited to 'tools/editor')
23 files changed, 107 insertions, 67 deletions
diff --git a/tools/editor/editor_file_dialog.cpp b/tools/editor/editor_file_dialog.cpp index b9d4949018..185ec17459 100644 --- a/tools/editor/editor_file_dialog.cpp +++ b/tools/editor/editor_file_dialog.cpp @@ -7,7 +7,7 @@ #include "editor_settings.h" #include "scene/gui/margin_container.h" #include "os/file_access.h" - +#include "editor_scale.h" EditorFileDialog::GetIconFunc EditorFileDialog::get_icon_func=NULL; EditorFileDialog::GetIconFunc EditorFileDialog::get_large_icon_func=NULL; @@ -347,7 +347,7 @@ void EditorFileDialog::_action_pressed() { if (!valid) { - exterr->popup_centered_minsize(Size2(250,80)); + exterr->popup_centered_minsize(Size2(250,80)*EDSCALE); return; } @@ -431,6 +431,7 @@ void EditorFileDialog::update_file_list() { int thumbnail_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size"); + thumbnail_size*=EDSCALE; Ref<Texture> folder_thumbnail; Ref<Texture> file_thumbnail; @@ -840,7 +841,7 @@ void EditorFileDialog::_make_dir_confirm() { _push_history(); } else { - mkdirerr->popup_centered_minsize(Size2(250,50)); + mkdirerr->popup_centered_minsize(Size2(250,50)*EDSCALE); } makedirname->set_text(""); // reset label } @@ -848,7 +849,7 @@ void EditorFileDialog::_make_dir_confirm() { void EditorFileDialog::_make_dir() { - makedialog->popup_centered_minsize(Size2(250,80)); + makedialog->popup_centered_minsize(Size2(250,80)*EDSCALE); makedirname->grab_focus(); } diff --git a/tools/editor/editor_fonts.cpp b/tools/editor/editor_fonts.cpp index e04dce294a..da947748a4 100644 --- a/tools/editor/editor_fonts.cpp +++ b/tools/editor/editor_fonts.cpp @@ -33,6 +33,8 @@ #include "builtin_fonts.h" #include "editor_settings.h" #include "scene/resources/dynamic_font.h" +#include "editor_scale.h" +#include "scene/resources/default_theme/default_theme.h" static Ref<BitmapFont> make_font(int p_height,int p_ascent, int p_valign, int p_charcount, const int *p_chars,const Ref<Texture> &p_texture) { @@ -67,6 +69,7 @@ static Ref<BitmapFont> make_font(int p_height,int p_ascent, int p_valign, int p_ void editor_register_fonts(Ref<Theme> p_theme) { + Ref<DynamicFontData> dfd; dfd.instance(); dfd->set_font_ptr(_font_droid_sans,_font_droid_sans_size); @@ -79,7 +82,7 @@ void editor_register_fonts(Ref<Theme> p_theme) { Ref<DynamicFont> df; df.instance(); - df->set_size(int(EditorSettings::get_singleton()->get("global/font_size"))); + df->set_size(int(EditorSettings::get_singleton()->get("global/font_size"))*EDSCALE); df->set_font_data(dfd); @@ -91,12 +94,12 @@ void editor_register_fonts(Ref<Theme> p_theme) { Ref<DynamicFont> df_title; df_title.instance(); - df_title->set_size(int(EDITOR_DEF("help/help_title_font_size",18))); + df_title->set_size(int(EDITOR_DEF("help/help_title_font_size",18))*EDSCALE); df_title->set_font_data(dfd); Ref<DynamicFont> df_doc; df_doc.instance(); - df_doc->set_size(int(EDITOR_DEF("help/help_font_size",16))); + df_doc->set_size(int(EDITOR_DEF("help/help_font_size",16))*EDSCALE); df_doc->set_font_data(dfd); p_theme->set_font("doc","EditorFonts",df_doc); @@ -105,16 +108,25 @@ void editor_register_fonts(Ref<Theme> p_theme) { Ref<DynamicFont> df_code; df_code.instance(); - df_code->set_size(int(EditorSettings::get_singleton()->get("global/source_font_size"))); + df_code->set_size(int(EditorSettings::get_singleton()->get("global/source_font_size"))*EDSCALE); df_code->set_font_data(dfmono); p_theme->set_font("source","EditorFonts",df_code); Ref<DynamicFont> df_doc_code; df_doc_code.instance(); - df_doc_code->set_size(int(EDITOR_DEF("help/help_source_font_size",14))); + df_doc_code->set_size(int(EDITOR_DEF("help/help_source_font_size",14))*EDSCALE); df_doc_code->set_font_data(dfmono); + p_theme->set_font("doc_source","EditorFonts",df_doc_code); + if (editor_is_hidpi()) { + //replace default theme + Ref<Texture> di; + Ref<StyleBox> ds; + fill_default_theme(p_theme,df,df_doc,di,ds,true); + + } + } diff --git a/tools/editor/editor_node.cpp b/tools/editor/editor_node.cpp index 8313e38f02..1a050e5981 100644 --- a/tools/editor/editor_node.cpp +++ b/tools/editor/editor_node.cpp @@ -984,6 +984,7 @@ void EditorNode::_save_scene_with_preview(String p_file) { save.step(TTR("Creating Thumbnail"),3); Image img = VS::get_singleton()->viewport_get_screen_capture(viewport); int preview_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size");; + preview_size*=EDSCALE; int width,height; if (img.get_width() > preview_size && img.get_width() >= img.get_height()) { @@ -2389,7 +2390,7 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { confirmation->get_ok()->set_text(TTR("Quit")); //confirmation->get_cancel()->show(); confirmation->set_text(TTR("Exit the editor?")); - confirmation->popup_centered(Size2(180,70)); + confirmation->popup_centered(Size2(180,70)*EDSCALE); break; } @@ -2826,7 +2827,7 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { } break; case SETTINGS_ABOUT: { - about->popup_centered(Size2(500,130)); + about->popup_centered(Size2(500,130)*EDSCALE); } break; case SOURCES_REIMPORT: { @@ -5381,7 +5382,7 @@ EditorNode::EditorNode() { dock_vb->add_child(dock_hb); dock_select = memnew( Control ); - dock_select->set_custom_minimum_size(Size2(128,64)); + dock_select->set_custom_minimum_size(Size2(128,64)*EDSCALE); dock_select->connect("input_event",this,"_dock_select_input"); dock_select->connect("draw",this,"_dock_select_draw"); dock_select->connect("mouse_exit",this,"_dock_popup_exit"); @@ -5396,7 +5397,7 @@ EditorNode::EditorNode() { //dock_select_popoup->set_(Size2(20,20)); for(int i=0;i<DOCK_SLOT_MAX;i++) { - dock_slot[i]->set_custom_minimum_size(Size2(230,220)); + dock_slot[i]->set_custom_minimum_size(Size2(230,220)*EDSCALE); dock_slot[i]->set_v_size_flags(Control::SIZE_EXPAND_FILL); dock_slot[i]->set_popup(dock_select_popoup); dock_slot[i]->connect("pre_popup_pressed",this,"_dock_pre_popup",varray(i)); @@ -5436,7 +5437,7 @@ EditorNode::EditorNode() { srt->add_child(scene_tabs); scene_root_parent = memnew( PanelContainer ); - scene_root_parent->set_custom_minimum_size(Size2(0,80)); + scene_root_parent->set_custom_minimum_size(Size2(0,80)*EDSCALE); //Ref<StyleBox> sp = scene_root_parent->get_stylebox("panel","TabContainer"); @@ -5553,7 +5554,7 @@ EditorNode::EditorNode() { { Control *sp = memnew( Control ); - sp->set_custom_minimum_size(Size2(30,0)); + sp->set_custom_minimum_size(Size2(30,0)*EDSCALE); menu_hb->add_child(sp); } @@ -5742,7 +5743,7 @@ EditorNode::EditorNode() { { Control *sp = memnew( Control ); - sp->set_custom_minimum_size(Size2(30,0)); + sp->set_custom_minimum_size(Size2(30,0)*EDSCALE); menu_hb->add_child(sp); } @@ -5764,7 +5765,7 @@ EditorNode::EditorNode() { { Control *sp = memnew( Control ); - sp->set_custom_minimum_size(Size2(30,0)); + sp->set_custom_minimum_size(Size2(30,0)*EDSCALE); menu_hb->add_child(sp); } @@ -5800,7 +5801,7 @@ EditorNode::EditorNode() { layout_dialog = memnew( EditorNameDialog ); gui_base->add_child(layout_dialog); layout_dialog->set_hide_on_ok(false); - layout_dialog->set_size(Size2(175, 70)); + layout_dialog->set_size(Size2(175, 70)*EDSCALE); layout_dialog->connect("name_confirmed", this,"_dialog_action"); sources_button = memnew( ToolButton ); diff --git a/tools/editor/editor_node.h b/tools/editor/editor_node.h index db589bb1c3..e580931df3 100644 --- a/tools/editor/editor_node.h +++ b/tools/editor/editor_node.h @@ -85,6 +85,7 @@ #include "progress_dialog.h" +#include "editor_scale.h" /** @author Juan Linietsky <reduzio@gmail.com> */ diff --git a/tools/editor/editor_resource_preview.cpp b/tools/editor/editor_resource_preview.cpp index d31cf9e0fd..13b424c231 100644 --- a/tools/editor/editor_resource_preview.cpp +++ b/tools/editor/editor_resource_preview.cpp @@ -4,7 +4,7 @@ #include "io/resource_loader.h" #include "io/resource_saver.h" #include "globals.h" - +#include "editor_scale.h" Ref<Texture> EditorResourcePreviewGenerator::generate_from_path(const String& p_path) { @@ -91,6 +91,7 @@ Ref<Texture> EditorResourcePreview::_generate_preview(const QueueItem& p_item,co if (generated.is_valid()) { //print_line("was generated"); int thumbnail_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size"); + thumbnail_size*=EDSCALE; //wow it generated a preview... save cache ResourceSaver::save(cache_base+".png",generated); FileAccess *f=FileAccess::open(cache_base+".txt",FileAccess::WRITE); @@ -132,6 +133,7 @@ void EditorResourcePreview::_thread() { uint64_t modtime = FileAccess::get_modified_time(item.path); int thumbnail_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size"); + thumbnail_size*=EDSCALE; if (cache.has(item.path)) { //already has it because someone loaded it, just let it know it's ready diff --git a/tools/editor/editor_scale.cpp b/tools/editor/editor_scale.cpp new file mode 100644 index 0000000000..ecb1e1816f --- /dev/null +++ b/tools/editor/editor_scale.cpp @@ -0,0 +1,7 @@ +#include "editor_scale.h" +#include "os/os.h" + +bool editor_is_hidpi() { + + return OS::get_singleton()->get_screen_dpi(0) > 150; +} diff --git a/tools/editor/editor_scale.h b/tools/editor/editor_scale.h new file mode 100644 index 0000000000..0f0e90595c --- /dev/null +++ b/tools/editor/editor_scale.h @@ -0,0 +1,8 @@ +#ifndef EDITOR_SCALE_H +#define EDITOR_SCALE_H + + +bool editor_is_hidpi(); + +#define EDSCALE (editor_is_hidpi() ? 2 : 1) +#endif // EDITOR_SCALE_H diff --git a/tools/editor/icons/SCsub b/tools/editor/icons/SCsub index 14d2be66f6..f3216b092d 100644 --- a/tools/editor/icons/SCsub +++ b/tools/editor/icons/SCsub @@ -11,6 +11,7 @@ def make_editor_icons_action(target, source, env): s = cStringIO.StringIO() s.write("#include \"editor_icons.h\"\n\n") + s.write("#include \"editor_scale.h\"\n\n") s.write("#include \"scene/resources/theme.h\"\n\n") for x in pixmaps: @@ -36,7 +37,7 @@ def make_editor_icons_action(target, source, env): s.write("static Ref<ImageTexture> make_icon(const uint8_t* p_png) {\n") s.write("\tRef<ImageTexture> texture( memnew( ImageTexture ) );\n") s.write("\tImage img(p_png);\n") - #s.write("\timg.expand_x2_hq2x();\n") + s.write("\tif (editor_is_hidpi()) img.expand_x2_hq2x();\n") s.write("\ttexture->create_from_image( img,ImageTexture::FLAG_FILTER );\n") s.write("\treturn texture;\n") s.write("}\n\n") diff --git a/tools/editor/io_plugins/editor_font_import_plugin.cpp b/tools/editor/io_plugins/editor_font_import_plugin.cpp index f4d6af7e10..d5e6e3077e 100644 --- a/tools/editor/io_plugins/editor_font_import_plugin.cpp +++ b/tools/editor/io_plugins/editor_font_import_plugin.cpp @@ -510,13 +510,13 @@ class EditorFontImportDialog : public ConfirmationDialog { if (source->get_line_edit()->get_text()=="") { error_dialog->set_text(TTR("No source font file!")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } if (dest->get_line_edit()->get_text()=="") { error_dialog->set_text(TTR("No target font resource!")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -528,7 +528,7 @@ class EditorFontImportDialog : public ConfirmationDialog { if (rimd.is_null()) { error_dialog->set_text(TTR("Can't load/process source font.")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -536,7 +536,7 @@ class EditorFontImportDialog : public ConfirmationDialog { if (err!=OK) { error_dialog->set_text(TTR("Couldn't save font.")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -573,7 +573,7 @@ public: void popup_import(const String& p_path) { - popup_centered(Size2(600,500)); + popup_centered(Size2(600,500)*EDSCALE); if (p_path!="") { diff --git a/tools/editor/io_plugins/editor_mesh_import_plugin.cpp b/tools/editor/io_plugins/editor_mesh_import_plugin.cpp index 45da42969c..c20515f0f3 100644 --- a/tools/editor/io_plugins/editor_mesh_import_plugin.cpp +++ b/tools/editor/io_plugins/editor_mesh_import_plugin.cpp @@ -173,7 +173,7 @@ public: void popup_import(const String& p_path) { - popup_centered(Size2(400,400)); + popup_centered(Size2(400,400)*EDSCALE); if (p_path!="") { diff --git a/tools/editor/io_plugins/editor_sample_import_plugin.cpp b/tools/editor/io_plugins/editor_sample_import_plugin.cpp index 120bdc6f44..ac0795f522 100644 --- a/tools/editor/io_plugins/editor_sample_import_plugin.cpp +++ b/tools/editor/io_plugins/editor_sample_import_plugin.cpp @@ -221,7 +221,7 @@ public: void popup_import(const String& p_path) { - popup_centered(Size2(400,400)); + popup_centered(Size2(400,400)*EDSCALE); if (p_path!="") { Ref<ResourceImportMetadata> rimd = ResourceLoader::load_import_metadata(p_path); @@ -252,7 +252,7 @@ public: if (samples.size()==0) { error_dialog->set_text(TTR("No samples to import!")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); } if (save_path->get_text().strip_edges()=="") { @@ -293,7 +293,7 @@ public: String dst = save_path->get_text(); if (dst=="") { error_dialog->set_text(TTR("Save path is empty!")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); } dst = dst.plus_file(samples[i].get_file().basename()+".smp"); diff --git a/tools/editor/io_plugins/editor_scene_import_plugin.cpp b/tools/editor/io_plugins/editor_scene_import_plugin.cpp index 3effb1d0aa..41dfb748fc 100644 --- a/tools/editor/io_plugins/editor_scene_import_plugin.cpp +++ b/tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -674,7 +674,7 @@ void EditorSceneImportDialog::_open_and_import() { if (unsaved) { - confirm_open->popup_centered_minsize(Size2(300,80)); + confirm_open->popup_centered_minsize(Size2(300,80)*EDSCALE); } else { _import(true); } @@ -735,7 +735,7 @@ void EditorSceneImportDialog::_import(bool p_and_open) { Ref<Script> scr = ResourceLoader::load(script_path->get_text()); if (!scr.is_valid()) { error_dialog->set_text(TTR("Couldn't load post-import script.")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -744,7 +744,7 @@ void EditorSceneImportDialog::_import(bool p_and_open) { if (!pi->get_script_instance()) { error_dialog->set_text(TTR("Invalid/broken script for post-import.")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -788,7 +788,7 @@ void EditorSceneImportDialog::_import(bool p_and_open) { if (err || !scene) { error_dialog->set_text(TTR("Error importing scene.")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -813,7 +813,7 @@ void EditorSceneImportDialog::_import(bool p_and_open) { if (err) { error_dialog->set_text(TTR("Error importing scene.")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } if (wip_open) @@ -857,7 +857,7 @@ void EditorSceneImportDialog::_import_confirm() { wip_save_file=""; error_dialog->set_text(TTR("Error importing scene.")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -892,7 +892,7 @@ void EditorSceneImportDialog::_browse_script() { void EditorSceneImportDialog::popup_import(const String &p_from) { - popup_centered(Size2(750,550)); + popup_centered(Size2(750,550)*EDSCALE); if (p_from!="") { Ref<ResourceImportMetadata> rimd = ResourceLoader::load_import_metadata(p_from); if (rimd.is_null()) diff --git a/tools/editor/io_plugins/editor_texture_import_plugin.cpp b/tools/editor/io_plugins/editor_texture_import_plugin.cpp index 2376f3a395..21e7ee36bb 100644 --- a/tools/editor/io_plugins/editor_texture_import_plugin.cpp +++ b/tools/editor/io_plugins/editor_texture_import_plugin.cpp @@ -352,7 +352,7 @@ void EditorTextureImportDialog::_import() { if (!files.size()) { error_dialog->set_text(TTR("Please specify some files!")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -382,7 +382,7 @@ void EditorTextureImportDialog::_import() { if (files.size()==0) { error_dialog->set_text(TTR("At least one file needed for Atlas.")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -406,7 +406,7 @@ void EditorTextureImportDialog::_import() { if (err) { error_dialog->set_text(TTR("Error importing:")+" "+dst_file.get_file()); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -415,7 +415,7 @@ void EditorTextureImportDialog::_import() { if (files.size()!=1) { error_dialog->set_text(TTR("Only one file is required for large texture.")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -439,7 +439,7 @@ void EditorTextureImportDialog::_import() { if (err) { error_dialog->set_text(TTR("Error importing:")+" "+dst_file.get_file()); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -464,7 +464,7 @@ void EditorTextureImportDialog::_import() { if (err) { error_dialog->set_text(TTR("Error importing:")+" "+dst_file.get_file()); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -492,7 +492,7 @@ void EditorTextureImportDialog::_browse_target() { void EditorTextureImportDialog::popup_import(const String& p_from) { - popup_centered(Size2(600,500)); + popup_centered(Size2(600,500)*EDSCALE); if (p_from!="") { Ref<ResourceImportMetadata> rimd = ResourceLoader::load_import_metadata(p_from); ERR_FAIL_COND(!rimd.is_valid()); diff --git a/tools/editor/io_plugins/editor_translation_import_plugin.cpp b/tools/editor/io_plugins/editor_translation_import_plugin.cpp index 2b5bd29ac8..aa36fefdb7 100644 --- a/tools/editor/io_plugins/editor_translation_import_plugin.cpp +++ b/tools/editor/io_plugins/editor_translation_import_plugin.cpp @@ -65,7 +65,7 @@ public: if (!f) { error_dialog->set_text(TTR("Invalid source!")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -76,7 +76,7 @@ public: if (csvh.size()<2) { error_dialog->set_text(TTR("Invalid translation source!")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); return; } @@ -171,7 +171,7 @@ public: void popup_import(const String& p_from) { - popup_centered(Size2(400,400)); + popup_centered(Size2(400,400)*EDSCALE); if (p_from!="") { @@ -232,12 +232,12 @@ public: if (items.size()==0) { error_dialog->set_text(TTR("No items to import!")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); } if (!save_path->get_text().begins_with("res://")) { error_dialog->set_text(TTR("No target path!")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); } EditorProgress progress("import_xl",TTR("Import Translations"),items.size()); @@ -259,7 +259,7 @@ public: Error err = plugin->import(savefile,imd); if (err!=OK) { error_dialog->set_text(TTR("Couldn't import!")); - error_dialog->popup_centered(Size2(200,100)); + error_dialog->popup_centered(Size2(200,100)*EDSCALE); } else if (add_to_project->is_pressed()) { ProjectSettings::get_singleton()->add_translation(savefile); diff --git a/tools/editor/plugins/editor_preview_plugins.cpp b/tools/editor/plugins/editor_preview_plugins.cpp index 12d50cd4b8..300e35f94d 100644 --- a/tools/editor/plugins/editor_preview_plugins.cpp +++ b/tools/editor/plugins/editor_preview_plugins.cpp @@ -7,7 +7,7 @@ #include "scene/resources/sample.h" #include "scene/resources/mesh.h" #include "scene/resources/bit_mask.h" - +#include "tools/editor/editor_scale.h" bool EditorTexturePreviewPlugin::handles(const String& p_type) const { return (ObjectTypeDB::is_type(p_type,"ImageTexture") || ObjectTypeDB::is_type(p_type, "AtlasTexture")); @@ -36,6 +36,7 @@ Ref<Texture> EditorTexturePreviewPlugin::generate(const RES& p_from) { img.clear_mipmaps(); int thumbnail_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size"); + thumbnail_size*=EDSCALE; if (img.is_compressed()) { if (img.decompress()!=OK) return Ref<Texture>(); @@ -111,6 +112,7 @@ Ref<Texture> EditorBitmapPreviewPlugin::generate(const RES& p_from) { Image img(bm->get_size().width,bm->get_size().height,0,Image::FORMAT_GRAYSCALE,data); int thumbnail_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size"); + thumbnail_size*=EDSCALE; if (img.is_compressed()) { if (img.decompress()!=OK) return Ref<Texture>(); @@ -233,6 +235,7 @@ Ref<Texture> EditorMaterialPreviewPlugin::generate(const RES& p_from) { VS::get_singleton()->mesh_surface_set_material(sphere,0,RID()); int thumbnail_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size"); + thumbnail_size*=EDSCALE; img.resize(thumbnail_size,thumbnail_size); Ref<ImageTexture> ptex = Ref<ImageTexture>( memnew( ImageTexture )); @@ -401,6 +404,7 @@ Ref<Texture> EditorScriptPreviewPlugin::generate(const RES& p_from) { int line = 0; int col=0; int thumbnail_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size"); + thumbnail_size*=EDSCALE; Image img(thumbnail_size,thumbnail_size,0,Image::FORMAT_RGBA); @@ -501,7 +505,7 @@ Ref<Texture> EditorSamplePreviewPlugin::generate(const RES& p_from) { int thumbnail_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size"); - + thumbnail_size*=EDSCALE; DVector<uint8_t> img; int w = thumbnail_size; int h = thumbnail_size; @@ -815,6 +819,7 @@ Ref<Texture> EditorMeshPreviewPlugin::generate(const RES& p_from) { VS::get_singleton()->instance_set_base(mesh_instance,RID()); int thumbnail_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size"); + thumbnail_size*=EDSCALE; img.resize(thumbnail_size,thumbnail_size); Ref<ImageTexture> ptex = Ref<ImageTexture>( memnew( ImageTexture )); diff --git a/tools/editor/plugins/material_editor_plugin.cpp b/tools/editor/plugins/material_editor_plugin.cpp index 4ef2815a32..f4258836e5 100644 --- a/tools/editor/plugins/material_editor_plugin.cpp +++ b/tools/editor/plugins/material_editor_plugin.cpp @@ -294,7 +294,7 @@ MaterialEditor::MaterialEditor() { } - set_custom_minimum_size(Size2(1,150)); + set_custom_minimum_size(Size2(1,150)*EDSCALE); HBoxContainer *hb = memnew( HBoxContainer ); add_child(hb); diff --git a/tools/editor/plugins/mesh_editor_plugin.cpp b/tools/editor/plugins/mesh_editor_plugin.cpp index ecf17fec19..51a436e58d 100644 --- a/tools/editor/plugins/mesh_editor_plugin.cpp +++ b/tools/editor/plugins/mesh_editor_plugin.cpp @@ -141,7 +141,7 @@ MeshEditor::MeshEditor() { - set_custom_minimum_size(Size2(1,150)); + set_custom_minimum_size(Size2(1,150)*EDSCALE); HBoxContainer *hb = memnew( HBoxContainer ); add_child(hb); diff --git a/tools/editor/plugins/sample_editor_plugin.cpp b/tools/editor/plugins/sample_editor_plugin.cpp index f9217e47fa..a3891a648b 100644 --- a/tools/editor/plugins/sample_editor_plugin.cpp +++ b/tools/editor/plugins/sample_editor_plugin.cpp @@ -404,7 +404,7 @@ SampleEditor::SampleEditor() { play->connect("pressed", this,"_play_pressed"); stop->connect("pressed", this,"_stop_pressed"); - set_custom_minimum_size(Size2(1,150)); + set_custom_minimum_size(Size2(1,150)*EDSCALE); } diff --git a/tools/editor/plugins/script_editor_plugin.cpp b/tools/editor/plugins/script_editor_plugin.cpp index 6d87777a79..2453ff3190 100644 --- a/tools/editor/plugins/script_editor_plugin.cpp +++ b/tools/editor/plugins/script_editor_plugin.cpp @@ -978,7 +978,7 @@ void ScriptEditor::_menu_option(int p_option) { switch(p_option) { case FILE_NEW: { script_create_dialog->config("Node", ".gd"); - script_create_dialog->popup_centered(Size2(300, 300)); + script_create_dialog->popup_centered(Size2(300, 300)*EDSCALE); } break; case FILE_OPEN: { @@ -1100,7 +1100,7 @@ void ScriptEditor::_menu_option(int p_option) { switch(p_option) { case FILE_NEW: { script_create_dialog->config("Node", ".gd"); - script_create_dialog->popup_centered(Size2(300, 300)); + script_create_dialog->popup_centered(Size2(300, 300)*EDSCALE); } break; case FILE_SAVE: { diff --git a/tools/editor/progress_dialog.cpp b/tools/editor/progress_dialog.cpp index 2814101a27..a950f7acfc 100644 --- a/tools/editor/progress_dialog.cpp +++ b/tools/editor/progress_dialog.cpp @@ -30,7 +30,7 @@ #include "main/main.h" #include "message_queue.h" #include "os/os.h" - +#include "editor_scale.h" void BackgroundProgress::_add_task(const String& p_task,const String& p_label, int p_steps) { _THREAD_SAFE_METHOD_ @@ -48,7 +48,7 @@ void BackgroundProgress::_add_task(const String& p_task,const String& p_label, i ec->set_v_size_flags(SIZE_EXPAND_FILL); t.progress->set_area_as_parent_rect(); ec->add_child(t.progress); - ec->set_custom_minimum_size(Size2(80,5)); + ec->set_custom_minimum_size(Size2(80,5)*EDSCALE); t.hb->add_child(ec); add_child(t.hb); @@ -160,7 +160,7 @@ void ProgressDialog::_notification(int p_what) { void ProgressDialog::_popup() { Size2 ms = main->get_combined_minimum_size(); - ms.width = MAX(500,ms.width); + ms.width = MAX(500*EDSCALE,ms.width); Ref<StyleBox> style = get_stylebox("panel","PopupMenu"); diff --git a/tools/editor/property_editor.cpp b/tools/editor/property_editor.cpp index ddbaad5ea1..3258bc6d74 100644 --- a/tools/editor/property_editor.cpp +++ b/tools/editor/property_editor.cpp @@ -306,14 +306,14 @@ bool CustomPropertyEditor::edit(Object* p_owner,const String& p_name,Variant::Ty slider->set_step((type==Variant::REAL) ? step : 1); slider->set_val(v); slider->show(); - set_size(Size2(110,30)); + set_size(Size2(110,30)*EDSCALE); } else { spinbox->set_min(min); spinbox->set_max(max); spinbox->set_step((type==Variant::REAL) ? step : 1); spinbox->set_val(v); spinbox->show(); - set_size(Size2(70,35)); + set_size(Size2(70,35)*EDSCALE); } @@ -339,7 +339,7 @@ bool CustomPropertyEditor::edit(Object* p_owner,const String& p_name,Variant::Ty } - set_size(checks20[19]->get_pos()+Size2(20,25)); + set_size(checks20[19]->get_pos()+Size2(20,25)*EDSCALE); } else if (hint==PROPERTY_HINT_EXP_EASING) { @@ -365,7 +365,7 @@ bool CustomPropertyEditor::edit(Object* p_owner,const String& p_name,Variant::Ty type_button->show(); easing_draw->show(); - set_size(Size2(200,150)); + set_size(Size2(200,150)*EDSCALE); } else if (hint==PROPERTY_HINT_FLAGS) { menu->clear(); Vector<String> flags = hint_text.split(","); @@ -600,7 +600,7 @@ bool CustomPropertyEditor::edit(Object* p_owner,const String& p_name,Variant::Ty color_picker->show(); color_picker->set_edit_alpha(hint!=PROPERTY_HINT_COLOR_NO_ALPHA); color_picker->set_color(v); - set_size( Size2(300, color_picker->get_combined_minimum_size().height+10)); + set_size( Size2(300*EDSCALE, color_picker->get_combined_minimum_size().height+10*EDSCALE)); /* int ofs=80; int m=10; @@ -4286,7 +4286,7 @@ PropertyEditor *SectionedPropertyEditor::get_property_editor() { SectionedPropertyEditor::SectionedPropertyEditor() { VBoxContainer *left_vb = memnew( VBoxContainer); - left_vb->set_custom_minimum_size(Size2(160,0)); + left_vb->set_custom_minimum_size(Size2(160,0)*EDSCALE); add_child(left_vb); sections = memnew( ItemList ); diff --git a/tools/editor/scenes_dock.cpp b/tools/editor/scenes_dock.cpp index a814dc2d9a..2ac439491d 100644 --- a/tools/editor/scenes_dock.cpp +++ b/tools/editor/scenes_dock.cpp @@ -441,6 +441,7 @@ void ScenesDock::_update_files(bool p_keep_selection) { return; int thumbnail_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size"); + thumbnail_size*=EDSCALE; Ref<Texture> folder_thumbnail; Ref<Texture> file_thumbnail; @@ -454,6 +455,7 @@ void ScenesDock::_update_files(bool p_keep_selection) { files->set_fixed_column_width(thumbnail_size*3/2); files->set_max_text_lines(2); files->set_min_icon_size(Size2(thumbnail_size,thumbnail_size)); + files->set_max_icon_size(Size2(thumbnail_size,thumbnail_size)); if (!has_icon("ResizedFolder","EditorIcons")) { Ref<ImageTexture> folder = get_icon("FolderBig","EditorIcons"); @@ -1693,7 +1695,7 @@ ScenesDock::ScenesDock(EditorNode *p_editor) { tree->set_hide_root(true); split_box->add_child(tree); - tree->set_custom_minimum_size(Size2(0,200)); + tree->set_custom_minimum_size(Size2(0,200)*EDSCALE); tree->set_drag_forwarding(this); diff --git a/tools/editor/script_editor_debugger.cpp b/tools/editor/script_editor_debugger.cpp index bd01e62158..cbc5b44542 100644 --- a/tools/editor/script_editor_debugger.cpp +++ b/tools/editor/script_editor_debugger.cpp @@ -1892,7 +1892,7 @@ ScriptEditorDebugger::ScriptEditorDebugger(EditorNode *p_editor){ vmem_hb->add_child( memnew(Label(TTR("Total:")+" ")) ); vmem_total = memnew( LineEdit ); vmem_total->set_editable(false); - vmem_total->set_custom_minimum_size(Size2(100,1)); + vmem_total->set_custom_minimum_size(Size2(100,1)*EDSCALE); vmem_hb->add_child(vmem_total); vmem_refresh = memnew( Button ); vmem_hb->add_child(vmem_refresh); |