// Copyright 2021 Benjamin Barenblat // // Licensed under the Apache License, Version 2.0 (the "License"); you may not // use this file except in compliance with the License. You may obtain a copy of // the License at // // https://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the // License for the specific language governing permissions and limitations under // the License. // X11/Xlib.h #defines a lot of macros. This header reexports the ones we care // about as inline functions or constants; it then deletes most of the macros to // avoid surprises from transitive inclusion. #ifndef GLPLANET_SRC_UNDO_XLIB_DOT_H_NAMESPACE_POLLUTION_H_ #define GLPLANET_SRC_UNDO_XLIB_DOT_H_NAMESPACE_POLLUTION_H_ #include namespace xlib { // clang-format off inline int (DefaultScreen)(Display* display) noexcept { return DefaultScreen(display); } // clang-format on } // namespace xlib // X11/X.h #undef None #undef ParentRelative #undef CopyFromParent #undef PointerWindow #undef InputFocus #undef PointerRoot #undef AnyPropertyType #undef AnyKey #undef AnyButton #undef AllTemporary #undef CurrentTime #undef NoSymbol #undef NoEventMask #undef KeyPressMask #undef KeyReleaseMask #undef ButtonPressMask #undef ButtonReleaseMask #undef EnterWindowMask #undef LeaveWindowMask #undef PointerMotionMask #undef PointerMotionHintMask #undef Button1MotionMask #undef Button2MotionMask #undef Button3MotionMask #undef Button4MotionMask #undef Button5MotionMask #undef ButtonMotionMask #undef KeymapStateMask #undef ExposureMask #undef VisibilityChangeMask #undef StructureNotifyMask #undef ResizeRedirectMask #undef SubstructureNotifyMask #undef SubstructureRedirectMask #undef FocusChangeMask #undef PropertyChangeMask #undef ColormapChangeMask #undef OwnerGrabButtonMask #undef KeyPress #undef KeyRelease #undef ButtonPress #undef ButtonRelease #undef MotionNotify #undef EnterNotify #undef LeaveNotify #undef FocusIn #undef FocusOut #undef KeymapNotify #undef Expose #undef GraphicsExpose #undef NoExpose #undef VisibilityNotify #undef CreateNotify #undef DestroyNotify #undef UnmapNotify #undef MapNotify #undef MapRequest #undef ReparentNotify #undef ConfigureNotify #undef ConfigureRequest #undef GravityNotify #undef ResizeRequest #undef CirculateNotify #undef CirculateRequest #undef PropertyNotify #undef SelectionClear #undef SelectionRequest #undef SelectionNotify #undef ColormapNotify #undef ClientMessage #undef MappingNotify #undef GenericEvent #undef LASTEvent #undef ShiftMask #undef LockMask #undef ControlMask #undef Mod1Mask #undef Mod2Mask #undef Mod3Mask #undef Mod4Mask #undef Mod5Mask #undef ShiftMapIndex #undef LockMapIndex #undef ControlMapIndex #undef Mod1MapIndex #undef Mod2MapIndex #undef Mod3MapIndex #undef Mod4MapIndex #undef Mod5MapIndex #undef Button1Mask #undef Button2Mask #undef Button3Mask #undef Button4Mask #undef Button5Mask #undef AnyModifier #undef Button1 #undef Button2 #undef Button3 #undef Button4 #undef Button5 #undef NotifyNormal #undef NotifyGrab #undef NotifyUngrab #undef NotifyWhileGrabbed #undef NotifyHint #undef NotifyAncestor #undef NotifyVirtual #undef NotifyInferior #undef NotifyNonlinear #undef NotifyNonlinearVirtual #undef NotifyPointer #undef NotifyPointerRoot #undef NotifyDetailNone #undef VisibilityUnobscured #undef VisibilityPartiallyObscured #undef VisibilityFullyObscured #undef PlaceOnTop #undef PlaceOnBottom #undef FamilyInternet #undef FamilyDECnet #undef FamilyChaos #undef FamilyInternet6 #undef FamilyServerInterpreted #undef PropertyNewValue #undef PropertyDelete #undef ColormapUninstalled #undef ColormapInstalled #undef GrabModeSync #undef GrabModeAsync #undef GrabSuccess #undef AlreadyGrabbed #undef GrabInvalidTime #undef GrabNotViewable #undef GrabFrozen #undef AsyncPointer #undef SyncPointer #undef ReplayPointer #undef AsyncKeyboard #undef SyncKeyboard #undef ReplayKeyboard #undef AsyncBoth #undef SyncBoth #undef RevertToNone #undef RevertToPointerRoot #undef RevertToParent #undef Success #undef BadRequest #undef BadValue #undef BadWindow #undef BadPixmap #undef BadAtom #undef BadCursor #undef BadFont #undef BadMatch #undef BadDrawable #undef BadAccess #undef BadAlloc #undef BadColor #undef BadGC #undef BadIDChoice #undef BadName #undef BadLength #undef BadImplementation #undef FirstExtensionError #undef LastExtensionError #undef InputOutput #undef InputOnly #undef CWBackPixmap #undef CWBackPixel #undef CWBorderPixmap #undef CWBorderPixel #undef CWBitGravity #undef CWWinGravity #undef CWBackingStore #undef CWBackingPlanes #undef CWBackingPixel #undef CWOverrideRedirect #undef CWSaveUnder #undef CWEventMask #undef CWDontPropagate #undef CWColormap #undef CWCursor #undef CWX #undef CWY #undef CWWidth #undef CWHeight #undef CWBorderWidth #undef CWSibling #undef CWStackMode #undef ForgetGravity #undef NorthWestGravity #undef NorthGravity #undef NorthEastGravity #undef WestGravity #undef CenterGravity #undef EastGravity #undef SouthWestGravity #undef SouthGravity #undef SouthEastGravity #undef StaticGravity #undef UnmapGravity #undef NotUseful #undef WhenMapped #undef Always #undef IsUnmapped #undef IsUnviewable #undef IsViewable #undef SetModeInsert #undef SetModeDelete #undef DestroyAll #undef RetainPermanent #undef RetainTemporary #undef Above #undef Below #undef TopIf #undef BottomIf #undef Opposite #undef RaiseLowest #undef LowerHighest #undef PropModeReplace #undef PropModePrepend #undef PropModeAppend #undef GXclear #undef GXand #undef GXandReverse #undef GXcopy #undef GXandInverted #undef GXnoop #undef GXxor #undef GXor #undef GXnor #undef GXequiv #undef GXinvert #undef GXorReverse #undef GXcopyInverted #undef GXorInverted #undef GXnand #undef GXset #undef LineSolid #undef LineOnOffDash #undef LineDoubleDash #undef CapNotLast #undef CapButt #undef CapRound #undef CapProjecting #undef JoinMiter #undef JoinRound #undef JoinBevel #undef FillSolid #undef FillTiled #undef FillStippled #undef FillOpaqueStippled #undef EvenOddRule #undef WindingRule #undef ClipByChildren #undef IncludeInferiors #undef Unsorted #undef YSorted #undef YXSorted #undef YXBanded #undef CoordModeOrigin #undef CoordModePrevious #undef Complex #undef Nonconvex #undef Convex #undef ArcChord #undef ArcPieSlice #undef GCFunction #undef GCPlaneMask #undef GCForeground #undef GCBackground #undef GCLineWidth #undef GCLineStyle #undef GCCapStyle #undef GCJoinStyle #undef GCFillStyle #undef GCFillRule #undef GCTile #undef GCStipple #undef GCTileStipXOrigin #undef GCTileStipYOrigin #undef GCFont #undef GCSubwindowMode #undef GCGraphicsExposures #undef GCClipXOrigin #undef GCClipYOrigin #undef GCClipMask #undef GCDashOffset #undef GCDashList #undef GCArcMode #undef GCLastBit #undef FontLeftToRight #undef FontRightToLeft #undef FontChange #undef XYBitmap #undef XYPixmap #undef ZPixmap #undef AllocNone #undef AllocAll #undef DoRed #undef DoGreen #undef DoBlue #undef CursorShape #undef TileShape #undef StippleShape #undef AutoRepeatModeOff #undef AutoRepeatModeOn #undef AutoRepeatModeDefault #undef LedModeOff #undef LedModeOn #undef KBKeyClickPercent #undef KBBellPercent #undef KBBellPitch #undef KBBellDuration #undef KBLed #undef KBLedMode #undef KBKey #undef KBAutoRepeatMode #undef MappingSuccess #undef MappingBusy #undef MappingFailed #undef MappingModifier #undef MappingKeyboard #undef MappingPointer #undef DontPreferBlanking #undef PreferBlanking #undef DefaultBlanking #undef DisableScreenSaver #undef DisableScreenInterval #undef DontAllowExposures #undef AllowExposures #undef DefaultExposures #undef ScreenSaverReset #undef ScreenSaverActive #undef HostInsert #undef HostDelete #undef EnableAccess #undef DisableAccess #undef StaticGray #undef GrayScale #undef StaticColor #undef PseudoColor #undef TrueColor #undef DirectColor #undef LSBFirst #undef MSBFirst // X11/Xfuncproto.h #undef NeedFunctionPrototypes #undef NeedVarargsPrototypes #undef NeedNestedPrototypes #undef NARROWPROTO #undef FUNCPROTO #undef NeedWidePrototypes // X11/Xosdefs.h #undef NULL_NOT_ZERO #undef _DARWIN_C_SOURCE #undef CSRG_BASED // X11/Xlib.h #undef XlibSpecificationRelease #undef Bool #undef Status #undef True #undef False #undef QueuedAlready #undef QueuedAfterReading #undef QueuedAfterFlush #undef ConnectionNumber #undef RootWindow #undef DefaultScreen #undef DefaultRootWindow #undef DefaultVisual #undef DefaultGC #undef BlackPixel #undef WhitePixel #undef AllPlanes #undef QLength #undef DisplayWidth #undef DisplayHeight #undef DisplayWidthMM #undef DisplayHeightMM #undef DisplayPlanes #undef DisplayCells #undef ScreenCount #undef ServerVendor #undef ProtocolVersion #undef ProtocolRevision #undef VendorRelease #undef DisplayString #undef DefaultDepth #undef DefaultColormap #undef BitmapUnit #undef BitmapBitOrder #undef BitmapPad #undef ImageByteOrder #undef NextRequest #undef LastKnownRequestProcessed #undef ScreenOfDisplay #undef DefaultScreenOfDisplay #undef DisplayOfScreen #undef RootWindowOfScreen #undef BlackPixelOfScreen #undef WhitePixelOfScreen #undef DefaultColormapOfScreen #undef DefaultDepthOfScreen #undef DefaultGCOfScreen #undef DefaultVisualOfScreen #undef WidthOfScreen #undef HeightOfScreen #undef WidthMMOfScreen #undef HeightMMOfScreen #undef PlanesOfScreen #undef CellsOfScreen #undef MinCmapsOfScreen #undef MaxCmapsOfScreen #undef DoesSaveUnders #undef DoesBackingStore #undef EventMaskOfScreen #undef XAllocID #undef XNRequiredCharSet #undef XNQueryOrientation #undef XNBaseFontName #undef XNOMAutomatic #undef XNMissingCharSet #undef XNDefaultString #undef XNOrientation #undef XNDirectionalDependentDrawing #undef XNContextualDrawing #undef XNFontInfo #undef XIMPreeditArea #undef XIMPreeditCallbacks #undef XIMPreeditPosition #undef XIMPreeditNothing #undef XIMPreeditNone #undef XIMStatusArea #undef XIMStatusCallbacks #undef XIMStatusNothing #undef XIMStatusNone #undef XNVaNestedList #undef XNQueryInputStyle #undef XNClientWindow #undef XNInputStyle #undef XNFocusWindow #undef XNResourceName #undef XNResourceClass #undef XNGeometryCallback #undef XNDestroyCallback #undef XNFilterEvents #undef XNPreeditStartCallback #undef XNPreeditDoneCallback #undef XNPreeditDrawCallback #undef XNPreeditCaretCallback #undef XNPreeditStateNotifyCallback #undef XNPreeditAttributes #undef XNStatusStartCallback #undef XNStatusDoneCallback #undef XNStatusDrawCallback #undef XNStatusAttributes #undef XNArea #undef XNAreaNeeded #undef XNSpotLocation #undef XNColormap #undef XNStdColormap #undef XNForeground #undef XNBackground #undef XNBackgroundPixmap #undef XNFontSet #undef XNLineSpace #undef XNCursor #undef XNQueryIMValuesList #undef XNQueryICValuesList #undef XNVisiblePosition #undef XNR6PreeditCallback #undef XNStringConversionCallback #undef XNStringConversion #undef XNResetState #undef XNHotKey #undef XNHotKeyState #undef XNPreeditState #undef XNSeparatorofNestedList #undef XBufferOverflow #undef XLookupNone #undef XLookupChars #undef XLookupKeySym #undef XLookupBoth #undef XIMReverse #undef XIMUnderline #undef XIMHighlight #undef XIMPrimary #undef XIMSecondary #undef XIMTertiary #undef XIMVisibleToForward #undef XIMVisibleToBackword #undef XIMVisibleToCenter #undef XIMPreeditUnKnown #undef XIMPreeditEnable #undef XIMPreeditDisable #undef XIMInitialState #undef XIMPreserveState #undef XIMStringConversionLeftEdge #undef XIMStringConversionRightEdge #undef XIMStringConversionTopEdge #undef XIMStringConversionBottomEdge #undef XIMStringConversionConcealed #undef XIMStringConversionWrapped #undef XIMStringConversionBuffer #undef XIMStringConversionLine #undef XIMStringConversionWord #undef XIMStringConversionChar #undef XIMStringConversionSubstitution #undef XIMStringConversionRetrieval #undef XIMHotKeyStateON #undef XIMHotKeyStateOFF #endif // GLPLANET_SRC_UNDO_XLIB_DOT_H_NAMESPACE_POLLUTION_H_