diff options
Diffstat (limited to 'base/win/scoped_gdi_object.h')
-rw-r--r-- | base/win/scoped_gdi_object.h | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/base/win/scoped_gdi_object.h b/base/win/scoped_gdi_object.h deleted file mode 100644 index 9d8465b25b..0000000000 --- a/base/win/scoped_gdi_object.h +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (c) 2010 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 BASE_WIN_SCOPED_GDI_OBJECT_H_ -#define BASE_WIN_SCOPED_GDI_OBJECT_H_ - -#include <windows.h> - -#include "base/scoped_generic.h" - -namespace base { -namespace win { - -namespace internal { - -template <class T> -struct ScopedGDIObjectTraits { - static T InvalidValue() { return nullptr; } - static void Free(T object) { DeleteObject(object); } -}; - -// An explicit specialization for HICON because we have to call DestroyIcon() -// instead of DeleteObject() for HICON. -template <> -void inline ScopedGDIObjectTraits<HICON>::Free(HICON icon) { - DestroyIcon(icon); -} - -} // namespace internal - -// Like ScopedHandle but for GDI objects. -template <class T> -using ScopedGDIObject = ScopedGeneric<T, internal::ScopedGDIObjectTraits<T>>; - -// Typedefs for some common use cases. -typedef ScopedGDIObject<HBITMAP> ScopedBitmap; -typedef ScopedGDIObject<HRGN> ScopedRegion; -typedef ScopedGDIObject<HFONT> ScopedHFONT; -typedef ScopedGDIObject<HICON> ScopedHICON; - -} // namespace win -} // namespace base - -#endif // BASE_WIN_SCOPED_GDI_OBJECT_H_ |