1 /*
2     This file is part of HelpViewer (http://www.roard.com/helpviewer)
3     Copyright (C) 2003 Nicolas Roard (nicolas@roard.com)
4 
5     This program is free software; you can redistribute it and/or modify
6     it under the terms of the GNU General Public License as published by
7     the Free Software Foundation; either version 2 of the License, or
8     (at your option) any later version.
9 
10     This program is distributed in the hope that it will be useful,
11     but WITHOUT ANY WARRANTY; without even the implied warranty of
12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13     GNU General Public License for more details.
14 
15     You should have received a copy of the GNU General Public License
16     along with this program; if not, write to the Free Software
17     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18 */
19 
20 #ifndef __SECTION_H__
21 #define __SECTION_H__
22 
23 #include <Foundation/Foundation.h>
24 #include <AppKit/AppKit.h>
25 #include "GNUstep.h"
26 #include "TextFormatter.h"
27 #include "HandlerStructure.h"
28 
29 #define SECTION_TYPE_NORMAL 0
30 #define SECTION_TYPE_CHAPTER 1
31 #define SECTION_TYPE_PART 2
32 #define SECTION_TYPE_PLAIN 3
33 
34 @interface Section : NSObject
35 {
36     NSMutableAttributedString* text;
37     NSString* header;
38     NSRange range;
39     NSMutableArray* subs;
40     Section* parent;
41     int type;
42     BOOL rendered;
43     BOOL loaded;
44     NSString* path;
45 }
46 - (id) initWithHeader: (NSString*) header;
47 - (NSMutableAttributedString*) text;
48 - (void) setType: (int) t;
49 - (int) type;
50 - (NSString*) header;
51 - (NSRange) range;
52 - (void) setRange: (NSRange) range;
53 - (void) addSub: (Section*) sub;
54 - (NSMutableArray*) subs;
55 - (Section*) parent;
56 - (void) setParent: (Section*) par;
57 - (void) print;
58 - (void) setPath: (NSString*) src;
59 - (void) setLoaded: (BOOL) load;
60 - (BOOL) loaded;
61 - (void) load;
62 - (NSMutableAttributedString*) contentWithLevel: (int) level ;
63 + (void) setTextFormatter: (id) obj;
64 + (void) setBundle: (NSBundle*) obj;
65 @end
66 
67 #endif
68