summaryrefslogtreecommitdiffstats
path: root/chromium/ui/views/controls/native_control.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/ui/views/controls/native_control.h')
-rw-r--r--chromium/ui/views/controls/native_control.h126
1 files changed, 0 insertions, 126 deletions
diff --git a/chromium/ui/views/controls/native_control.h b/chromium/ui/views/controls/native_control.h
deleted file mode 100644
index 80aa5887cf1..00000000000
--- a/chromium/ui/views/controls/native_control.h
+++ /dev/null
@@ -1,126 +0,0 @@
-// Copyright (c) 2011 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 UI_VIEWS_CONTROLS_NATIVE_CONTROL_H_
-#define UI_VIEWS_CONTROLS_NATIVE_CONTROL_H_
-
-#include <windows.h>
-
-#include "ui/events/keycodes/keyboard_codes.h"
-#include "ui/views/view.h"
-
-namespace views {
-
-class NativeViewHost;
-class NativeControlContainer;
-
-////////////////////////////////////////////////////////////////////////////////
-//
-// NativeControl is an abstract view that is used to implement views wrapping
-// native controls. Subclasses can simply implement CreateNativeControl() to
-// wrap a new kind of control
-//
-////////////////////////////////////////////////////////////////////////////////
-class VIEWS_EXPORT NativeControl : public View {
- public:
- enum Alignment {
- LEADING = 0,
- CENTER,
- TRAILING };
-
- NativeControl();
- virtual ~NativeControl();
-
- virtual void ViewHierarchyChanged(
- const ViewHierarchyChangedDetails& details) OVERRIDE;
- virtual void Layout();
-
- // Overridden to properly set the native control state.
- virtual void SetVisible(bool f);
- virtual void OnEnabledChanged();
-
- // Overridden to do nothing.
- virtual void OnPaint(gfx::Canvas* canvas);
-
- protected:
- friend class NativeControlContainer;
-
- // Overridden by sub-classes to create the windows control which is wrapped
- virtual HWND CreateNativeControl(HWND parent_container) = 0;
-
- // Invoked when the native control sends a WM_NOTIFY message to its parent
- virtual LRESULT OnNotify(int w_param, LPNMHDR l_param) = 0;
-
- // Invoked when the native control sends a WM_COMMAND message to its parent
- virtual LRESULT OnCommand(UINT code, int id, HWND source) { return 0; }
-
- // Invoked when the appropriate gesture for a context menu is issued.
- virtual void OnContextMenu(const POINT& location);
-
- // Overridden so to set the native focus to the native control.
- virtual void OnFocus();
-
- // Invoked when the native control sends a WM_DESTORY message to its parent.
- virtual void OnDestroy() { }
-
- // Return the native control
- virtual HWND GetNativeControlHWND();
-
- // Invoked by the native windows control when it has been destroyed. This is
- // invoked AFTER WM_DESTORY has been sent. Any window commands send to the
- // HWND will most likely fail.
- void NativeControlDestroyed();
-
- // Overridden so that the control properly reflects parent's visibility.
- virtual void VisibilityChanged(View* starting_from, bool is_visible);
-
- // Controls that have fixed sizes should call these methods to specify the
- // actual size and how they should be aligned within their parent.
- void SetFixedWidth(int width, Alignment alignment);
- void SetFixedHeight(int height, Alignment alignment);
-
- // Invoked when a key is pressed on the control.
- // Should return true if the key message was processed, false otherwise.
- virtual bool OnKeyDown(ui::KeyboardCode virtual_key_code) { return false; }
-
- // Returns additional extended style flags. When subclasses call
- // CreateWindowEx in order to create the underlying control, they must OR the
- // ExStyle parameter with the value returned by this function.
- //
- // We currently use this method in order to add flags such as WS_EX_LAYOUTRTL
- // to the HWND for views with right-to-left UI layout.
- DWORD GetAdditionalExStyle() const;
-
- // TODO(xji): we use the following temporary function as we transition the
- // various native controls to use the right set of RTL flags. This function
- // will go away (and be replaced by GetAdditionalExStyle()) once all the
- // controls are properly transitioned.
- DWORD GetAdditionalRTLStyle() const;
-
- // This variable is protected to provide subclassers direct access. However
- // subclassers should always check for NULL since this variable is only
- // initialized in ValidateNativeControl().
- NativeViewHost* hwnd_view_;
-
- // Fixed size information. -1 for a size means no fixed size.
- int fixed_width_;
- Alignment horizontal_alignment_;
- int fixed_height_;
- Alignment vertical_alignment_;
-
- private:
-
- void ValidateNativeControl();
-
- static LRESULT CALLBACK NativeControlWndProc(HWND window, UINT message,
- WPARAM w_param, LPARAM l_param);
-
- NativeControlContainer* container_;
-
- DISALLOW_COPY_AND_ASSIGN(NativeControl);
-};
-
-} // namespace views
-
-#endif // UI_VIEWS_CONTROLS_NATIVE_CONTROL_H_