위젯 툴킷

Widget toolkit

위젯 툴킷, 위젯 라이브러리, GUI 툴킷 또는 UX 라이브러리는 프로그램의 그래픽 사용자 인터페이스(GUI)를 구축하는 데 사용되는 그래픽 제어 요소(위젯이라고 ) 세트를 포함하는 라이브러리 또는 라이브러리 모음입니다.

대부분의 위젯 툴킷에는 자체 렌더링 엔진이 추가로 포함되어 있습니다.이 엔진은 특정 운영 체제 또는 윈도우 시스템에 고유하거나 여러 운영 체제 및 OpenGL, OpenVG, EGL 의 렌더링 API와 인터페이스하기 위한 백엔드를 포함할 수 있습니다.그래픽 제어 요소의 모양과 느낌을 하드 코딩하거나 분리하여 그래픽 제어 요소를 테마/스킨할 수 있습니다.

개요

Standard Widget Toolkit을 사용하는 창

일부 툴킷은 언어 바인딩을 사용하여 다른 언어에서 사용할 수 있습니다.Glade Interface Designer와 같은 그래피컬 사용자 인터페이스 빌더는 이 경우 GtkBuilder와 같은 사용자 인터페이스 마크업 언어를 사용하여 WYSIWYG 방식으로 GUI를 쉽게 제작할 수 있습니다.

프로그램의 GUI는 일반적으로 캐스케이드 방식으로 구성되며 그래픽 제어 요소가 서로 직접 추가됩니다.

대부분의 위젯 툴킷은 이벤트 [1]기반 프로그래밍을 상호 작용 모델로 사용합니다.툴킷은 사용자가 버튼을 클릭하는 등의 사용자 이벤트를 처리합니다.이벤트가 검출되면 해당 이벤트가 처리되는 응용 프로그램으로 전달됩니다.이러한 툴킷의 설계는 지나치게 단순화된 이벤트 액션 모델을 촉진하여 프로그래머들이 오류 발생 가능성이 높고 확장하기 어렵고 지나치게 복잡한 애플리케이션 코드를 [2]생성하도록 만든다는 비판을 받아 왔습니다.유한 상태 기계와 계층적 상태 기계는 반응성 프로그램에 대한 대화형 상태 변화를 나타내기 위해 높은 수준의 모델로 제안되어 왔다.

윈도 시스템

은 그래픽 제어 요소로 간주됩니다.일부 윈도우 시스템에서는 윈도우 매니저에 의해 씬 그래프(캔버스)에 윈도우가 직접 추가되며 다양한 수단을 통해 서로 겹쳐 쌓고 겹칠 수 있습니다.각 창은 캔버스에 추가된 위젯을 제어하는 특정 응용 프로그램과 연결되며, 연결된 응용 프로그램에서 이를 보고 수정할 수 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ 사용자 인터페이스 소프트웨어 도구의 과거, 현재미래브래드 마이어스, 스콧 E허드슨, 랜디 파우쉬, Y 파우쉬ACM Transactions on Computer-Human Interaction, 2000.[1]
  2. ^ Samek, Miro (April 2003). "Who Moved My State?". C/C++ Users Journal, The Embedded Angle column.