Backed out changeset 2450366cf7ca (bug 1891629) for causing win msix mochitest failures
[gecko.git] / widget / windows / TaskbarPreviewButton.h
blobe13b2d67716fed8ca4c99eecec500ba4efeacec2
1 /* vim: se cin sw=2 ts=2 et : */
2 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
4 * This Source Code Form is subject to the terms of the Mozilla Public
5 * License, v. 2.0. If a copy of the MPL was not distributed with this
6 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
8 #ifndef __mozilla_widget_TaskbarPreviewButton_h__
9 #define __mozilla_widget_TaskbarPreviewButton_h__
11 #include <windows.h>
12 #include <shobjidl.h>
13 #undef LogSeverity // SetupAPI.h #defines this as DWORD
15 #include "mozilla/RefPtr.h"
16 #include <nsITaskbarPreviewButton.h>
17 #include <nsString.h>
18 #include "nsWeakReference.h"
20 namespace mozilla {
21 namespace widget {
23 class TaskbarWindowPreview;
24 class TaskbarPreviewButton : public nsITaskbarPreviewButton,
25 public nsSupportsWeakReference {
26 virtual ~TaskbarPreviewButton();
28 public:
29 TaskbarPreviewButton(TaskbarWindowPreview* preview, uint32_t index);
31 NS_DECL_ISUPPORTS
32 NS_DECL_NSITASKBARPREVIEWBUTTON
34 private:
35 THUMBBUTTON& Button();
36 nsresult Update();
38 RefPtr<TaskbarWindowPreview> mPreview;
39 uint32_t mIndex;
40 nsString mTooltip;
41 nsCOMPtr<imgIContainer> mImage;
44 } // namespace widget
45 } // namespace mozilla
47 #endif /* __mozilla_widget_TaskbarPreviewButton_h__ */