|
OWLNext 6.32
|
Classes | |
| class | owl::TTreeViewCtrlView |
| class | owl::TListViewCtrlView |
| class | owl::TDocManager |
| class | owl::TDvOpenSaveData |
| class | owl::TDvOpenSaveDataOwner |
| class | owl::TDvFileOpenDialog |
| class | owl::TDvFileSaveDialog |
| class | owl::TDocTemplate |
| class | owl::TDocTemplateT< D, V > |
| class | owl::TDocument |
| class | owl::TView |
| Abstract base class for view access from document. More... | |
| class | owl::TWindowView |
| class | owl::TDialogView |
| class | owl::TStream |
| class | owl::TInStream |
| class | owl::TOutStream |
| class | owl::TEditView |
| class | owl::TFileDocument |
| class | owl::TListBoxView |
| Provides views for list boxes. More... | |
| class | owl::TPaneSplitterView |
Defines | |
| #define | _DOCVIEWCLASS _USERCLASS |
| #define | DECLARE_STREAMABLE_OPSDV(cls) |
| #define | PREV_OPEN (ofNoCreate|ofNoReplace) |
| #define | IS_PREV_OPEN(omode) ((omode & PREV_OPEN)==PREV_OPEN) |
| #define | B_void_Dispatch B_Dispatch |
| #define | B_int_Dispatch B_I2_Dispatch |
| #define | B_pointer_Dispatch B_POINTER_Dispatch |
| #define | B_long_Dispatch B_LPARAM_Dispatch |
| #define | NOTIFY_SIG(id, arg) |
| #define | VN_DEFINE(id, method, disp) |
Typedefs | |
| typedef TTreeViewCtrlView | owl::TTreeWindowView |
Enumerations | |
| enum | { owl::dnCreate, owl::dnClose, owl::dnRename } |
| enum | owl::TDocMode { owl::ofParent = 0, owl::ofRead = std::ios::in, owl::ofWrite = std::ios::out, ofReadWrite = (ofRead|ofWrite), owl::ofAtEnd = std::ios::ate, owl::ofAppend = std::ios::app, owl::ofTruncate = std::ios::trunc, owl::ofNoCreate = 0x40, owl::ofNoReplace = 0x80, ofBinary = std::ios::binary, ofIosMask = 0x00FF, owl::ofTransacted = 0x1000, owl::ofPreserve = 0x2000, owl::ofPriority = 0x4000, owl::ofTemporary = 0x8000, owl::shCompat = 0x0600, owl::shNone = 0x0800, owl::shRead = 0x0A00, owl::shWrite = 0x0C00, owl::shReadWrite = 0x0E00, owl::shDefault = 0, shMask = (shCompat|shNone|shRead|shWrite) } |
Functions | |
| int | owl::FormatFileTime (FILETIME *pft, void *dest, int textlen) |
| bool | owl::TFileDocument::Open (int mode, LPCTSTR path=0) |
| bool | owl::TFileDocument::Close () |
| TInStream * | owl::TFileDocument::InStream (int mode, LPCTSTR strmId=0) |
| TOutStream * | owl::TFileDocument::OutStream (int mode, LPCTSTR strmId=0) |
| bool | owl::TFileDocument::Commit (bool force=false) |
| bool | owl::TFileDocument::Revert (bool clear=false) |
| int | owl::TFileDocument::FindProperty (LPCTSTR name) |
| int | owl::TFileDocument::PropertyFlags (int index) |
| LPCTSTR | owl::TFileDocument::PropertyName (int index) |
| int | owl::TFileDocument::GetProperty (int index, void *dest, int textlen=0) |
| bool | owl::TFileDocument::SetProperty (int index, const void *src) |
| bool | owl::TFileDocument::Open (HFILE fhdl) |
| HFILE | owl::TFileDocument::OpenThisFile (int omode, const tstring &fileName, std::streampos *pseekpos) |
| void | owl::TFileDocument::CloseThisFile (HFILE fhdl, int omode) |
Variables | |
| const long | owl::dtProhibited |
| const long | owl::dtNewDoc = 0x80000000L |
| const long | owl::dtAutoDelete = 0x40000000L |
| const long | owl::dtNoAutoView = 0x20000000L |
| const long | owl::dtSingleView = 0x10000000L |
| const long | owl::dtAutoOpen = 0x08000000L |
| const long | owl::dtUpdateDir = 0x04000000L |
| const long | owl::dtHidden = 0x02000000L |
| const long | owl::dtSelected = 0x01000000L |
| const long | owl::dtDynRegInfo = 0x00800000L |
| const long | owl::dtSingleUse = 0x00400000L |
| const long | owl::dtRegisterExt = 0x00200000L |
| const long | owl::dtForbidNew = 0x00100000L |
| const long | owl::dtReadOnly = 0x0001 |
| const long | owl::dtOverwritePrompt = 0x0002 |
| const long | owl::dtHideReadOnly = 0x0004 |
| const long | owl::dtPathMustExist = 0x0800 |
| const long | owl::dtFileMustExist = 0x1000 |
| const long | owl::dtCreatePrompt = 0x2000 |
| const long | owl::dtNoReadOnly = 0x8000 |
| const long | owl::dtNoTestCreate = 0x10000L |
Friends | |
| class | owl::TFileDocument::TFileInStream |
| class | owl::TFileDocument::TFileOutStream |
Definitions of dmXxx document manager operational mode flags | |
| const int | owl::dmSDI = 0x0001 |
| const int | owl::dmMDI = 0x0002 |
| const int | owl::dmMenu = 0x0004 |
| const int | owl::dmSaveEnable = 0x0010 |
| const int | owl::dmNoRevert = 0x0020 |
Custom OWL Window Messages | |
These macros handle OWL-defined window messages used internally by the framework: | |
| #define | EV_WM_PREPROCMENU |
| #define | EV_WM_CANCLOSE |
| #define | EV_WM_WAKEUP |
Definitions of vnXxxx view notification event IDs | |
event ID's up to vnCustomBase reserved for general doc-view notifications | |
| const int | owl::vnViewOpened = 1 |
| const int | owl::vnViewClosed = 2 |
| const int | owl::vnDocOpened = 3 |
| const int | owl::vnDocClosed = 4 |
| const int | owl::vnCommit = 5 |
| const int | owl::vnRevert = 6 |
| const int | owl::vnIsDirty = 7 |
| const int | owl::vnIsWindow = 8 |
| const int | owl::vnCustomBase = 100 |
Document and view property access flags | |
Define document and view property attributes. Documents, views, and applications use these attributes to determine how to process a document or view. | |
| const int | owl::pfGetText = 1 |
| const int | owl::pfGetBinary = 2 |
| const int | owl::pfConstant = 4 |
| const int | owl::pfSettable = 8 |
| const int | owl::pfUnknown = 16 |
| const int | owl::pfHidden = 32 |
| const int | owl::pfUserDef = 128 |
Document View Messages | |
These macros handle view-related messages generated by the document manager. VnHandler is a generic term for the view notification handler function. | |
| #define | EV_VN_VIEWOPENED VN_DEFINE(::owl::vnViewOpened, VnViewOpened, pointer) |
| #define | EV_VN_VIEWCLOSED VN_DEFINE(::owl::vnViewClosed, VnViewClosed, pointer) |
| #define | EV_VN_DOCOPENED VN_DEFINE(::owl::vnDocOpened, VnDocOpened, int) |
| #define | EV_VN_DOCCLOSED VN_DEFINE(::owl::vnDocClosed, VnDocClosed, int) |
| #define | EV_VN_COMMIT VN_DEFINE(::owl::vnCommit, VnCommit, int) |
| #define | EV_VN_REVERT VN_DEFINE(::owl::vnRevert, VnRevert, int) |
| #define | EV_VN_ISDIRTY VN_DEFINE(::owl::vnIsDirty, VnIsDirty, void) |
| #define | EV_VN_ISWINDOW VN_DEFINE(::owl::vnIsWindow, VnIsWindow, int) |
| owl::TFileDocument::TFileDocument (TDocument *parent=0) | |
| owl::TFileDocument::~TFileDocument () | |
| bool | owl::TFileDocument::IsOpen () |
| int | owl::TFileDocument::PropertyCount () |
Doc/View class support the Doc/View model, a system in which data is contained in and accessed through a document object, and displayed and manipulated through a view object. Any number of views can be associated with a particular document type. Various classes control the flow of information within this system. Several classes also provide support for OLE's compound document and compound file structure within the Doc/View model.
TDocManager is the base class designed to handle documents, templates, messages and so on.
TDocument is an abstract base class that serves as an interface between the document, its views and its document manager.TStorageDocument supports OLE's compound file structure and lets you create compound documents with embedded objects.TOleDocument implements the document half of an OLE-enabled Doc/View application.TView is the base class that displays the document's data and gets user input.TListBoxView supports views for list boxes.TEditView supports views for edit control.TDialogView supports views for dialog.TRichEditView supports views for edit control.TOleView supports the view half of an OLE-enabled Doc/View application. | #define B_int_Dispatch B_I2_Dispatch |
LPARAM as int.
| #define B_long_Dispatch B_LPARAM_Dispatch |
LPARAM as long.
| #define B_pointer_Dispatch B_POINTER_Dispatch |
LPARAM as void*.
| #define B_void_Dispatch B_Dispatch |
No parameters.
| #define DECLARE_STREAMABLE_OPSDV | ( | cls | ) |
static ipstream& readRef( ipstream& is, cls& cl ); \ friend inline ipstream& operator >> ( ipstream& is, cls& cl ) \ { return cls::readRef( is, cl ); } \ static ipstream& readPtr( ipstream& is, cls*& cl ); \ friend inline ipstream& operator >> ( ipstream& is, cls*& cl ) \ { return cls::readPtr( is, cl ); } \ static opstream& writeRef( opstream& is, const cls& cl ); \ friend inline opstream& operator << ( opstream& os, const cls& cl ) \ { return cls::writeRef( os, cl ); } \ static opstream& writePtr( opstream& is, const cls* cl ); \ friend inline opstream& operator << ( opstream& os, const cls* cl ) \ { return cls::writePtr( os, cl ); }
| #define EV_WM_CANCLOSE |
{{WM_OWLCANCLOSE}, 0, (::owl::TAnyDispatcher) ::owl::B_Dispatch,\
(TMyPMF)::owl::B_Sig(&TMyClass::EvCanClose)}
| #define EV_WM_PREPROCMENU |
{{WM_OWLPREPROCMENU}, 0, (::owl::TAnyDispatcher) ::owl::v_WPARAM_Dispatch,\
(TMyPMF)::owl::v_HMENU_Sig(&TMyClass::EvPreProcessMenu)}
| #define EV_WM_WAKEUP |
{{WM_OWLWAKEUP}, 0, (::owl::TAnyDispatcher) ::owl::v_Dispatch,\
(TMyPMF)::owl::v_Sig(&TMyClass::EvWakeUp)}
| #define NOTIFY_SIG | ( | id, | |
| arg | |||
| ) |
template <class T> \ inline bool _CALLCNVN (T::*id##_Sig(bool _CALLCNVN (T::*pmf)(arg)))(arg) {return pmf;}
| #define VN_DEFINE | ( | id, | |
| method, | |||
| disp | |||
| ) |
{{WM_OWLNOTIFY}, id, \
(::owl::TAnyDispatcher) ::owl::B_##disp##_Dispatch, \
(TMyPMF)id##_Sig(&TMyClass::method)}
Define a DocView notification response entry 'id' is the id from NOTIFY_SIG above 'method' is the method name called by the notification 'disp' is the type of the lParam dispacher to use, and can be: 'void' lParam not passed 'int' integer size (16bit for win16, or 32bit on win32) 'pointer' pointer size (16bit for small & medium, or 32bit all other) 'long' 32 bit passed always
| anonymous enum |
| enum owl::TDocMode |
Document open and sharing modes - used in storage and stream constructors.
Defines the document and open sharing modes used for constructing streams and storing data. Any constants that have the same functionality as those used by OLE 2.0 doc files are indicated in the following table; for example, STGM_TRANSACTED, STGM_CONVERT, STGM_PRIORITY, and STGM_DELETEONRELEASE. Although files are typically used for data storage, databases or spreadsheets can also be used. I/O streams rather than DOS use these bit values. Documents open the object used for storage in one of the following modes:
| owl::TFileDocument::TFileDocument | ( | TDocument * | parent = 0 | ) | [inline] |
Constructs a TFileDocument object with the optional parent document.
| owl::TFileDocument::~TFileDocument | ( | ) | [inline] |
Destroys a TFileDocument object.
| bool owl::TFileDocument::Close | ( | ) | [virtual] |
< String-aware overload
Closes the document but does not delete or detach any associated views. Before closing the document, Close calls TDocument::Close to make sure all child documents are closed. If any children are open, Close returns 0 and does not close the document. If all children are closed, Close checks to see if any associated streams are open, and if so, returns 0 and does not close the document. If there are no open streams, Close closes the file.
Reimplemented from owl::TDocument.
| void owl::TFileDocument::CloseThisFile | ( | HFILE | fhdl, |
| int | omode | ||
| ) | [protected] |
Closes the file handle if the associated file was opened by TFileDocument. Calls TDocument::NotifyViews() to notify all views that the file document has closed.
References owl::vnDocClosed.
| bool owl::TFileDocument::Commit | ( | bool | force = false | ) | [virtual] |
< String-aware overload
Calls TDocument::Commit and clears TDocument's DirtyFlag data member, thus indicating that there are no unsaved changes made to the document.
Reimplemented from owl::TDocument.
| int owl::TFileDocument::FindProperty | ( | LPCTSTR | name | ) | [virtual] |
return index
Gets the property index, given the property name (name). Returns 0 if the name is not found.
Reimplemented from owl::TDocument.
| int owl::TFileDocument::GetProperty | ( | int | prop, |
| void * | dest, | ||
| int | textlen = 0 |
||
| ) | [virtual] |
Overrides TDocument::GetProperty and gets the property ID for the current file document.
Reimplemented from owl::TDocument.
| TInStream * owl::TFileDocument::InStream | ( | int | omode, |
| LPCTSTR | strmId = 0 |
||
| ) | [virtual] |
Overrides TDocument::InStream and provides generic input for the particular storage medium. InStream returns a pointer to a TInStream. mode is a combination of the ios bits defined in iostream.h. strmId is not used for file documents. The view reads data from the document as a stream or through stream functions.
Reimplemented from owl::TDocument.
References owl::ofParent, and owl::ofRead.
| bool owl::TFileDocument::IsOpen | ( | ) | [inline, virtual] |
Is nonzero if the document or any streams are open.
Reimplemented from owl::TDocument.
| bool owl::TFileDocument::Open | ( | HFILE | fhdl | ) |
open on existing file handle
Opens a file document using an existing file handle. Sets TDocument::OpenMode to PREV_OPEN and read/write. Sets the document path to 0. Sets FHdl to fhdl. Always returns a nonzero value.
| bool owl::TFileDocument::Open | ( | int | omode, |
| LPCTSTR | path = 0 |
||
| ) | [virtual] |
Overrides TDocument::Open and opens the file using the specified path. If the file is already open, returns 0. Calls TDocument::SetDocPath to set the directory path. If mode is not 0, sets TDocument::OpenMode to mode. If the file cannot be opened, returns 0.
Reimplemented from owl::TDocument.
| HFILE owl::TFileDocument::OpenThisFile | ( | int | omode, |
| const tstring & | fileName, | ||
| std::streampos * | pseekpos | ||
| ) | [protected] |
Opens the file document after checking the file sharing mode (omode). If a file mode is not specified as read, write, or read and write, OpenThisFile returns 0.
References owl::ofAppend, owl::ofAtEnd, owl::ofNoCreate, owl::ofNoReplace, owl::ofRead, owl::ofTruncate, owl::ofWrite, owl::shCompat, owl::shRead, owl::shReadWrite, and owl::vnDocOpened.
| TOutStream * owl::TFileDocument::OutStream | ( | int | omode, |
| LPCTSTR | strmId = 0 |
||
| ) | [virtual] |
< String-aware overload
Overrides TDocument::OutStream and provides generic input for the particular storage medium. OutStream returns a pointer to a TOutStream. mode is a combination of the ios bits defined in iostream.h. strmId is not used for file documents. Instead, the view reads data from the document through stream functions.
Reimplemented from owl::TDocument.
References owl::ofParent, and owl::ofWrite.
| int owl::TFileDocument::PropertyCount | ( | ) | [inline, virtual] |
Return the number of property support by this document.
Reimplemented from owl::TDocument.
References owl::TFileDocument::NextProperty.
| int owl::TFileDocument::PropertyFlags | ( | int | index | ) | [virtual] |
< String-aware overload
Returns the property attribute constants (pfGetText, pfHidden, and so on).
Reimplemented from owl::TDocument.
| LPCTSTR owl::TFileDocument::PropertyName | ( | int | index | ) | [virtual] |
Returns the text name of the property given the index value.
Reimplemented from owl::TDocument.
| bool owl::TFileDocument::Revert | ( | bool | clear = false | ) | [virtual] |
Calls TDocument::Revert to notify the views to refresh their data. If clear is false, the data is restored instead of cleared.
Reimplemented from owl::TDocument.
| bool owl::TFileDocument::SetProperty | ( | int | prop, |
| const void * | src | ||
| ) | [virtual] |
Sets the property data, which must be in the native data type (either string or binary).
Reimplemented from owl::TDocument.
| const int owl::dmMDI = 0x0002 |
Supports multiple open documents.
| const int owl::dmMenu = 0x0004 |
Set IDs for file menu.
| const int owl::dmNoRevert = 0x0020 |
Disable FileRevert menu item
| const int owl::dmSaveEnable = 0x0010 |
Enable FileSave even if doc is unmodified.
| const int owl::dmSDI = 0x0001 |
Does not support multiple open documents.
| const long owl::dtAutoDelete = 0x40000000L |
delete doc when last view is deleted
| const long owl::dtAutoOpen = 0x08000000L |
open document upon creation
| const long owl::dtDynRegInfo = 0x00800000L |
reginfo table is dynamic, not static
| const long owl::dtForbidNew = 0x00100000L |
forbids creating new document
| const long owl::dtHidden = 0x02000000L |
hide template from user selection
| const long owl::dtNewDoc = 0x80000000L |
create new document, no path used
| const long owl::dtNoAutoView = 0x20000000L |
no automatic create of default view
| const long owl::dtProhibited |
OFN_ENABLEHOOK |
OFN_ENABLETEMPLATE |
OFN_ALLOWMULTISELECT |
OFN_ENABLETEMPLATEHANDLE
Flags which are stripped off when invoking Open/Save dialogs [See SelectDocPath() method for more information ]
| const long owl::dtRegisterExt = 0x00200000L |
register extension with this app
| const long owl::dtSelected = 0x01000000L |
indicates template last selected
| const long owl::dtSingleUse = 0x00400000L |
to be registered as single use
| const long owl::dtSingleView = 0x10000000L |
only a single view per document
| const long owl::dtUpdateDir = 0x04000000L |
syncronize directory with dialog dir
| const int owl::pfConstant = 4 |
property is invariant for object instance
| const int owl::pfGetBinary = 2 |
property accessible as native non-text format
| const int owl::pfGetText = 1 |
property accessible as text format
| const int owl::pfHidden = 32 |
property should be hidden from normal browse
| const int owl::pfSettable = 8 |
property settable as native format
| const int owl::pfUnknown = 16 |
property defined but unavailable in object
| const int owl::pfUserDef = 128 |
property has been user-defined at run time
| const int owl::vnCommit = 5 |
document is committing, flush cached changes
| const int owl::vnCustomBase = 100 |
base of document class specific notifications
| const int owl::vnDocClosed = 4 |
document has just been closed
| const int owl::vnDocOpened = 3 |
document has just been opened
| const int owl::vnIsDirty = 7 |
respond true if uncommitted changes present
| const int owl::vnIsWindow = 8 |
respond true if passed HWND is that of view
| const int owl::vnRevert = 6 |
document has reverted, reload data from doc
| const int owl::vnViewClosed = 2 |
another view is about to be destructed
| const int owl::vnViewOpened = 1 |
a new view has just been constructed
1.7.4