-
首页
-
C4D R23.110 C++ SDK
#include <c4d_gui.h>
详细描述
Used to display GUI dialogs. Derive this class, overriding the necessary functions, and then call
Open()
to display it.
Internal Representation
|
CDialog *
|
Get
()
|
Plain Set
|
Bool
|
SetBool
(const
GadgetPtr
&id,
Int32
value,
Int32
tristate=0)
|
Bool
|
SetInt32
(const
GadgetPtr
&id,
Int32
value,
Int32
min=
LIMIT
<
Int32
>::
MIN
,
Int32
max=
LIMIT
<
Int32
>::
MAX
,
Int32
step=1,
Int32
tristate=0,
Int32
min2=
LIMIT
<
Int32
>::
MIN
,
Int32
max2=
LIMIT
<
Int32
>::
MAX
)
|
Bool
|
SetFloat
(const
GadgetPtr
&id,
Float
value,
Float
min=(-1.0e18),
Float
max=(1.0e18),
Float
step=1.0,
Int32
format=
FORMAT_FLOAT
,
Float
min2=0.0,
Float
max2=0.0,
Bool
quadscale=false,
Int32
tristate=0)
|
Bool
|
SetMeter
(const
GadgetPtr
&id,
Float
value,
Float
min=(-1.0e18),
Float
max=(1.0e18),
Float
step=1.0,
Int32
tristate=0)
|
Bool
|
SetDegree
(const
GadgetPtr
&id,
Float
radians_value,
Float
min=(-1.0e18),
Float
max=(1.0e18),
Float
step=1.0,
Int32
tristate=0)
|
Bool
|
SetPercent
(const
GadgetPtr
&id,
Float
value,
Float
min=0.0,
Float
max=100.0,
Float
step=1.0,
Int32
tristate=0)
|
Bool
|
SetTime
(const
GadgetPtr
&id, const
BaseDocument
*doc, const
BaseTime
&value, const
BaseTime
&min=
BaseTime
(- 108000, 1), const
BaseTime
&max=
BaseTime
(108000, 1),
Int32
stepframes=1,
Int32
tristate=0)
|
Bool
|
SetString
(const
GadgetPtr
&id, const
maxon::String
&text,
Int32
tristate=0,
Int32
flags=0)
|
Bool
|
SetColorField
(const
GadgetPtr
&id, const
向量
&color,
Float
brightness,
Float
maxbrightness,
Int32
flags)
|
Bool
|
SetFilename
(const
GadgetPtr
&id, const
Filename
&fn,
Int32
tristate=0)
|
Plain Get
|
Bool
|
GetBool
(const
GadgetPtr
&id,
Bool
&value) const
|
Bool
|
GetInt32
(const
GadgetPtr
&id,
Int32
&value) const
|
Bool
|
GetFloat
(const
GadgetPtr
&id,
Float
&value) const
|
Bool
|
GetVector
(const
GadgetPtr
&id_x, const
GadgetPtr
&id_y, const
GadgetPtr
&id_z,
向量
&value) const
|
Bool
|
GetString
(const
GadgetPtr
&id,
maxon::String
&text) const
|
Bool
|
GetColorField
(const
GadgetPtr
&id,
向量
&color,
Float
&brightness) const
|
Bool
|
GetTime
(const
GadgetPtr
&id, const
BaseDocument
*doc,
BaseTime
&time) const
|
Bool
|
GetFilename
(const
GadgetPtr
&id,
Filename
&fn) const
|
Bool
|
CheckTristateChange
(const
GadgetPtr
&id)
|
Container Set
|
Bool
|
SetBool
(const
GadgetPtr
&id, const
BaseContainer
*bc,
Int32
bcid)
|
Bool
|
SetInt32
(const
GadgetPtr
&id, const
BaseContainer
*bc,
Int32
bcid,
Int32
min=
LIMIT
<
Int32
>::
MIN
,
Int32
max=
LIMIT
<
Int32
>::
MAX
,
Int32
step=1,
Int32
min2=
LIMIT
<
Int32
>::
MIN
,
Int32
max2=
LIMIT
<
Int32
>::
MAX
)
|
Bool
|
SetFloat
(const
GadgetPtr
&id, const
BaseContainer
*bc,
Int32
bcid,
Float
min=(-1.0e18),
Float
max=(1.0e18),
Float
step=1.0,
Int32
format=
FORMAT_FLOAT
,
Float
min2=0.0,
Float
max2=0.0,
Bool
quadscale=false)
|
Bool
|
SetMeter
(const
GadgetPtr
&id, const
BaseContainer
*bc,
Int32
bcid,
Float
min=(-1.0e18),
Float
max=(1.0e18),
Float
step=1.0)
|
Bool
|
SetDegree
(const
GadgetPtr
&id, const
BaseContainer
*bc,
Int32
bcid,
Float
min=(-1.0e18),
Float
max=(1.0e18),
Float
step=1.0)
|
Bool
|
SetPercent
(const
GadgetPtr
&id, const
BaseContainer
*bc,
Int32
bcid,
Float
min=0.0,
Float
max=100.0,
Float
step=1.0)
|
Bool
|
SetTime
(const
GadgetPtr
&id, const
BaseDocument
*doc, const
BaseContainer
*bc,
Int32
bcid, const
BaseTime
&min=
BaseTime
(- 108000, 1), const
BaseTime
&max=
BaseTime
(108000, 1),
Int32
stepframes=1)
|
Bool
|
SetString
(const
GadgetPtr
&id, const
BaseContainer
*bc,
Int32
bcid,
Int32
flags=0)
|
Bool
|
SetFilename
(const
GadgetPtr
&id, const
BaseContainer
*bc,
Int32
bcid)
|
Bool
|
SetColorField
(const
GadgetPtr
&id, const
BaseContainer
*bc,
Int32
bc_colid,
Int32
bc_brightnessid,
Float
maxbrightness,
Int32
flags)
|
Container Get
|
Bool
|
GetBool
(const
GadgetPtr
&id,
BaseContainer
*bc,
Int32
bcid) const
|
Bool
|
GetInt32
(const
GadgetPtr
&id,
BaseContainer
*bc,
Int32
bcid) const
|
Bool
|
GetFloat
(const
GadgetPtr
&id,
BaseContainer
*bc,
Int32
bcid) const
|
Bool
|
GetTime
(const
GadgetPtr
&id, const
BaseDocument
*doc,
BaseContainer
*bc,
Int32
bcid) const
|
Bool
|
GetVector
(const
GadgetPtr
&id_x, const
GadgetPtr
&id_y, const
GadgetPtr
&id_z,
BaseContainer
*bc,
Int32
bcid) const
|
Bool
|
GetString
(const
GadgetPtr
&id,
BaseContainer
*bc,
Int32
bcid) const
|
Bool
|
GetFilename
(const
GadgetPtr
&id,
BaseContainer
*bc,
Int32
bcid) const
|
Bool
|
GetColorField
(const
GadgetPtr
&id,
BaseContainer
*bc,
Int32
bc_colid,
Int32
bc_brightnessid) const
|
TriState Set
|
Bool
|
SetBool
(const
GadgetPtr
&id, const
TriState
<
Bool
> &tri)
|
Bool
|
SetInt32
(const
GadgetPtr
&id, const
TriState
<
Int32
> &tri,
Int32
min=
LIMIT
<
Int32
>::
MIN
,
Int32
max=
LIMIT
<
Int32
>::
MAX
,
Int32
step=1,
Int32
min2=
LIMIT
<
Int32
>::
MIN
,
Int32
max2=
LIMIT
<
Int32
>::
MAX
)
|
Bool
|
SetFloat
(const
GadgetPtr
&id, const
TriState
<
Float
> &tri,
Float
min=(-1.0e18),
Float
max=(1.0e18),
Float
step=1.0,
Int32
format=
FORMAT_FLOAT
,
Float
min2=0.0,
Float
max2=0.0,
Bool
quadscale=false)
|
Bool
|
SetMeter
(const
GadgetPtr
&id, const
TriState
<
Float
> &tri,
Float
min=(-1.0e18),
Float
max=(1.0e18),
Float
step=1.0)
|
Bool
|
SetDegree
(const
GadgetPtr
&id, const
TriState
<
Float
> &tri,
Float
min=(-1.0e18),
Float
max=(1.0e18),
Float
step=1.0)
|
Bool
|
SetPercent
(const
GadgetPtr
&id, const
TriState
<
Float
> &tri,
Float
min=0.0,
Float
max=100.0,
Float
step=1.0)
|
Bool
|
SetTime
(const
GadgetPtr
&id, const
BaseDocument
*doc, const
TriState
<
BaseTime
> &tri, const
BaseTime
&min=
BaseTime
(- 108000, 1), const
BaseTime
&max=
BaseTime
(108000, 1),
Int32
stepframes=1)
|
Bool
|
SetString
(const
GadgetPtr
&id, const
TriState
<
String
> &tri,
Int32
flags=0)
|
Layout
|
Bool
|
LoadDialogResource
(
Int32
id,
GeResource
*lr,
Int32
flags)
|
C4DGadget
*
|
AddCheckbox
(
Int32
id,
Int32
flags,
Int32
initw,
Int32
inith, const
maxon::String
&name)
|
C4DGadget
*
|
AddButton
(
Int32
id,
Int32
flags,
Int32
initw,
Int32
inith, const
maxon::String
&name)
|
C4DGadget
*
|
AddStaticText
(
Int32
id,
Int32
flags,
Int32
initw,
Int32
inith, const
maxon::String
&name,
Int32
borderstyle)
|
C4DGadget
*
|
AddArrowButton
(
Int32
id,
Int32
flags,
Int32
initw,
Int32
inith,
Int32
arrowtype)
|
C4DGadget
*
|
AddEditText
(
Int32
id,
Int32
flags,
Int32
initw=0,
Int32
inith=0,
Int32
editflags=0)
|
C4DGadget
*
|
AddMultiLineEditText
(
Int32
id,
Int32
flags,
Int32
initw=0,
Int32
inith=0,
Int32
style=0)
|
C4DGadget
*
|
AddEditNumber
(
Int32
id,
Int32
flags,
Int32
initw=80,
Int32
inith=0)
|
C4DGadget
*
|
AddEditNumberArrows
(
Int32
id,
Int32
flags,
Int32
initw=70,
Int32
inith=0)
|
C4DGadget
*
|
AddEditSlider
(
Int32
id,
Int32
flags,
Int32
initw=80,
Int32
inith=0)
|
C4DGadget
*
|
AddSlider
(
Int32
id,
Int32
flags,
Int32
initw=90,
Int32
inith=0)
|
C4DGadget
*
|
AddColorField
(
Int32
id,
Int32
flags,
Int32
initw=0,
Int32
inith=0,
Int32
colorflags=0)
|
C4DGadget
*
|
AddColorChooser
(
Int32
id,
Int32
flags,
Int32
initw=0,
Int32
inith=0,
Int32
layoutflags=0, const
BaseContainer
&settings=
BaseContainer
())
|
C4DGadget
*
|
AddRadioButton
(
Int32
id,
Int32
flags,
Int32
initw,
Int32
inith, const
maxon::String
&name)
|
C4DGadget
*
|
AddRadioText
(
Int32
id,
Int32
flags,
Int32
initw,
Int32
inith, const
maxon::String
&name)
|
C4DGadget
*
|
AddEditShortcut
(
Int32
id,
Int32
flags,
Int32
initw=0,
Int32
inith=0,
Int32
shortcutflags=0)
|
C4DGadget
*
|
AddSeparatorH
(
Int32
initw,
Int32
flags=
BFH_FIT
)
|
C4DGadget
*
|
AddSeparatorV
(
Int32
inith,
Int32
flags=
BFV_FIT
)
|
Bool
|
AddRadioGroup
(
Int32
id,
Int32
flags,
Int32
columns=1,
Int32
rows=0)
|
C4DGadget
*
|
AddComboBox
(
Int32
id,
Int32
flags,
Int32
initw=0,
Int32
inith=0,
Bool
specialalign=false,
Bool
allowFiltering=false)
|
C4DGadget
*
|
AddComboButton
(
Int32
id,
Int32
flags,
Int32
initw=0,
Int32
inith=0,
Bool
specialalign=false,
Bool
allowFiltering=false)
|
C4DGadget
*
|
AddPopupButton
(
Int32
id,
Int32
flags,
Int32
initw=0,
Int32
inith=0,
Bool
allowFiltering=false)
|
Bool
|
AddListView
(
Int32
id,
Int32
flags,
Int32
initw=0,
Int32
inith=0)
|
Bool
|
LayoutChanged
(const
GadgetPtr
&id)
|
Bool
|
LayoutChangedNoRedraw
(const
GadgetPtr
&id)
|
Bool
|
激活
(const
GadgetPtr
&id)
|
Bool
|
IsActive
(const
GadgetPtr
&id)
|
UpdateDialogHelper
|
BeginLayoutChange
(const
GadgetPtr
&gadget,
Bool
disableRedraws)
|
Bool
|
LayoutFlushGroup
(const
GadgetPtr
&id)
|
Bool
|
LayoutFlushDisableRedraw
(const
GadgetPtr
&id,
Bool
disable)
|
Bool
|
RemoveElement
(const
GadgetPtr
&id)
|
Bool
|
HideElement
(const
GadgetPtr
&id,
Bool
hide)
|
Bool
|
RestoreLayout
(
Int32
pluginid,
Int32
subid, void *secret)
|
Layout Helpers
|
Bool
|
AddChild
(const
GadgetPtr
&id,
Int32
subid, const
maxon::String
&child)
|
Bool
|
FreeChildren
(const
GadgetPtr
&id)
|
Bool
|
SetPopup
(const
GadgetPtr
&id, const
BaseContainer
&bc)
|
Bool
|
AddChildren
(const
GadgetPtr
&id, const
BaseContainer
&bc)
|
C4DGadget
*
|
AddUserArea
(
Int32
id,
Int32
flags,
Int32
initw=0,
Int32
inith=0)
|
Bool
|
AttachUserArea
(
GeUserArea
&ua, const
GadgetPtr
&id,
USERAREAFLAGS
userareaflags=
USERAREAFLAGS::COREMESSAGE
)
|
Bool
|
AddSubDialog
(
Int32
id,
Int32
flags,
Int32
initw=0,
Int32
inith=0)
|
Bool
|
AttachSubDialog
(
SubDialog
*userdlg,
Int32
id)
|
Bool
|
AddDlgGroup
(
Int32
type)
|
Group
|
Bool
|
GroupBeginInMenuLine
()
|
Bool
|
TabGroupBegin
(
Int32
id,
Int32
flags,
Int32
tabtype=
TAB_TABS
)
|
Bool
|
GroupBegin
(
Int32
id,
Int32
flags,
Int32
cols,
Int32
rows, const
maxon::String
&title,
Int32
groupflags,
Int32
initw=0,
Int32
inith=0)
|
Bool
|
GroupEnd
(void)
|
Bool
|
GroupSpace
(
Int32
spacex,
Int32
spacey)
|
Bool
|
GroupBorder
(
UInt32
borderstyle)
|
Bool
|
GroupBorderNoTitle
(
UInt32
borderstyle)
|
Bool
|
GroupBorderSpace
(
Int32
left,
Int32
top,
Int32
right,
Int32
bottom)
|
Bool
|
GroupWeightsSave
(const
GadgetPtr
&id,
BaseContainer
&weights)
|
Bool
|
GroupWeightsLoad
(const
GadgetPtr
&id, const
BaseContainer
&weights)
|
Drag and Drop
|
Bool
|
GetItemDim
(const
GadgetPtr
&id,
Int32
*x,
Int32
*y,
Int32
*w,
Int32
*h) const
|
Bool
|
GetDragPosition
(const
BaseContainer
&msg,
Int32
*x,
Int32
*y)
|
Bool
|
GetDragObject
(const
BaseContainer
&msg,
Int32
*type, void **object)
|
Bool
|
SetDragDestination
(
Int32
cursor,
Int32
gadgetid=0)
|
Bool
|
CheckDropArea
(const
GadgetPtr
&id, const
BaseContainer
&msg,
Bool
horiz,
Bool
vert)
|
Scroll Group
|
Bool
|
GetVisibleArea
(
Int32
scrollgroupid,
Int32
*x1,
Int32
*y1,
Int32
*x2,
Int32
*y2)
|
Bool
|
SetVisibleArea
(
Int32
scrollgroupid,
Int32
x1,
Int32
y1,
Int32
x2,
Int32
y2)
|
Bool
|
ScrollGroupBegin
(
Int32
id,
Int32
flags,
Int32
scrollflags,
Int32
initw=0,
Int32
inith=0)
|
构造函数 & 析构函数文档编制
◆
GeDialog()
Creates the dialog, but does not open it.
◆
~GeDialog()
Destroys the dialog. If the dialog is still open, it is closed.
成员函数文档编制
◆
MAXON_DISALLOW_COPY_AND_ASSIGN()
MAXON_DISALLOW_COPY_AND_ASSIGN
|
(
|
GeDialog
|
|
)
|
|
|
private
|
◆
Get()
Retrieves a pointer to the internal dialog pointer.
-
返回
-
The internal dialog.
◆
CreateLayout()
virtual
Bool
CreateLayout
|
(
|
void
|
|
)
|
|
|
virtual
|
Called when the dialog is about to be displayed. Override this method to define the layout of the dialog.
Either use the recommended
LoadDialogResource
function or the manual functions (for example
AddButton()
). See
对话框布局
了解更多信息。
-
返回
-
true
if successful, otherwise
false
.
Reimplemented in
ProgressDialog
,和
SDKBrowserPreviewDialog
.
◆
InitValues()
virtual
Bool
InitValues
|
(
|
void
|
|
)
|
|
|
virtual
|
Called when the dialog is initialized by the GUI. Override this method to initialize local variables and the gadgets used.
-
另请参阅
-
The article
GUI Messages
了解更多信息。
-
返回
-
true
if successful, otherwise
false
.
Reimplemented in
ProgressDialog
,和
SDKBrowserPreviewDialog
.
◆
CoreMessage()
Override this method to react to
Cinema 4D
core messages.
-
另请参阅
-
The article
Core Messages
了解更多信息。
-
参数
-
[in]
|
id
|
The message ID:
EVMSG
|
[in]
|
msg
|
The message container.
|
-
返回
-
Currently not used.
Reimplemented in
SDKBrowserPreviewDialog
.
◆
Command()
Whenever the user clicks on a gadget and/or changes its value this function will be called. It is also called when a string menu item is selected. Override this methods to handle such events.
-
注意
-
Remember
StopAllThreads()
must be called before making modifications to the scene.
-
参数
-
[in]
|
id
|
The ID of the gadget that triggered the event.
|
[in]
|
msg
|
The message container. Contains the following values:
BFM_ACTION_ID
and
BFM_ACTION_VALUE
.
|
-
返回
-
true
if successful, otherwise
false
.
Reimplemented in
ProgressDialog
,和
SDKBrowserPreviewDialog
.
◆
AskClose()
virtual
Bool
AskClose
|
(
|
void
|
|
)
|
|
|
virtual
|
If the user wants to close the dialog with the OK button this function will be called. Override it to avoid closing the dialog if an error situation has occurred.
若
false
is returned everything will be as usual, but if
true
is returned the dialog will not close. This function is especially useful in combination with the
GeModalDialog
class for handling wrong user input before leaving the dialog.
-
警告
-
A buggy function, always returning
true
, will lead to a frustrating user experience.
-
返回
-
true
if the dialog should not be closed,
false
if it should.
Reimplemented in
ProgressDialog
,和
SDKBrowserPreviewDialog
.
◆
Timer()
Called when a timer event is received.
To subscribe to timer events use
SetTimer()
.
-
参数
-
[in]
|
msg
|
The timer message container.
|
Reimplemented in
ProgressDialog
,和
SDKBrowserPreviewDialog
.
◆
DestroyWindow()
virtual void DestroyWindow
|
(
|
void
|
|
)
|
|
|
virtual
|
Called when the dialog is about to be closed temporarily, for example for layout switching.
All pointers to
C4DGadget
,
GeUserArea
and
SubDialog
objects as well as custom GUI objects are invalidated. So set all such stored pointers to
nullptr
.
CreateLayout
will be called when the dialog is restored.
Reimplemented in
SDKBrowserPreviewDialog
.
◆
Message()
Called when a message is received.
Override this function to react to more messages than covered by the other virtual functions. Normally this is not necessary.
-
注意
-
If overriden, be sure to include a call to the base version of this function,
GeDialog::Message()
.
-
另请参阅
-
The article
GUI Messages
了解更多信息。
-
参数
-
[in]
|
msg
|
The message container.
|
[in]
|
result
|
A container to place results in.
|
-
返回
-
Depends on the message.
Reimplemented in
ProgressDialog
,
iCustomGui
,
SubDialog
,
GeModalDialog
,和
SDKBrowserPreviewDialog
.
◆
Open()
Opens the dialog at the specified position.
-
注意
-
若
xpos
=
-1
and
ypos
=
-1
the dialog will be opened at the current mouse position.
若
xpos
=
-2
and
ypos
=
-2
the dialog will be opened at the center of the screen.
-
Make sure to pass the ID for asynchronous plugins so that
Cinema 4D
can correctly restore dialogs added by the user to the user interface.
-
参数
-
[in]
|
dlgtype
|
The dialog type:
DLG_TYPE
|
[in]
|
pluginid
|
The plugin ID of the
CommandData
with the dialog's
CommandData::RestoreLayout()
.
|
[in]
|
xpos
|
The X position of the dialog. See note above.
|
[in]
|
ypos
|
The Y position of the dialog. See note above.
|
[in]
|
defaultw
|
The default width of the dialog in pixels.
|
[in]
|
defaulth
|
The default height of the dialog in pixels.
|
[in]
|
subid
|
The dialog sub-ID. This can be used to open several dialogs with a single command plugin for
CommandData::ExecuteSubID()
.
|
-
返回
-
true
if successful, otherwise
false
.
◆
Close()
[1/2]
Closes the dialog. Not necessary when using modal dialogs.
-
返回
-
true
if the dialog was closed, otherwise
false
.
◆
Close()
[2/2]
Always calls
Close(void)
.
-
参数
-
[in]
|
dummy
|
A dummy boolean state.
|
◆
SendMessage()
Sends a message to a dialog element by ID.
-
另请参阅
-
The article
GUI Messages
了解更多信息。
-
参数
-
[in]
|
id
|
The dialog element ID.
|
[in]
|
msg
|
The message container.
|
-
返回
-
Depends on the message sent.
◆
SendParentMessage()
Sends a message to the parent dialog.
-
另请参阅
-
The article
GUI Messages
了解更多信息。
-
参数
-
[in]
|
msg
|
The message container.
|
[in]
|
receiveSelf
|
True if the own parent message should process this message. Default is false.
|
-
返回
-
true
if the message was sent, otherwise
false
.
◆
GetId()
Gets the dialog ID.
-
返回
-
The dialog ID.
◆
IsOpen()
Checks if the dialog is open.
-
返回
-
true
if the dialog is open, otherwise
false
.
◆
IsVisible()
Checks if the dialog is visible.
-
返回
-
true
if the dialog is visible, otherwise
false
.
◆
SetTimer()
void SetTimer
|
(
|
Int32
|
timer
|
)
|
|
Initializes the timer clock, so that
Timer()
is called every
timer
milliseconds. Use
SetTimer(0)
to stop the timer.
-
注意
-
Depending on the speed of the computer, the operating system, the complexity of the dialog and the threads running in the background, there is no guarantee that event messages will occur on a regular basis.
Using a value of
500
ms should be no problem but using a value of 1 ms one might get events with the following time spaces:
3
ms,
76
ms,
15
ms,
19
ms,
67
ms etc.
-
警告
-
Keep in mind that using small timer values results in heavy message traffic in the application which may slow down
Cinema 4D
(and all other applications running on the computer) to a point where nothing is working any longer besides the dialog.
-
参数
-
[in]
|
timer
|
The timer interval in milliseconds. Pass
0
to stop the timer.
|
◆
SetTitle()
Sets the title of the dialog window.
-
参数
-
◆
GetTitle()
Gets the title of the dialog window.
-
返回
-
The title
◆
Enable()
Enables or disables the dialog item with the specified
id
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
enabled
|
true
to enable and
false
to disable.
|
-
返回
-
true
if successful, otherwise
false
.
◆
IsEnabled()
Checks if a dialog item is enabled.
-
参数
-
-
返回
-
true
if the dialog item is enabled, otherwise
false
.
◆
GetInputState()
Polls a certain channel of a device for the current input state.
If the return value is
true
, the container stored in
res
is like an input event message, otherwise no state was available.
For a list of valid devices and channels, see
Input Events
.
-
参数
-
[in]
|
askdevice
|
The device to ask.
|
[in]
|
askchannel
|
The channel of the device.
|
[out]
|
res
|
The result container.
|
-
返回
-
true
if an input state could be retrieved, otherwise
false
.
◆
GetInputEvent()
Gets the next input event for a certain device from the event queue.
If the return value is
true
, the container stored in
res
is like an input event message, otherwise no state was available.
For a list of valid devices and channels, see
Input Events
.
-
参数
-
[in]
|
askdevice
|
The device to poll.
|
[out]
|
res
|
The result container.
|
-
返回
-
true
if an input event could be retrieved, otherwise
false
.
◆
KillEvents()
Flushes all events from the window message queue.
For example if looping while the mouse is down (polling), call this function to flush all key downs/mouse clicks that are made during the loop.
◆
SetBool()
[1/3]
Sets the value of checkbox controls.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
value
|
The new value. Checked is
true
and unchecked is
false
。若
tristate
is
true
then value must be
2
.
|
[in]
|
tristate
|
若
true
,和
value
is
2
, the control is tinted to indicate tristate mode.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetInt32()
[1/3]
Sets the value and limits of integer fields. Also used for tab groups, radio buttons and combo boxes.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
value
|
The new value.
|
[in]
|
min
|
The minimum visual value accepted.
|
[in]
|
max
|
The maximum visual value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
[in]
|
tristate
|
若
true
the control is tinted to indicate tristate mode.
|
[in]
|
min2
|
The minimum value allowed outside the visual range used for sliders. Overrides
min
for the acceptance check.
|
[in]
|
max2
|
The maximum value allowed outside the visual range used for sliders. Overrides
max
for the acceptance check.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetFloat()
[1/3]
Sets the value, unit and limits of float fields.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
value
|
The new value.
|
[in]
|
min
|
The minimum visual value accepted.
|
[in]
|
max
|
The maximum visual value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
[in]
|
format
|
The unit and format of the field:
FORMAT_NUMBERS
|
[in]
|
min2
|
The minimum value allowed outside the visual range used for sliders. Overrides
min
for the acceptance check.
|
[in]
|
max2
|
The maximum value allowed outside the visual range used for sliders. Overrides
max
for the acceptance check.
|
[in]
|
quadscale
|
若
true
a quadratic scale is used for the slider, so that more precision is available for lower values.
|
[in]
|
tristate
|
若
true
the control is tinted to indicate tristate mode.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetMeter()
[1/3]
Sets the value and limits of a meter field. Same as
SetFloat
with
FORMAT_METER
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
value
|
The new value.
|
[in]
|
min
|
The minimum value accepted.
|
[in]
|
max
|
The maximum value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
[in]
|
tristate
|
若
true
the control is tinted to indicate tristate mode.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetDegree()
[1/3]
Sets the value and limits of an angle field. Same as
SetFloat
with
FORMAT_DEGREE
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
radians_value
|
The new angle in radians.
|
[in]
|
min
|
The minimum angle accepted in degrees.
|
[in]
|
max
|
The maximum angle accepted in degrees.
|
[in]
|
step
|
The step used for arrow buttons in degrees.
|
[in]
|
tristate
|
若
true
the control is tinted to indicate tristate mode.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetPercent()
[1/3]
Sets the value and limits of a percent field. Same as
SetFloat
with
FORMAT_PERCENT
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
value
|
The new value (real fraction).
|
[in]
|
min
|
The minimum value accepted (percentage units).
|
[in]
|
max
|
The maximum value accepted (percentage units).
|
[in]
|
step
|
The step used for arrow buttons (percentage units).
|
[in]
|
tristate
|
若
true
the control is tinted to indicate tristate mode.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetTime()
[1/3]
Sets the value and limits of a time field. Same as
SetFloat
with
FORMAT_FRAMES
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
doc
|
The document to be used for framerate calculations.
|
[in]
|
value
|
The new time value.
|
[in]
|
min
|
The minimum time accepted.
|
[in]
|
max
|
The maximum time accepted.
|
[in]
|
stepframes
|
The frame step used for arrow buttons.
|
[in]
|
tristate
|
若
true
the control is tinted to indicate tristate mode.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetString()
[1/3]
Sets the text of string controls. Used for all controls that have a text, for example static text fields, edit fields, buttons and check boxes.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
text
|
The new text.
|
[in]
|
tristate
|
若
true
the control is tinted to indicate tristate mode.
|
[in]
|
flags
|
Flags:
EDITTEXT
FLAG_CENTER_ALIGN
|
-
返回
-
true
if the text was set, otherwise
false
.
◆
SetColorField()
[1/2]
Sets the color, brightness and limits of color fields and color choosers.
-
警告
-
flags
does not apply to color fields, only to color choosers.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
color
|
The new color value.
|
[in]
|
brightness
|
The new brightness value.
|
[in]
|
maxbrightness
|
The maximum brightness allowed.
|
[in]
|
flags
|
Controls what parts of a color chooser are available:
DR_COLORFIELD
|
-
返回
-
true
if the color field values were set, otherwise
false
.
◆
SetFilename()
[1/2]
Sets the text of string controls, taking the new value from a filename.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
fn
|
The new filename.
|
[in]
|
tristate
|
若
true
the control is tinted to indicate tristate mode.
|
-
返回
-
true
if the filename was set, otherwise
false
.
◆
GetBool()
[1/2]
Retrieves the state of checkbox controls.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
value
|
Assigned the current state.
|
-
返回
-
true
if the state was retrieved, otherwise
false
.
◆
GetInt32()
[1/2]
Retrieves the value of integer fields. Also used for tab groups, radio buttons and combo boxes.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
value
|
Assigned the current value.
|
-
返回
-
true
if the value was retrieved, otherwise
false
.
◆
GetFloat()
[1/2]
Retrieves the value of float fields.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
value
|
Assigned the current value.
|
-
返回
-
true
if the value was retrieved, otherwise
false
.
◆
GetVector()
[1/2]
Retrieves the value of three float fields at the same time as a vector.
-
参数
-
[in]
|
id_x
|
The control ID of the X field.
|
[in]
|
id_y
|
The control ID of the Y field.
|
[in]
|
id_z
|
The control ID of the Z field.
|
[out]
|
value
|
Assigned the current value.
|
-
返回
-
true
if the value was retrieved, otherwise
false
.
◆
GetString()
[1/2]
Retrieves the text from string controls. Used for all controls that have a text, for example static text fields, edit fields, buttons and check boxes.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
text
|
Assigned the current text.
|
-
返回
-
true
if the text was retrieved, otherwise
false
.
◆
GetColorField()
[1/2]
Retrieves the color and brightness of color controls.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
color
|
Assigned the current color.
|
[out]
|
brightness
|
Assigned the current brightness.
|
-
返回
-
true
if the color field values were retrieved, otherwise
false
.
◆
GetTime()
[1/2]
Retrieves the time of time fields.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
doc
|
The document to use for framerate calculations.
|
[out]
|
time
|
Assigned the current time.
|
-
返回
-
true
if the time was retrieved, otherwise
false
.
◆
GetFilename()
[1/2]
Retrieves the text from string controls as a filename.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
fn
|
Assigned the current filename.
|
-
返回
-
true
if the value was retrieved, otherwise
false
.
◆
CheckTristateChange()
Checks if a control content has been changed since the last
Set
.
-
参数
-
-
返回
-
true
if the control has been changed, otherwise
false
.
◆
SetBool()
[2/3]
Sets the value of checkbox controls, taking the new value from a base container.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
bc
|
The base container with the new value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the new value.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetInt32()
[2/3]
Sets the value and limits of integer fields, taking the new value from a base container. Also used for tab groups, radio buttons and combo boxes.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
bc
|
The base container with the new value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the new value.
|
[in]
|
min
|
The minimum visual value accepted.
|
[in]
|
max
|
The maximum visual value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
[in]
|
min2
|
The minimum value allowed outside the visual range used for sliders. Overrides
min
for the acceptance check.
|
[in]
|
max2
|
The maximum value allowed outside the visual range used for sliders. Overrides
max
for the acceptance check.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetFloat()
[2/3]
Sets the value, unit and limits of float fields, taking the new value from a base container.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
bc
|
The base container with the new value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the new value.
|
[in]
|
min
|
The minimum visual value accepted.
|
[in]
|
max
|
The maximum visual value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
[in]
|
format
|
The unit and format of the field:
FORMAT_NUMBERS
|
[in]
|
min2
|
The minimum value allowed outside the visual range used for sliders. Overrides
min
for the acceptance check.
|
[in]
|
max2
|
The maximum value allowed outside the visual range used for sliders. Overrides
max
for the acceptance check.
|
[in]
|
quadscale
|
若
true
a quadratic scale is used for the slider, so that more precision is available for lower values.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetMeter()
[2/3]
Sets the value, unit and limits of meter fields, taking the new value from a base container. Same as
SetFloat
with
FORMAT_METER
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
bc
|
The base container with the new value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the new value.
|
[in]
|
min
|
The minimum value accepted.
|
[in]
|
max
|
The maximum value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetDegree()
[2/3]
Sets the value, unit and limits of angle fields, taking the new value from a base container. Same as
SetFloat
with
FORMAT_DEGREE
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
bc
|
The base container with the new value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the new value.
|
[in]
|
min
|
The minimum value accepted.
|
[in]
|
max
|
The maximum value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetPercent()
[2/3]
Sets the value, unit and limits of percent fields, taking the new value from a base container. Same as
SetFloat
with
FORMAT_PERCENT
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
bc
|
The base container with the new value (real fraction). The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the new value.
|
[in]
|
min
|
The minimum value accepted.
|
[in]
|
max
|
The maximum value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetTime()
[2/3]
Sets the value and limits of a time field, taking the new value from a base container. Same as
SetFloat
with
FORMAT_FRAMES
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
doc
|
The document to get the framerate from. The caller owns the pointed document.
|
[in]
|
bc
|
The base container with the new time. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the new time.
|
[in]
|
min
|
The minimum value accepted.
|
[in]
|
max
|
The maximum value accepted.
|
[in]
|
stepframes
|
The frame step used for arrow buttons.
|
-
返回
-
true
if the time was set, otherwise
false
.
◆
SetString()
[2/3]
Sets the text of string controls, taking the new value from a base container. Used for all controls that have a text, for example static text fields, edit fields, buttons and check boxes.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
bc
|
The base container with the new value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the new value.
|
[in]
|
flags
|
Flags:
EDITTEXT
FLAG_CENTER_ALIGN
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetFilename()
[2/2]
Sets the text of string controls, taking the new value from a filename in a base container.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
bc
|
The base container with the new value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the new value.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetColorField()
[2/2]
Sets the color, brightness and limits of color fields and color choosers, taking the new values from a base container.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
bc
|
The base container with the new color field values. The caller owns the pointed base container.
|
[in]
|
bc_colid
|
The container ID of the new color value.
|
[in]
|
bc_brightnessid
|
The container ID of the new brightness value.
|
[in]
|
maxbrightness
|
The maximum brightness allowed.
|
[in]
|
flags
|
Controls what parts of a color chooser are available:
DR_COLORFIELD
|
-
返回
-
true
if the color field values were set, otherwise
false
.
◆
GetBool()
[2/2]
Retrieves the state of checkbox controls, and stores it in a base container.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
bc
|
The base container to receive the state. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the state.
|
-
返回
-
true
if the value was retrieved, otherwise
false
.
◆
GetInt32()
[2/2]
Retrieves the value of integer fields, and stores it in a base container. Also used for tab groups, radio buttons and combo boxes.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
bc
|
The base container to receive the value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the value.
|
-
返回
-
true
if the value was retrieved, otherwise
false
.
◆
GetFloat()
[2/2]
Retrieves the value of float fields, and stores it in a base container.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
bc
|
The base container to receive the value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the value.
|
-
返回
-
true
if the value was retrieved, otherwise
false
.
◆
GetTime()
[2/2]
Retrieves the value of a time field, and stores it in a base container.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
doc
|
The document to get the framerate from. The caller owns the pointed document.
|
[out]
|
bc
|
The base container to receive the value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the value.
|
-
返回
-
true
if the value was retrieved, otherwise
false
.
◆
GetVector()
[2/2]
Retrieves the value of three float fields at the same time as a vector, and stores it in a base container.
-
参数
-
[in]
|
id_x
|
The control ID of the X field.
|
[in]
|
id_y
|
The control ID of the Y field.
|
[in]
|
id_z
|
The control ID of the Z field.
|
[out]
|
bc
|
The base container to receive the value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the value.
|
-
返回
-
true
if the value was retrieved, otherwise
false
.
◆
GetString()
[2/2]
Retrieves the value from string controls, and stores it in a base container. Used for all controls that have a text, for example static text fields, edit fields, buttons and check boxes.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
bc
|
The base container to receive the value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the value.
|
-
返回
-
true
if the value was retrieved, otherwise
false
.
◆
GetFilename()
[2/2]
Retrieves the value from string controls, and stores it as a filename in a base container.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
bc
|
The base container to receive the value. The caller owns the pointed base container.
|
[in]
|
bcid
|
The container ID of the value.
|
-
返回
-
true
if the value was retrieved, otherwise
false
.
◆
GetColorField()
[2/2]
Retrieves the values of color and brightness for color controls, and stores them in a base container.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
bc
|
The base container to receive the values. The caller owns the pointed base container.
|
[in]
|
bc_colid
|
The container ID of the color value.
|
[in]
|
bc_brightnessid
|
The container ID of the brightness value.
|
-
返回
-
true
if the values were retrieved, otherwise
false
.
◆
SetBool()
[3/3]
Sets the value of checkbox controls using a
TriState
对象。
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
tri
|
A tristate object for the value.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetInt32()
[3/3]
Sets the value and limits of integer fields using a
TriState
对象。
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
tri
|
A tristate object for the value.
|
[in]
|
min
|
The minimum visual value accepted.
|
[in]
|
max
|
The maximum visual value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
[in]
|
min2
|
The minimum value allowed outside the visual range used for sliders. Overrides
min
for the acceptance check.
|
[in]
|
max2
|
The maximum value allowed outside the visual range used for sliders. Overrides
max
for the acceptance check.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetFloat()
[3/3]
Sets the value, unit and limits of float fields using a
TriState
对象。
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
tri
|
A tristate object for the value.
|
[in]
|
min
|
The minimum visual value accepted.
|
[in]
|
max
|
The maximum visual value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
[in]
|
format
|
The unit and format of the field:
FORMAT_NUMBERS
|
[in]
|
min2
|
The minimum value allowed outside the visual range used for sliders. Overrides
min
for the acceptance check.
|
[in]
|
max2
|
The maximum value allowed outside the visual range used for sliders. Overrides
max
for the acceptance check.
|
[in]
|
quadscale
|
若
true
a quadratic scale is used for the slider, so that more precision is available for lower values.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetMeter()
[3/3]
Sets the value and limits of a meter field using a
TriState
object. Same as
SetFloat
with
FORMAT_METER
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
tri
|
A tristate object for the value.
|
[in]
|
min
|
The minimum visual value accepted.
|
[in]
|
max
|
The maximum visual value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetDegree()
[3/3]
Sets the value and limits of an angle field using a
TriState
object. Same as
SetFloat
with
FORMAT_DEGREE
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
tri
|
A tristate object for the value.
|
[in]
|
min
|
The minimum visual value accepted.
|
[in]
|
max
|
The maximum visual value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetPercent()
[3/3]
Sets the value and limits of a percent field using a
TriState
object. Same as
SetFloat
with
FORMAT_PERCENT
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
tri
|
A tristate object for the value.
|
[in]
|
min
|
The minimum visual value accepted.
|
[in]
|
max
|
The maximum visual value accepted.
|
[in]
|
step
|
The step used for arrow buttons.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetTime()
[3/3]
Sets the value and limits of a time field using a
TriState
object. Same as
SetFloat
with
FORMAT_FRAMES
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
doc
|
The document to be used for framerate calculations.
|
[in]
|
tri
|
A tristate object for the value.
|
[in]
|
min
|
The minimum time accepted.
|
[in]
|
max
|
The maximum time accepted.
|
[in]
|
stepframes
|
The frame step used for arrow buttons.
|
-
返回
-
true
if the value was set, otherwise
false
.
◆
SetString()
[3/3]
Sets the text of string controls using a
TriState
对象。
-
参数
-
-
返回
-
true
if the value was set, otherwise
false
.
◆
Local2Global()
Transforms local coordinates (relative to the top left corner of the user area) to global window coordinates (relative to the top left corner of the application window). Stores the result in *
x
and *
y
.
-
参数
-
[in,out]
|
x
|
The local X coordinate. Assigned the global window coordinate.
|
[in,out]
|
y
|
The local Y coordinate. Assigned the global window coordinate.
|
-
返回
-
true
if the coordinates were converted, otherwise
false
.
◆
Global2Local()
Transforms global window coordinates (relative to the top left corner of the application window) to local coordinates (relative to the top left corner of the user area). Stores the result in *
x
and *
y
.
-
参数
-
[in,out]
|
x
|
The global window X coordinate. Assigned the local coordinate.
|
[in,out]
|
y
|
The global window Y coordinate. Assigned the local coordinate.
|
-
返回
-
true
if the coordinates were converted, otherwise
false
.
◆
Screen2Local()
Transforms screen coordinates (relative to the top left corner of the system screen) to local coordinates (relative to the top left corner of the user area). Stores the result in *
x
and *
y
.
-
参数
-
[in,out]
|
x
|
The screen X coordinate. Assigned the local coordinate.
|
[in,out]
|
y
|
The screen Y coordinate. Assigned the local coordinate.
|
-
返回
-
true
if the coordinates were converted, otherwise
false
.
◆
Local2Screen()
Transforms local coordinates (relative to the top left corner of the user area) to screen coordinates (relative to the top left corner of the system screen). Stores the result in *
x
and *
y
.
-
参数
-
[in,out]
|
x
|
The local X coordinate. Assigned the screen coordinate.
|
[in,out]
|
y
|
The local Y coordinate. Assigned the screen coordinate.
|
-
返回
-
true
if the coordinates were converted, otherwise
false
.
◆
GetColorRGB()
Gets the RGB values associated with a color constant.
-
参数
-
[in]
|
colorid
|
A color constant:
COLOR
|
[out]
|
r
|
Assigned the red component of the color.
|
[out]
|
g
|
Assigned the green component of the color.
|
[out]
|
b
|
Assigned the blue component of the color.
|
-
返回
-
true
if successful, otherwise
false
.
◆
SetDefaultColor()
[1/2]
Sets the default color for GUI elements.
-
参数
-
[in]
|
id
|
The control ID to set the color for.
|
[in]
|
colorid
|
A color constant:
COLOR
|
[in]
|
mapid
|
The color map ID.
|
◆
SetDefaultColor()
[2/2]
void SetDefaultColor
|
(
|
const
GadgetPtr
&
|
id
,
|
|
|
Int32
|
colorid
,
|
|
|
const
向量
&
|
color
|
|
)
|
|
|
Sets the default color for GUI elements.
-
参数
-
[in]
|
id
|
The control ID to set the color for.
|
[in]
|
colorid
|
A color constant:
COLOR
|
[in]
|
color
|
The color to set.
|
◆
LoadDialogResource()
Loads an external resource file.
This is the preferred method for dialog layout since it gives maximum flexibility and easy multi language support.
-
注意
-
The dialog loaded is automatically surrounded by an additional outer group, so
flags
means the same as with dialog groups (e.g.
BFV_CENTER
). See
Dialog Resource
了解更多信息。
-
参数
-
[in]
|
id
|
The dialog ID.
|
[in]
|
lr
|
The loaded resource or
nullptr
. If this is
nullptr
then the global ::resource singleton is used. The caller owns the pointed resource.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
-
返回
-
true
if the dialog was loaded successfully, otherwise
false
.
◆
AddCheckbox()
Adds a checkbox to the layout.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
name
|
The name of the checkbox.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddButton()
Adds a button to the layout.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
name
|
The name of the button.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddStaticText()
Adds a static text to the layout.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
name
|
The name of the static text.
|
[in]
|
borderstyle
|
The border style:
BORDER
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddArrowButton()
Adds an arrow button to the layout.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
arrowtype
|
The arrow type:
ARROW
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddEditText()
Adds an editable text field to the layout.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
editflags
|
The edit flags:
EDITTEXT
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddMultiLineEditText()
Adds an editable text field with multiple lines to the layout.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
style
|
The style flags:
DR_MULTILINE
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddEditNumber()
Adds an editable number field to the layout.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddEditNumberArrows()
Adds an editable number field with up/down arrows to the layout.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddEditSlider()
Adds a slider with an editable number field to the layout.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddSlider()
Adds a slider to the layout.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddColorField()
Adds a simple color field without sliders to the layout.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
colorflags
|
The color flags:
DR_COLORFIELD
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddColorChooser()
Adds a color chooser gadget to the layout.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
layoutflags
|
The color flags:
DR_COLORFIELD
|
[in]
|
settings
|
The color chooser settings.
由于
R17
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddRadioButton()
Adds a radio button to the layout. Used with radio groups created with
AddRadioGroup()
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
name
|
The name of the radio button.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddRadioText()
Adds a text radio button to the layout (like the ones to the left in the Material Editor). Used with radio groups created with
AddRadioGroup()
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
name
|
The name of the text radio button.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddEditShortcut()
Adds a field for editing shortcuts.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
shortcutflags
|
The shortcut flags.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddSeparatorH()
Adds a horizontal separator to the layout.
-
参数
-
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddSeparatorV()
Adds a vertical separator to the layout.
-
参数
-
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddRadioGroup()
Adds a radio group to the layout. To add items to the radio button group use the
AddChild()
函数。
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
columns
|
The number of columns, or
0
if
rows
被使用。
|
[in]
|
rows
|
The number of rows, or
0
if
columns
被使用。
|
-
返回
-
true
if the radio group was added, otherwise
false
.
◆
AddComboBox()
Adds a combo box to the layout. To add items to the combo box menu use the
AddChild()
函数。
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
specialalign
|
Used to quantize the width of the combo box.
If this is
true
then the width of the combo box will be a multiple of
initw
.
For example if
initw
is
60px
and
specialalign
is
true
the width will be
60
,
120
,
180px
and so on.
|
[in]
|
allowFiltering
|
True to allow keyboard filtering of the combobox list.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddComboButton()
Adds a combo button to the layout. To add items to the combo box menu use the
AddChild()
函数。
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
specialalign
|
Used to quantize the width of the item.
If this is
true
then the width of the item will be a multiple of
initw
.
For example if
initw
is
60px
and
specialalign
is
true
the width will be
60
,
120
,
180px
and so on.
|
[in]
|
allowFiltering
|
True to allow keyboard filtering of the popup list.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddPopupButton()
Adds a popup button to the layout. To add items to the popup menu use the
AddChild()
function or
SetPopup()
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
[in]
|
allowFiltering
|
True to allow keyboard filtering of the popup list.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AddListView()
Adds a list view to the layout.
-
注意
-
使用
SimpleListView
class to wrap the created list view control.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
-
返回
-
true
if the list view was added, otherwise
false
.
◆
AddChild()
Adds items to combo boxes or popup buttons. The dialog resource equivalent is
CHILDS
.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
subid
|
The ID of the item to add.
|
[in]
|
child
|
The name of the item to add.
|
-
返回
-
true
if the child was added, otherwise
false
.
◆
FreeChildren()
Clears the item list of combo boxes and popup buttons.
-
注意
-
Please note the spelling!
-
参数
-
-
返回
-
true
if the children were removed, otherwise
false
.
◆
SetPopup()
Sets the item list of a popup button using a popup menu base container.
This allow things like sub-menus and separators. See
ShowPopupMenu()
了解更多信息。
-
参数
-
[in]
|
id
|
The popup button ID.
|
[in]
|
bc
|
A base container with menu items.
|
-
返回
-
true
if the popup menu was set, otherwise
false
.
◆
AddChildren()
Adds children to a dialog element using a base container.
-
参数
-
[in]
|
id
|
The element to add children to.
|
[in]
|
bc
|
A base container with items.
|
-
返回
-
true
if the children were added, otherwise
false
.
◆
AddUserArea()
Adds a user area to the layout. Use
AttachUserArea()
to assign a
GeUserArea
object to the user area control.
-
参数
-
[in]
|
id
|
The user area ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
-
返回
-
The added gadget, or
nullptr
if an error occurred. The dialog owns the pointed gadget.
◆
AttachUserArea()
Attaches a
GeUserArea
object to a user area control, added with
AddUserArea()
.
The object will handle all messages to the user area and is responsible for painting the user area.
-
注意
-
A good practice is to place the
GeUserArea
derived object as a member of the
GeDialog
derived class.
-
参数
-
[in]
|
ua
|
A user area object to attach.
|
[in]
|
id
|
The user area ID.
|
[in]
|
userareaflags
|
The user area flags:
USERAREAFLAGS
|
-
返回
-
true
if the user area was attached, otherwise
false
.
◆
AddSubDialog()
Adds a sub-dialog to the layout. Use
AttachSubDialog()
to assign a
SubDialog
object to the sub-dialog control.
-
另请参阅
-
SubDialog
-
参数
-
[in]
|
id
|
The sub-dialog ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
initw
|
The initial width. Use
SizePixChr()
to set this value.
|
[in]
|
inith
|
The initial height. Use
SizePixChr()
to set this value.
|
-
返回
-
true
if the sub dialog was added, otherwise
false
.
◆
AttachSubDialog()
Attaches a
SubDialog
derived object to a
SubDialog
control, added with
AddSubDialog()
.
To replace the sub-dialog with another one, just call this function again.
-
参数
-
[in]
|
userdlg
|
The sub-dialog object. The caller owns the pointed sub-dialog.
|
[in]
|
id
|
The sub-dialog ID.
|
-
返回
-
true
if the sub-dialog was attached, otherwise
false
.
◆
AddDlgGroup()
Adds a dialog group with standard buttons to the layout.
-
参数
-
[in]
|
type
|
The standard buttons to add:
DLG
|
-
返回
-
true
if the dialog group was added, otherwise
false
.
◆
GroupBeginInMenuLine()
Bool
GroupBeginInMenuLine
|
(
|
|
)
|
|
Begins a group in the menu bar of the dialog. End the group with
GroupEnd()
.
-
返回
-
true
if a group in the menu bar could be begun, otherwise
false
.
◆
TabGroupBegin()
Begins a tab group. Add tabs to the tab group with
GroupBegin()
. End the tab group with
GroupEnd()
.
-
参数
-
[in]
|
id
|
The ID of the tab group.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
tabtype
|
The tab type:
TAB
|
-
返回
-
true
if a tab group could be begun, otherwise
false
.
◆
GroupBegin()
Begins a group. End the group with
GroupEnd()
.
-
注意
-
GroupSpace()
,
GroupBorder()
,
GroupBorderNoTitle()
and
GroupBorderSpace()
to further specify the look of the group.
-
参数
-
[in]
|
id
|
The ID of the group.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
cols
|
The number of columns, or
0
if
rows
are used.
|
[in]
|
rows
|
The number of rows, or
0
if
cols
are used.
|
[in]
|
title
|
The title of the the group. Used for tab groups and groups with border.
|
[in]
|
groupflags
|
The group flags:
BFV_GROUP
|
[in]
|
initw
|
The initial width.
|
[in]
|
inith
|
The initial height.
|
-
返回
-
true
if a group could be begun, otherwise
false
.
◆
GroupEnd()
Ends groups begun with
GroupBegin()
,
TabGroupBegin()
and
ScrollGroupBegin()
.
-
返回
-
true
if a group was ended, otherwise
false
.
◆
GroupSpace()
Sets the space in pixels between two elements in the current group. Equivalent to
SPACE
in dialog resources.
-
参数
-
[in]
|
spacex
|
The X distance.
|
[in]
|
spacey
|
The Y distance.
|
-
返回
-
true
if the spacing could be set, otherwise
false
.
◆
GroupBorder()
Sets the border type of the current group, and displays the title in the border if possible.
Equivalent to
BORDERSTYLE
in dialog resources, if a
NAME
field is provided with the
GROUP
declaration.
-
注意
-
使用
GroupBorderNoTitle()
to not have a title. Otherwise there will be a small gap in the border where the title would be.
-
参数
-
[in]
|
borderstyle
|
The border style:
BORDER
|
-
返回
-
true
if the border was set, otherwise
false
.
◆
GroupBorderNoTitle()
Sets the border type of the current group. Does not display the title in the border.
Equivalent to
BORDERSTYLE
in dialog resources, if a
NAME
field is not provided with the
GROUP
declaration.
-
参数
-
[in]
|
borderstyle
|
The border style:
BORDER
|
-
返回
-
true
if the border was set, otherwise
false
.
◆
GroupBorderSpace()
Sets the border size around the current group in pixels. Equivalent to
BORDERSIZE
in dialog resources.
-
参数
-
[in]
|
left
|
The distance to the left of the group.
|
[in]
|
top
|
The distance above the group.
|
[in]
|
right
|
The distance to the right of the group.
|
[in]
|
bottom
|
The distance below the group.
|
-
返回
-
true
if the border space could be set, otherwise
false
.
◆
GroupWeightsSave()
Retrieves group weights for group
id
.
-
参数
-
-
返回
-
true
if the group weights could be retrieved, otherwise
false
.
◆
GroupWeightsLoad()
Sets group weights for group
id
.
The group weights are usually absolute values. If an element has a bigger minimum size the given weight will be ignored. The sum of the weights do not need to be
100
.
-
注意
-
A weight value can be negative. In this case the group keeps its size absolute and it is not resized proportionally.
-
参数
-
-
返回
-
true
if the group weights could be set, otherwise
false
.
◆
GetItemDim()
Queries a dialog control for its current size and position in pixels.
-
参数
-
[in]
|
id
|
The control ID.
|
[out]
|
x
|
Assigned the X coordinate of the upper left corner of the control.
|
[out]
|
y
|
Assigned the Y coordinate of the upper left corner of the control.
|
[out]
|
w
|
Assigned the width of the control.
|
[out]
|
h
|
Assigned the height of the control.
|
-
返回
-
true
if the item size and position were stored, otherwise
false
.
◆
GetDragPosition()
Extracts local drag coordinates from a drag and drop event. Stores the result in *
x
and *
y
.
-
另请参阅
-
The article
Drag and Drop
了解更多信息。
-
参数
-
[in]
|
msg
|
The original message.
|
[out]
|
x
|
Assigned the local X position.
|
[out]
|
y
|
Assigned the local Y position.
|
-
返回
-
true
if the drag position was extracted, otherwise
false
.
◆
GetDragObject()
Extracts the object from a drag and drop message. Stores the result in *
type
and *
object
.
-
另请参阅
-
The article
Drag and Drop
了解更多信息。
-
参数
-
[in]
|
msg
|
The original message.
|
[out]
|
type
|
Assigned the type of the object.
|
[out]
|
object
|
Assigned a pointer to the object.
Cinema 4D
owns the pointed object.
|
-
返回
-
true
if the drag object was extracted, otherwise
false
.
◆
SetDragDestination()
Sets the correct cursor during drag and drop handling.
-
另请参阅
-
The article
Drag and Drop
了解更多信息。
-
参数
-
[in]
|
cursor
|
A mouse cursor:
MOUSE
|
[in]
|
gadgetid
|
The dialog element that this cursor is for, or
0
.
|
-
返回
-
true
if the cursor could be set, otherwise
false
.
◆
CheckDropArea()
Checks the drag position in a drag event message against a certain dialog element's position in the layout. The check can be limited to only
X
or
Y
coordinates.
-
另请参阅
-
The article
Drag and Drop
了解更多信息。
-
参数
-
[in]
|
id
|
The dialog element ID.
|
[in]
|
msg
|
The drag message.
|
[in]
|
horiz
|
若
true
the drag position is checked against the horizontal bounds of the region.
|
[in]
|
vert
|
若
true
the drag position is checked against the vertical bounds of the region.
|
-
返回
-
true
if the drag message is within the bounds specified, otherwise
false
.
◆
GetVisibleArea()
Queries a scroll group for its currently visible region, a rectangle between (
x1
,
y1
) and (
x2
,
y2
).
-
参数
-
[in]
|
scrollgroupid
|
The scroll group ID.
|
[out]
|
x1
|
Assigned the X coordinate of the top left visible corner.
|
[out]
|
y1
|
Assigned the Y coordinate of the top left visible corner.
|
[out]
|
x2
|
Assigned the X coordinate of the bottom right visible corner.
|
[out]
|
y2
|
Assigned the Y coordinate of the bottom right visible corner.
|
-
返回
-
true
if the visible area could be retrieved, otherwise
false
.
◆
SetVisibleArea()
Scrolls a scroll group so that the rectangle between (x1,y1) and (x2,y2) is visible.
-
If the area is smaller than the scroll group then it is moved only as much as necessary.
-
If the area is bigger than the scroll group then the top left corners are aligned.
-
参数
-
[in]
|
scrollgroupid
|
The scroll group ID.
|
[in]
|
x1
|
The X coordinate of the top left corner of the rectangle.
|
[in]
|
y1
|
The Y coordinate of the top left corner of the rectangle.
|
[in]
|
x2
|
The X coordinate of the bottom right corner of the rectangle.
|
[in]
|
y2
|
The Y coordinate of the bottom right corner of the rectangle.
|
-
返回
-
true
if the group was scrolled or already had the right view, otherwise
false
.
◆
ScrollGroupBegin()
Begins a scrollable group. End the scroll group with
GroupEnd()
.
使用
SetVisibleArea()
and
GetVisibleArea()
to control the currently visible area.
-
参数
-
[in]
|
id
|
The scroll group ID.
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
scrollflags
|
Additional flags for the scroll group:
SCROLLGROUP
|
[in]
|
initw
|
The initial width of the scroll area.
|
[in]
|
inith
|
The initial height of the scroll area.
|
-
返回
-
true
if a scroll group could be begun, otherwise
false
.
◆
LayoutChanged()
Notifies
Cinema 4D
that the layout of a dynamic group in the dialog has changed.
This is usually done by first calling
LayoutFlushGroup()
and then adding new controls.
-
参数
-
[in]
|
id
|
The ID of the changed group.
|
-
返回
-
true
if the layout was updated, otherwise
false
.
◆
LayoutChangedNoRedraw()
Notifies
Cinema 4D
that the layout of a dynamic group in the dialog has changed.
This is usually done by first calling
LayoutFlushGroup()
and then adding new controls.
-
警告
-
Does not redraw the dialog.
-
参数
-
[in]
|
id
|
The ID of the changed group.
|
-
返回
-
true
if the layout was updated, otherwise
false
.
◆
Activate()
Sets the focus to a specific control within the dialog.
-
参数
-
-
返回
-
true
if the control was activated, otherwise
false
.
◆
IsActive()
Checks if the given gadget has the focus.
-
由于
-
R18
-
参数
-
-
返回
-
true
if the control is active, otherwise
false
.
◆
BeginLayoutChange()
BeginLayoutChange simplifies the call of the combinations of
LayoutFlushGroup()
/LayoutChanged().
-
参数
-
[in]
|
gadget
|
Gadget to flush and re-layout.
|
[in]
|
disableRedraws
|
True if all redraws should be disabled while the result object lives and result.CommitChanges() wasn't called.
|
-
返回
-
UpdateDialogRef on success. The returned object needs to be stored. Calling CommitChanges() will update the dialog group again and if redraw were disabled it will re-enable the redraw.
◆
LayoutFlushGroup()
Removes all controls from a group and places the control insertion point within the group. This makes it possible to have dynamic groups.
After all components are added call
LayoutChanged()
with the group ID.
-
参数
-
[in]
|
id
|
The ID of the group.
|
-
返回
-
true
if the group was flushed, otherwise
false
.
◆
LayoutFlushDisableRedraw()
LayoutFlushDisableRedraw description. Warning. For each calls of LayoutFlushDisableRedraw(true) you must call LayoutFlushDisableRedraw(false)!
-
参数
-
[in]
|
id
|
The ID of the group.
|
[in]
|
disable
|
True to disable redraw. Don't forget to enable it. Best use a finally{} to enable it again.
|
-
返回
-
true
if the group was disabled/enabled for redraw, otherwise
false
.
◆
RemoveElement()
Removes an element from the dialog.
-
参数
-
-
返回
-
true
if the element was removed, otherwise
false
.
◆
HideElement()
Hides/unhides an element within a dialog.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
hide
|
true
to hide and
false
to unhide.
|
-
返回
-
true
if the element was hidden/unhidden, otherwise
false
.
◆
RestoreLayout()
Used to restore an asynchronous dialog that has been placed in the users layout.
-
注意
-
Called from
CommandData::RestoreLayout()
where the secret pointer is provided.
-
参数
-
[in]
|
pluginid
|
The plugin ID of the command plugin.
|
[in]
|
subid
|
The sub-ID of the dialog.
|
[in]
|
secret
|
An internal pointer.
|
-
返回
-
true
if the dialog was restored, otherwise
false
.
◆
MenuFlushAll()
Bool
MenuFlushAll
|
(
|
void
|
|
)
|
|
Flushes the menu bar of the dialog, removing all menus.
Add menus with
MenuSubBegin()
. Call
MenuFinished()
when all menus and items have been added.
-
返回
-
true
if the menu bar was flushed, otherwise
false
.
◆
MenuSubBegin()
Creates a new menu group. At the top level this means a menu, at lower levels a sub-menu. Add items with
MenuAddCommand()
,
MenuAddString()
or
MenuAddSeparator()
. Call
MenuSubEnd()
when the menu is finished.
-
参数
-
[in]
|
string
|
The name of the sub menu.
|
-
返回
-
true
if a menu group could be begun, otherwise
false
.
◆
MenuSubEnd()
Closes the current menu group, opened with
MenuSubBegin()
.
-
返回
-
true
if a menu group was ended, otherwise
false
.
◆
MenuAddCommand()
Adds a command item to the current menu.
This can either be a
Cinema 4D
command or a plugin command. Particularly useful is
IDM_CM_CLOSEWINDOW
to add a close item for dialogs.
-
参数
-
[in]
|
cmdid
|
A
Cinema 4D
command id or a plugin ID.
|
-
返回
-
true
if the command was added, otherwise
false
.
◆
MenuAddString()
Adds a string item to the current menu.
Command()
will be called when the menu item is selected.
-
参数
-
[in]
|
id
|
The item ID.
|
[in]
|
string
|
The item text. Use a d suffix for disabled and a c suffix for checked items.
|
-
返回
-
true
if a string item was added, otherwise
false
.
◆
MenuAddSeparator()
Bool
MenuAddSeparator
|
(
|
void
|
|
)
|
|
Adds a separator to the current menu.
-
返回
-
true
if a separator was added, otherwise
false
.
◆
MenuFinished()
Bool
MenuFinished
|
(
|
void
|
|
)
|
|
Call this function when all menus and all items have been added.
-
返回
-
true
if the menu bar was updated, otherwise
false
.
◆
MenuInitString()
Used to change the enabled/disabled and checked/unchecked state of menu items.
-
注意
-
Can be called after
MenuFinished()
to update the menu item dynamically.
-
参数
-
[in]
|
id
|
The menu item ID.
|
[in]
|
enabled
|
true
if the menu item is enabled or
false
if the menu item is disabled (grayed out).
|
[in]
|
checked
|
true
if the menu item should be checked, otherwise
false
.
|
-
返回
-
true
if a string item was updated, otherwise
false
.
◆
MenuSetResource()
Sets the menu from a
MENU
resource ID.
-
参数
-
[in]
|
id
|
The menu resource ID.
|
-
返回
-
true
if the menu was set from resource, otherwise
false
.
◆
FindCustomGui()
Gets the custom GUI for a certain element ID. The GUI object must have been previously added with
AddCustomGui()
.
-
参数
-
[in]
|
id
|
The custom GUI element ID.
|
[in]
|
pluginid
|
The plugin ID of the custom GUI.
|
-
返回
-
The custom GUI. The dialog owns the pointed custom GUI.
◆
AddCustomGui()
Adds a custom GUI element to the dialog.
-
参数
-
[in]
|
id
|
The dialog element ID of the new custom GUI.
|
[in]
|
pluginid
|
The plugin ID of the custom GUI.
|
[in]
|
name
|
The name of the added custom GUI. (Not necessarily used.)
|
[in]
|
flags
|
The layout flags:
BFH
BFV
|
[in]
|
minw
|
The minimum width.
|
[in]
|
minh
|
The minimum height.
|
[in]
|
customdata
|
The settings for the new custom GUI.
|
-
返回
-
The custom GUI element that was added, or
nullptr
if an error occurred. The dialog owns the pointed custom GUI.
◆
SetMultiLineMode()
Sets the edit mode for multi-line edit fields.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
mode
|
The multi-line edit mode:
SCRIPTMODE
|
-
返回
-
true
if the multi-line mode was set, otherwise
false
.
◆
SetMultiLineLock()
Locks/unlocks multi-line edit fields.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
lock
|
true
to lock the field, formatConstant{false} to unlock it.
|
-
返回
-
true
if the multi-line edit field was locked/unlocked, otherwise
false
.
◆
SetMultiLinePos()
Sets the cursor position within a multi-line edit text control.
-
参数
-
[in]
|
id
|
The control ID.
|
[in]
|
line
|
The line number.
|
[in]
|
pos
|
The position within the line.
|
-
返回
-
true
if successful, otherwise
false
.
◆
CheckClose()
Checks if the dialog can be closed. Normally checks the value ranges and calls
AskClose()
.
-
返回
-
true
if the dialog should not be closed, otherwise
false
.
◆
CheckValueRanges()
Bool
CheckValueRanges
|
(
|
void
|
|
)
|
|
Checks whether all input fields' values are within the allowed range.
-
返回
-
true
if everything is alright, or
false
if any field is wrong.
◆
GetPixelRatio()
Float
GetPixelRatio
|
(
|
|
)
|
const
|
Private
. Always returns
1.0
except for user areas shown on OS X Retina displays, where it returns
2.0
.
-
返回
-
Always
1.0
except for user areas shown on OS X Retina displays.
◆
ReleaseLink()
Internal
.
◆
CheckCoreMessage()
Speedup function that checks if a core message is new or has been already processed.
-
另请参阅
-
The article
Core Messages
了解更多信息。
-
参数
-
[in]
|
msg
|
The core message.
|
[in]
|
ownlastcoremsg
|
An optional pointer to a last core message.
|
-
返回
-
true
if the message is new,
false
if it is a message of the same age.
◆
HandleHelpString()
Private
.
◆
GetWindowHandle()
void* GetWindowHandle
|
(
|
|
)
|
|
Gets the handle of the dialog window (HWND).
Private
.
-
返回
-
The window handle.
Friends And Related Function Documentation
◆
GeUserArea
◆
_GeListView
friend class _GeListView
|
friend
|
Member Data Documentation
◆
cd
◆
t_lastcoremsg
◆
createlayout
true
if the layout has been created, otherwise
false
. Normally not needed.