GeModalDialog Class Reference

#include <c4d_gui.h>

Inheritance diagram for GeModalDialog:

详细描述

This class is especially designed for modal dialogs. This means that as long as the dialog is open, Cinema 4D has to wait until the user closes the dialog.

Private Attributes

Bool   dlg_result
Bool   close

Constructor/Destructor

  GeModalDialog (void)
virtual  ~GeModalDialog (void)

Open/Close

Bool   Open ( Int32 xpos=-1, Int32 ypos=-1, Int32 defaultw=0, Int32 defaulth=0, Bool resizable=false)
Bool   关闭 ( Bool result)
Bool   GetResult (void)

消息

virtual Int32   消息 (const BaseContainer &msg, BaseContainer &result)

Check

void  CheckLong ( Int32 id, CHECKVALUERANGE type, Int32 val, Int32 x, Int32 y)
void  CheckReal ( Int32 id, CHECKVALUERANGE type, Float val, Float x, Float y, CHECKVALUEFORMAT format= CHECKVALUEFORMAT::NOTHING )
void  CheckMeter ( Int32 id, CHECKVALUERANGE type, Float val, Float x, Float y)
void  CheckPercent ( Int32 id, CHECKVALUERANGE type, Float val, Float x, Float y)
void  CheckDegree ( Int32 id, CHECKVALUERANGE type, Float val, Float x, Float y)

Additional Inherited Members

-  Public Member Functions inherited from GeDialog
Bool   SetColorField (const GadgetPtr &id, const TriState < 向量 > &tri, Float brightness, Float maxbrightness, Int32 flags)
  GeDialog (void)
virtual  ~GeDialog (void)
CDialog *  Get ()
virtual Bool   CreateLayout (void)
virtual Bool   InitValues (void)
virtual Bool   CoreMessage ( Int32 id, const BaseContainer &msg)
virtual Bool   命令 ( Int32 id, const BaseContainer &msg)
virtual Bool   AskClose (void)
virtual void  Timer (const BaseContainer &msg)
virtual void  DestroyWindow (void)
Bool   Open ( DLG_TYPE dlgtype, Int32 pluginid, Int32 xpos=-1, Int32 ypos=-1, Int32 defaultw=0, Int32 defaulth=0, Int32 subid=0)
Bool   关闭 (void)
Bool   关闭 ( Bool dummy)
GeData   SendMessage (const GadgetPtr &id, const BaseContainer &msg)
Bool   SendParentMessage (const BaseContainer &msg, Bool receiveSelf=false)
Int32   GetId (void)
Bool   IsOpen ()
Bool   IsVisible ()
void  SetTimer ( Int32 timer)
void  SetTitle (const maxon::String &title)
maxon::String   GetTitle ()
Bool   启用 (const GadgetPtr &id, Bool enabled)
Bool   IsEnabled (const GadgetPtr &id)
Bool   GetInputState ( Int32 askdevice, Int32 askchannel, BaseContainer &res)
Bool   GetInputEvent ( Int32 askdevice, BaseContainer &res)
void  KillEvents (void)
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)
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)
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)
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
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)
Bool   Local2Global ( Int32 *x, Int32 *y)
Bool   Global2Local ( Int32 *x, Int32 *y)
Bool   Screen2Local ( Int32 *x, Int32 *y)
Bool   Local2Screen ( Int32 *x, Int32 *y)
Bool   GetColorRGB ( Int32 colorid, Int32 &r, Int32 &g, Int32 &b)
void  SetDefaultColor (const GadgetPtr &id, Int32 colorid, Int32 mapid)
void  SetDefaultColor (const GadgetPtr &id, Int32 colorid, const 向量 &color)
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)
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)
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)
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)
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)
Bool   MenuFlushAll (void)
Bool   MenuSubBegin (const maxon::String &string)
Bool   MenuSubEnd (void)
Bool   MenuAddCommand ( Int32 cmdid)
Bool   MenuAddString ( Int32 id, const maxon::String &string)
Bool   MenuAddSeparator (void)
Bool   MenuFinished (void)
Bool   MenuInitString ( Int32 id, Bool enabled, Bool checked)
Bool   MenuSetResource ( Int32 id)
void *  FindCustomGui ( Int32 id, Int32 pluginid)
void *  AddCustomGui ( Int32 id, Int32 pluginid, const maxon::String &name, Int32 flags, Int32 minw, Int32 minh, const BaseContainer &customdata)
Bool   SetMultiLineMode (const GadgetPtr &id, SCRIPTMODE mode)
Bool   SetMultiLineLock (const GadgetPtr &id, Bool lock)
Bool   SetMultiLinePos (const GadgetPtr &id, Int32 line, Int32 pos)
Bool   CheckClose (void)
Bool   CheckValueRanges (void)
Float   GetPixelRatio () const
Bool   ReleaseLink ()
Bool   CheckCoreMessage (const BaseContainer &msg, Int32 *ownlastcoremsg=nullptr)
void *  GetWindowHandle ()
-  Static Public Member Functions inherited from GeDialog
static void  HandleHelpString (const BaseContainer &msg, BaseContainer &result, const maxon::String &sym)
-  Protected Attributes inherited from GeDialog
Bool   createlayout

构造函数 & 析构函数文档编制

◆  GeModalDialog()

GeModalDialog ( void  )

Creates the dialog, but does not open it.

◆  ~GeModalDialog()

virtual ~ GeModalDialog ( void  )
virtual

Destroys the dialog.

成员函数文档编制

◆  Open()

Bool Open ( Int32   xpos = -1 ,
Int32   ypos = -1 ,
Int32   defaultw = 0 ,
Int32   defaulth = 0 ,
Bool   resizable = false  
)

Opens the dialog at the specified position ( xpos , ypos ). If xpos = -1 and ypos = -1 the dialog will be opened at the current mouse position.

参数
[in] xpos The X position of the dialog.
[in] ypos The Y position of the dialog.
[in] defaultw The default width of the dialog in pixels.
[in] defaulth The default height of the dialog in pixels.
[in] resizable Set to true for resizable modal dialogs.
返回
true if OK was pressed or Close(true) was called.
false if 取消 was pressed or Close(false) was called.

◆  Close()

Bool 关闭 ( Bool   result )

Closes the dialog.

参数
[in] result true to report that OK was pressed, otherwise false .
返回
true if successful, otherwise false .

◆  GetResult()

Bool GetResult ( void  )

Checks how the dialog was closed.

返回
true if the dialog was closed pressing OK , otherwise false .

◆  Message()

virtual Int32 消息 ( const BaseContainer msg ,
BaseContainer result  
)
virtual

Called when a message is received.
Override this function to react to special messages. Normally this is not necessary.

注意
If overriden, include a call to the base version of this function, GeModalDialog::Message() .
另请参阅
The article GUI Messages 了解更多信息。
参数
[in] msg The message container.
[in] result A container to place results in.
返回
Depends on the message.

Reimplemented from GeDialog .

Reimplemented in ProgressDialog .

◆  CheckLong()

void CheckLong ( Int32   id ,
CHECKVALUERANGE   type ,
Int32   val ,
Int32   x ,
Int32   y  
)

Checks integer field values.
If the value is outside the allowed range a suitable error is displayed and the field is activated.

参数
[in] id The control ID.
[in] type The comparison: CHECKVALUERANGE
[in] val The value to check.
[in] x The first parameter of the comparison.
[in] y The second parameter of the comparison.

◆  CheckReal()

void CheckReal ( Int32   id ,
CHECKVALUERANGE   type ,
Float   val ,
Float   x ,
Float   y ,
CHECKVALUEFORMAT   format = CHECKVALUEFORMAT::NOTHING  
)

Checks real field values.
If the value is outside the allowed range a suitable error is displayed and the field is activated.

参数
[in] id The control ID.
[in] type The comparison: CHECKVALUERANGE
[in] val The value to check.
[in] x The first parameter of the comparison.
[in] y The second parameter of the comparison.
[in] format The format of the field: CHECKVALUEFORMAT

◆  CheckMeter()

void CheckMeter ( Int32   id ,
CHECKVALUERANGE   type ,
Float   val ,
Float   x ,
Float   y  
)

Checks meter field values.
If the value is outside the allowed range a suitable error is displayed and the field is activated.

参数
[in] id The control ID.
[in] type The comparison: CHECKVALUERANGE
[in] val The value to check.
[in] x The first parameter of the comparison.
[in] y The second parameter of the comparison.

◆  CheckPercent()

void CheckPercent ( Int32   id ,
CHECKVALUERANGE   type ,
Float   val ,
Float   x ,
Float   y  
)

Checks percent field values.
If the value is outside the allowed range a suitable error is displayed and the field is activated.

参数
[in] id The control ID.
[in] type The comparison: CHECKVALUERANGE
[in] val The value to check.
[in] x The first parameter of the comparison.
[in] y The second parameter of the comparison.

◆  CheckDegree()

void CheckDegree ( Int32   id ,
CHECKVALUERANGE   type ,
Float   val ,
Float   x ,
Float   y  
)

Checks angle field values.
If the value is outside the allowed range a suitable error is displayed and the field is activated.

参数
[in] id The control ID.
[in] type The comparison: CHECKVALUERANGE
[in] val The value to check.
[in] x The first parameter of the comparison.
[in] y The second parameter of the comparison.

Member Data Documentation

◆  dlg_result

Bool dlg_result
private

◆  close

Bool close
private