| 726 | } |
| 727 | |
| 728 | cc_result Window_SaveFileDialog(const struct SaveFileDialogArgs* args) { |
| 729 | const char* const* titles = args->titles; |
| 730 | const char* const* fileExts = args->filters; |
| 731 | cc_string filters; char buffer[NATIVE_STR_LEN]; |
| 732 | int i; |
| 733 | |
| 734 | /* Filter tokens are \0 separated - e.g. "Map (*.cw)\0*.cw\0 */ |
| 735 | String_InitArray(filters, buffer); |
| 736 | for (i = 0; fileExts[i]; i++) |
| 737 | { |
| 738 | String_Format2(&filters, "%c (*%c)", titles[i], fileExts[i]); |
| 739 | String_Append(&filters, '\0'); |
| 740 | String_Format1(&filters, "*%c", fileExts[i]); |
| 741 | String_Append(&filters, '\0'); |
| 742 | } |
| 743 | return OpenSaveFileDialog(&filters, args->Callback, false, fileExts, &args->defaultName); |
| 744 | } |
| 745 | |
| 746 | static HDC draw_DC; |
| 747 | static HBITMAP draw_DIB; |
nothing calls this directly
no test coverage detected