mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-05-31 06:10:48 +00:00
Create working stubs for table view batch insertions/removals of rows
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/branches/gnustep_testplant_branch@38234 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
290e5b3c34
commit
13202adda5
2 changed files with 69 additions and 1 deletions
|
@ -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>
|
||||
{
|
||||
|
@ -114,7 +126,8 @@ typedef enum _NSTableViewColumnAutoresizingStyle
|
|||
/*
|
||||
* Ivars Acting as Control...
|
||||
*/
|
||||
BOOL _isValidating;
|
||||
BOOL _isValidating;
|
||||
NSInteger _beginEndUpdates;
|
||||
|
||||
/*
|
||||
* Ivars Acting as Cache
|
||||
|
@ -341,6 +354,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)
|
||||
|
@ -459,6 +485,7 @@ dataCellForTableColumn: (NSTableColumn *)aTableColumn
|
|||
- (NSCell *)tableView:(NSTableView*)tableView dataCellForTableColumn:(NSTableColumn*)tableColumn row:(NSInteger)row;
|
||||
- (NSIndexSet *)tableView:(NSTableView*)tableView selectionIndexesForProposedSelection:(NSIndexSet*)proposedSelectionIndexes;
|
||||
#endif
|
||||
|
||||
@end
|
||||
|
||||
#endif /* _GNUstep_H_NSTableView */
|
||||
|
|
|
@ -6998,6 +6998,47 @@ 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…
Add table
Add a link
Reference in a new issue