فهرست منبع

File path in save dialog automatically appended with correct extension if not manually added by the user.

Nathan Warden 10 سال پیش
والد
کامیت
7d2f359a0c
1فایلهای تغییر یافته به همراه8 افزوده شده و 1 حذف شده
  1. 8 1
      scene/gui/file_dialog.cpp

+ 8 - 1
scene/gui/file_dialog.cpp

@@ -184,7 +184,8 @@ void FileDialog::_action_pressed() {
 			if (idx>=0 && idx<filters.size()) {
 
 				String flt=filters[idx].get_slice(";",0);
-				for (int j=0;j<flt.get_slice_count(",");j++) {
+				int filterSliceCount=flt.get_slice_count(",");
+				for (int j=0;j<filterSliceCount;j++) {
 
 					String str = (flt.get_slice(",",j).strip_edges());
 					if (f.match(str)) {
@@ -192,6 +193,12 @@ void FileDialog::_action_pressed() {
 						break;
 					}
 				}
+
+				if (!valid && filterSliceCount>0) {
+					String str = (flt.get_slice(",",0).strip_edges());
+					f+=str.substr(1, str.length()-1);
+					valid=true;
+				}
 			} else {
 				valid=true;
 			}