OWLNext
7.0
Borland's Object Windows Library for the modern age
Toggle main menu visibility
Loading...
Searching...
No Matches
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
19
namespace
ocf
{
20
21
// Generic definitions/compiler options (eg. alignment) preceding 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.
52
class
_OCFCLASS
TOleMDIFrame
:
public
owl::TMDIFrame
,
public
TOleFrame
{
53
public
:
54
55
TOleMDIFrame
(
56
LPCTSTR title,
57
owl::TResId
menuResId,
58
std::unique_ptr<owl::TMDIClient> clientWnd =
nullptr
,
59
bool
trackMenuSelection =
false
,
60
owl::TModule
* =
nullptr
);
61
62
TOleMDIFrame
(
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
79
~TOleMDIFrame
();
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
86
DECLARE_RESPONSE_TABLE
(
TOleMDIFrame
);
87
};
88
89
// Generic definitions/compiler options (eg. alignment) following the
90
// definition of classes
91
#include <
owl/posclass.h
>
92
93
typedef
TOleMDIFrame
TOleMdiFrame
;
94
95
96
}
// OCF namespace
97
98
99
#endif
// OWL_OLEMDIFR_H
ocf::TOleFrame::TOleFrame
TOleFrame(LPCTSTR title, owl::TWindow *clientWnd, bool trackMenuSelection=false, owl::TModule *module=0)
Constructs a TOleFrame object with the specified caption for the frame window (title),...
Definition
oleframe.cpp:219
ocf::TOleMDIFrame
Decorated MDI frame that supports OLE 2 using OCF.
Definition
olemdifr.h:52
ocf::TOleMDIFrame::DefWindowProc
virtual owl::TResult DefWindowProc(owl::TMsgId message, owl::TParam1, owl::TParam2)
Allows default processing for all messages except for a resizing message concerning the frame window,...
Definition
olemdifr.cpp:147
ocf::TOleMDIFrame::EvOcAppInsMenus
bool EvOcAppInsMenus(TOcMenuDescr &sharedMenu)
Inserts menus into a provided menu bar, or merges them with a child window and servers.
Definition
olemdifr.cpp:98
ocf::TOleMDIFrame::EvActivateApp
void EvActivateApp(bool active, DWORD threadId)
Responds to a message indicating that the frame window of this application (hTask) is going to be eit...
Definition
olemdifr.cpp:84
ocf::TOleMDIFrame::TOleMDIFrame
TOleMDIFrame(LPCTSTR title, owl::TResId menuResId, std::unique_ptr< owl::TMDIClient > clientWnd=nullptr, bool trackMenuSelection=false, owl::TModule *=nullptr)
Constructs a TOleMDIFrame object with the indicated title, menu resource ID, client window,...
Definition
olemdifr.cpp:38
ocf::TOleMDIFrame::DECLARE_RESPONSE_TABLE
DECLARE_RESPONSE_TABLE(TOleMDIFrame)
owl::TMDIClient
Multiple Document Interface (MDI) client windows (represented by a TMDIClient object) manage the MDI ...
Definition
mdi.h:37
owl::TMDIFrame
Multiple Document Interface (MDI) frame windows, represented by TMDIFrame, are overlapped windows tha...
Definition
mdi.h:122
owl::TModule
ObjectWindows dynamic-link libraries (DLLs) construct an instance of TModule, which acts as an object...
Definition
module.h:78
owl::TResId
Definition
wsyscls.h:206
mdi.h
Definition of TMDIClient and TMDIFrame classes.
ocf
Object Component Framework (COM encapsulation).
Definition
appdesc.h:22
ocf::TOleMdiFrame
TOleMDIFrame TOleMdiFrame
Definition
olemdifr.h:93
owl::TMsgId
UINT TMsgId
Message ID type.
Definition
dispatch.h:53
owl::TParam2
LPARAM TParam2
Second parameter type.
Definition
dispatch.h:55
owl::TParam1
WPARAM TParam1
First parameter type.
Definition
dispatch.h:54
owl::TResult
LRESULT TResult
Result type.
Definition
dispatch.h:52
owl::tstring
std::string tstring
Definition
defs.h:79
_OCFCLASS
#define _OCFCLASS
Definition
defs.h:45
oleframe.h
defs.h
posclass.h
preclass.h
ocf::TOcMenuDescr
Definition
ocobject.h:140
include
ocf
olemdifr.h
Generated by
1.18.0