| // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROME_BROWSER_UI_PROFILE_ERROR_DIALOG_H_ |
| #define CHROME_BROWSER_UI_PROFILE_ERROR_DIALOG_H_ |
| |
| #include <string> |
| |
| // Be very careful while modifying this enum. Do NOT remove any elements from |
| // this enum. If you need to add one, add them to the end, right before END. |
| // END should ALWAYS be the last element in this enum. This is important because |
| // this enum is used to back a histogram, and these are implicit assumptions |
| // made in terms of how enumerated histograms are defined. |
| enum class ProfileErrorType { |
| HISTORY, |
| PREFERENCES, |
| DB_AUTOFILL_WEB_DATA, |
| DB_TOKEN_WEB_DATA, |
| DB_WEB_DATA, |
| DB_KEYWORD_WEB_DATA, |
| CREATE_FAILURE_SPECIFIED, |
| CREATE_FAILURE_ALL, |
| DB_PAYMENT_MANIFEST_WEB_DATA, |
| DB_ACCOUNT_AUTOFILL_WEB_DATA, |
| END |
| }; |
| |
| // Shows an error dialog corresponding to the inability to open some portion of |
| // the profile. |
| // The ProfileErrorType |type| needs to correspond to one of the profile error |
| // types in the enum above. If your use case doesn't fit any of the ones listed |
| // above, please add your type to the enum and modify the enum definition in |
| // tools/metrics/histograms/histograms.xml accordingly. |
| // |message_id| is a string id corresponding to the message to show. |
| // |diagnostics| contains diagnostic information about the database file that |
| // might have caused a profile error. |
| void ShowProfileErrorDialog(ProfileErrorType type, |
| int message_id, |
| const std::string& diagnostics); |
| |
| #endif // CHROME_BROWSER_UI_PROFILE_ERROR_DIALOG_H_ |