fileTable.h 1.62 KB
Newer Older
1 2 3
/*
 Project: FTP

4
 Copyright (C) 2005-2016 Riccardo Mottola
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

 Author: Riccardo Mottola

 Created: 2005-04-12

 Table class for file listing

 This application is free software; you can redistribute it and/or
 modify it under the terms of the GNU General Public
 License as published by the Free Software Foundation; either
 version 2 of the License, or (at your option) any later version.

 This application 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
 Library General Public License for more details.

 You should have received a copy of the GNU General Public
 License along with this library; if not, write to the Free
 Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 */


#import <AppKit/AppKit.h>
#import "fileElement.h"

31
#define TAG_FILENAME @"filename"
32

33 34 35 36 37 38 39 40 41 42
#if !defined (GNUSTEP) &&  (MAC_OS_X_VERSION_MAX_ALLOWED <= MAC_OS_X_VERSION_10_4)
#ifndef NSInteger
#define NSInteger int
#endif
#ifndef NSUInteger
#define NSUInteger unsigned
#endif
#endif


43 44 45 46 47 48 49
enum sortOrderDef
{
  ascending, descending, undefined
};

@interface FileTable : NSObject
{
50
  NSMutableArray *fileStructs;
51 52 53
  NSMutableArray *sortedArray;
  NSString       *sortByIdent;
  enum sortOrderDef   sortOrder;
54 55 56
}

- (void)initData:(NSArray *)fnames;
57 58 59 60 61
- (void)clear;
- (FileElement *)elementAtIndex:(NSUInteger)index;
- (void)generateSortedArray;
- (void)addObject:(FileElement *)object;
- (void)removeObject:(FileElement *)object;
62
- (void)sortByIdent:(NSString *)idStr;
63 64
- (BOOL)containsFileName:(NSString *)name;

65 66

@end