#ifndef _OWNERDRAW_LISTBOX_SMP1_AS_
#define _OWNERDRAW_LISTBOX_SMP1_AS_

;=====================================================================
;	v3_042_OwnerDrawListBox_smp1.hsp 用 ヘッダファイル     for hsp3.0a
;
;	2006/01/07
;=====================================================================

// ウィンドウスタイル
#define WS_CHILD              $40000000
#define WS_VISIBLE            $10000000
#define WS_VSCROLL            $00200000
#define WS_EX_CLIENTEDGE      $00000200

// リストボックススタイル
#define LBS_NOTIFY            $0001
#define LBS_OWNERDRAWFIXED    $0010
#define LBS_OWNERDRAWVARIABLE $0020
#define LBS_HASSTRINGS        $0040

// ウィンドウメッセージ
#define WM_MEASUREITEM $002C
#define WM_DRAWITEM    $002B
#define WM_COMMAND     $0111

// リストボックスメッセージ
#define LB_ADDSTRING   $0180
#define LB_GETTEXT     $0189
#define LB_GETCURSEL   $0188

// リストボックス通知コード
#define LBN_ERRSPACE        (-2)
#define LBN_SELCHANGE       1
#define LBN_DBLCLK          2
#define LBN_SELCANCEL       3
#define LBN_SETFOCUS        4
#define LBN_KILLFOCUS       5

// DrawEdge 用
#define BDR_RAISEDOUTER $0001	; 外側凸
#define BDR_SUNKENOUTER $0002	; 外側凹
#define BDR_RAISEDINNER $0004	; 内側凸
#define BDR_SUNKENINNER $0008	; 内側凹
#define BDR_SUNKEN      (BDR_SUNKENOUTER | BDR_SUNKENINNER)
#define BF_RECT         $000F	; 四辺

// hspマクロの短縮
#define dspx ginfo_dispx		; ディスプレイ幅
#define dspy ginfo_dispy		; ディスプレイ高さ
#define winx ginfo_winx			; クライアント幅
#define winy ginfo_winy			; クライアント高さ

// Owner Draw Status
#define ODS_SELECTED    $0001	; 選択
#define ODS_DISABLED    $0004
#define ODS_FOCUS       $0010	; フォーカス

// Owner Draw Action
#define ODA_DRAWENTIRE  $0001	; コントロール全体の描画要求
#define ODA_SELECT      $0002	; アイテムの選択状態の変更通知
#define ODA_FOCUS       $0004	; コントロールフォーカスの変更通知

// SetBkMode()
#define TRANSPARENT     1		; 背景残し


// サンプル用定数
#define MARGIN          50		; 余白
#define IDC_LISTBOX     $4000	; リストボックスID
#define MAXSTRING		255		; 項目の最大バイト数
#define ITEMNUMBER		16		; リストに表示する項目数
#define ctype RGB(%1,%2,%3) (($FF & %1)|(($FF & %2) << 8)|(($FF & %3)<<16))

#endif