이번에는 지난번에 이어 Elementary에 대해서 알아보겠습니다.
(갑자기 존대말로 바뀌었네요...^^;;)
Elementary는 EFL에서 제공하는 위젯 라이브러리중 하나입니다.
아...위젯이 뭔지 모르시는 분들도 있겠네요.
위젯이라는 거 말로 설명하기 참 힘듭니다.
일단 버튼, 아이콘, 체크박스, 리스트 같은 것들을 위젯이라고 생각하시면 됩니다.
Elementary를 이용하면 위에 열거한 위젯들을 쉽게(?) 만들 수 있습니다.
예를 들면 Elementary에는 다음과 같은 API가 있습니다.
Evas_Object* elm_button_add(Evas_Object* parent)
눈치가 빠르신 분들은 벌써 아셨겠지만
Elementary Widget API들은 보통 이름이 elm_로 시작을 합니다
Elementary에서 제공하는 이런 API들을 통해서
버튼을 비롯한 위젯들을 화면에 만들 수 있습니다.
참고로 위의 API는 버튼을 parent의 canvas에 add하는 기능을 수행합니다.
사실 위의 제가 말한 API 설명을 보고 바로 이해가 되시는 분은
여기서 하산하셔도 됩니다...^^
근데 여기서 한가지 궁금한게 생기셨을 겁니다.
저도 너무 궁금했던 건데요.
분명 Elementary API인데 return 값은 Evas_Object* 네요.
Elementary와 Evas는 도대체 무슨 관계일까?
이런 질문이 들면서 헷갈리시는 분들 많을것 같습니다. (아닌가요? ^^;;)
그냥 간단하고 쉽게 설명하겠습니다. (제가 이해한 방식입니다.)
Canvas에 표현되는 녀석들은 Evas를 사용합니다.
elm_button_add API는 Elementary Layer이지만
버튼은 Canvas에 표현되기 때문에 Evas_Object를 사용합니다.
일단 이렇게만 알고 넘어가면 됩니다.
구현을 하다보면 자연스럽게 감이 오실겁니다.