2 * Copyright 2006-2007, Haiku.
3 * Distributed under the terms of the MIT License.
6 * Stephan Aßmus <superstippi@gmx.de>
12 #include "IconBuild.h"
13 #include "Observable.h"
29 class Document
: public RWLocker
,
32 Document(const char* name
= NULL
);
35 inline ::CommandStack
* CommandStack() const
36 { return fCommandStack
; }
38 inline ::Selection
* Selection() const
39 { return fSelection
; }
41 void SetName(const char* name
);
42 const char* Name() const;
44 void SetNativeSaver(::DocumentSaver
* saver
);
45 inline ::DocumentSaver
* NativeSaver() const
46 { return fNativeSaver
; }
48 void SetExportSaver(::DocumentSaver
* saver
);
49 inline ::DocumentSaver
* ExportSaver() const
50 { return fExportSaver
; }
52 void SetIcon(_ICON_NAMESPACE Icon
* icon
);
53 inline _ICON_NAMESPACE Icon
* Icon() const
56 void MakeEmpty(bool includingSavers
= true);
61 _ICON_NAMESPACE Icon
* fIcon
;
62 ::CommandStack
* fCommandStack
;
63 ::Selection
* fSelection
;
67 ::DocumentSaver
* fNativeSaver
;
68 ::DocumentSaver
* fExportSaver
;