Merge some of the changes from the testplant branch.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@40362 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Fred Kiefer 2017-03-05 22:12:15 +00:00
parent 1323c50d6e
commit 2efe9de227
6 changed files with 144 additions and 47 deletions

View file

@ -1,3 +1,12 @@
2017-03-05 Fred Kiefer <FredKiefer@gmx.de>
* Headers/AppKit/NSImage.h
* Headers/AppKit/NSSplitView.h
* Source/NSImage.m
* Source/NSProgressIndicator.m
* Source/NSTableHeaderView.m
Merge some of the changes from the testplant branch.
2017-02-20 Fred Kiefer <FredKiefer@gmx.de>
* Source/GSHorizontalTypesetter.m (-layoutLineNewParagraph:): Add

View file

@ -83,6 +83,45 @@ typedef enum {
NSImageCacheNever
} NSImageCacheMode;
#if OS_API_VERSION(MAC_OS_X_VERSION_10_5, GS_API_LATEST)
APPKIT_EXTERN NSString *const NSImageNameQuickLookTemplate;
APPKIT_EXTERN NSString *const NSImageNameBluetoothTemplate;
APPKIT_EXTERN NSString *const NSImageNameIChatTheaterTemplate;
APPKIT_EXTERN NSString *const NSImageNameSlideshowTemplate;
APPKIT_EXTERN NSString *const NSImageNameActionTemplate;
APPKIT_EXTERN NSString *const NSImageNameSmartBadgeTemplate;
APPKIT_EXTERN NSString *const NSImageNameIconViewTemplate;
APPKIT_EXTERN NSString *const NSImageNameListViewTemplate;
APPKIT_EXTERN NSString *const NSImageNameColumnViewTemplate;
APPKIT_EXTERN NSString *const NSImageNameFlowViewTemplate;
APPKIT_EXTERN NSString *const NSImageNamePathTemplate;
APPKIT_EXTERN NSString *const NSImageNameInvalidDataFreestandingTemplate;
APPKIT_EXTERN NSString *const NSImageNameLockLockedTemplate;
APPKIT_EXTERN NSString *const NSImageNameLockUnlockedTemplate;
APPKIT_EXTERN NSString *const NSImageNameGoRightTemplate;
APPKIT_EXTERN NSString *const NSImageNameGoLeftTemplate;
APPKIT_EXTERN NSString *const NSImageNameRightFacingTriangleTemplate;
APPKIT_EXTERN NSString *const NSImageNameLeftFacingTriangleTemplate;
APPKIT_EXTERN NSString *const NSImageNameAddTemplate;
APPKIT_EXTERN NSString *const NSImageNameRemoveTemplate;
APPKIT_EXTERN NSString *const NSImageNameRevealFreestandingTemplate;
APPKIT_EXTERN NSString *const NSImageNameFollowLinkFreestandingTemplate;
APPKIT_EXTERN NSString *const NSImageNameEnterFullScreenTemplate;
APPKIT_EXTERN NSString *const NSImageNameExitFullScreenTemplate;
APPKIT_EXTERN NSString *const NSImageNameStopProgressTemplate;
APPKIT_EXTERN NSString *const NSImageNameStopProgressFreestandingTemplate;
APPKIT_EXTERN NSString *const NSImageNameRefreshTemplate;
APPKIT_EXTERN NSString *const NSImageNameRefreshFreestandingTemplate;
APPKIT_EXTERN NSString *const NSImageNameBonjour;
APPKIT_EXTERN NSString *const NSImageNameComputer;
APPKIT_EXTERN NSString *const NSImageNameFolderBurnable;
APPKIT_EXTERN NSString *const NSImageNameFolderSmart;
APPKIT_EXTERN NSString *const NSImageNameNetwork;
#endif
#if OS_API_VERSION(MAC_OS_X_VERSION_10_6, GS_API_LATEST)
APPKIT_EXTERN NSString *const NSImageNameFolder;
#endif
@interface NSImage : NSObject <NSCoding, NSCopying>
{

View file

@ -38,6 +38,9 @@
enum {
NSSplitViewDividerStyleThick = 1,
NSSplitViewDividerStyleThin = 2,
#if OS_API_VERSION(MAC_OS_X_VERSION_10_6, GS_API_LATEST)
NSSplitViewDividerStylePaneSplitter = 3,
#endif
};
typedef NSInteger NSSplitViewDividerStyle;
#endif

View file

@ -60,6 +60,41 @@ BOOL NSImageForceCaching = NO; /* use on missmatch */
static NSDictionary *nsmapping = nil;
// OS_API_VERSION(MAC_OS_X_VERSION_10_5, GS_API_LATEST)
NSString *const NSImageNameQuickLookTemplate = @"NSQuickLookTemplate";
NSString *const NSImageNameBluetooth = @"NSBluetoothTemplate";
NSString *const NSImageNameIChatTheater = @"NSIChatTheaterTemplate";
NSString *const NSImageNameSlideshow = @"NSSlideshowTemplate";
NSString *const NSImageNameAction = @"NSActionTemplate";
NSString *const NSImageNameSmartBadge = @"NSSmartBadgeTemplate";
NSString *const NSImageNameIconView = @"NSIconViewTemplate";
NSString *const NSImageNameListView = @"NSListViewTemplate";
NSString *const NSImageNameColumnView = @"NSColumnViewTemplate";
NSString *const NSImageNameFlowView = @"NSFlowViewTemplate";
NSString *const NSImageNamePath = @"NSPathTemplate";
NSString *const NSImageNameInvalidDataFreestanding = @"NSInvalidDataFreestandingTemplate";
NSString *const NSImageNameLockLocked = @"NSLockLockedTemplate";
NSString *const NSImageNameLockUnlocked = @"NSLockUnlockedTemplate";
NSString *const NSImageNameGoRight = @"NSGoRightTemplate";
NSString *const NSImageNameGoLeft = @"NSGoLeftTemplate";
NSString *const NSImageNameRightFacingTriangle = @"NSRightFacingTriangleTemplate";
NSString *const NSImageNameLeftFacingTriangle = @"NSLeftFacingTriangleTemplate";
NSString *const NSImageNameAdd = @"NSAddTemplate";
NSString *const NSImageNameRemove = @"NSRemoveTemplate";
NSString *const NSImageNameRevealFreestanding = @"NSRevealFreestandingTemplate";
NSString *const NSImageNameFollowLinkFreestanding = @"NSFollowLinkFreestandingTemplate";
NSString *const NSImageNameEnterFullScreen = @"NSEnterFullScreenTemplate";
NSString *const NSImageNameExitFullScreen = @"NSExitFullScreenTemplate";
NSString *const NSImageNameStopProgress = @"NSStopProgressTemplate";
NSString *const NSImageNameStopProgressFreestanding = @"NSStopProgressFreestandingTemplate";
NSString *const NSImageNameRefresh = @"NSRefreshTemplate";
NSString *const NSImageNameRefreshFreestanding = @"NSRefreshFreestandingTemplate";
NSString *const NSImageNameBonjour = @"NSBonjour";
NSString *const NSImageNameComputer = @"NSComputer";
NSString *const NSImageNameFolderBurnable = @"NSFolderBurnable";
NSString *const NSImageNameFolderSmart = @"NSFolderSmart";
NSString *const NSImageNameNetwork = @"NSNetwork";
@interface NSView (Private)
- (void) _lockFocusInContext: (NSGraphicsContext *)ctxt inRect: (NSRect)rect;
@end

View file

@ -161,6 +161,17 @@
}
_isRunning = NO;
_count = 0;
[self setNeedsDisplay: YES];
}
- (BOOL) isHidden
{
if (!_isRunning && !_isDisplayedWhenStopped)
{
return YES;
}
return [super isHidden];
}
- (BOOL) usesThreadedAnimation
@ -296,6 +307,7 @@
_style = style;
_count = 0;
[self setDisplayedWhenStopped: (style == NSProgressIndicatorBarStyle)];
[self setBezeled: (style == NSProgressIndicatorBarStyle)];
[self sizeToFit];
[self setNeedsDisplay: YES];
}
@ -332,9 +344,6 @@
{
double val;
if (!_isRunning && !_isDisplayedWhenStopped)
return;
if (_doubleValue < _minValue)
val = 0.0;
else if (_doubleValue > _maxValue)
@ -419,50 +428,9 @@
if ([aDecoder allowsKeyedCoding])
{
// id matrix = [aDecoder decodeObjectForKey: @"NSDrawMatrix"];
if ([aDecoder containsValueForKey: @"NSMaxValue"])
{
double max = [aDecoder decodeDoubleForKey: @"NSMaxValue"];
[self setMaxValue: max];
}
else
{
_maxValue = 100.0;
}
if ([aDecoder containsValueForKey: @"NSMinValue"])
{
double min = [aDecoder decodeDoubleForKey: @"NSMinValue"];
[self setMinValue: min];
}
else
{
_minValue = 0.0;
}
if ([aDecoder containsValueForKey: @"NSpiFlags"])
{
int flags = [aDecoder decodeIntForKey: @"NSpiFlags"];
_isIndeterminate = ((flags & 2) == 2);
_controlTint = NSDefaultControlTint;
_controlSize = (flags & 0x100) ? NSSmallControlSize : NSRegularControlSize;
[self setStyle: (flags & 0x1000) ? NSProgressIndicatorSpinningStyle
: NSProgressIndicatorBarStyle];
_isDisplayedWhenStopped = ((flags & 0x2000) != 0x2000);
// ignore the rest, since they are not pertinent to GNUstep.
}
else
{
_isIndeterminate = YES;
_isDisplayedWhenStopped = YES;
_controlTint = NSDefaultControlTint;
_controlSize = NSRegularControlSize;
[self setStyle: NSProgressIndicatorBarStyle];
}
// things which Gorm encodes, but IB doesn't care about.
// process Gorm encodings that IB doesn't care about first
// otherwise we overwrite settings read in from XIB...
if ([aDecoder containsValueForKey: @"GSDoubleValue"])
{
_doubleValue = [aDecoder decodeDoubleForKey: @"GSDoubleValue"];
@ -507,6 +475,49 @@
{
_animationDelay = 5.0 / 60.0; // 1 twelfth a a second
}
// id matrix = [aDecoder decodeObjectForKey: @"NSDrawMatrix"];
if ([aDecoder containsValueForKey: @"NSMaxValue"])
{
double max = [aDecoder decodeDoubleForKey: @"NSMaxValue"];
[self setMaxValue: max];
}
else
{
_maxValue = 100.0;
}
if ([aDecoder containsValueForKey: @"NSMinValue"])
{
double min = [aDecoder decodeDoubleForKey: @"NSMinValue"];
[self setMinValue: min];
}
else
{
_minValue = 0.0;
}
if ([aDecoder containsValueForKey: @"NSpiFlags"])
{
int flags = [aDecoder decodeIntForKey: @"NSpiFlags"];
_isIndeterminate = ((flags & 2) == 2);
_controlTint = NSDefaultControlTint;
_controlSize = (flags & 0x100) ? NSSmallControlSize : NSRegularControlSize;
[self setStyle: (flags & 0x1000) ? NSProgressIndicatorSpinningStyle
: NSProgressIndicatorBarStyle];
_isDisplayedWhenStopped = ((flags & 0x2000) != 0x2000);
// ignore the rest, since they are not pertinent to GNUstep.
}
else
{
_isIndeterminate = YES;
_isDisplayedWhenStopped = YES;
_controlTint = NSDefaultControlTint;
_controlSize = NSRegularControlSize;
[self setStyle: NSProgressIndicatorBarStyle];
}
}
else
{

View file

@ -520,7 +520,7 @@
p = [self convertPoint: unconverted fromView: nil].x;
if (mouseDragged == NO)
{
NSLog(@"TODO: Deselect the column");
[self setNeedsDisplay:YES];
}
mouseDragged = YES;
if (p < minVisCoord || p > maxVisCoord)