diff options
author | ben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-17 01:44:36 +0000 |
---|---|---|
committer | ben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-17 01:44:36 +0000 |
commit | 0e8588c1528cad6732d172775aba8e891baebdef (patch) | |
tree | a854c8ecdd0ab23cd4e6f9d9b2af94cbcaba12cb /chrome/views/window_delegate.h | |
parent | 72c83ac9e7acbb70ab987ed81d03c5f6a47d203b (diff) | |
download | chromium_src-0e8588c1528cad6732d172775aba8e891baebdef.zip chromium_src-0e8588c1528cad6732d172775aba8e891baebdef.tar.gz chromium_src-0e8588c1528cad6732d172775aba8e891baebdef.tar.bz2 |
Move windowing related objects into chrome/views/window subdir.
TBR=sky
Review URL: http://codereview.chromium.org/42272
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11819 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/views/window_delegate.h')
-rw-r--r-- | chrome/views/window_delegate.h | 162 |
1 files changed, 0 insertions, 162 deletions
diff --git a/chrome/views/window_delegate.h b/chrome/views/window_delegate.h deleted file mode 100644 index 985ed60..0000000 --- a/chrome/views/window_delegate.h +++ /dev/null @@ -1,162 +0,0 @@ -// Copyright (c) 2006-2008 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_VIEWS_WINDOW_DELEGATE_H_ -#define CHROME_VIEWS_WINDOW_DELEGATE_H_ - -#include <string> - -#include "base/scoped_ptr.h" - -class SkBitmap; - -namespace gfx { -class Rect; -} -// TODO(maruel): Remove once gfx::Rect is used instead. -namespace WTL { -class CRect; -} -using WTL::CRect; - -namespace views { - -class ClientView; -class DialogDelegate; -class View; -class Window; - -/////////////////////////////////////////////////////////////////////////////// -// -// WindowDelegate -// -// WindowDelegate is an interface implemented by objects that wish to show a -// Window. The window that is displayed uses this interface to determine how -// it should be displayed and notify the delegate object of certain events. -// -/////////////////////////////////////////////////////////////////////////////// -class WindowDelegate { - public: - WindowDelegate(); - virtual ~WindowDelegate(); - - virtual DialogDelegate* AsDialogDelegate() { return NULL; } - - // Returns true if the window can ever be resized. - virtual bool CanResize() const { - return false; - } - - // Returns true if the window can ever be maximized. - virtual bool CanMaximize() const { - return false; - } - - // Returns true if the window should be placed on top of all other windows on - // the system, even when it is not active. If HasAlwaysOnTopMenu() returns - // true, then this method is only used the first time the window is opened, it - // is stored in the preferences for next runs. - virtual bool IsAlwaysOnTop() const { - return false; - } - - // Returns whether an "always on top" menu should be added to the system menu - // of the window. - virtual bool HasAlwaysOnTopMenu() const { - return false; - } - - // Returns true if the dialog should be displayed modally to the window that - // opened it. Only windows with WindowType == DIALOG can be modal. - virtual bool IsModal() const { - return false; - } - - // Returns the text to be displayed in the window title. - virtual std::wstring GetWindowTitle() const { - return L""; - } - - // Returns the view that should have the focus when the dialog is opened. If - // NULL no view is focused. - virtual View* GetInitiallyFocusedView() { return NULL; } - - // Returns true if the window should show a title in the title bar. - virtual bool ShouldShowWindowTitle() const { - return true; - } - - // Returns the icon to be displayed in the window. - virtual SkBitmap GetWindowIcon(); - - // Returns true if a window icon should be shown. - virtual bool ShouldShowWindowIcon() const { - return false; - } - - // Execute a command in the window's controller. Returns true if the command - // was handled, false if it was not. - virtual bool ExecuteWindowsCommand(int command_id) { return false; } - - // Returns the window's name identifier. Used to identify this window for - // state restoration. - virtual std::wstring GetWindowName() const { - return std::wstring(); - } - - // Saves the window's bounds, maximized and always-on-top states. By default - // this uses the process' local state keyed by window name (See GetWindowName - // above). This behavior can be overridden to provide additional - // functionality. - virtual void SaveWindowPlacement(const gfx::Rect& bounds, - bool maximized, - bool always_on_top); - - // Retrieves the window's bounds, maximized and always-on-top states. By - // default, this uses the process' local state keyed by window name (See - // GetWindowName above). This behavior can be overridden to provide - // additional functionality. - virtual bool GetSavedWindowBounds(gfx::Rect* bounds) const; - virtual bool GetSavedMaximizedState(bool* maximized) const; - virtual bool GetSavedAlwaysOnTopState(bool* always_on_top) const; - - // Called when the window closes. - virtual void WindowClosing() { } - - // Called when the window is destroyed. No events must be sent or received - // after this point. The delegate can use this opportunity to delete itself at - // this time if necessary. - virtual void DeleteDelegate() { } - - // Returns the View that is contained within this Window. - virtual View* GetContentsView() { - return NULL; - } - - // Called by the Window to create the Client View used to host the contents - // of the window. - virtual ClientView* CreateClientView(Window* window); - - // An accessor to the Window this delegate is bound to. - Window* window() const { return window_.get(); } - - protected: - // Releases the Window* we maintain. This should be done by a delegate in its - // WindowClosing handler if it intends to be re-cycled to be used on a - // different Window. - void ReleaseWindow(); - - private: - friend class WindowWin; - // This is a little unusual. We use a scoped_ptr here because it's - // initialized to NULL automatically. We do this because we want to allow - // people using this helper to not have to call a ctor on this object. - // Instead we just release the owning ref this pointer has when we are - // destroyed. - scoped_ptr<Window> window_; -}; - -} // namespace views - -#endif // CHROME_VIEWS_WINDOW_DELEGATE_H_ |