Merge branch 'master' into NSSwitch_branch

This commit is contained in:
Gregory John Casamento 2020-04-16 06:33:36 -04:00
commit ea5dbc2236
23 changed files with 1281 additions and 34 deletions

View file

@ -1,3 +1,30 @@
2020-04-13 Gregory John Casamento <greg.casamento@gmail.com>
* Headers/AppKit/AppKitErrors.h:
* Headers/AppKit/AppKit.h:
* Headers/AppKit/NSFontAssetRequest.h:
* Headers/AppKit/NSMediaLibraryBrowserController.h:
* Headers/AppKit/NSScrubber.h:
* Headers/AppKit/NSScrubberItemView.h:
* Headers/AppKit/NSScrubberLayout.h:
* Headers/AppKit/NSSharingServicePickerToolbarItem.h:
* Headers/AppKit/NSUserInterfaceCompression.h:
* Headers/AppKit/NSUserInterfaceItemSearching.h:
* Headers/AppKit/NSWindowRestoration.h:
* MISSING: Remove mention of these classes.
* Source/GNUmakefile
* Source/NSFontAssetRequest.m:
* Source/NSMediaLibraryBrowserController.m:
* Source/NSScrubberItemView.m:
* Source/NSScrubberLayout.m:
* Source/NSScrubber.m:
* Source/NSSharingServicePickerToolbarItem.m: Add code to allow
compilation using these classes. These are Mac specific so they
can't be implemented on any other platform due to HW or
service limitations. At some point these might be able to be
implemented, but, for now, they are here to allow apps which
use them to compile.
2020-04-13 Ivan Vucica <ivan@vucica.net>
* Documentation/announce.texi:

View file

@ -42,6 +42,7 @@
//
// GNUstep GUI Library functions
//
#import <AppKit/AppKitErrors.h>
#import <AppKit/NSGraphics.h>
#import <AppKit/NSAccessibility.h>
@ -117,6 +118,9 @@
#import <AppKit/NSScreen.h>
#import <AppKit/NSScroller.h>
#import <AppKit/NSScrollView.h>
#import <AppKit/NSScrubber.h>
#import <AppKit/NSScrubberItemView.h>
#import <AppKit/NSScrubberLayout.h>
#import <AppKit/NSSelection.h>
#import <AppKit/NSSharingService.h>
#import <AppKit/NSSlider.h>
@ -157,6 +161,7 @@
#import <AppKit/NSDocumentController.h>
#import <AppKit/NSDrawer.h>
#import <AppKit/NSFileWrapperExtensions.h>
#import <AppKit/NSFontAssetRequest.h>
#import <AppKit/NSFontCollection.h>
#import <AppKit/NSFontDescriptor.h>
#import <AppKit/NSGestureRecognizer.h>
@ -173,6 +178,7 @@
#import <AppKit/NSLevelIndicator.h>
#import <AppKit/NSLevelIndicatorCell.h>
#import <AppKit/NSMagnificationGestureRecognizer.h>
#import <AppKit/NSMediaLibraryBrowserController.h>
#import <AppKit/NSMovie.h>
#import <AppKit/NSMovieView.h>
#import <AppKit/NSPanGestureRecognizer.h>
@ -201,6 +207,7 @@
#import <AppKit/NSSegmentedCell.h>
#import <AppKit/NSSegmentedControl.h>
#import <AppKit/NSShadow.h>
#import <AppKit/NSSharingServicePickerToolbarItem.h>
#import <AppKit/NSSharingServicePickerTouchBarItem.h>
#import <AppKit/NSSliderTouchBarItem.h>
#import <AppKit/NSSound.h>
@ -235,6 +242,8 @@
#import <AppKit/NSTreeNode.h>
#import <AppKit/NSUserDefaultsController.h>
#import <AppKit/NSUserInterfaceItemIdentification.h>
#import <AppKit/NSUserInterfaceCompression.h>
#import <AppKit/NSUserInterfaceItemSearching.h>
#import <AppKit/NSUserInterfaceLayout.h>
#import <AppKit/NSUserInterfaceValidation.h>
#import <AppKit/NSViewController.h>

View file

@ -0,0 +1,70 @@
/* Definition of the AppKitErrors header
Copyright (C) 2019 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Tues Apr 7 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; see the file COPYING.LIB.
If not, see <http://www.gnu.org/licenses/> or write to the
Free Software Foundation, 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
#ifndef _AppKitErrors_h_GNUSTEP_GUI_INCLUDE
#define _AppKitErrors_h_GNUSTEP_GUI_INCLUDE
#import <Foundation/NSObject.h>
#if OS_API_VERSION(MAC_OS_X_VERSION_10_0, GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
// All of the AppKit errors in the NSCocoaErrorDomain.
enum
{
NSFontAssetDownloadError = 66304,
NSFontErrorMinimum = 66304,
NSFontErrorMaximum = 66335,
NSServiceApplicationNotFoundError = 66560,
NSServiceApplicationLaunchFailedError = 66561,
NSServiceRequestTimedOutError = 66562,
NSServiceInvalidPasteboardDataError = 66563,
NSServiceMalformedServiceDictionaryError = 66564,
NSServiceMiscellaneousError = 66800,
NSServiceErrorMinimum = 66560,
NSServiceErrorMaximum = 66817,
NSSharingServiceNotConfiguredError = 67072,
NSSharingServiceErrorMinimum = 67072,
NSSharingServiceErrorMaximum = 67327,
NSTextReadInapplicableDocumentTypeError = 65806,
NSTextWriteInapplicableDocumentTypeError = 66062,
NSTextReadWriteErrorMinimum = 65792,
NSTextReadWriteErrorMaximum = 66303,
NSWorkspaceAuthorizationInvalidError = 67328,
NSWorkspaceErrorMinimum = 67328,
NSWorkspaceErrorMaximum = 67455,
};
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* _AppKitErrors_h_GNUSTEP_GUI_INCLUDE */

View file

@ -0,0 +1,65 @@
/* Definition of class NSFontAssetRequest
Copyright (C) 2020 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Tue Apr 7 08:06:56 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 _NSFontAssetRequest_h_GNUSTEP_GUI_INCLUDE
#define _NSFontAssetRequest_h_GNUSTEP_GUI_INCLUDE
#import <Foundation/NSObject.h>
#import <Foundation/NSProgress.h>
#import <Foundation/NSError.h>
#if OS_API_VERSION(MAC_OS_X_VERSION_10_13, GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
enum {
NSFontAssetRequestOptionUsesStandardUI = 1 << 0, // Use standard system UI for downloading.
};
typedef NSUInteger NSFontAssetRequestOptions;
DEFINE_BLOCK_TYPE(GSFontAssetCompletionHandler, BOOL, NSError*);
@interface NSFontAssetRequest : NSObject <NSProgressReporting>
- (instancetype) initWithFontDescriptors: (NSArray *)fontDescriptors
options: (NSFontAssetRequestOptions)options;
- (NSArray *) downloadedFontDescriptors;
- (NSProgress *) progress;
- (void)downloadFontAssetsWithCompletionHandler: (GSFontAssetCompletionHandler)completionHandler;
@end
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* _NSFontAssetRequest_h_GNUSTEP_GUI_INCLUDE */

View file

@ -0,0 +1,66 @@
/* Definition of class NSMediaLibraryBrowserController
Copyright (C) 2020 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Tue Apr 7 08:07:21 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 _NSMediaLibraryBrowserController_h_GNUSTEP_GUI_INCLUDE
#define _NSMediaLibraryBrowserController_h_GNUSTEP_GUI_INCLUDE
#import <Foundation/NSObject.h>
#import <Foundation/NSGeometry.h>
#import "AppKit/NSNibDeclarations.h"
#if OS_API_VERSION(MAC_OS_X_VERSION_10_9, GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
enum {
NSMediaLibraryAudio,
NSMediaLibraryImage,
NSMediaLibraryVideo,
};
typedef NSUInteger NSMediaLibrary;
@interface NSMediaLibraryBrowserController : NSObject
+ (NSMediaLibraryBrowserController *) sharedMediaLibraryBrowserController;
- (NSRect) frame;
- (IBAction) togglePanel: (id)sender;
- (BOOL) isVisible;
- (void) setVisible: (BOOL)flag;
@end
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* _NSMediaLibraryBrowserController_h_GNUSTEP_GUI_INCLUDE */

View file

@ -0,0 +1,47 @@
/* Definition of class NSScrubber
Copyright (C) 2020 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Wed Apr 8 09:16:14 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 _NSScrubber_h_GNUSTEP_GUI_INCLUDE
#define _NSScrubber_h_GNUSTEP_GUI_INCLUDE
#import "AppKit/NSView.h"
#if OS_API_VERSION(MAC_OS_X_VERSION_10_12, GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
@interface NSScrubber : NSView
@end
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* _NSScrubber_h_GNUSTEP_GUI_INCLUDE */

View file

@ -0,0 +1,51 @@
/* Definition of class NSScrubberItemView
Copyright (C) 2020 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Wed Apr 8 09:17:27 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 _NSScrubberItemView_h_GNUSTEP_GUI_INCLUDE
#define _NSScrubberItemView_h_GNUSTEP_GUI_INCLUDE
#import "AppKit/NSView.h"
#if OS_API_VERSION(MAC_OS_X_VERSION_10_12, GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
@interface NSScrubberArrangedView : NSView
@end
@interface NSScrubberItemView : NSScrubberArrangedView
@end
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* _NSScrubberItemView_h_GNUSTEP_GUI_INCLUDE */

View file

@ -0,0 +1,93 @@
/* Definition of class NSScrubberLayout
Copyright (C) 2020 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Wed Apr 8 09:20:18 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 _NSScrubberLayout_h_GNUSTEP_GUI_INCLUDE
#define _NSScrubberLayout_h_GNUSTEP_GUI_INCLUDE
#import <Foundation/NSObject.h>
#import <Foundation/NSCoder.h>
#import <Foundation/NSGeometry.h>
#if OS_API_VERSION(MAC_OS_X_VERSION_10_12, GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
@class NSScrubber;
@interface NSScrubberLayoutAttributes : NSObject <NSCopying>
+ (NSScrubberLayoutAttributes *) layoutAttributesForItemAtIndex: (NSInteger)index;
- (CGFloat) alpha;
- (NSRect) frame;
- (NSInteger) itemIndex;
@end
@interface NSScrubberLayout : NSObject <NSCoding>
// Configuring
- (Class) layoutAttributesClass;
- (NSScrubber *) scrubber;
- (NSRect) visibleRect;
- (void) invalidateLayout;
// Subclassing layout
- (void) prepareLayout;
- (NSSize) scrubberContentSize;
- (NSScrubberLayoutAttributes *) layoutAttributesForItemAtIndex: (NSInteger)index;
- (NSScrubberLayoutAttributes *) layoutAttributesForItemsInRect: (NSRect)rect;
- (BOOL) shouldInvalidateLayoutForHighlightChange;
- (BOOL) shouldInvalidateLayoutForSelectionChange;
- (BOOL) shouldInvalidateLayoutForChangeFromVisibleRect: (NSRect)fromRect
toVisibleRect: (NSRect)toRect;
- (BOOL) automaticallyMirrorsInRightToLeftLayout;
@end
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* _NSScrubberLayout_h_GNUSTEP_GUI_INCLUDE */

View file

@ -0,0 +1,63 @@
/* Definition of class NSSharingServicePickerToolbarItem
Copyright (C) 2020 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Tue Apr 7 08:11:46 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 _NSSharingServicePickerToolbarItem_h_GNUSTEP_GUI_INCLUDE
#define _NSSharingServicePickerToolbarItem_h_GNUSTEP_GUI_INCLUDE
#import "AppKit/NSToolbarItem.h"
#if OS_API_VERSION(MAC_OS_X_VERSION_10_15, GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
@protocol NSSharingServicePickerToolbarItemDelegate;
@interface NSSharingServicePickerToolbarItem : NSToolbarItem
- (id) activityItemsConfiguration;
- (void) setActivityItemsConfiguration: (id)items;
- (id<NSSharingServicePickerToolbarItemDelegate>) delegate;
- (void) setDelegate: (id<NSSharingServicePickerToolbarItemDelegate>) delegate;
@end
@protocol NSSharingServicePickerToolbarItemDelegate
- (NSArray *) itemsForSharingServicePickerToolbarItem: (NSSharingServicePickerToolbarItem *)items;
@end
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* _NSSharingServicePickerToolbarItem_h_GNUSTEP_GUI_INCLUDE */

View file

@ -0,0 +1,84 @@
/* Definition of class NSUserInterfaceCompression
Copyright (C) 2020 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Tue Apr 7 08:13:30 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 _NSUserInterfaceCompression_h_GNUSTEP_GUI_INCLUDE
#define _NSUserInterfaceCompression_h_GNUSTEP_GUI_INCLUDE
#import <Foundation/NSObject.h>
#if OS_API_VERSION(MAC_OS_X_VERSION_10_13, GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
@class NSSet, NSString, NSArray;
@interface NSUserInterfaceCompressionOptions : NSObject <NSCopying, NSCoding>
- (instancetype) initWithIdentifier: (NSString *)identifier;
- (instancetype) initWithCompressionOptions: (NSSet *)opts;
- (BOOL) containsOptions: (NSUserInterfaceCompressionOptions *)opts;
- (BOOL) intersectsOptions: (NSUserInterfaceCompressionOptions *)opts;
- (BOOL) isEmpty;
- (NSUserInterfaceCompressionOptions *) optionsByAddingOptions: (NSUserInterfaceCompressionOptions *)opts;
- (NSUserInterfaceCompressionOptions *) optionsByRemovingOptions: (NSUserInterfaceCompressionOptions *)opts;
+ (NSUserInterfaceCompressionOptions *) hideImagesOption;
+ (NSUserInterfaceCompressionOptions *) hideTextOption;
+ (NSUserInterfaceCompressionOptions *) reduceMetricsOption;
+ (NSUserInterfaceCompressionOptions *) breakEqualWidthsOption;
+ (NSUserInterfaceCompressionOptions *) standardOptions;
@end
@protocol NSUserInterfaceCompression
- (void) compressWithPrioritizedCompressionOptions: (NSArray *)prioritizedOptions;
- (NSSize) minimumSizeWithPrioritizedCompressionOptions: (NSArray *)prioritizedOptions;
- (NSUserInterfaceCompressionOptions *) activeCompressionOptions;
@end
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* _NSUserInterfaceCompression_h_GNUSTEP_GUI_INCLUDE */

View file

@ -1,44 +1,61 @@
/** NSUserInterfaceItemIdentification.h
<abstract>Associate a unique identifier with objects in your user interface</abstract>
Copyright <copy>(C) 2017 Free Software Foundation, Inc.</copy>
/* Definition of class NSUserInterfaceItemIdentification
Copyright (C) 2020 Free Software Foundation, Inc.
Author: Daniel Ferreira <dtf@stanford.edu>
Date: 2017
This file is part of the GNUstep GUI Library.
Author: Gregory John Casamento
Date: Tue Apr 14 13:46: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 of the License, or (at your option) any later version.
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
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; see the file COPYING.LIB.
If not, see <http://www.gnu.org/licenses/> or write to the
Free Software Foundation, 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
License along with this library; if not, write to the Free
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110 USA.
*/
#ifndef _GNUstep_H_NSUserInterfaceItemIdentification
#define _GNUstep_H_NSUserInterfaceItemIdentification
#ifndef _NSUserInterfaceItemIdentification_h_GNUSTEP_GUI_INCLUDE
#define _NSUserInterfaceItemIdentification_h_GNUSTEP_GUI_INCLUDE
@class NSString;
#import <Foundation/NSObject.h>
#if OS_API_VERSION(MAC_OS_X_VERSION_10_7, GS_API_LATEST)
@protocol NSUserInterfaceItemIdentification
#if GS_HAS_DECLARED_PROPERTIES
@property (copy) NSString *identifier;
#else
- (NSString *) identifier;
- (void) setIdentifier: (NSString *)identifier;
#if defined(__cplusplus)
extern "C" {
#endif
@end
@class NSString;
typedef NSString *NSUserInterfaceItemIdentifier;
@protocol NSUserInterfaceItemIdentification
#if GS_HAS_DECLARED_PROPERTIES
@property (copy) NSUserInterfaceItemIdentifier identifier;
#else
- (NSUserInterfaceItemIdentifier) identifier;
- (void) setIdentifier (NSUserInterfaceItemIdentifier)identifier;
#endif
@end
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* _NSUserInterfaceItemIdentification_h_GNUSTEP_GUI_INCLUDE */

View file

@ -0,0 +1,80 @@
/* Definition of class NSUserInterfaceItemSearching
Copyright (C) 2020 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Tue Apr 7 08:13:44 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 _NSUserInterfaceItemSearching_h_GNUSTEP_GUI_INCLUDE
#define _NSUserInterfaceItemSearching_h_GNUSTEP_GUI_INCLUDE
#import <Foundation/NSObject.h>
#import <Foundation/NSRange.h>
#if OS_API_VERSION(MAC_OS_X_VERSION_10_6, GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
@class NSArray, NSString;
DEFINE_BLOCK_TYPE(GSSearchItemsMatchedItemHandler, void, NSArray*);
@protocol NSUserInterfaceItemSearching <NSObject>
// @required
- (void) searchForItemsWithSearchString: (NSString *)searchString
resultLimit: (NSInteger)resultLimit
matchedItemHandler: (GSSearchItemsMatchedItemHandler)handleMatchedItems;
- (NSArray *)localizedTitlesForItem:(id)item;
// @optional
- (void)performActionForItem:(id)item;
- (void)showAllHelpTopicsForSearchString:(NSString *)searchString;
@end
@interface NSApplication (NSUserInterfaceItemSearching)
- (void) registerUserInterfaceItemSearchHandler: (id<NSUserInterfaceItemSearching>)handler;
- (void) unregisterUserInterfaceItemSearchHandler: (id<NSUserInterfaceItemSearching>)handler;
- (BOOL) searchString:(NSString *)searchString
inUserInterfaceItemString:(NSString *)stringToSearch
searchRange:(NSRange)searchRange
foundRange:(NSRange *)foundRange;
@end
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* _NSUserInterfaceItemSearching_h_GNUSTEP_GUI_INCLUDE */

View file

@ -0,0 +1,55 @@
/* Definition of class NSWindowRestoration
Copyright (C) 2020 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Tue Apr 7 14:35:13 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 _NSWindowRestoration_h_GNUSTEP_GUI_INCLUDE
#define _NSWindowRestoration_h_GNUSTEP_GUI_INCLUDE
#import <Foundation/NSObject.h>
#import <Foundation/NSCoder.h>
#import "AppKit/NSUserInterfaceItemIdentification.h"
#if OS_API_VERSION(MAC_OS_X_VERSION_10_7, GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
DEFINE_BLOCK_TYPE(GSWindowRestorationHandler, void, NSWindow*, NSError*);
@protocol NSWindowRestoration
+ (void)restoreWindowWithIdentifier: (NSUserInterfaceItemIdentifier)identifier
state: (NSCoder *)state
completionHandler: (GSWindowRestorationHandler)handler;
@end
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* _NSWindowRestoration_h_GNUSTEP_GUI_INCLUDE */

10
MISSING
View file

@ -1,6 +1,5 @@
MISSING HEADERS
---
> AppKitErrors.h
> NSATSTypesetter.h
> NSAccessibilityCustomAction.h
> NSAccessibilityCustomRotor.h
@ -17,14 +16,12 @@ MISSING HEADERS
> NSDraggingSession.h
> NSFilePromiseProvider.h
> NSFilePromiseReceiver.h
> NSFontAssetRequest.h
> NSGlyphInfo.h
> NSGridView.h
> NSItemProvider.h
> NSLayoutAnchor.h
> NSLayoutConstraint.h
> NSLayoutGuide.h
> NSMediaLibraryBrowserController.h
> NSMenuToolbarItem.h
> NSOpenGLLayer.h
> NSPageController.h
@ -34,10 +31,6 @@ MISSING HEADERS
> NSPathControlItem.h
> NSPersistentDocument.h
> NSRuleEditor.h
> NSScrubber.h
> NSScrubberItemView.h
> NSScrubberLayout.h
> NSSharingServicePickerToolbarItem.h
> NSSliderAccessory.h
> NSSplitViewController.h
> NSSplitViewItem.h
@ -58,9 +51,6 @@ MISSING HEADERS
> NSTitlebarAccessoryViewController.h
> NSTypesetter.h
> NSUserActivity.h
> NSUserInterfaceCompression.h
> NSUserInterfaceItemSearching.h
> NSWindowRestoration.h
> NSWindowTab.h
> NSWindowTabGroup.h

View file

@ -105,6 +105,7 @@ NSEPSImageRep.m \
NSEvent.m \
NSFileWrapperExtensions.m \
NSFont.m \
NSFontAssetRequest.m \
NSFontCollection.m \
NSFontDescriptor.m \
NSFontManager.m \
@ -143,11 +144,13 @@ NSLayoutManager.m \
NSLevelIndicator.m \
NSLevelIndicatorCell.m \
NSMagnificationGestureRecognizer.m \
NSMediaLibraryBrowserController.m \
NSPanGestureRecognizer.m \
NSPickerTouchBarItem.m \
NSPopoverTouchBarItem.m \
NSPressGestureRecognizer.m \
NSRotationGestureRecognizer.m \
NSSharingServicePickerToolbarItem.m \
NSSharingServicePickerTouchBarItem.m \
NSSliderTouchBarItem.m \
NSStepperTouchBarItem.m \
@ -208,6 +211,9 @@ NSSegmentedControl.m \
NSScreen.m \
NSScroller.m \
NSScrollView.m \
NSScrubber.m \
NSScrubberItemView.m \
NSScrubberLayout.m \
NSSecureTextField.m \
NSSelection.m \
NSShadow.m \
@ -255,6 +261,8 @@ NSTrackingArea.m \
NSTreeController.m \
NSTreeNode.m \
NSUserDefaultsController.m \
NSUserInterfaceCompression.m \
NSUserInterfaceItemSearching.m \
NSView.m \
NSViewController.m \
NSVisualEffectView.m \
@ -339,6 +347,7 @@ Cocoa.h
APPKIT_HEADERS = \
AppKit.h \
AppKitDefines.h \
AppKitErrors.h \
AppKitExceptions.h \
NSAccessibility.h \
NSAccessibilityConstants.h \
@ -397,6 +406,7 @@ NSEvent.h \
NSFileWrapper.h \
NSFileWrapperExtensions.h \
NSFont.h \
NSFontAssetRequest.h \
NSFontCollection.h \
NSFontDescriptor.h \
NSFontManager.h \
@ -423,6 +433,7 @@ NSLevelIndicator.h \
NSLevelIndicatorCell.h \
NSMagnificationGestureRecognizer.h \
NSMatrix.h \
NSMediaLibraryBrowserController.h \
NSMenu.h \
NSMenuItem.h \
NSMenuItemCell.h \
@ -467,6 +478,9 @@ NSSavePanel.h \
NSScreen.h \
NSScrollView.h \
NSScroller.h \
NSScrubber.h \
NSScrubberItemView.h \
NSScrubberLayout.h \
NSSearchField.h \
NSSearchFieldCell.h \
NSSecureTextField.h \
@ -475,6 +489,7 @@ NSSegmentedControl.h \
NSSelection.h \
NSShadow.h \
NSSharingService.h \
NSSharingServicePickerToolbarItem.h \
NSSharingServicePickerTouchBarItem.h \
NSSlider.h \
NSSliderCell.h \
@ -525,6 +540,7 @@ NSViewController.h \
NSVisualEffectView.h \
NSWindow.h \
NSWindowController.h \
NSWindowRestoration.h \
NSWorkspace.h \
NSAttributedString.h \
NSColorPicking.h \
@ -537,6 +553,8 @@ NSNibDeclarations.h \
NSNibLoading.h \
NSNib.h \
NSSpellProtocol.h \
NSUserInterfaceCompression.h \
NSUserInterfaceItemSearching.h \
NSUserInterfaceItemIdentification.h \
NSUserInterfaceValidation.h \
DPSOperators.h \

View file

@ -0,0 +1,52 @@
/* Implementation of class NSFontAssetRequest
Copyright (C) 2019 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Tue Apr 7 08:06:56 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.
*/
#import "AppKit/NSFontAssetRequest.h"
@implementation NSFontAssetRequest
- (instancetype) initWithFontDescriptors: (NSArray *)fontDescriptors
options: (NSFontAssetRequestOptions)options
{
return [super init];
}
- (NSArray *) downloadedFontDescriptors
{
return nil;
}
- (NSProgress *) progress
{
return [NSProgress progressWithTotalUnitCount: 0.0];
}
- (void)downloadFontAssetsWithCompletionHandler: (GSFontAssetCompletionHandler)completionHandler
{
NSError *error = nil;
CALL_BLOCK(completionHandler, error);
}
@end

View file

@ -0,0 +1,53 @@
/* Implementation of class NSMediaLibraryBrowserController
Copyright (C) 2019 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Tue Apr 7 08:07:21 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.
*/
#import "AppKit/NSMediaLibraryBrowserController.h"
@implementation NSMediaLibraryBrowserController
+ (NSMediaLibraryBrowserController *) sharedMediaLibraryBrowserController
{
return nil;
}
- (NSRect) frame
{
return NSZeroRect;
}
- (IBAction) togglePanel: (id)sender
{
}
- (BOOL) isVisible
{
return NO;
}
- (void) setVisible: (BOOL)flag
{
}
@end

30
Source/NSScrubber.m Normal file
View file

@ -0,0 +1,30 @@
/* Implementation of class NSScrubber
Copyright (C) 2019 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Wed Apr 8 09:16:14 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.
*/
#import "AppKit/NSScrubber.h"
@implementation NSScrubber
@end

View file

@ -0,0 +1,34 @@
/* Implementation of class NSScrubberItemView
Copyright (C) 2020 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Wed Apr 8 09:17:27 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.
*/
#import "AppKit/NSScrubberItemView.h"
@implementation NSScrubberArrangedView
@end
@implementation NSScrubberItemView
@end

135
Source/NSScrubberLayout.m Normal file
View file

@ -0,0 +1,135 @@
/* Implementation of class NSScrubberLayout
Copyright (C) 2019 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Wed Apr 8 09:20:18 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.
*/
#import "AppKit/NSScrubberLayout.h"
@implementation NSScrubberLayoutAttributes
+ (NSScrubberLayoutAttributes *) layoutAttributesForItemAtIndex: (NSInteger)index
{
return nil;
}
- (CGFloat) alpha
{
return 0.0;
}
- (NSRect) frame
{
return NSZeroRect;
}
- (NSInteger) itemIndex
{
return 0;
}
- (instancetype) copyWithZone: (NSZone *)z
{
return nil;
}
@end
@implementation NSScrubberLayout
// Configuring
- (Class) layoutAttributesClass
{
return nil;
}
- (NSScrubber *) scrubber
{
return nil;
}
- (NSRect) visibleRect
{
return NSZeroRect;
}
- (void) invalidateLayout
{
}
// Subclassing layout
- (void) prepareLayout
{
}
- (NSSize) scrubberContentSize
{
return NSZeroSize;
}
- (NSScrubberLayoutAttributes *) layoutAttributesForItemAtIndex: (NSInteger)index
{
return nil;
}
- (NSScrubberLayoutAttributes *) layoutAttributesForItemsInRect: (NSRect)rect
{
return nil;
}
- (BOOL) shouldInvalidateLayoutForHighlightChange
{
return NO;
}
- (BOOL) shouldInvalidateLayoutForSelectionChange
{
return NO;
}
- (BOOL) shouldInvalidateLayoutForChangeFromVisibleRect: (NSRect)fromRect
toVisibleRect: (NSRect)toRect
{
return NO;
}
- (BOOL) automaticallyMirrorsInRightToLeftLayout
{
return NO;
}
- (instancetype) init
{
self = [super init];
return self;
}
- (instancetype) initWithCoder: (NSCoder *)coder
{
self = [super init];
return self;
}
- (void) encodeWithCoder: (NSCoder *)coder
{
}
@end

View file

@ -0,0 +1,48 @@
/* Implementation of class NSSharingServicePickerToolbarItem
Copyright (C) 2019 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Tue Apr 7 08:11:46 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.
*/
#import "AppKit/NSSharingServicePickerToolbarItem.h"
@implementation NSSharingServicePickerToolbarItem
- (id) activityItemsConfiguration
{
return nil;
}
- (void) setActivityItemsConfiguration: (id)items
{
}
- (id<NSSharingServicePickerToolbarItemDelegate>) delegate
{
return nil;
}
- (void) setDelegate: (id<NSSharingServicePickerToolbarItemDelegate>) delegate
{
}
@end

View file

@ -0,0 +1,110 @@
/* Implementation of class NSSharingServicePickerToolbarItem
Copyright (C) 2019 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Tue Apr 7 08:11:46 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.
*/
#import <Foundation/NSObject.h>
#import <Foundation/NSCoder.h>
#import <Foundation/NSSet.h>
#import <Foundation/NSString.h>
#import "AppKit/NSUserInterfaceCompression.h"
@implementation NSUserInterfaceCompressionOptions
- (instancetype) initWithIdentifier: (NSString *)identifier
{
return nil;
}
- (instancetype) initWithCompressionOptions: (NSSet *)opts
{
return nil;
}
- (BOOL) containsOptions: (NSUserInterfaceCompressionOptions *)opts
{
return NO;
}
- (BOOL) intersectsOptions: (NSUserInterfaceCompressionOptions *)opts
{
return NO;
}
- (BOOL) isEmpty
{
return NO;
}
- (NSUserInterfaceCompressionOptions *) optionsByAddingOptions: (NSUserInterfaceCompressionOptions *)opts
{
return nil;
}
- (NSUserInterfaceCompressionOptions *) optionsByRemovingOptions: (NSUserInterfaceCompressionOptions *)opts
{
return nil;
}
+ (NSUserInterfaceCompressionOptions *) hideImagesOption
{
return nil;
}
+ (NSUserInterfaceCompressionOptions *) hideTextOption
{
return nil;
}
+ (NSUserInterfaceCompressionOptions *) reduceMetricsOption
{
return nil;
}
+ (NSUserInterfaceCompressionOptions *) breakEqualWidthsOption
{
return nil;
}
+ (NSUserInterfaceCompressionOptions *) standardOptions
{
return nil;
}
- (void) encodeWithCoder: (NSCoder *)coder
{
}
- (id) initWithCoder: (NSCoder *)coder
{
self = [super init];
return self;
}
- (id) copyWithZone: (NSZone *)z
{
return self;
}
@end

View file

@ -0,0 +1,50 @@
/* Implementation of class NSUserInterfaceItemSearching
Copyright (C) 2019 Free Software Foundation, Inc.
By: Gregory John Casamento
Date: Tue Apr 7 08:11:46 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.
*/
#import <Foundation/NSObject.h>
#import <Foundation/NSCoder.h>
#import "AppKit/NSApplication.h"
#import "AppKit/NSUserInterfaceItemSearching.h"
@implementation NSApplication (NSUserInterfaceItemSearching)
- (void) registerUserInterfaceItemSearchHandler: (id<NSUserInterfaceItemSearching>)handler
{
}
- (void) unregisterUserInterfaceItemSearchHandler: (id<NSUserInterfaceItemSearching>)handler
{
}
- (BOOL) searchString:(NSString *)searchString
inUserInterfaceItemString:(NSString *)stringToSearch
searchRange:(NSRange)searchRange
foundRange:(NSRange *)foundRange
{
return NO;
}
@end