This is File.h in view mode; [Download] [Up]
/*
File File.h
Release 1.2, 7 June 1994
Copyright (C) 1994 by H. Scott Roy
This code is part of IconKit, a general toolbox for drag-and-drop applications. IconKit is free for noncommercial use, but costs money for a commercial license. You should have received a copy of the license agreement with this file. If not, a copy of the license and the complete source of IconKit can be obtained from the author:
H. Scott Roy
2573 Stowe Ct.
Northbrook, IL 60062-8103
iconkit@cs.stanford.edu
For your editing convenience, this file is best viewed using an editor that automatically wraps long lines, in a fixed point font at 80 columns, with tabs every 4 spaces.
*/
/* ========================================================================== */
/*
These objects represent both plain files and folders. The workspace is used to find the necessary icons, titles, and file information. Files are a subclass of IconFolder so that they can be organized in a full directed graph.
File objects are cached, so that every filename will have exactly one File object. The caching not only improves efficiency, but also shows off how multiple viewers can easily reflect changes to the same file.
*/
#import "iconkit/iconkit.h"
/* ========================================================================== */
@interface File : IKFolder
{
char * path;
struct {
unsigned int imageLoaded:1;
unsigned int acceptingDragImageLoaded:1;
unsigned int parentLoaded:1;
unsigned int childrenLoaded:1;
} fileFlags;
}
+ initialize;
+ multipleSelectionClass;
+ (NXAtom *) pasteTypes;
+ fileForPath: (const char *) thePath;
+ fileForPathList: (const char *) thePath;
- initPath: (const char *) thePath;
- copyFromZone: (NXZone *) zone;
- free;
- (const char *) path;
- parents;
- children;
+ shelf: sender dragWillEnter: (id <NXDraggingInfo>) source;
+ shelf: sender dragWillExit: (id <NXDraggingInfo>) source;
+ shelf: sender dragWillComplete: (id <NXDraggingInfo>) source;
- copyToPasteboard: (Pasteboard *) pboard;
+ readFromPasteboard: (Pasteboard *) pboard;
@endThese are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.