/* Interface of class NSLayoutGuide Copyright (C) 2020 Free Software Foundation, Inc. By: Gregory Casamento Date: Sat May 9 16:30:36 EDT 2020 This file is part of the GNUstep Library. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110 USA. */ #ifndef _NSLayoutGuide_h_GNUSTEP_GUI_INCLUDE #define _NSLayoutGuide_h_GNUSTEP_GUI_INCLUDE #import #import #import #import #if OS_API_VERSION(MAC_OS_X_VERSION_10_10, GS_API_LATEST) #if defined(__cplusplus) extern "C" { #endif @class NSView, NSLayoutXAxisAnchor, NSLayoutYAxisAnchor, NSLayoutDimension; APPKIT_EXPORT_CLASS @interface NSLayoutGuide : NSObject { NSRect _frame; NSView *_owningView; NSUserInterfaceItemIdentifier _identifier; NSLayoutXAxisAnchor *_leadingAnchor; NSLayoutXAxisAnchor *_trailingAnchor; NSLayoutXAxisAnchor *_leftAnchor; NSLayoutXAxisAnchor *_rightAnchor; NSLayoutYAxisAnchor *_topAnchor; NSLayoutYAxisAnchor *_bottomAnchor; NSLayoutDimension *_widthAnchor; NSLayoutDimension *_heightAnchor; NSLayoutXAxisAnchor *_centerXAnchor; NSLayoutYAxisAnchor *_centerYAnchor; BOOL _hasAmbiguousLayout; } - (NSRect) frame; - (NSView *) owningView; - (void) setOwningView: (NSView *)owningView; - (NSUserInterfaceItemIdentifier) identifier; - (void) setIdentifier: (NSUserInterfaceItemIdentifier)identifier; - (NSLayoutXAxisAnchor *) leadingAnchor; - (NSLayoutXAxisAnchor *) trailingAnchor; - (NSLayoutXAxisAnchor *) leftAnchor; - (NSLayoutXAxisAnchor *) rightAnchor; - (NSLayoutYAxisAnchor *) topAnchor; - (NSLayoutYAxisAnchor *) bottomAnchor; - (NSLayoutDimension *) widthAnchor; - (NSLayoutDimension *) heightAnchor; - (NSLayoutXAxisAnchor *) centerXAnchor; - (NSLayoutYAxisAnchor *) centerYAnchor; - (BOOL) hasAmbiguousLayout; - (NSArray *) constraintsAffectingLayoutForOrientation: (NSLayoutConstraintOrientation)orientation; @end @interface NSView (NSLayoutGuideSupport) - (void) addLayoutGuide: (NSLayoutGuide *)guide; - (void) removeLayoutGuide: (NSLayoutGuide *)guide; - (NSArray *) layoutGuides; @end #if defined(__cplusplus) } #endif #endif /* GS_API_MACOSX */ #endif /* _NSLayoutGuide_h_GNUSTEP_GUI_INCLUDE */