From c7f4b627c4dde3c801649e28eea82e581797590c Mon Sep 17 00:00:00 2001 From: "maruel@google.com" Date: Tue, 30 Sep 2008 20:50:51 +0000 Subject: Fix some issues found looking at the code. Patch from Gaetano Mendola Original review: http://codereview.chromium.org/4273 I added some additions on my part and two unit test fix due to the added DCHECK. Reduced atl header inclusion. Review URL: http://codereview.chromium.org/5009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2730 0039d316-1c4b-4281-b951-d872f2087c98 --- base/base_drop_target.h | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'base/base_drop_target.h') diff --git a/base/base_drop_target.h b/base/base_drop_target.h index 1accbd1..9f20752 100644 --- a/base/base_drop_target.h +++ b/base/base_drop_target.h @@ -2,14 +2,14 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef BASE_BASE_DROP_TARGET_H__ -#define BASE_BASE_DROP_TARGET_H__ +#ifndef BASE_BASE_DROP_TARGET_H_ +#define BASE_BASE_DROP_TARGET_H_ -#include #include -#include -#include "base/basictypes.h" +#include "base/ref_counted.h" + +struct IDropTargetHelper; // A DropTarget implementation that takes care of the nitty gritty // of dnd. While this class is concrete, subclasses will most likely @@ -18,6 +18,8 @@ // Because BaseDropTarget is ref counted you shouldn't delete it directly, // rather wrap it in a scoped_refptr. Be sure and invoke RevokeDragDrop(m_hWnd) // before the HWND is deleted too. +// +// This class is meant to be used in a STA and is not multithread-safe. class BaseDropTarget : public IDropTarget { public: // Create a new BaseDropTarget associating it with the given HWND. @@ -89,7 +91,7 @@ class BaseDropTarget : public IDropTarget { static IDropTargetHelper* DropHelper(); // The data object currently being dragged over this drop target. - CComPtr current_data_object_; + scoped_refptr current_data_object_; // A helper object that is used to provide drag image support while the mouse // is dragging over the content area. @@ -114,5 +116,4 @@ class BaseDropTarget : public IDropTarget { DISALLOW_EVIL_CONSTRUCTORS(BaseDropTarget); }; -#endif // BASE_BASE_DROP_TARGET_H__ - +#endif // BASE_BASE_DROP_TARGET_H_ -- cgit v1.1