longlong.h
にもどるtcode.h
にすすむtad.h
以下は、TAD を扱うための定数、型の定義である。
#define RT_LINK 0 リンクレコード #define RT_TADDATA 1 TAD主レコード #define RT_TADCMT 2 TAD注釈レコード #define RT_TADSUB 3 TAD補助レコード #define RT_TADRSV 4 予約レコード #define RT_SFUSEN 5 設定付箋レコード #define RT_DFUSEN 6 指定付箋レコード #define RT_FFUSEN 7 機能付箋レコード #define RT_MFUSEN 8 実行機能付箋レコード #define RT_PROG 9 実行プログラムレコード #define RT_DATABOX 10 データボックスレコード #define RT_FONT 11 フォントレコード #define RT_DICT 12 辞書レコード #define RT_SYSRSV1 13 システム予約 1 #define RT_SYSRSV2 14 システム予約 2 #define RT_SYSDATA 15 システムデータレコード
#define RM_LINK 0x00000001 リンクレコード #define RM_TADDATA 0x00000002 TAD主レコード #define RM_TADCMT 0x00000004 TAD注釈レコード #define RM_TADSUB 0x00000008 TAD補助レコード #define RM_TADRSV 0x00000010 予約レコード #define RM_SFUSEN 0x00000020 設定付箋レコード #define RM_DFUSEN 0x00000040 指定付箋レコード #define RM_FFUSEN 0x00000080 機能付箋レコード #define RM_MFUSEN 0x00000100 実行機能付箋レコード #define RM_PROG 0x00000200 実行プログラムレコード #define RM_DATABOX 0x00000400 データボックスレコード #define RM_FONT 0x00000800 フォントデータレコード #define RM_DICT 0x00001000 辞書データレコード #define RM_SYSRSV1 0x00002000 システム予約 1 #define RM_SYSRSV2 0x00004000 システム予約 2 #define RM_SYSDATA 0x00008000 システムデータレコード
#define OBJ_EJECT 0x1000 取り外し可能デバイス実身 #define OBJ_DEV 0x2000 デバイス実身 #define OBJ_EXEC 0x8000 実行可能ファイル
#define TC_NULL 0x0000 NULL(無効コード) #define TC_NL 0x000a NL(改段落コード) #define TC_CR 0x000d CR(改行コード) #define TC_TAB 0x0009 TAB(タブコード) #define TC_FF 0x000c FF(改ページコード) #define TC_NC 0x000b NC(改コラムコード) #define TC_SP 0x0020 Space(スペースコード) #define TC_LANG 0xfe00 言語指定コード #define TC_SPEC 0xff00 特殊コード #define TC_ESC 0xff80 Escape
typedef H UNITS; 座標系の単位 typedef UH CHSIZE; 文字サイズ typedef UH SCALE; 文字表示の行間隔 typedef UH RATIO; 文字表示などの比率
typedef struct { UH id; TADセグメントID UH len; TADセグメントサイズ (len 以降のサイズ) } TADSEG;
typedef struct { UH id; TADセグメントID UH len; ダミー領域(0xffff を格納する) UW llen; TADセグメントサイズ (len 以降のサイズ) } LTADSEG;
#define TS_INFO 0xE0 管理情報セグメント #define TS_TEXT 0xE1 文章開始セグメント #define TS_TEXTEND 0xE2 文章終了セグメント #define TS_FIG 0xE3 図形開始セグメント #define TS_FIGEND 0xE4 図形終了セグメント #define TS_IMAGE 0xE5 画像セグメント #define TS_VOBJ 0xE6 仮身セグメント #define TS_DFUSEN 0xE7 指定付箋セグメント #define TS_FFUSEN 0xE8 機能付箋セグメント #define TS_SFUSEN 0xE9 設定付箋セグメント
#define TS_TPAGE 0xA0 文章ページ割付け指定付箋 #define TS_TRULER 0xA1 行書式指定付箋 #define TS_TFONT 0xA2 文字指定付箋 #define TS_TCHAR 0xA3 特殊文字指定付箋 #define TS_TATTR 0xA4 文字割り付け指定付箋 #define TS_TSTYLE 0xA5 文字修飾指定付箋 #define TS_TVAR 0xAD 変数参照指定付箋 #define TS_TMEMO 0xAE 文章メモ指定付箋 #define TS_TAPPL 0xAF 文章アプリケーション指定付箋
#define TS_FPRIM 0xB0 図形要素セグメント #define TS_FDEF 0xB1 データ定義セグメント #define TS_FGRP 0xB2 グループ定義セグメント #define TS_FMAC 0xB3 マクロ定義/参照セグメント #define TS_FATTR 0xB4 図形修飾セグメント #define TS_FPAGE 0xB5 図形ページ割り付け指定付箋 #define TS_FMEMO 0xBE 図形メモ指定付箋 #define TS_FAPPL 0xBF 図形アプリケーション指定付箋
TS_INFO
)typedef struct { UH subid; /* 管理情報項目ID */ UH sublen; /* 項目データバイト数 */ UH data[1]; /* 項目データ本体 */ } INFOSEG;
TS_TEXT
)typedef struct { RECT view; /* 表示領域 */ RECT draw; /* 描画領域 */ UNITS h_unit; /* 水平ユニット */ UNITS v_unit; /* 垂直ユニット */ UH lang; /* デフォールト言語 */ UH bgpat; /* 背景パターンID */ } TEXTSEG; #define TEXTSEG_STRUCT "hhhhhhhhhhhh"
TS_FIG
)typedef struct { RECT view; /* 表示領域 */ RECT draw; /* 描画領域 */ UNITS h_unit; /* 水平ユニット */ UNITS v_unit; /* 垂直ユニット */ W ratio; /* 予約 */ } FIGSEG; #define FIGSEG_STRUCT "hhhhhhhhhhw"
TS_IMAGE
)typedef struct { RECT view; /* 表示領域 */ RECT draw; /* 描画領域 */ UNITS h_unit; /* 水平ユニット */ UNITS v_unit; /* 垂直ユニット */ H slope; /* 傾斜 */ UH color; /* カラー属性 */ UH cinfo[4]; /* カラー情報 */ UW extlen; /* 拡張情報のバイト数 */ UW extend; /* 拡張情報へのオフセット */ UW mask; /* マスクデータへのオフセット */ /*---------------- 圧縮ビットマップデータ---------------*/ H compac; /* 圧縮ビットマップ形式 */ H planes; /* ビットマッププレーン数 */ H pixbits; /* ピクセルビット数 */ H rowbytes; /* プレーンの横幅バイト数 */ RECT bounds; /* 座標定義 */ UW base_off[1]; /* プレーンデータ開始アドレス */ } IMAGESEG; #define IMAGESEG_STRUCT "4h4hhhhh4hwwwhhhh4h" /* bounds まで */ #define BASE_SIZE_IMAGESEG (sizeof(IMAGESEG)-sizeof(UW)) /* bounds まで */
typedef struct { UH ext_id; /* 拡張情報のタイプ */ UH len; /* 拡張情報のバイト数 */ union { UB data[1]; /* 拡張情報本体 */ UW offset; /* 拡張情報本体へのオフセット */ } i; } IMAGESEG_EXTEND; #define IMAGESEG_EXTEND_STRUCT "hh" /* len まで */ #define BASE_SIZE_IMAGESEG_EXTEND (sizeof(UH)*2) /* len まで */
TS_VOBJ
)typedef struct { RECT view; /* 表示領域 */ H height; /* 開いた場合の高さ */ CHSIZE chsz; /* 文字サイズ */ COLOR frcol; /* 枠の色 */ COLOR chcol; /* 文字色 */ COLOR tbcol; /* タイトル背景色 */ COLOR bgcol; /* 開いた場合の背景色 */ UH dlen; /* 固有データのバイト長 */ } VOBJSEG; #define VOBJSEG_STRUCT "hhhhhhwwwwh" #define SIZE_VOBJSEG(dlen) (30 + dlen)
TS_FFUSEN
)typedef struct { RECT view; /* 表示領域 */ CHSIZE chsz; /* 文字サイズ */ UH frcol[2]; /* 枠の色 */ UH chcol[2]; /* 文字色 */ UH tbcol[2]; /* タイトル背景色 */ UH pict; /* ピクトグラム/タイプ */ UH appl[3]; /* アプリケーションID */ TC name[16]; /* 付箋名 */ TC dtype[16]; /* データタイプ名 */ UH dlen; /* 固有データのバイト長 */ } FUSENSEG; #define FUSENSEG_STRUCT "hhhhhwwwh3h16h16hh" #define SIZE_FUSENSEG(dlen) (96 + dlen)
TS_DFUSEN
)typedef struct { RECT view; /* 表示領域 */ CHSIZE chsz; /* 文字サイズ */ UH frcol[2]; /* 枠の色 */ UH chcol[2]; /* 文字色 */ UH tbcol[2]; /* タイトル背景色 */ UH pict; /* ピクトグラム/タイプ */ UH appl[3]; /* アプリケーションID */ TC name[16]; /* 付箋名 */ UH dlen[2]; /* 固有データのバイト長 */ } DFUSENSEG; #define DFUSENSEG_STRUCT "hhhhhwwwh3h16hw" #define SIZE_DFUSENSEG(dlen) (66 + dlen)
longlong.h
にもどるtcode.h
にすすむ