OWLNext
7.0
Borland's Object Windows Library for the modern age
Toggle main menu visibility
Loading...
Searching...
No Matches
rolldial.h
Go to the documentation of this file.
1
//----------------------------------------------------------------------------
2
// ObjectWindows
3
// Copyright (c) 1995, 1996 by Borland International, All Rights Reserved
4
//
5
//----------------------------------------------------------------------------
6
7
#if !defined(OWL_ROLLDIAL_H)
8
#define OWL_ROLLDIAL_H
9
10
#include <
owl/private/defs.h
>
11
#if defined(BI_HAS_PRAGMA_ONCE)
12
# pragma once
13
#endif
14
15
#include <
owl/dialog.h
>
16
17
18
namespace
owl
{
19
20
#include <
owl/preclass.h
>
21
22
/// \addtogroup dlg
23
/// @{
24
25
//
26
/// \class TRollDialog
27
// ~~~~~ ~~~~~~~~~~~
28
/// Allow a dialog to "roll" up and down, similar to the Corel interface.
29
/// This class is best used for modeless dialogs.
30
///
31
/// When the dialog is created, a menuitem is appended to the system menu.
32
/// This menu choice will be either Shrink or Expand depending upon which
33
/// state the dialog is currently in.
34
///
35
/// If the dialog contains minimize or maximize buttons, the behaviour
36
/// of those buttons map to shrink and expand respectively.
37
//
38
class
_OWLCLASS
TRollDialog
:
public
TDialog
{
39
public
:
40
TRollDialog
(
TWindow
* parent,
TResId
resId,
bool
animated =
true
,
41
bool
fullSize =
true
,
TModule
* module = 0);
42
43
// Override virtuals
44
//
45
void
SetupWindow
()
override
;
46
47
protected
:
48
void
Shrink
();
49
void
Expand
();
50
void
EvSysCommand
(
uint
,
const
TPoint
&);
51
bool
IsFullSize
;
///< track if the dialog is currently full size
52
53
private
:
54
/// Will need some enums to know when the mouse is over the non-client
55
/// button or when the user selects the system menu for rolling.
56
//
57
enum
{
58
SC_ROLLDIALOG = 0xFF00,
59
};
60
61
void
Resize(
bool
currentlyFullSize);
62
63
int
Height;
64
bool
InitialFullSize;
///< save constructor parameter
65
bool
HasSystemMenu;
66
bool
WantAnimation;
67
68
DECLARE_RESPONSE_TABLE
(
TRollDialog
);
69
};
70
71
/// @}
72
73
#include <
owl/posclass.h
>
74
75
76
}
// OWL namespace
77
78
79
#endif
// OWL_ROLLDIAL_H
owl::TDialog::TDialog
TDialog(TWindow *parent, TResId resId, TModule *module=nullptr)
Constructor for a TDialog object.
Definition
dialog.cpp:103
owl::TModule
ObjectWindows dynamic-link libraries (DLLs) construct an instance of TModule, which acts as an object...
Definition
module.h:78
owl::TPoint
TPoint is a support class, derived from tagPOINT.
Definition
geometry.h:87
owl::TResId
Definition
wsyscls.h:206
owl::TRollDialog
Allow a dialog to "roll" up and down, similar to the Corel interface.
Definition
rolldial.h:38
owl::TRollDialog::Expand
void Expand()
Event handler for the system menu option "expand".
Definition
rolldial.cpp:129
owl::TRollDialog::SetupWindow
void SetupWindow() override
Adds the shrink system menu option, if desired.
Definition
rolldial.cpp:59
owl::TRollDialog::IsFullSize
bool IsFullSize
track if the dialog is currently full size
Definition
rolldial.h:51
owl::TRollDialog::Shrink
void Shrink()
Event handler for the system menu option "shrink".
Definition
rolldial.cpp:109
owl::TRollDialog::EvSysCommand
void EvSysCommand(uint, const TPoint &)
Event handler for the system menu choice.
Definition
rolldial.cpp:147
owl::TRollDialog::TRollDialog
TRollDialog(TWindow *parent, TResId resId, bool animated=true, bool fullSize=true, TModule *module=0)
Sets up data members for the various properties of the dialog.
Definition
rolldial.cpp:44
owl::TWindow
TWindow, derived from TEventHandler and TStreamableBase, provides window-specific behavior and encaps...
Definition
window.h:414
dialog.h
Definition of TDialog class and TDialogAttr struct.
DECLARE_RESPONSE_TABLE
#define DECLARE_RESPONSE_TABLE(cls)
Definition
eventhan.h:436
owl
Object Windows Library (OWLNext Core).
Definition
animctrl.h:22
owl::uint
unsigned int uint
Definition
number.h:25
defs.h
_OWLCLASS
#define _OWLCLASS
Definition
defs.h:338
posclass.h
preclass.h
include
owl
rolldial.h
Generated by
1.18.0