Charles.Forsyth20060303-partialeea662d19 years agoHistory
97 lines · 2.8 KB · Objective-C
RawDownload
Browser: module { 	PATH: con "/dis/grid/lib/browser.dis"; 	DESELECT: con 0;	SELECT: con 1;	TOGGLE: con 2;	OPEN: con 3;	CLOSE: con 4; 	init: fn ();	dialog: fn (ctxt: ref draw->Context, oldtop: ref Tk->Toplevel, butlist: list of string, title, msg: string): int;	prevpath: fn (path: string): string;	setcentre: fn (top1, top2: ref Tk->Toplevel); 	Browse: adt {		new: fn (top: ref Tk->Toplevel, tkchanname, root, rlabel: string, nopanes: int, reader: PathReader): ref Browse;		refresh: fn (b: self ref Browse);		defaultaction: fn (b: self ref Browse, lst: list of string, f: ref File);		getpath: fn (b: self ref Browse, tkpath: string): ref File;		opendir: fn (b: self ref Browse, file: File, tkpath: string, action: int): int;		newroot: fn (b: self ref Browse, root, rlabel: string);		changeview: fn (b: self ref Browse, nopanes: int);		selectfile: fn (b: self ref Browse, pane, action: int, file: File, tkpath: string);		gotoselectfile: fn (b: self ref Browse, file: File): string;		gotopath: fn (b: self ref Browse, dir: File, openfinal: int): (File, string);		getselected: fn (b: self ref Browse, pane: int): File;		addopened: fn (b: self ref Browse, file: File, add: int);		showpath: fn (b: self ref Browse, on: int);		resize: fn (b: self ref Browse);		top: ref Tk->Toplevel;		tkchan: string;		bgnorm, bgselect: string;		nopanes: int;		selected: array of Selected;		opened: list of File;		root, rlabel: string;		reader: PathReader;		pane1: File;		pane0width: string;		width: int;		showpathlabel: int;		released: int;	}; 	SELECTED: con 0;	UNSELECTED: con 1;	ALL: con 2; 	Select: adt {		new: fn (top: ref Tk->Toplevel, tkchanname: string): ref Select;		addframe: fn (s: self ref Select, fname, title: string);		showframe: fn (s: self ref Select, fname: string);		delframe: fn (s: self ref Select, fname: string);		addselection: fn (s: self ref Select, fname, text: string, lp: list of ref Parameter, allowdups: int): string;		delselection: fn (s: self ref Select, fname, tkpath: string);		getselection: fn (s: self ref Select, fname: string): list of (string, list of ref Parameter);		getselected: fn (s: self ref Select, fname: string): string;		select: fn (s: self ref Select, fname, tkpath: string, action: int);		defaultaction: fn (s: self ref Select, lst: list of string);		resize: fn (s: self ref Select, width, height: int);		setscrollr: fn (s: self ref Select, fname: string);		top: ref Tk->Toplevel;		tkchan: string;		currfname, currfid: string;		frames: list of ref Frame;	}; 	Frame: adt {		name: string;		path: string;		selected: string;	}; 	Parameter: adt {		pick {		ArgIn =>			name, initval: string;		ArgOut =>			name, val: string;		IntIn =>			min, max, initval: int;		IntOut =>			val: int;		}	}; 	File: adt {		eq: fn (a,b: File): int;		path, qid: string;	}; 	Selected: adt {		file: File;		tkpath: string;	};};