2013-07-15 3 views
3

나는 gtk2hs와 cairo를 사용하여 하스켈에서 GUI와 그래픽 기반 응용 프로그램을 만드는 것을 실험하고있다. 현재 사용자가 화면에서 간단한 기하학적 모양을 만들고 조작 할 수있는 프로그램을 만들고 있습니다.하스켈의 그래픽 변환 핸들

사용자가 수행 할 수있는 3 가지 조작은 번역, 회전 및 크기 조절입니다. 변환을 할 것이다 이것의 이상적인 구현은 포토샵 같은 대부분의 이미지 조작 프로그램에서 현재 처리합니다

enter image description here

(즉, 객체가 해당 흰색 상자를 드래그하여 조정, 그 안에 어딘가에 드래그하여 번역 할 수 있습니다 경우 , 그리고 객체 상자 밖에서 회전 방향으로 클릭하고 드래그하여 회전)

gtk 또는 cairo 설명서에서 "out-of-the-box"를 수행하는 간단한 방법을 찾지 못했습니다. Google에서 검색하여 적합한 라이브러리를 찾을 수 없습니다. 누구든지이 방식으로 그래픽을 조작 할 수있게 해주는 Haskell API를 알고 있습니까? 아니면 실패합니다. 하스켈에서이 유형의 기능을 자신 만의 버전으로 구현하는 방법을 알고 있습니까?

답변

1

기본 제공 위젯이 없습니다. 실제 모양, 테두리 상자 또는 이와 유사한 사각형, 경계 사각형의 가장자리 및 사각형 등 모든 적절한 요소를 그려 이벤트가 떨어지는 지 확인하여 마우스 이벤트를 처리하여 직접 빌드해야합니다. 이러한 요소에 또는 아닙니다. 그것은 조금 지루할 수 있지만 어려워서는 안됩니다.