|
GaitGeneration by Graph Search
|
Dxlibを使ったGUIの抽象クラス. [詳解]
#include <abstract_dxlib_gui.h>


公開メンバ関数 | |
| AbstractDxlibGui ()=delete | |
| AbstractDxlibGui (int width, int height) | |
| virtual | ~AbstractDxlibGui ()=default |
| void | SetPos (int pos_x, int pos_y, unsigned int option=kDxlibGuiAnchorLeftTop, bool this_is_first_time=false) |
| GUIの位置を設定する. Dxlibの画面の座標は左上を原点とし,右下に行くほど値が大きくなる. 横方向にx軸,縦方向にy軸をとる. | |
| virtual void | Update ()=0 |
| GUIの更新,毎フレーム実行すること. | |
| virtual void | Draw () const =0 |
| GUIの描画. | |
| void | SetVisible (bool visible) override |
| GUIの表示を行うかどうかを設定する. | |
| constexpr bool | IsVisible () const override |
| GUIの表示を行うかどうかを返す. | |
| void | ClickedAction (const DxlibMouseState &state) override |
| GUIがクリックされたときに実行される関数. CursorOnGuiが true を返すときに呼び出される. 複数のGUIが重なっている場合は,優先度の高いものから順に呼び出される. | |
| bool | CursorOnGui (int cursor_x, int cursor_y) const noexcept override |
| GUIの上にカーソルがあるかどうかを返す. | |
| bool | IsDraggable (int cursor_x, int cursor_y) const override |
| ドラッグ可能な位置にあるかを判定する. | |
| bool | IsDragged () const override |
| ドラッグ中かどうかを取得する. | |
| void | SetDragged (const bool is_dragged) override |
| ドラッグ中かどうかを設定する. | |
| void | DraggedAction (int cursor_dif_x, int cursor_dif_y, unsigned int mouse_key_bit) override |
| ドラッグ中の処理を行う. カーソルは上にあるけど,ドラッグ中ではない場合でも呼び出される. | |
基底クラス designlab::IDxlibGui に属する継承公開メンバ関数 | |
| virtual | ~IDxlibGui ()=default |
基底クラス designlab::IDxlibClickable に属する継承公開メンバ関数 | |
| virtual | ~IDxlibClickable ()=default |
基底クラス designlab::IDxlibDraggable に属する継承公開メンバ関数 | |
| virtual | ~IDxlibDraggable ()=default |
限定公開メンバ関数 | |
| void | DrawBackground (const std::string &str) const |
限定公開変数類 | |
| std::vector< std::unique_ptr< SimpleButton > > | button_ |
| ボタンのリスト. | |
| const int | width_ |
| GUIの横幅. | |
| const int | height_ |
| GUIの縦幅. | |
| bool | visible_ { true } |
| GUIが表示されているかどうかのフラグ. | |
| bool | is_dragging_ { false } |
| int | gui_left_pos_x_ { 0 } |
| GUIの左端の位置. | |
| int | gui_top_pos_y_ { 0 } |
| GUIの上端の位置. | |
| int | init_pos_x_ { 0 } |
| SetされたGUIの左上のX座標. | |
| int | init_pos_y_ { 0 } |
| SetされたGUIの左上のY座標. | |
| int | font_handle_ { -1 } |
| フォントハンドル. | |
静的限定公開変数類 | |
| static constexpr int | kTitleBarHeight { 32 } |
| タイトルバーの高さ. | |
Dxlibを使ったGUIの抽象クラス.
このクラスは,Dxlibを使ったGUIの抽象クラスである. このクラスを継承して,GUIを作成する.
abstract_dxlib_gui.h の 28 行目に定義があります。
|
delete |
| designlab::AbstractDxlibGui::AbstractDxlibGui | ( | int | width, |
| int | height | ||
| ) |
abstract_dxlib_gui.cpp の 20 行目に定義があります。
|
virtualdefault |
|
overridevirtual |
GUIがクリックされたときに実行される関数.
CursorOnGuiが true を返すときに呼び出される. 複数のGUIが重なっている場合は,優先度の高いものから順に呼び出される.
| [in] | state | マウスの状態. |
designlab::IDxlibClickableを実装しています。
abstract_dxlib_gui.cpp の 92 行目に定義があります。
|
overridevirtualnoexcept |
GUIの上にカーソルがあるかどうかを返す.
| [in] | cursor_x | マウスカーソルのX座標.左端を0とし,右に正の値をとる. |
| [in] | cursor_y | マウスカーソルのY座標.上端を0とし,下に正の値をとる. |
designlab::IDxlibClickableを実装しています。
abstract_dxlib_gui.cpp の 104 行目に定義があります。

|
overridevirtual |
ドラッグ中の処理を行う.
カーソルは上にあるけど,ドラッグ中ではない場合でも呼び出される.
| [in] | cursor_dif_x | 前回のフレームからのマウスカーソルのX座標の差分. |
| [in] | cursor_dif_y | 前回のフレームからのマウスカーソルのY座標の差分. |
| [in] | mouse_key_bit | 押されているマウスのボタン,Dxlib の定数, MOUSE_INPUT_LEFT などで指定する. |
designlab::IDxlibDraggableを実装しています。
abstract_dxlib_gui.cpp の 126 行目に定義があります。

|
pure virtual |
|
protected |
|
overridevirtual |
ドラッグ可能な位置にあるかを判定する.
| [in] | cursor_x | マウスカーソルのX座標.左端が0.右方向に正. |
| [in] | cursor_y | マウスカーソルのY座標.上端が0.下方向に正. |
designlab::IDxlibDraggableを実装しています。
abstract_dxlib_gui.cpp の 116 行目に定義があります。

|
inlineoverridevirtual |
ドラッグ中かどうかを取得する.
designlab::IDxlibDraggableを実装しています。
abstract_dxlib_gui.h の 71 行目に定義があります。
|
inlineconstexproverridevirtual |
GUIの表示を行うかどうかを返す.
designlab::IDxlibGuiを実装しています。
abstract_dxlib_gui.h の 59 行目に定義があります。

|
inlineoverridevirtual |
ドラッグ中かどうかを設定する.
| [in] | is_dragged | ドラッグ中にしたいなら true. |
designlab::IDxlibDraggableを実装しています。
abstract_dxlib_gui.h の 76 行目に定義があります。
| void designlab::AbstractDxlibGui::SetPos | ( | int | pos_x, |
| int | pos_y, | ||
| unsigned int | option = kDxlibGuiAnchorLeftTop, |
||
| bool | this_is_first_time = false |
||
| ) |
GUIの位置を設定する.
Dxlibの画面の座標は左上を原点とし,右下に行くほど値が大きくなる.
横方向にx軸,縦方向にy軸をとる.
| [in] | pos_x | GUIのx座標. |
| [in] | pos_y | GUIのy座標. |
| [in] | option | GUIのどの地点を起点に座標を設定するかを指定する. defaultでは左上を起点とする. |
| [in] | this_is_first_time | この呼び出しが初めてかどうかを指定する. defaultでは false.trueを指定すると,GUIの位置を設定するだけでなく, GUIの初期位置を更新する. |
abstract_dxlib_gui.cpp の 27 行目に定義があります。

|
overridevirtual |
GUIの表示を行うかどうかを設定する.
| [in] | visible | GUIの表示を行うかどうか. |
designlab::IDxlibGuiを実装しています。
abstract_dxlib_gui.cpp の 77 行目に定義があります。


|
pure virtual |
GUIの更新,毎フレーム実行すること.
designlab::IDxlibGuiを実装しています。
designlab::DxlibGuiCamera, designlab::DxlibGuiCameraParameterDisplayer, designlab::DxlibGuiDisplayNodeSwitcher, designlab::DxlibGuiNodeDisplayer, designlab::DxlibGuiRobotControlで実装されています。

|
protected |
ボタンのリスト.
abstract_dxlib_gui.h の 87 行目に定義があります。
|
protected |
フォントハンドル.
abstract_dxlib_gui.h の 106 行目に定義があります。
|
protected |
GUIの左端の位置.
abstract_dxlib_gui.h の 100 行目に定義があります。
|
protected |
GUIの上端の位置.
abstract_dxlib_gui.h の 101 行目に定義があります。
|
protected |
GUIの縦幅.
abstract_dxlib_gui.h の 92 行目に定義があります。
|
protected |
SetされたGUIの左上のX座標.
abstract_dxlib_gui.h の 103 行目に定義があります。
|
protected |
SetされたGUIの左上のY座標.
abstract_dxlib_gui.h の 104 行目に定義があります。
|
protected |
abstract_dxlib_gui.h の 98 行目に定義があります。
|
staticconstexprprotected |
タイトルバーの高さ.
abstract_dxlib_gui.h の 89 行目に定義があります。
|
protected |
|
protected |
GUIの横幅.
abstract_dxlib_gui.h の 91 行目に定義があります。