////////////////////////////////////////////////////////////////////////////
// ScrollInfoPacket.h
// ScrollInfoPacket構造体の定義
////////////////////////////////////////////////////////////////////////////

#if !defined( SCROLLINFOPACKET_H_INCLUDED_ )
#define SCROLLINFOPACKET_H_INCLUDED_

// カーソル・マウスのイベントを処理した際、
// 画面のスクロールなどのために、再描画する必要がある場合がある
// そのための情報を返すための構造体

typedef struct tagScrollInfoPacket {
	tagScrollInfoPacket() :
		NeedXScroll( false ), pixX( -1 ), NeedYScroll( false ), lineY( -1 ),
		IsSelCange( false ), ChangeSLine( -1 ), ChangeELine( -1 )
	{
	};

	bool NeedXScroll;	// 水平方向にスクロールする必要が有るかないか
	int pixX;		// どの位置へ移動すればいいのか
	bool NeedYScroll;	// 垂直方向にスクロールする必要が有るか無いか
	int lineY;		// どの行へ移動すればいいのか

	bool IsSelCange;	// 選択範囲が変化したか否か
	int ChangeSLine;	// 選択範囲が変化した行の開始
	int ChangeELine;	// 選択範囲が変化した行の終了
} ScrollInfoPacket;

#endif // SCROLLINFOPACKET_H_INCLUDED_
