save_file_dialog.h Source File - ClanLib SDK
Description: save_file_dialog.h Source File

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
41 class SaveFileDialog
42 {
43 public:
45 SaveFileDialog(View *owner);
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
57 void clear_filters();
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}
clan::SaveFileDialog::SaveFileDialog
SaveFileDialog(View *owner)
Constructs a save file dialog.
clan::SaveFileDialog::set_title
void set_title(const std::string &title)
Sets the text that appears in the title bar.
clan::SaveFileDialog::clear_filters
void clear_filters()
Clears all filters.
clan::SaveFileDialog::filename
std::string filename() const
Get the full path of the file selected.
clan::SaveFileDialog::add_filter
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.
clan::SaveFileDialog::set_filter_index
void set_filter_index(int filter_index)
Sets a default filter, on a 0-based index.
clan::SaveFileDialog::set_filename
void set_filename(const std::string &filename)
Sets a string containing the full path of the file selected.
clan::SaveFileDialog::set_initial_directory
void set_initial_directory(const std::string &path)
Sets the initial directory that is displayed.
clan::SaveFileDialog::show
bool show()
Shows the file dialog.
clan::View
View for an area of the user interface.
Definition view.h:66
clan::StandardProgram::path
@ path
Definition graphic_context.h:243
clan
Definition clanapp.h:36