save_file_dialog.h
1/*
2** ClanLib SDK
3** Copyright (c) 1997-2020 The ClanLib Team
4**
5** This software is provided 'as-is', without any express or implied
6** warranty. In no event will the authors be held liable for any damages
7** arising from the use of this software.
8**
9** Permission is granted to anyone to use this software for any purpose,
10** including commercial applications, and to alter it and redistribute it
11** freely, subject to the following restrictions:
12**
13** 1. The origin of this software must not be misrepresented; you must not
14** claim that you wrote the original software. If you use this software
15** in a product, an acknowledgment in the product documentation would be
16** appreciated but is not required.
17** 2. Altered source versions must be plainly marked as such, and must not be
18** misrepresented as being the original software.
19** 3. This notice may not be removed or altered from any source distribution.
20**
21** Note: Some of the libraries ClanLib may link to may have additional
22** requirements or restrictions.
23**
24** File Author(s):
25**
26** Kenneth Gangstoe
27*/
28
29#pragma once
30
31#include <memory>
32#include <string>
33#include <vector>
34
35namespace clan
36{
37 class View;
38 class FileDialogImpl;
39
42 {
43 public:
46
48 std::string filename() const;
49
51 void set_filename(const std::string &filename);
52
54 void add_filter(const std::string &filter_description, const std::string &filter_extension, bool is_default = false);
55
58
60 void set_filter_index(int filter_index);
61
63 void set_initial_directory(const std::string &path);
64
66 void set_title(const std::string &title);
67
70 bool show();
71
72 private:
73 std::shared_ptr<FileDialogImpl> impl;
74 };
75}
Displays the system save file dialog.
Definition: save_file_dialog.h:42
SaveFileDialog(View *owner)
Constructs a save file dialog.
void set_title(const std::string &title)
Sets the text that appears in the title bar.
void clear_filters()
Clears all filters.
std::string filename() const
Get the full path of the file selected.
void add_filter(const std::string &filter_description, const std::string &filter_extension, bool is_default=false)
Add a filter that determines what types of files are displayed.
void set_filter_index(int filter_index)
Sets a default filter, on a 0-based index.
void set_filename(const std::string &filename)
Sets a string containing the full path of the file selected.
void set_initial_directory(const std::string &path)
Sets the initial directory that is displayed.
bool show()
Shows the file dialog.
View for an area of the user interface.
Definition: view.h:66
Definition: clanapp.h:36