Add ICU message format support
[chromium-blink-merge.git] / ios / public / provider / chrome / browser / string_provider.h
blobbf4b8b826be124e8dcdf472a4cc9a7176ae71e0a
1 // Copyright 2013 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.
5 #ifndef IOS_PUBLIC_PROVIDER_CHROME_BROWSER_STRING_PROVIDER_H_
6 #define IOS_PUBLIC_PROVIDER_CHROME_BROWSER_STRING_PROVIDER_H_
8 #include <string>
10 #include "base/strings/string16.h"
12 namespace ios {
14 // A class that provides access to localized strings defined in
15 // src/ios_internal/ from code that lives in src/chrome/browser/ but has not
16 // been moved upstream yet.
18 // Situations where forked code needs access to downstream strings should be
19 // temporary and methods should be removed when either
20 // 1) the code is moved to upstream (in which case the strings should also be
21 // moved to upstream into src/grit/generated_resources.grd), or
22 // 2) the downstream implementation changes to match upstream so the string
23 // is no longer necessary.
24 class StringProvider {
25 public:
26 StringProvider() {}
27 virtual ~StringProvider() {}
29 // Returns the string to display in the omnibox context menu for the user to
30 // copy the URL for the current search query into the pasteboard.
31 virtual std::string GetOmniboxCopyUrlString() = 0;
33 // Returns the resource IDs for the strings that are used in the Apple flags
34 // page (i.e., chrome://ui-alternatives).
35 virtual int GetAppleFlagsTableTitleID() = 0;
36 virtual int GetAppleFlagsNoExperimentsAvailableID() = 0;
38 // Return the strings used to display spoofing attempt errors.
39 virtual base::string16 GetSpoofingInterstitialTitle() = 0;
40 virtual base::string16 GetSpoofingInterstitialHeadline() = 0;
41 virtual base::string16 GetSpoofingInterstitialMessage() = 0;
42 virtual base::string16 GetSpoofingInterstitialDetails() = 0;
43 virtual base::string16 GetSpoofingInterstitialFailure() = 0;
45 // Return the resource IDs used to display unsafe port errors.
46 virtual int GetUnsafePortTitleID() = 0;
47 virtual int GetUnsafePortHeadlineID() = 0;
48 virtual int GetUnsafePortMessageID() = 0;
49 virtual int GetUnsafePortDetailsID() = 0;
51 // Returns a generic "Done" string.
52 virtual base::string16 GetDoneString() = 0;
53 // Returns a generic "OK" string.
54 virtual base::string16 GetOKString() = 0;
55 // Returns the product name (e.g. "Google Chrome").
56 virtual base::string16 GetProductName() = 0;
59 } // namespace ios
61 #endif // IOS_PUBLIC_PROVIDER_CHROME_BROWSER_STRING_PROVIDER_H_