mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-25 13:40:54 +00:00
* Headers/AppKit/NSTableView.h,
* Source/NSTableView.m: Create working stubs for table view batch insertions/removals of rows Patch by Marcian Lytwyn <gna@advcsi.com>. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@38240 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
611f84bfb9
commit
36d207b9d2
3 changed files with 78 additions and 0 deletions
|
@ -1,3 +1,10 @@
|
|||
2014-12-08 Fred Kiefer <FredKiefer@gmx.de>
|
||||
|
||||
* Headers/AppKit/NSTableView.h,
|
||||
* Source/NSTableView.m:
|
||||
Create working stubs for table view batch insertions/removals of rows
|
||||
Patch by Marcian Lytwyn <gna@advcsi.com>.
|
||||
|
||||
2014-12-08 Fred Kiefer <FredKiefer@gmx.de>
|
||||
|
||||
* Source/NSParagraphStyle.m (-description): Add method.
|
||||
|
|
|
@ -68,6 +68,18 @@ typedef enum _NSTableViewColumnAutoresizingStyle
|
|||
} NSTableViewColumnAutoresizingStyle;
|
||||
#endif
|
||||
|
||||
#if OS_API_VERSION(MAC_OS_X_VERSION_10_7, GS_API_LATEST)
|
||||
typedef enum _NSTableViewAnimationOptions
|
||||
{
|
||||
NSTableViewAnimationEffectNone = 0x0,
|
||||
NSTableViewAnimationEffectFade = 0x1,
|
||||
NSTableViewAnimationEffectGap = 0x2,
|
||||
NSTableViewAnimationSlideUp = 0x10,
|
||||
NSTableViewAnimationSlideDown = 0x20,
|
||||
NSTableViewAnimationSlideLeft = 0x30,
|
||||
NSTableViewAnimationSlideRight = 0x40,
|
||||
} NSTableViewAnimationOptions;
|
||||
#endif
|
||||
|
||||
@interface NSTableView : NSControl <NSUserInterfaceValidations>
|
||||
{
|
||||
|
@ -148,6 +160,8 @@ typedef enum _NSTableViewColumnAutoresizingStyle
|
|||
|
||||
NSDragOperation _draggingSourceOperationMaskForLocal;
|
||||
NSDragOperation _draggingSourceOperationMaskForRemote;
|
||||
|
||||
NSInteger _beginEndUpdates;
|
||||
}
|
||||
|
||||
/* Data Source */
|
||||
|
@ -339,6 +353,19 @@ typedef enum _NSTableViewColumnAutoresizingStyle
|
|||
- (NSArray *) sortDescriptors;
|
||||
#endif
|
||||
|
||||
#if OS_API_VERSION(MAC_OS_X_VERSION_10_6, GS_API_LATEST)
|
||||
- (void) reloadDataForRowIndexes: (NSIndexSet*)rowIndexes columnIndexes: (NSIndexSet*)columnIndexes;
|
||||
#endif
|
||||
|
||||
#if OS_API_VERSION(MAC_OS_X_VERSION_10_7, GS_API_LATEST)
|
||||
- (void) beginUpdates;
|
||||
- (void) endUpdates;
|
||||
- (NSInteger) columnForView: (NSView*)view;
|
||||
- (void) insertRowsAtIndexes: (NSIndexSet*)indexes withAnimation: (NSTableViewAnimationOptions)animationOptions;
|
||||
- (void) removeRowsAtIndexes: (NSIndexSet*)indexes withAnimation: (NSTableViewAnimationOptions)animationOptions;
|
||||
- (NSInteger) rowForView: (NSView*)view;
|
||||
#endif
|
||||
|
||||
@end /* interface of NSTableView */
|
||||
|
||||
@interface NSTableView (GNUPrivate)
|
||||
|
|
|
@ -6724,6 +6724,50 @@ For a more detailed explanation, -setSortDescriptors:. */
|
|||
return NO;
|
||||
}
|
||||
|
||||
- (void) reloadDataForRowIndexes: (NSIndexSet*)rowIndexes
|
||||
columnIndexes: (NSIndexSet*)columnIndexes
|
||||
{
|
||||
[self reloadData];
|
||||
}
|
||||
|
||||
- (void) beginUpdates
|
||||
{
|
||||
_beginEndUpdates++;
|
||||
}
|
||||
|
||||
- (void) endUpdates
|
||||
{
|
||||
if (_beginEndUpdates > 0)
|
||||
{
|
||||
if (--_beginEndUpdates == 0)
|
||||
{
|
||||
// Process batched inserts/removes....
|
||||
// Just reload table for now until we get inserts/removes working...
|
||||
[self reloadData];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
- (NSInteger) columnForView: (NSView*)view
|
||||
{
|
||||
return NSNotFound;
|
||||
}
|
||||
|
||||
- (void) insertRowsAtIndexes: (NSIndexSet*)indexes
|
||||
withAnimation: (NSTableViewAnimationOptions)animationOptions
|
||||
{
|
||||
}
|
||||
|
||||
- (void) removeRowsAtIndexes: (NSIndexSet*)indexes
|
||||
withAnimation: (NSTableViewAnimationOptions)animationOptions
|
||||
{
|
||||
}
|
||||
|
||||
- (NSInteger) rowForView: (NSView*)view
|
||||
{
|
||||
return NSNotFound;
|
||||
}
|
||||
|
||||
@end /* implementation of NSTableView */
|
||||
|
||||
@implementation NSTableView (SelectionHelper)
|
||||
|
|
Loading…
Reference in a new issue