Windows 7 에서 Gadget을 어떻게 만드는지 살펴 보았다.
Windows의 Gadget은 HTML 과 CSS 그리고 Javascript로 구성된다.

Windows의 Gadget은 종류에 따라 존재하는 위치가 다르다.
Windows gadget은 %programfiles%\Windows Sidebar\Gadgets
공유 gadget은 %programfiles%\Windows Sidebar\Shared Gadgets
그리고 사용자가 만든 User gadget은 %LOCALAPPDATA%/Microsoft/Windows Sidebar/Gadgets 에 위치한다.

Gadget은 Gadgets 폴더 안에 {Gadget Name}.gadget 형태로 구성되고, .gadget 폴더 안에는 Gadget의 Manifest를 기술한 gadget.xml 파일과 Gadget의 본체인 .html 파일들로 구성된다.

간단하게 Hello Gadget 이라는 문구를 출력하는 Gadget을 만들어 보았다.
사용자 Gadgets 폴더에 HelloGadget.gadget 폴더를 만들고 Manifest 파일인 gadget.xml 파일과 Gedget의 본체인 HelloGadget.html 파일을 위치시켰다. 
HelloGadget.gadget
gadget.xml
HelloGadget.html

Gadget의 전반적인 구성을 기술한 Manifest 파일은 XML 형태로 작성되며 Gadget의 정보와 본체를 기술한 HTML 파일을 담고 있다. 

 
Manifest에 담겨있는 각각 태그 항목의 의미는 아래 이미지와 같다. 
Manifest의 태그 설명

Manifest의 태그 설명 (출처: MSDN)


태그에 대한 보다 자세한 설명은 MSDN을 참고 하면 된다.
http://msdn.microsoft.com/en-us/library/ff486356(v=vs.85)

Gadget의 본체를 구현한 HTML 파일은 아래처럼 간단한 내용을 담고 있다.


이렇게 작성 된 Gadget을 사용하려면 바탕화면에서 오른쪽 버튼을 클릭하면 나오는 메뉴에서 Gadgets 메뉴를 선택한다. 그러면 나타나는 Gadget목록 대화상자가 보여진다. 
바탕화면 오른쪽 팝업 메뉴

바탕화면 오른쪽 팝업 메뉴

Gadget 목록 대화상자

Gadget 목록 대화상자

목록 중 원하는 Gadget에서 오른쪽 버튼을 클릭하여 나오는 메뉴에서 Add 메뉴를 선택하면 바탕화면에 추가한 Gadget이 보여진다.
Gedget 팝업 메뉴

Gedget 팝업 메뉴

추가된 Hello Gadget!!

추가된 Hello Gadget!!

 

Gadget은 시스템의 Sidebar에 생성이 되는 것으로 Vista에서는 출력 영역이 제한되었었지만 Windows 7으로 넘어오면서 제한이 풀려 바탕화면 어디에나 위치할 수 있다.

Gadget을 편집하기 위해서는 먼저 바탕화면에서 Gadget을 제거하고 수정한 다음 다시 추가해야 한다. 그렇지 않고 바탕화면에 추가된 상태에서 HTML 파일을 수정하면 반영이 되지 않는다.

HTML과 CSS 그리고 Javascript로만 구성되어 구현 범위가 상당히 제한적이지만 HTML5나 ActiveX 를 이용한다면 좀 더 확장할 수 있을 것 같다.

'Dev Story > Mess' 카테고리의 다른 글

Lazarus 1.0 x64 저장 문제  (0) 2012.08.31
OpenCV 2.4.2 테스트  (0) 2012.08.08
요긴한 Tag  (0) 2011.08.01
[C#] Form 디자이너 클래스는 가장 먼저 선언 되어야 하네...  (0) 2011.07.28
C++ Builder 에 가끔 좌절한다.  (0) 2011.04.10
Posted by NeoDreamer
:
BLOG main image
사람의 발목을 잡는건 '절망'이 아니라 '체념'이고 앞으로 나아가게 하는건 '희망'이 아니라 '의지'다. - 암스 중에서 - by NeoDreamer

공지사항

카테고리

전체보기 (793)
Life Story (1)
Thinking (2)
Nothing (5)
---------------* (0)
Dev Story (701)
Com. Story (80)
IT Story (1)
---------------+ (0)
Etc (2)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

Total :
Today : Yesterday :
05-09 04:06