1// Copyright (c) 2011 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_UI_PROFILE_ERROR_DIALOG_H_
6#define CHROME_BROWSER_UI_PROFILE_ERROR_DIALOG_H_
7
8// Be very careful while modifying this enum. Do NOT remove any elements from
9// this enum. If you need to add one, add them to the end, right before
10// PROFILE_ERROR_END. PROFILE_ERROR_END should ALWAYS be the last element in
11// this enum. This is important because this enum is used to back a histogram,
12// and these are implicit assumptions made in terms of how enumerated
13// histograms are defined.
14enum ProfileErrorType {
15  PROFILE_ERROR_HISTORY,
16  PROFILE_ERROR_PREFERENCES,
17  PROFILE_ERROR_DB_AUTOFILL_WEB_DATA,
18  PROFILE_ERROR_DB_TOKEN_WEB_DATA,
19  PROFILE_ERROR_DB_WEB_DATA,
20  PROFILE_ERROR_DB_KEYWORD_WEB_DATA,
21  PROFILE_ERROR_END
22};
23
24// Shows an error dialog corresponding to the inability to open some portion of
25// the profile. |message_id| is a string id corresponding to the message to
26// show. The ProfileErrorType needs to correspond to one of the profile error
27// types in the enum above. If your use case doesn't fit any of the ones listed
28// above, please add your type to the enum and modify the enum
29// definition in tools/metrics/histograms/histograms.xml accordingly.
30void ShowProfileErrorDialog(ProfileErrorType type, int message_id);
31
32#endif  // CHROME_BROWSER_UI_PROFILE_ERROR_DIALOG_H_
33