アットウィキロゴ

Putix > API

API

基本的にはOTYAX5と同じ

Util

LF$() 改行(LF)の文字を取得
CR$() 改行(CR)の文字を取得(LFを使うべき)
BS$() バックスペースの文字を取得
HTAB$() 水平タブの文字コードを取得
INF#() infの実数を取得
NAN#() nanの実数を取得
NewArray(#,%,$, )(LEN) 指定した長さと型で一次元配列を作成する
NewArray2(#,%,$, )(LEN,L2) 指定した長さと型で二次元配列を作成する
NewArray3(#,%,$, )(LEN,L2,L3) 指定した長さと型で三次元配列を作成する
NewArray4(#,%,$, )(LEN,L2,L3,L4) 指定した長さと型で四次元配列を作成する
ShortToRGB(IN) 16bit値(内部表現)からRGB値に変換
RGBToShort(IN) RGB値から16bit値(内部表現)に変換

Process

NewProcess NAME$,ARGS$ OUT PID,NUPID,E 指定した名前と引数で現在実行しているプロセスの子として実行
SetProcessVar DAT プロセスに紐づけられたデータを設定
GetProcessVar() プロセスに紐づけられたデータを取得
CheckProcess(PID,NUPID) 指定したプロセスが動いているか確認
GetProcessArgs$() 現在実行しているプロセスの引数を取得
GetSTDIN OUT FID,NUFID 現在実行しているプロセスの標準入力を取得
GetPID() 現在実行しているプロセスのPIDを取得
GetNUPID() 現在実行しているプロセスのNUPIDを取得
NUPIDToPID() NUPIDをPIDに変換
ExitProcess RESULT 現在実行しているプロセスを終了
KillProcess PID,NUPID OUT ERR 指定したプロセスを終了する

Command

ExecCommand LINE$ OUT PID,NUPID,ERR 指定したコマンドラインを実行する
GetCommandArg ARGS$,I OUT CMD$,INDEX ARGS$からコマンドの引数を取得(わかりにくい)
CommandArgsToArray ARY$[],EXPAND 引数を配列にするEXPANDがTRUEならば配列を自動拡張

File

FileOpen NAME$ OUT FID,NUFID,E 指定した名前のTXTリソースを開く
FileWrite(FID,NUFID,DAT$) ファイルに文字列を書き込む
FileRead FID,NUFID,LEN OUT DAT$,E ファイルから文字列を指定した長さ読み込む
FileClose(FID,NUFID) ファイルを閉じる
NUFIDToFID(NUFID) NUFIDをFIDにする
CheckFID(FID,NUFID) 指定したFIDが開かれているか確認
FileSeekCUR FID,NUFID,LEN OUT ERR 相対位置でシーク
GetFilePos FID,NUFID OUT POS,ERR 現在のファイルの位置を取得
PrintConsole STR$ 標準出力に文字列を出力
InkeyConsole$(LEN) 標準入力から指定した長さの文字列を取得

OTYA WINDOW SYSTEM(OTW)

開発中
(OTW5.0-B)

Control

GetWindowControl() Windowのコントロールを取得
NewControl NAME$,PARENT OUT CTL,ERR 新しいコントロールを作る
ExtendControl NAME$,PARENT OUT CTL,ERR 既存のコントロール(Windowなど)を継承
CheckControl(CTL) コントロールが正常かを確認
DeleteControl(CTL) コントロールを削除
SetControlPainter(CTL,HANDLER$) コントロールの描画イベントを処理する関数の登録
SetControlLMouseUpHandler(CTL,HANDLER$) 左クリック(ボタンから離されたとき)のイベントを処理する関数の登録

Window

GetRootWND() ルートウィンドウを取得
CheckWindow(WND) ウィンドウが正常化を確認
WindowBackFlag() NewWindowで指定するフラグ, ウィンドウを後ろに配置する
WindowFrontFlag() NewWindowで指定するフラグ, ウィンドウを前に配置する
NewWindow CTL,NAME$,X,Y,WIDTH,HEIGHT,PARENT,FLG OUT WND,ERR コントロールと名前と座標とサイズと親ウィンドウとフラグを使ってウィンドウを作成
NewTopLevelWindow CTL,NAME$,WIDTH,HEIGHT OUT WND,ERR コントロールと名前とサイズを使ってウィンドウを作成
FrontWindow(WND) ウィンドウを手前に持ってくる
MoveWindow(WND,X,Y) ウィンドウを指定座標に持っていく
SendWindowEvent(WND,TYPE,A1,A2) ウィンドウへイベントを送信
RepaintWindow(WND) ウィンドウへ再描画イベントを送信
CallBaseControlHandler(WND,CTL,TYPE,A1,A2) (イベントのハンドラーで)親ハンドラを呼び出し
PeekWindowEvent(WND)->OUT CTL,TYPE,A1,A2 ウィンドウのイベントキューの先頭を削除せずに帰す
UpdateWindow(WND) ウィンドウのイベントを処理
GetWindowName$(WND) ウィンドウの名前を取得
GetWindowWidth(WND) ウィンドウの幅を取得
GetWindowHeight(WND) ウィンドウの高さを取得

Graphic

GBeginWindow(WND) 描画開始を明示的に宣言する
GEndWindow(WND) 描画終了を明示的に宣言する
GPSETWindow WND,X,Y,COL ウィンドウに点を書く
GFILLWindow WND,X,Y,X2,Y2,COL
GBOXWindow WND,X,Y,X2,Y2,COL
GPRINTWindowCC WND,X,Y,STR$,PAL コンソール色で文字を表示
GPRINTWindow WND,X,Y,STR$,COL

Sample

VAR TESTOTWCTL,TESTOTWWND
DEF I_TEST
 IF!CHKCALL("IsWinRunning")||!IsWinRunning()THEN
  ExitProcess 1
  RETURN
 ENDIF
 VAR E
 ExtendControl "TEST",GetWindowControl() OUT TESTOTWCTL,E
 IF E THEN ExitProcess 1RETURN
 E=SetControlPainter(TESTOTWCTL,"TESTOTWPainter")
 NewTopLevelWindow TESTOTWCTL,"TEST",64,64 OUT TESTOTWWND,E
 IF E THEN ExitProcess 1
END
DEF TESTOTWPainter WND,CTL,T,A1,A2
 VAR E=CallBaseControlHandler(WND,CTL,T,A1,A2)
 IF E THEN RETURN
 E=GBeginWindow(WND)
 IF E THEN RETURN
 GFILLWindow WND,0,0,64,64,RGB(0,0,0)
 GPRINTWindow WND,0,0,"HELLO",RGB(255,255,255)
 E=GEndWindow(WND)
END
DEF L_TEST
 UpdateWindow(TESTOTWWND)
END

flag memo

  • CTL_FRMBTNHANDLER
  • CTL_LBTNFLG
  • CTL_RBTNFLG
  • CTL_BTNDWNFLG
  • CTL_BTNUPFLG

文字列は"123"[0]みたいな使い方が可能
最終更新:2014年12月11日 19:28