void enuSetMouseWheelCallBack() method



void enuSetMouseWheelCallBack(

[in] HVIEW hView,

[in] void cb_function(float, float)

};


Parameters

hView [in]

Type:HVIEW

enuSpace View Handle


cb_function [in]

Type:function pointer

마우스 휠 이벤트를 받고자하는 함수 포인터 주소


Return value

Type : void


Remarks

enuSpace SDK를 이용시, 응용 프로그램 개발에 뷰 마우스 휠 이벤트를 전달 받고자 하는 함수의 주소를 설정하며 해당 이벤트 발생시 응용 프로그램에 콜백함수 호출 수행. 



Examples


enuSpace SDK



HVIEW ViewHandle = NULL;


void MouseMouseWheel(float delta, float posx, float posy)

{

// Mouse Down Postiion (x, y)

// 선택 객체 리턴, 리턴값이 NULL인 경우 마우스 Up 상태시 선택 객체 없음.

HNODE Node = enuGetSelectSingleObject(ViewHandle);


if (Node)

{

VariableStruct pg_type;

enuGetAttributeByNode(pSvg, selNode, L"pg-type", &pg_type);


if (_wtoi(pg_type.strValue) == DEF_NODE_LINE)

{

// 선택된 객체가 라인이라면, 끝점 좌표값 변경.

CString strValue;

strValue.Format(L"%f", posx);

enuSetAttributeByNode(pSvg, Node, L"x2", strValue.GetBuffer(0));

strValue.Format(L"%f", posy);

enuSetAttributeByNode(pSvg, Node, L"y2", strValue.GetBuffer(0));

}

}

}


void CSampleView::OnInitialUpdate()

{

CView::OnInitialUpdate();


enuCreateProject();

enuLoadProjectFile(L"Project\\sample.enup");

ViewHandle = enuCreateView(this->m_hWnd);


enuSetMouseWheelCallBack(ViewHandle, MouseMouseWheel);

if (enuSetSvgPageView(ViewHandle, L"picture\\picture.svg"))

{

HSVG pSvg = enuGetSvgHandler(ViewHandle);

HNODE lineNode = enuCreateLine(pSvg, L"", 0, 0, 0, 0, 0, 0);


enuSetEditOperationMode(ViewHandle, false);

enuSetScriptOperationMode(true);

}

}




Reference


void enuSetLButtonDownCallBack( );

void enuSetLButtonUpCallBack( );

void enuSetRButtonDownCallBack( );

void enuSetRButtonUpCallBack( );

void enuSetMButtonDownCallBack( );

void enuSetMButtonUpCallBack( );

void enuSetMouseMoveCallBack( );

void enuSetMouseWheelCallBack( );

+ Recent posts