김프 툴킷

위키백과 ― 우리 모두의 백과사전.

GTK+



{{{설명}}}
개발자 그놈 재단
최근 버전 2.10.0 / 2006년 7월 3일
미리보기 버전 CVS /
운영체제 크로스 플랫폼
종류 개발 라이브러리
라이선스 LGPL
웹사이트 www.gtk.org

초기에 김프를 위해서 만들어졌던 김프 툴킷, 줄여서 GTK+라고도 하는 툴킷은 X 윈도우 시스템을 위한 위젯 툴킷 중 하나이다. GTK+와 Qt는 모티프에 대한 좋은 대안이 되어 주었다. GTK+는 1997년 Spencer Kimball, Peter Mattis, Josh MacDonald에 의해서 만들어졌다. 그들은 모두 UC Berkeley에 있는 eXperimental Computing Facility (XCF) 소속이었다. LGPL로 라이선스되었기 때문에, GTK+는 자유 소프트웨어이자 오픈 소스 소프트웨어이고, GNU 프로젝트의 일부분이다.

목차

[편집] 프로그래밍 언어

GTK+는 C 프로그래밍 언어를 사용한다. 그렇지만 그들의 제작자들은 객체지향 구조를 사용하였다. 그놈 플랫폼은 C++ 프로그래밍 언어, , 루비 프로그래밍 언어, 자바, 파이썬으로의 바인딩을 제공하였다.많은 사람들이 에이다, D 프로그래밍 언어, 하스켈 프로그래밍 언어, 파스칼, PHP, 닷넷 프레임워크로의 바인딩을 작성하였다.

다른 많은 위짓 툴킷들과 달리, 하지만 Qt와 마찬가지로 GTK+는 Xt에 기반하지 않는다. 그래서 GTK+를 많은 다른 환경으로 이식할 수 있었다. 하지만 전통적인 X11 애플리케이션의 사용자 설정 방식인 X 리소스 데이터베이스에 접근할 수 없다는 단점이 있다.

[편집] 모양

사용자는 디스플레이 엔진으로 툴킷의 모양을 설정할 수 있다. 엔진들은 윈도, 모티프, Qt, 넥스트스텝등의 모양으로 그려줄 수 있었다.

[편집] GTK+를 사용하는 환경

Screenshot of the GIMP 2.0 on Xfce4
실제 크기로
Screenshot of the GIMP 2.0 on Xfce4
  • 그놈 환경은 GTK+를 기반으로 사용한다.
  • Xfce 환경도 GTK+를 기반으로 사용한다. 하지만 Xfce용 프로그램은 많은 것에 의존하지 않는다. (이것은 그놈 프로그램과 GTK+ 프로그램을 구분한다)
  • GPE, Maemo (노키아의 인터넷 태블릿 프레임워크), 액세스 리눅스 플랫폼 (새로운 팜 OS 호환 PDA 플랫폼) 도 GTK+를 기반으로 한다.

GTK+ 프로그램은 KDE 같은 다른 데스크탑 환경에서 돌아간다. GTK+는 마이크로소프트 윈도에서도 돌아간다. DirectFB와 ncurses 기반 포팅도 있다.

[편집] 창 관리자

  • 메타시티는 GTK+ 2를 사용한다.
  • Xfwm은 GTK+ 2를 사용한다.

[편집] 그래픽과 관련되지 않은 코드

GTK+는 초기에 그래픽과 관련되지 않은 코드를 포함했다. 이들은 링크드 리스트 및 바이너리 트리를 제공했다. GObject와 함께 오는 이러한 유틸리티 시스템은 Glib라는 별도의 라이브러리로 쪼개졌고, 이는 그래픽 인터페이스가 필요 없는 프로그래머에게 도움을 준다.

[편집] GTK+ 2

GTK+ 2는 GTK+를 계승하였다. 이것의 새로운 기능은 Pango를 사용하는 새로운 텍스트 렌더링 엔진, 새로운 테마 엔진, 향상된 접근성, 유니코드로의 완전한 전환이 있다. 하지만 GTK+ 2는 GTK+ 1과 호환성이 없으므로 프로그래머들이 소스를 새로 짜야 한다. 몇몇 프로그램들은 GTK+ 1을 그대로 사용한다. GTK+ 1은 GTK+ 2보다 빠르고 덜 복잡하고 임베디드 환경에 더 적합하다.

GTK+ 2.8부터는 카이로 엔진을 사용해서 벡터 그래픽을 처리한다.

[편집] 차후 개발

  • Project Ridley는 GTK+가 현재 포함하지 않는 각종의 라이브러리를 포함하려고 하는 시도이다. 이들은 libgnome, libgnomeui, libgnomeprint22, libgnomeprintui22, libglade, libgnomecanvas, libegg, libeel ,gtkglext를 포함한다..

[편집] 바깥 고리