gecko-dev/widget/windows/nsdefs.h

59 строки
1.6 KiB
C

/* -*- 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 NSDEFS_H
#define NSDEFS_H
#include <windows.h>
#ifdef _DEBUG
# define BREAK_TO_DEBUGGER DebugBreak()
#else
# define BREAK_TO_DEBUGGER
#endif
#ifdef _DEBUG
# define VERIFY(exp) \
if (!(exp)) { \
GetLastError(); \
BREAK_TO_DEBUGGER; \
}
#else // !_DEBUG
# define VERIFY(exp) (exp)
#endif // !_DEBUG
// inttypes.h-like macro for LONG_PTR/LPARAM formatting.
#ifdef HAVE_64BIT_BUILD
# define PRIdLPTR "lld"
# define PRIxLPTR "llx"
# define PRIXLPTR "llX"
#else
# define PRIdLPTR "ld"
# define PRIxLPTR "lx"
# define PRIXLPTR "lX"
#endif
// Win32 logging modules:
// nsWindow, nsSound, and nsClipboard
//
// Logging can be changed at runtime without recompiling in the General
// property page of Visual Studio under the "Environment" property.
//
// Two variables are of importance to be set:
// MOZ_LOG and MOZ_LOG_FILE
//
// MOZ_LOG:
// MOZ_LOG=all:5 (To log everything completely)
// MOZ_LOG=nsWindow:5,nsSound:5,nsClipboard:5
// (To log windows widget stuff)
// MOZ_LOG= (To turn off logging)
//
// MOZ_LOG_FILE:
// MOZ_LOG_FILE=C:\log.txt (To a file on disk)
// MOZ_LOG_FILE=WinDebug (To the debug window)
// MOZ_LOG_FILE= (To stdout/stderr)
#endif // NSDEFS_H