Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/widget/windows/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 2 kB image not shown  

Quelle  TaskbarWindowPreview.h   Sprache: C

 
/* vim: se cin sw=2 ts=2 et : */
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
 *
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */


#ifndef __mozilla_widget_TaskbarWindowPreview_h__
#define __mozilla_widget_TaskbarWindowPreview_h__

#include "nsITaskbarWindowPreview.h"
#include "nsITaskbarProgress.h"
#include "nsITaskbarOverlayIconController.h"
#include "TaskbarPreview.h"
#include "nsWeakReference.h"

namespace mozilla {
namespace widget {

class TaskbarPreviewButton;
class TaskbarWindowPreview : public TaskbarPreview,
                             public nsITaskbarWindowPreview,
                             public nsITaskbarProgress,
                             public nsITaskbarOverlayIconController,
                             public nsSupportsWeakReference {
  virtual ~TaskbarWindowPreview();

 public:
  TaskbarWindowPreview(ITaskbarList4* aTaskbar,
                       nsITaskbarPreviewController* aController, HWND aHWND,
                       nsIDocShell* aShell);
  virtual nsresult Init() override;

  NS_DECL_ISUPPORTS
  NS_DECL_NSITASKBARWINDOWPREVIEW
  NS_DECL_NSITASKBARPROGRESS
  NS_DECL_NSITASKBAROVERLAYICONCONTROLLER
  NS_FORWARD_NSITASKBARPREVIEW(TaskbarPreview::)

  virtual LRESULT WndProc(UINT nMsg, WPARAM wParam, LPARAM lParam) override;

 private:
  virtual nsresult ShowActive(bool active) override;
  virtual HWND& PreviewWindow() override;

  virtual nsresult UpdateTaskbarProperties() override;
  virtual nsresult Enable() override;
  virtual nsresult Disable() override;
  virtual void DetachFromNSWindow() override;
  nsresult UpdateButton(uint32_t index);
  nsresult UpdateButtons();

  // Is custom drawing enabled?
  bool mCustomDrawing;
  // Have we made any buttons?
  bool mHaveButtons;
  // Windows button format
  THUMBBUTTON mThumbButtons[nsITaskbarWindowPreview::NUM_TOOLBAR_BUTTONS];
  // Pointers to our button class (cached instances)
  nsWeakPtr mWeakButtons[nsITaskbarWindowPreview::NUM_TOOLBAR_BUTTONS];

  // Called to update ITaskbarList4 dependent properties
  nsresult UpdateTaskbarProgress();
  nsresult UpdateOverlayIcon();

  // The taskbar progress
  TBPFLAG mState;
  ULONGLONG mCurrentValue;
  ULONGLONG mMaxValue;

  // Taskbar overlay icon
  HICON mOverlayIcon;
  nsString mIconDescription;

  // WindowHook procedure for hooking mWnd for taskbar progress and icon stuff
  static bool TaskbarWindowHook(void* aContext, HWND hWnd, UINT nMsg,
                                WPARAM wParam, LPARAM lParam, LRESULT* aResult);

  friend class TaskbarPreviewButton;
};

}  // namespace widget
}  // namespace mozilla

#endif /* __mozilla_widget_TaskbarWindowPreview_h__ */

100%


¤ Dauer der Verarbeitung: 0.14 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.