ウィジェットのグループを提供する集合クラス [詳細]
#include <sgobject.h>

Public メソッド | |
| SGGroupObject (SGDialog *dlg, SGObject *parent, int id) | |
| コンストラクタ | |
| virtual | ~SGGroupObject () |
| デストラクタ | |
| void | RemoveAll () |
| グループのオブジェクトを全て削除する | |
| virtual void | SetRadioButton (int enable=1) |
| ラジオボタン属性の有無を設定する | |
| virtual int | GetRadioButton () |
| ラジオボタン属性の有無を取得する | |
| virtual SGObject * | Find (int id) |
| 指定したリソースIDを持つオブジェクトを検索する | |
| virtual SGObject * | FindType (int type) |
| 指定した種類のオブジェクトを検索する | |
| virtual SGObject * | FindFirst () |
| グループ内の最初に見つかる通常オブジェクトを検索する | |
| virtual SGObject * | FindFocus () |
| フォーカスを持つオブジェクトを検索する | |
| virtual SGObject * | FindNext (int id, SGObject **idobj) |
| 指定したオブジェクトの次のオブジェクトを検索する | |
| virtual SGObject * | FindPrevious (int id, SGObject **idobj) |
| 指定したオブジェクトの前のオブジェクトを検索する | |
| virtual SGObject * | FindCaret () |
| キャレットを持つオブジェクトを検索する | |
| virtual SGObject * | GetActiveObject (int groupid) |
| アクティブになっているオブジェクトを検索する | |
| virtual SGObject * | GetObjectFromHandle (SGHandle handle) |
| ハンドルからオブジェクトのポインタを取得する | |
| virtual void | Draw (SGSurface *surface, SGRect region, int offx=0, int offy=0) |
| オブジェクトを描画する | |
| virtual SGHandle | HitTest (int posx, int posy) |
| 指定した座標にオブジェクトが存在するか判定する | |
| SGGroupObject * | AddGroup (SGDialog *dialog, int id, int x, int y, int attr=SG_ATTR_NORMAL) |
| グループ オブジェクトを生成し追加する | |
| SGObject * | AddKeyboard (SGDialog *dialog, int id) |
| キーボードオブジェクトを生成し追加する | |
| SGObject * | AddButton (SGDialog *dialog, int id, SGString text, int x, int y, int w, int imageid, int attr=SG_ATTR_NORMAL, int fontid=0, int align=0, int marginx=0, int marginy=0) |
| ボタンオブジェクトを生成し追加する | |
| SGObject * | AddEditbox (SGDialog *dialog, int id, SGString text, int x, int y, int w, int imageid, int attr=SG_ATTR_NORMAL, int fontid=0, int align=0, int marginx=0, int marginy=0) |
| エディットボックスオブジェクトを生成し追加する | |
| SGObject * | AddFrame (SGDialog *dialog, int id, SGString text, int x, int y, int w, int h, int imageid, int attr=SG_ATTR_NORMAL, int fontid=0, int align=0, int marginx=0, int marginy=0) |
| フレームオブジェクトを生成し追加する | |
| SGObject * | AddPicture (SGDialog *dialog, int id, int x, int y, int w, int h, const char *file, int attr=SG_ATTR_NORMAL, int shared=1) |
| ピクチャー オブジェクトを生成し追加する | |
| SGObject * | AddIcon (SGDialog *dialog, int id, int x, int y, int w, int h, const char *file, int attr=SG_ATTR_NORMAL, int shared=1) |
| アイコン オブジェクトを生成し追加する | |
| SGObject * | AddMovie (SGDialog *dialog, int id, int x, int y, const char *file, int attr=SG_ATTR_NORMAL, int loop=1, int play=0) |
| ムービー オブジェクトを生成し追加する | |
| SGObject * | AddCanvas (SGDialog *dialog, int id, int x, int y, int w, int h, int attr=SG_ATTR_NORMAL) |
| キャンバス オブジェクトを生成し追加する | |
| SGObject * | AddText (SGDialog *dialog, int id, SGString text, int x, int y, int w, int h, int fontid, int attr=SG_ATTR_NORMAL, unsigned int col=((((unsigned int) 0x00)<< 24)|(((unsigned int) 0x00)<< 16)|(((unsigned int) 0x00)<< 8)|0xff), unsigned int colsub=((((unsigned int) 0x78)<< 24)|(((unsigned int) 0x78)<< 16)|(((unsigned int) 0x78)<< 8)|0xff), int align=0, int marginx=0, int marginy=0) |
| テキスト オブジェクトを生成し追加する | |
ウィジェットのグループを提供する集合クラス
| SGGroupObject | ( | SGDialog * | dlg, | |
| SGObject * | parent, | |||
| int | id | |||
| ) |
コンストラクタ
| dlg | このオブジェクトを持っているダイアログ | |
| parent | このオブジェクトを管理する親オブジェクト | |
| id | オブジェクトのリソースID |
| ~SGGroupObject | ( | ) | [virtual] |
デストラクタ
| void RemoveAll | ( | ) |
グループのオブジェクトを全て削除する
グループに管理されている全てのオブジェクトを削除します。
| void SetRadioButton | ( | int | enable = 1 |
) | [virtual] |
ラジオボタン属性の有無を設定する
ラジオボタン属性の有無を設定します。
グループにラジオボタン属性が付いている場合、そのグループ内のオブジェクトはアクティブ属性を 付けることができるオブジェクトが1つに制限されます。一つのオブジェクトにアクティブ属性を付けると 以前のアクティブオブジェクトは自動的にノーマル属性になります。
| enable | ON/FF(省略時ON)TRUE ラジオボタン属性をONにします。 FALSE ラジオボタン属性をOFFにします。 |
SGObjectを再定義しています。
| int GetRadioButton | ( | ) | [virtual] |
ラジオボタン属性の有無を取得する
ラジオボタン属性の有無を取得します。
グループにラジオボタン属性が付いている場合、そのグループ内のオブジェクトはアクティブ属性を 付けることができるオブジェクトが1つに制限されます。一つのオブジェクトにアクティブ属性を付けると 以前のアクティブオブジェクトは自動的にノーマル属性になります。
| TRUE | ラジオボタン属性ON | |
| FALSE | ラジオボタン属性OFF |
SGObjectを再定義しています。
| SGObject * Find | ( | int | id | ) | [virtual] |
指定したリソースIDを持つオブジェクトを検索する
指定したリソースIDを持つオブジェクトを検索します。
| id | 検索するオブジェクトのリソースID |
SGObjectを再定義しています。
| SGObject * FindType | ( | int | type | ) | [virtual] |
指定した種類のオブジェクトを検索する
指定した種類のオブジェクトを検索します。
| type | 検索するオブジェクトの種類 |
SGObjectを再定義しています。
| SGObject * FindFirst | ( | ) | [virtual] |
グループ内の最初に見つかる通常オブジェクトを検索する
グループ内を検索し、最初に見つかる、ディスエーブルでなく、表示属性が非表示でない オブジェクト検索します。
SGObjectを再定義しています。
| SGObject * FindFocus | ( | ) | [virtual] |
フォーカスを持つオブジェクトを検索する
グループ内からフォーカス属性を持ったオブジェクトを検索します。
フォーカスオブジェクトはダイアログに1つだけ存在できます。
SGObjectを再定義しています。
指定したオブジェクトの次のオブジェクトを検索する
グループ内から指定したオブジェクトの次のオブジェクトを検索します。
オブジェクトはidで指定しますがidをゼロにすると現在のフォーカスオブジェクトになります。
この関数はidによって指定されたオブジェクトが見つかり、さらに次のオブジェクトが見つかると そのオブジェクトを戻り値として返しますが、1度目のコールでは見つからないことがあります。
受け取り用パラメータのidobjがNULLの場合は見つからなかったと判断出来ますが、idobjがNULLでなく 戻り値がNULLの場合はもう一度この関数をコールして下さい。
この関数は SGDialog::FocusNext() 内で使用されています。
| id | 基準となるオブジェクトのリソースID 0(ゼロ)を指定すると現在のフォーカスオブジェクトになります。 | |
| idobj | 指定したidにより見つかったオブジェクト(取得用) |
指定したオブジェクトの前のオブジェクトを検索する
グループ内から指定したオブジェクトの前のオブジェクトを検索します。
オブジェクトはidで指定しますがidをゼロにすると現在のフォーカスオブジェクトになります。
この関数はidによって指定されたオブジェクトが見つかり、さらに前のオブジェクトが見つかると そのオブジェクトを戻り値として返しますが、1度目のコールでは見つからないことがあります。
受け取り用パラメータのidobjがNULLの場合は見つからなかったと判断出来ますが、idobjがNULLでなく 戻り値がNULLの場合はもう一度この関数をコールして下さい。
この関数は SGDialog::FocusNext() 内で使用されています。
| id | 基準となるオブジェクトのリソースID 0(ゼロ)を指定すると現在のフォーカスオブジェクトになります。 | |
| idobj | 指定したidにより見つかったオブジェクト |
| SGObject * FindCaret | ( | ) | [virtual] |
キャレットを持つオブジェクトを検索する
グループ内からキャレットを持ったオブジェクトを検索します。
キャレットオブジェクトはダイアログに1つだけ存在できます。
SGObjectを再定義しています。
| SGObject * GetActiveObject | ( | int | groupid | ) | [virtual] |
アクティブになっているオブジェクトを検索する
グループ内でかつ、グループIDがgroupidのオブジェクトの中からからアクティブになっている オブジェクトを検索します。
| groupid | 検索対象オブジェクトのグループID |
SGObjectを再定義しています。
| SGObject * GetObjectFromHandle | ( | SGHandle | handle | ) | [virtual] |
ハンドルからオブジェクトのポインタを取得する
指定したハンドルからオブジェクトのポインタを取得します。
| handle | オブジェクトのハンドル |
SGObjectを再定義しています。
オブジェクトを描画する
更新範囲内に含まれるオブジェクトの描画を行います。
| surface | 表示するサーフェース | |
| region | 更新範囲 | |
| offx | オフセットX | |
| offy | オフセットY |
SGObjectを再定義しています。
| SGHandle HitTest | ( | int | posx, | |
| int | posy | |||
| ) | [virtual] |
指定した座標にオブジェクトが存在するか判定する
指定した座標にオブジェクトが存在するか判定します。
| posx | X座標(ダイアログの左辺を0とする) | |
| posy | Y座標(ダイアログの上辺を0とする) |
SGObjectを再定義しています。
| SGGroupObject * AddGroup | ( | SGDialog * | dialog, | |
| int | id, | |||
| int | x, | |||
| int | y, | |||
| int | attr = SG_ATTR_NORMAL | |||
| ) |
グループ オブジェクトを生成し追加する
ボタンの集合(ラジオボタンやタブページ)などを扱う際に複数オブジェクトを グループにまとめて管理する場合があります。
そのような時、この関数で新規にグループを生成し、できたグループオブジェクトに 新しいオブジェクトを追加します。
| dialog | 所属するダイアログのリソースID | |
| id | オブジェクト認識用のID(任意のユニークな数値) | |
| x | X座標 | |
| y | Y座標 |
キーボードオブジェクトを生成し追加する
グループオブジェクトにキーボードオブジェクトを追加します。 キーボードオブジェクトはリソース画像を持たない特殊なオブジェクトで、 ダイアログがキーボードからのイベントを受け取れるようになります。
外部に取り付けられたスイッチやボタンなどのイベントもキーボードオブジェクト を経由してイベントを取得します。
| dialog | このグループ オブジェクトを保持しているダイアログのポインタ | |
| id | オブジェクト認識用のID(任意のユニークな数値) |
| SGObject * AddButton | ( | SGDialog * | dialog, | |
| int | id, | |||
| SGString | text, | |||
| int | x, | |||
| int | y, | |||
| int | w, | |||
| int | imageid, | |||
| int | attr = SG_ATTR_NORMAL, |
|||
| int | fontid = 0, |
|||
| int | align = 0, |
|||
| int | marginx = 0, |
|||
| int | marginy = 0 | |||
| ) |
ボタンオブジェクトを生成し追加する
ダイアログにボタン オブジェクトを追加します。
この部分のソースコードはリソース エディタにより自動生成されますが、手動で設定することも可能です。
idはユニークな整数、imageidは定義済みのボタン用リソースIDを指定します。
x,y,wは自由に設定できますが、高さはリソース画像の高さに固定されます。
高さを変える場合は、高さの違う画像を用意する必要があります。
ここで指定する「リソースID」は SGApplication::SetImageButton() で登録されているもので、 予め登録されている必要があります。
| dialog | このグループ オブジェクトを保持しているダイアログのポインタ | |
| id | オブジェクト認識用のID(任意のユニークな数値) | |
| text | 表示文字列 | |
| x | X座標 | |
| y | Y座標 | |
| w | 横幅 | |
| imageid | ボタンリソースID | |
| attr | 属性 初期の表示属性を指定できます。省略時は SG_ATTR_NORMAL となります。 SG_ATTR_NORMAL SG_ATTR_DISABLE SG_ATTR_ACTIVE SG_ATTR_HIDE | |
| fontid | フォント リソースID | |
| align | 寄せ 左右方向の寄せ SG_ALIGN_CENTER 中央 SG_ALIGN_LEFT 左寄せ SG_ALIGN_RIGHT 右寄せ 上下方向の寄せ SG_ALIGN_MIDDLE 中央 SG_ALIGN_TOP 上寄せ SG_ALIGN_BOTTOM 下寄せ 左右方向の寄せと上下方向の寄せをそれぞれ指定できます。 | |
| marginx | マージンX | |
| marginy | マージンY |
| SGObject * AddEditbox | ( | SGDialog * | dialog, | |
| int | id, | |||
| SGString | text, | |||
| int | x, | |||
| int | y, | |||
| int | w, | |||
| int | imageid, | |||
| int | attr = SG_ATTR_NORMAL, |
|||
| int | fontid = 0, |
|||
| int | align = 0, |
|||
| int | marginx = 0, |
|||
| int | marginy = 0 | |||
| ) |
エディットボックスオブジェクトを生成し追加する
ダイアログにエディット ボックス オブジェクト(テキスト フィールド)を追加します。
この部分のソースコードはリソース エディタにより自動生成されますが、手動で設定することも可能です。
idはユニークな整数、imageidは定義済みのエディット ボックス用リソースIDを指定します。
x,y,wは自由に設定できますが、高さはリソース画像の高さに固定されます。
高さを変える場合は、高さの違う画像を用意する必要があります。
ここで指定する「リソースID」は SGApplication::SetImageEditbox() で登録されているもので、 予め登録されている必要があります。
| dialog | このグループ オブジェクトを保持しているダイアログのポインタ | |
| id | オブジェクト認識用のID(任意のユニークな数値) | |
| text | 表示文字列 | |
| x | X座標 | |
| y | Y座標 | |
| w | 横幅 | |
| imageid | エディット ボックス リソースID | |
| attr | 属性 初期の表示属性を指定できます。省略時は SG_ATTR_NORMAL となります。 SG_ATTR_NORMAL SG_ATTR_DISABLE SG_ATTR_ACTIVE SG_ATTR_HIDE | |
| fontid | フォント リソースID | |
| align | 寄せ 左右方向の寄せ SG_ALIGN_CENTER 中央 SG_ALIGN_LEFT 左寄せ SG_ALIGN_RIGHT 右寄せ 上下方向の寄せ SG_ALIGN_MIDDLE 中央 SG_ALIGN_TOP 上寄せ SG_ALIGN_BOTTOM 下寄せ 左右方向の寄せと上下方向の寄せをそれぞれ指定できます。 | |
| marginx | マージンX | |
| marginy | マージンY |
| SGObject * AddFrame | ( | SGDialog * | dialog, | |
| int | id, | |||
| SGString | text, | |||
| int | x, | |||
| int | y, | |||
| int | w, | |||
| int | h, | |||
| int | imageid, | |||
| int | attr = SG_ATTR_NORMAL, |
|||
| int | fontid = 0, |
|||
| int | align = 0, |
|||
| int | marginx = 0, |
|||
| int | marginy = 0 | |||
| ) |
フレームオブジェクトを生成し追加する
ダイアログにフレーム オブジェクトを追加します。
この部分のソースコードはリソースエディタにより自動生成されますが、手動で設定することも可能です。
idはユニークな整数、imageidは定義済みのフレーム用リソースIDを指定します。
x,y,w,hは自由に設定できます。
ここで指定する「リソースID」は SGApplication::SetImageFrame() で登録されているもので、 予め登録されている必要があります。
| dialog | このグループ オブジェクトを保持しているダイアログのポインタ | |
| id | オブジェクト認識用のID(任意のユニークな数値) | |
| text | 表示文字列 | |
| x | X座標 | |
| y | Y座標 | |
| w | 横幅 | |
| h | 高さ | |
| imageid | フレーム リソースID | |
| attr | 属性 初期の表示属性を指定できます。省略時は SG_ATTR_NORMAL となります。 SG_ATTR_NORMAL SG_ATTR_HIDE | |
| fontid | フォント リソースID | |
| align | 寄せ 左右方向の寄せ SG_ALIGN_CENTER 中央 SG_ALIGN_LEFT 左寄せ SG_ALIGN_RIGHT 右寄せ 上下方向の寄せ SG_ALIGN_MIDDLE 中央 SG_ALIGN_TOP 上寄せ SG_ALIGN_BOTTOM 下寄せ 左右方向の寄せと上下方向の寄せをそれぞれ指定できます。 | |
| marginx | マージンX | |
| marginy | マージンY |
| SGObject * AddPicture | ( | SGDialog * | dialog, | |
| int | id, | |||
| int | x, | |||
| int | y, | |||
| int | w, | |||
| int | h, | |||
| const char * | file, | |||
| int | attr = SG_ATTR_NORMAL, |
|||
| int | shared = 1 | |||
| ) |
ピクチャー オブジェクトを生成し追加する
ダイアログにピクチャー オブジェクトを追加します。
この部分のソースコードはリソースエディタにより自動生成されますが、手動で設定することも可能です。
idはユニークな整数、file は画像ファイルをファイル名のみ指定します。 この時、画像ファイルはリソースフォルダにあるものとします。
初期リソースフォルダは "resources/" です。
void SGGraphics::SetImageFolder(const char* folder)
で変更することが出来ます。
x,y,w,hは自由に設定できます。
| dialog | このグループ オブジェクトを保持しているダイアログのポインタ | |
| id | オブジェクト認識用のID(任意のユニークな数値) | |
| x | X座標 | |
| y | Y座標 | |
| w | 横幅 | |
| h | 高さ | |
| file | 画像ファイル名 | |
| attr | 属性 初期の表示属性を指定できます。省略時は SG_ATTR_NORMAL となります。 SG_ATTR_NORMAL SG_ATTR_HIDE | |
| shared | 共有ファイルTRUE 共有する FALSE 共有しない |
| SGObject * AddIcon | ( | SGDialog * | dialog, | |
| int | id, | |||
| int | x, | |||
| int | y, | |||
| int | w, | |||
| int | h, | |||
| const char * | file, | |||
| int | attr = SG_ATTR_NORMAL, |
|||
| int | shared = 1 | |||
| ) |
アイコン オブジェクトを生成し追加する
ダイアログにアイコン オブジェクトを追加します。
この部分のソースコードはリソースエディタにより自動生成されますが、手動で設定することも可能です。
idはユニークな整数、file は画像ファイルをファイル名のみ指定します。 この時、画像ファイルはリソースフォルダにあるものとします。
初期リソースフォルダは "resources/" です。
void SGGraphics::SetImageFolder(const char* folder)
で変更することが出来ます。
x,y,w,hは自由に設定できます。
| dialog | このグループ オブジェクトを保持しているダイアログのポインタ | |
| id | オブジェクト認識用のID(任意のユニークな数値) | |
| x | X座標 | |
| y | Y座標 | |
| w | 横幅 | |
| h | 高さ | |
| file | 画像ファイル名 | |
| attr | (=SG_ATTR_NORMAL)属性 初期の表示属性を指定できます。省略時は SG_ATTR_NORMAL となります。 SG_ATTR_NORMAL SG_ATTR_HIDE | |
| shared | 共有ファイルTRUE 共有する FALSE 共有しない |
| SGObject * AddMovie | ( | SGDialog * | dialog, | |
| int | id, | |||
| int | x, | |||
| int | y, | |||
| const char * | file, | |||
| int | attr = SG_ATTR_NORMAL, |
|||
| int | loop = 1, |
|||
| int | play = 0 | |||
| ) |
ムービー オブジェクトを生成し追加する
ダイアログにムービー オブジェクトを追加します。
この部分のソースコードはリソースエディタにより自動生成されますが、手動で設定することも可能です。
idはユニークな整数、file は画像ファイルをファイル名のみ指定します。 この時、画像ファイルはリソースフォルダにあるものとします。
初期リソースフォルダは "resources/" です。
void SGGraphics::SetImageFolder(const char* folder)
で変更することが出来ます。
x,y,w,hは自由に設定できます。
| dialog | このグループ オブジェクトを保持しているダイアログのポインタ | |
| id | オブジェクト認識用のID(任意のユニークな数値) | |
| x | X座標 | |
| y | Y座標 | |
| w | 横幅 | |
| h | 高さ | |
| file | 画像ファイル名 | |
| attr | 属性 初期の表示属性を指定できます。省略時は SG_ATTR_NORMAL となります。 SG_ATTR_NORMAL SG_ATTR_HIDE |
| SGObject * AddCanvas | ( | SGDialog * | dialog, | |
| int | id, | |||
| int | x, | |||
| int | y, | |||
| int | w, | |||
| int | h, | |||
| int | attr = SG_ATTR_NORMAL | |||
| ) |
キャンバス オブジェクトを生成し追加する
ダイアログにキャンバス オブジェクトを追加します。
この部分のソースコードはリソースエディタにより自動生成されますが、手動で設定することも可能です。
idはオブジェクト認識用でユニークな整数を指定します。
x,y,w,hは自由に設定できます。
| dialog | このグループ オブジェクトを保持しているダイアログのポインタ | |
| id | オブジェクト認識用のID(任意のユニークな数値) | |
| x | X座標 | |
| y | Y座標 | |
| w | 横幅 | |
| h | 高さ | |
| attr |
| SGObject * AddText | ( | SGDialog * | dialog, | |
| int | id, | |||
| SGString | text, | |||
| int | x, | |||
| int | y, | |||
| int | w, | |||
| int | h, | |||
| int | fontid, | |||
| int | attr = SG_ATTR_NORMAL, |
|||
| unsigned int | col = ((((unsigned int) 0x00 )<<24)|(((unsigned int) 0x00 )<<16)|(((unsigned int) 0x00 )<<8)|0xff), |
|||
| unsigned int | colsub = ((((unsigned int) 0x78 )<<24)|(((unsigned int) 0x78 )<<16)|(((unsigned int) 0x78 )<<8)|0xff), |
|||
| int | align = 0, |
|||
| int | marginx = 0, |
|||
| int | marginy = 0 | |||
| ) |
テキスト オブジェクトを生成し追加する
ダイアログにテキスト オブジェクトを追加します。
この部分のソースコードはリソースエディタにより自動生成されますが、手動で設定することも可能です。
idはオブジェクト認識用でユニークな整数を指定します。
| dialog | このグループ オブジェクトを保持しているダイアログのポインタ | |
| id | オブジェクト認識用のID(任意のユニークな数値) | |
| text | 文字列 | |
| x | X座標 | |
| y | Y座標 | |
| w | 横幅 | |
| h | 高さ | |
| fontid | フォント リソースID | |
| attr | ||
| col | 文字色 | |
| align | 寄せ 左右方向の寄せ SG_ALIGN_CENTER 中央 SG_ALIGN_LEFT 左寄せ SG_ALIGN_RIGHT 右寄せ 上下方向の寄せ SG_ALIGN_MIDDLE 中央 SG_ALIGN_TOP 上寄せ SG_ALIGN_BOTTOM 下寄せ 左右方向の寄せと上下方向の寄せをそれぞれ指定できます。 | |
| marginx | マージンX | |
| marginy | マージンY |