Drag & drop

Post on 15-May-2015

2.686 views 3 download

Transcript of Drag & drop

Destination Finale 11

Stéphane SudreGlisseur-déposeur

Démo

Sélection Simple

Drop autorisé

Sélection Multiple

Sélection continue

Interdire juste au-dessus et en dessous de la sélection

Sélection discontinue

Interdire en dessous de chaque élément de la sélection

Sélection continue ?

NSIndexSet

{ 1 , 3 , 4 } { 3 , 4 } { 0 , 2 }

nombre = dernier - premier + 1 ?

@implementation NSIndexSet (Analysis)

- (BOOL)containsOnlyOneRange{

NSUInteger tCount=[self count];

if (tCount>0){

NSUInteger tFirstIndex=[self firstIndex]; NSUInteger tLastIndex=[self lastIndex];

return ((tLastIndex-tFirstIndex+1)==tCount);}

return NO;

}

@end

if ([_internalDragData containsOnlyOneRange]==YES){

NSUInteger tFirstIndex=[_internalDragData firstIndex];NSUInteger tLastIndex=[_internalDragData lastIndex];

if (destRow>=tFirstIndex && destRow<=(tLastIndex+1))

return NSDragOperationNone;}else{

if ([_internalDragData containsIndex:(destRow-1)]==YES)return NSDragOperationNone;

} return NSDragOperationMove;

Démo

Références

Sample Code

s.sudre.free.fr/Stuff/CocoaHeads/Drag&DropSampleCode.zip

Q A&