Chromium Code Reviews| Index: base/base_drop_target.h |
| =================================================================== |
| --- base/base_drop_target.h (revision 2670) |
| +++ base/base_drop_target.h (working copy) |
| @@ -2,15 +2,15 @@ |
| // 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 <atlbase.h> |
| #include <objidl.h> |
| -#include <shobjidl.h> |
| -#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 |
| // want to override various OnXXX methods. |
| @@ -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. |
|
Dean McNamee
2008/09/30 20:47:26
an STA, I think
|
| class BaseDropTarget : public IDropTarget { |
| public: |
| // Create a new BaseDropTarget associating it with the given HWND. |
| @@ -89,7 +91,7 @@ |
| static IDropTargetHelper* DropHelper(); |
| // The data object currently being dragged over this drop target. |
| - CComPtr<IDataObject> current_data_object_; |
| + scoped_refptr<IDataObject> 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 @@ |
| DISALLOW_EVIL_CONSTRUCTORS(BaseDropTarget); |
| }; |
| -#endif // BASE_BASE_DROP_TARGET_H__ |
| - |
| +#endif // BASE_BASE_DROP_TARGET_H_ |