Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Side by Side Diff: ui/shell_dialogs/select_file_dialog.h

Issue 12079097: Introduce PrefRegistrySyncable, simplifying PrefServiceSyncable. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add to PrefRegistrySyncable and PrefServiceSyncable to let sync know of pre-registered prefs. Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« net/base/mime_util.h ('K') | « net/base/mime_util.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef UI_SHELL_DIALOGS_SELECT_FILE_DIALOG_H_ 5 #ifndef UI_SHELL_DIALOGS_SELECT_FILE_DIALOG_H_
6 #define UI_SHELL_DIALOGS_SELECT_FILE_DIALOG_H_ 6 #define UI_SHELL_DIALOGS_SELECT_FILE_DIALOG_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
99 struct SHELL_DIALOGS_EXPORT FileTypeInfo { 99 struct SHELL_DIALOGS_EXPORT FileTypeInfo {
100 FileTypeInfo(); 100 FileTypeInfo();
101 ~FileTypeInfo(); 101 ~FileTypeInfo();
102 102
103 // A list of allowed extensions. For example, it might be 103 // A list of allowed extensions. For example, it might be
104 // 104 //
105 // { { "htm", "html" }, { "txt" } } 105 // { { "htm", "html" }, { "txt" } }
106 // 106 //
107 // Only pass more than one extension in the inner vector if the extensions 107 // Only pass more than one extension in the inner vector if the extensions
108 // are equivalent. Do NOT include leading periods. 108 // are equivalent. Do NOT include leading periods.
109 std::vector<std::vector<FilePath::StringType> > extensions; 109 std::vector<std::vector<base::FilePath::StringType> > extensions;
Mattias Nissler (ping if slow) 2013/02/06 17:53:33 unrelated changes?
Jói 2013/02/07 14:52:32 Yes, as in pref_member.h. Removed.
110 110
111 // Overrides the system descriptions of the specified extensions. Entries 111 // Overrides the system descriptions of the specified extensions. Entries
112 // correspond to |extensions|; if left blank the system descriptions will 112 // correspond to |extensions|; if left blank the system descriptions will
113 // be used. 113 // be used.
114 std::vector<string16> extension_description_overrides; 114 std::vector<string16> extension_description_overrides;
115 115
116 // Specifies whether there will be a filter added for all files (i.e. *.*). 116 // Specifies whether there will be a filter added for all files (i.e. *.*).
117 bool include_all_files; 117 bool include_all_files;
118 118
119 // Specifies whether the caller can support files/folders that are on 119 // Specifies whether the caller can support files/folders that are on
(...skipping 26 matching lines...) Expand all
146 // modeless dialog. 146 // modeless dialog.
147 // |params| is data from the calling context which will be passed through to 147 // |params| is data from the calling context which will be passed through to
148 // the listener. Can be NULL. 148 // the listener. Can be NULL.
149 // NOTE: only one instance of any shell dialog can be shown per owning_window 149 // NOTE: only one instance of any shell dialog can be shown per owning_window
150 // at a time (for obvious reasons). 150 // at a time (for obvious reasons).
151 void SelectFile(Type type, 151 void SelectFile(Type type,
152 const string16& title, 152 const string16& title,
153 const FilePath& default_path, 153 const FilePath& default_path,
154 const FileTypeInfo* file_types, 154 const FileTypeInfo* file_types,
155 int file_type_index, 155 int file_type_index,
156 const FilePath::StringType& default_extension, 156 const base::FilePath::StringType& default_extension,
157 gfx::NativeWindow owning_window, 157 gfx::NativeWindow owning_window,
158 void* params); 158 void* params);
159 bool HasMultipleFileTypeChoices(); 159 bool HasMultipleFileTypeChoices();
160 160
161 // Sets the global ShellDialogsDelegate. Defaults to NULL. 161 // Sets the global ShellDialogsDelegate. Defaults to NULL.
162 static void SetShellDialogsDelegate(ShellDialogsDelegate* delegate); 162 static void SetShellDialogsDelegate(ShellDialogsDelegate* delegate);
163 163
164 protected: 164 protected:
165 friend class base::RefCountedThreadSafe<SelectFileDialog>; 165 friend class base::RefCountedThreadSafe<SelectFileDialog>;
166 explicit SelectFileDialog(Listener* listener, 166 explicit SelectFileDialog(Listener* listener,
167 ui::SelectFilePolicy* policy); 167 ui::SelectFilePolicy* policy);
168 virtual ~SelectFileDialog(); 168 virtual ~SelectFileDialog();
169 169
170 // Displays the actual file-selection dialog. 170 // Displays the actual file-selection dialog.
171 // This is overridden in the platform-specific descendants of FileSelectDialog 171 // This is overridden in the platform-specific descendants of FileSelectDialog
172 // and gets called from SelectFile after testing the 172 // and gets called from SelectFile after testing the
173 // AllowFileSelectionDialogs-Policy. 173 // AllowFileSelectionDialogs-Policy.
174 virtual void SelectFileImpl(Type type, 174 virtual void SelectFileImpl(
175 const string16& title, 175 Type type,
176 const FilePath& default_path, 176 const string16& title,
177 const FileTypeInfo* file_types, 177 const FilePath& default_path,
178 int file_type_index, 178 const FileTypeInfo* file_types,
179 const FilePath::StringType& default_extension, 179 int file_type_index,
180 gfx::NativeWindow owning_window, 180 const base::FilePath::StringType& default_extension,
181 void* params) = 0; 181 gfx::NativeWindow owning_window,
182 void* params) = 0;
182 183
183 // Returns the global ShellDialogsDelegate instance if any. 184 // Returns the global ShellDialogsDelegate instance if any.
184 ShellDialogsDelegate* GetShellDialogsDelegate(); 185 ShellDialogsDelegate* GetShellDialogsDelegate();
185 186
186 // The listener to be notified of selection completion. 187 // The listener to be notified of selection completion.
187 Listener* listener_; 188 Listener* listener_;
188 189
189 private: 190 private:
190 // Tests if the file selection dialog can be displayed by 191 // Tests if the file selection dialog can be displayed by
191 // testing if the AllowFileSelectionDialogs-Policy is 192 // testing if the AllowFileSelectionDialogs-Policy is
192 // either unset or set to true. 193 // either unset or set to true.
193 bool CanOpenSelectFileDialog(); 194 bool CanOpenSelectFileDialog();
194 195
195 // Informs the |listener_| that the file selection dialog was canceled. Moved 196 // Informs the |listener_| that the file selection dialog was canceled. Moved
196 // to a function for being able to post it to the message loop. 197 // to a function for being able to post it to the message loop.
197 void CancelFileSelection(void* params); 198 void CancelFileSelection(void* params);
198 199
199 // Returns true if the dialog has multiple file type choices. 200 // Returns true if the dialog has multiple file type choices.
200 virtual bool HasMultipleFileTypeChoicesImpl() = 0; 201 virtual bool HasMultipleFileTypeChoicesImpl() = 0;
201 202
202 scoped_ptr<ui::SelectFilePolicy> select_file_policy_; 203 scoped_ptr<ui::SelectFilePolicy> select_file_policy_;
203 204
204 DISALLOW_COPY_AND_ASSIGN(SelectFileDialog); 205 DISALLOW_COPY_AND_ASSIGN(SelectFileDialog);
205 }; 206 };
206 207
207 } // namespace ui 208 } // namespace ui
208 209
209 #endif // UI_SHELL_DIALOGS_SELECT_FILE_DIALOG_H_ 210 #endif // UI_SHELL_DIALOGS_SELECT_FILE_DIALOG_H_
210 211
OLDNEW
« net/base/mime_util.h ('K') | « net/base/mime_util.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698