summaryrefslogtreecommitdiffstats
path: root/chromium/ash/system/tray/tray_item_view.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/ash/system/tray/tray_item_view.h')
-rw-r--r--chromium/ash/system/tray/tray_item_view.h85
1 files changed, 0 insertions, 85 deletions
diff --git a/chromium/ash/system/tray/tray_item_view.h b/chromium/ash/system/tray/tray_item_view.h
deleted file mode 100644
index 761e918791c..00000000000
--- a/chromium/ash/system/tray/tray_item_view.h
+++ /dev/null
@@ -1,85 +0,0 @@
-// Copyright (c) 2012 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 ASH_SYSTEM_TRAY_TRAY_ITEM_VIEW_H_
-#define ASH_SYSTEM_TRAY_TRAY_ITEM_VIEW_H_
-
-#include "ash/ash_export.h"
-#include "ui/gfx/animation/animation_delegate.h"
-#include "ui/views/view.h"
-
-namespace gfx {
-class SlideAnimation;
-}
-
-namespace views {
-class ImageView;
-class Label;
-}
-
-namespace ash {
-
-class SystemTrayItem;
-
-namespace internal {
-
-// Base-class for items in the tray. It makes sure the widget is updated
-// correctly when the visibility/size of the tray item changes. It also adds
-// animation when showing/hiding the item in the tray.
-class ASH_EXPORT TrayItemView : public views::View,
- public gfx::AnimationDelegate {
- public:
- explicit TrayItemView(SystemTrayItem* owner);
- virtual ~TrayItemView();
-
- static void DisableAnimationsForTest();
-
- // Convenience function for creating a child Label or ImageView.
- void CreateLabel();
- void CreateImageView();
-
- SystemTrayItem* owner() const { return owner_; }
- views::Label* label() const { return label_; }
- views::ImageView* image_view() const { return image_view_; }
-
- // Overridden from views::View.
- virtual void SetVisible(bool visible) OVERRIDE;
- virtual gfx::Size GetPreferredSize() OVERRIDE;
- virtual int GetHeightForWidth(int width) OVERRIDE;
-
- protected:
- // Makes sure the widget relayouts after the size/visibility of the view
- // changes.
- void ApplyChange();
-
- // This should return the desired size of the view. For most views, this
- // returns GetPreferredSize. But since this class overrides GetPreferredSize
- // for animation purposes, we allow a different way to get this size, and do
- // not allow GetPreferredSize to be overridden.
- virtual gfx::Size DesiredSize();
-
- // The default animation duration is 200ms. But each view can customize this.
- virtual int GetAnimationDurationMS();
-
- private:
- // Overridden from views::View.
- virtual void ChildPreferredSizeChanged(View* child) OVERRIDE;
-
- // Overridden from gfx::AnimationDelegate.
- virtual void AnimationProgressed(const gfx::Animation* animation) OVERRIDE;
- virtual void AnimationEnded(const gfx::Animation* animation) OVERRIDE;
- virtual void AnimationCanceled(const gfx::Animation* animation) OVERRIDE;
-
- SystemTrayItem* owner_;
- scoped_ptr<gfx::SlideAnimation> animation_;
- views::Label* label_;
- views::ImageView* image_view_;
-
- DISALLOW_COPY_AND_ASSIGN(TrayItemView);
-};
-
-} // namespace internal
-} // namespace ash
-
-#endif // ASH_SYSTEM_TRAY_TRAY_ITEM_VIEW_H_