view dep/animone/src/win.cc @ 342:adb79bdde329

dep/animone: fix tons of issues for example, the window ID stuff was just... completely wrong. since we're supporting multiple different window systems, it *has* to be a union rather than just a single integer type. HWND is also not a DWORD, it's a pointer(!), so now it's stored as a std::uintptr_t. (this probably breaks things)
author Paper <paper@paper.us.eu.org>
date Thu, 20 Jun 2024 03:03:05 -0400
parents a7d4e5107531
children
line wrap: on
line source

#include "animone/win.h"

#ifdef USE_WIN32
#	include "animone/win/win32.h"
#endif

#ifdef USE_MACOSX
#	include "animone/win/quartz.h"
#endif

#ifdef USE_X11
#	include "animone/win/x11.h"
#endif

namespace animone::internal {

bool EnumerateWindows(window_proc_t window_proc) {
	bool success = false;

#ifdef USE_WIN32
	success |= win32::EnumerateWindows(window_proc);
#endif

#ifdef USE_MACOSX
	success |= quartz::EnumerateWindows(window_proc);
#endif

#ifdef USE_X11
	success |= x11::EnumerateWindows(window_proc);
#endif

	return success;
}

} // namespace animone::internal