diff options
Diffstat (limited to 'chrome/browser/extensions/theme_preview_infobar_delegate.h')
-rw-r--r-- | chrome/browser/extensions/theme_preview_infobar_delegate.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/chrome/browser/extensions/theme_preview_infobar_delegate.h b/chrome/browser/extensions/theme_preview_infobar_delegate.h new file mode 100644 index 0000000..fdffe07 --- /dev/null +++ b/chrome/browser/extensions/theme_preview_infobar_delegate.h @@ -0,0 +1,41 @@ +// Copyright (c) 2009 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_VIEWS_EXTENSIONS_THEME_PREVIEW_INFOBAR_DELEGATE_H_ +#define CHROME_BROWSER_VIEWS_EXTENSIONS_THEME_PREVIEW_INFOBAR_DELEGATE_H_ + +#include "chrome/browser/tab_contents/infobar_delegate.h" + +class SkBitmap; +class TabContents; + +// When a user installs a theme, we display it immediately, but provide an +// infobar allowing them to cancel. +// +// TODO(aa): Rename this to ThemeInstalledInfoBarDelegate, since it isn't +// used for previewing anymore. +class ThemePreviewInfobarDelegate : public ConfirmInfoBarDelegate { + public: + ThemePreviewInfobarDelegate(TabContents* tab_contents, + const std::string& name, + const std::string& previous_theme); + virtual void InfoBarClosed(); + virtual std::wstring GetMessageText() const; + virtual SkBitmap* GetIcon() const; + virtual ThemePreviewInfobarDelegate* AsThemePreviewInfobarDelegate(); + virtual int GetButtons() const; + virtual std::wstring GetButtonLabel( + ConfirmInfoBarDelegate::InfoBarButton button) const; + virtual bool Cancel(); + + protected: + Profile* profile() { return profile_; } + + private: + Profile* profile_; + std::string name_; // name of theme to install + std::string previous_theme_id_; // used to undo theme install +}; + +#endif // CHROME_BROWSER_VIEWS_EXTENSIONS_THEME_PREVIEW_INFOBAR_DELEGATE_H_ |