OWLNext    7.0
Borland's Object Windows Library for the modern age
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
olemdifr.h
Go to the documentation of this file.
1//----------------------------------------------------------------------------
2// ObjectComponents
3// Copyright (c) 1994, 1996 by Borland International, All Rights Reserved
4//
5//----------------------------------------------------------------------------
6
7#if !defined(OCF_OLEMDIFR_H)
8#define OCF_OLEMDIFR_H
9
10#include <owl/private/defs.h>
11#if defined(BI_HAS_PRAGMA_ONCE)
12# pragma once
13#endif
14
15#include <ocf/oleframe.h>
16#include <owl/mdi.h>
17#include <memory>
18
19namespace ocf {
20
21// Generic definitions/compiler options (eg. alignment) preceeding the
22// definition of classes
23#include <owl/preclass.h>
24
25//
26/// \class TOleMDIFrame
27// ~~~~~ ~~~~~~~~~~~~
28/// Decorated MDI frame that supports OLE 2 using OCF
29//
30/// Derived from TMDIFrame and TOleFrame, TOleMDIFrame provides OLE user-interface
31/// support for the main window of a Multiple Document Interface (MDI) application.
32/// TOleMDIFrame also talks directly to the ObjectComponents classes through the use
33/// of a pointer to the OcApp object.
34///
35/// TOleMDIFrame inherits functionality from TMDIFrame that supports the use of MDI
36/// frame windows designed to serve as the main windows of an MDI-compliant
37/// application. It also inherits decorated frame window functionality that supports
38/// the addition of decorations (such as toolbars and status lines) to the frame
39/// window. In addition, TOleMDIFrame inherits the ability to
40/// - Create space that the server has requested in a container's frame
41/// window
42/// - Merge the container's menu into the server's menu
43/// - Process accelerators and other messages from the server's message
44/// queue
45/// - Support OLE 2 menu merging for pop-up menus
46///
47/// TOleMDIFrame also inherits from TOleFrame the ability to talk directly to the
48/// ObjectComponents classes through the use of a pointer to the OcApp object.
49///
50/// See Step 14 of the ObjectWindows tutorial for an example of a program that uses
51/// TOleMDIFrame to create an OLE-enabled decorated MDI frame window.
53 public:
54
56 LPCTSTR title,
57 owl::TResId menuResId,
58 std::unique_ptr<owl::TMDIClient> clientWnd = nullptr,
59 bool trackMenuSelection = false,
60 owl::TModule* = nullptr);
61
63 const owl::tstring& title,
64 owl::TResId menuResId,
65 std::unique_ptr<owl::TMDIClient> clientWnd = nullptr,
66 bool trackMenuSelection = false,
67 owl::TModule* = nullptr);
68
69#if defined(OWL5_COMPAT)
70
71 TOleMDIFrame(LPCTSTR title,
72 owl::TResId menuResId,
73 owl::TMDIClient& clientWnd,
74 bool trackMenuSelection = false,
75 owl::TModule* module = 0);
76
77#endif
78
80
81 protected:
82 virtual owl::TResult DefWindowProc(owl::TMsgId message, owl::TParam1, owl::TParam2);
83 bool EvOcAppInsMenus(TOcMenuDescr & sharedMenu);
84 void EvActivateApp(bool active, DWORD threadId);
85
87};
88
89// Generic definitions/compiler options (eg. alignment) following the
90// definition of classes
91#include <owl/posclass.h>
92
94
95
96} // OCF namespace
97
98
99#endif // OWL_OLEMDIFR_H
Decorated frame that supports OLE 2 using OCF.
Definition oleframe.h:65
Decorated MDI frame that supports OLE 2 using OCF.
Definition olemdifr.h:52
DECLARE_RESPONSE_TABLE(TOleMDIFrame)
Multiple Document Interface (MDI) client windows (represented by a TMDIClient object) manage the MDI ...
Definition mdi.h:37
Multiple Document Interface (MDI) frame windows, represented by TMDIFrame, are overlapped windows tha...
Definition mdi.h:122
ObjectWindows dynamic-link libraries (DLLs) construct an instance of TModule, which acts as an object...
Definition module.h:75
Definition of TMDIClient and TMDIFrame classes.
Object Component Framework (COM encapsulation)
Definition appdesc.h:22
TOleMDIFrame TOleMdiFrame
Definition olemdifr.h:93
UINT TMsgId
Message ID type.
Definition dispatch.h:53
LPARAM TParam2
Second parameter type.
Definition dispatch.h:55
WPARAM TParam1
First parameter type.
Definition dispatch.h:54
LRESULT TResult
Result type.
Definition dispatch.h:52
std::string tstring
Definition defs.h:79
#define _OCFCLASS
Definition defs.h:45