首页 / 专利库 / 电脑编程 / XML用户界面语言 / 윈도우 어플리케이션용 스킨 시스템

윈도우 어플리케이션용 스킨 시스템

阅读:521发布:2020-12-09

专利汇可以提供윈도우 어플리케이션용 스킨 시스템专利检索,专利查询,专利分析的服务。并且PURPOSE: A skin system for window application is provided to correct a user interface(UI) by only correcting separated skin information without correcting application, as well as conveniently transmit the skin information between different window systems. CONSTITUTION: A skin data management part(100) interprets WinML(Window Markup Language) data including window component information of respective applications, and manage the WinML data. An application part(140) drives the skin data management part(100). A window system part(160) is presented to every computer system. A meta window engine part(110) generates and manages window objects based on the skin data interpreted by the skin data management part(100). A script engine part(130) performs event procedure recorded as script in XML documents of respective window objects generated in the meta window engine part(110). A remote data server(150) receives the remote data request of the skin data management part(100) to process the request.,下面是윈도우 어플리케이션용 스킨 시스템专利的具体信息内容。

  • 윈도우 어플리케이션이 제공한 스킨정보를 받아 스킨데이터가 담긴 XML 문서와 부속데이터를 수집하는 스킨 자료 관리부;
    상기 스킨 자료 관리부로부터 전달된 윈도우의 구성과 동작에 관한 정보를 구비한 XML 문서를 해석하는 XML 구문 해석부;
    상기 XML 구문 해석부를 통해 해석된 XML 문서의 윈도우 객체를 각 윈도우시스템에서 생성하고 관리하는 메타윈도우 엔진부;
    상기 메타윈도우 엔진부에서 생성된 윈도우 개체별로 XML 문서내에 스크립으로 기록된 이벤트 프로시져를 수행하는 스크립 엔진부를 포함하는 것을 특징으로 하는 윈도우 어플리케이션용 스킨 시스템.
  • 제 1 항에 있어서, 상기 스킨 자료 관리부는
    어플리케이션으로부터 전달받은 스킨정보를 XML 구문해석부로 전달하여 XML DOM API 형식의 데이터구조로 변환하여 WOM XMLDOM으로 전달하는 Loader부;
    상기 XML 구문해석부로부터 XML DOM API 형식의 데이터구조로 변환된 스킨정보로부터 오브젝트에 관한 정보를 하나씩 ROOT ELEMENT로부터 검색하여 상기 메타윈도우엔진에 전달하고 메타윈도우 엔진부로부터 오브젝트 정보를 받아 그 반대로 XMLDOM으로 변환하는 WOM XMLDOM Converter;
    상기 XMLDOM로 변환된 오브젝트 정보를 받아 원본 스킨정보와 달라진 정보를 분석하여 저장하는 Saver; 및
    상기 XML DOM API를 통해 접근가능한 데이터구조로 바뀌어 들어온 분석 저장된 정보를 ROOT ELEMENT로부터 window object model에 맞게 데이터를 읽어 메타윈도우엔진에 object 준비를 요청하는 개인별 데이터 관리운영부(Personal Data Manager)로 이루어진 것을 특징으로 하는 윈도우 어플리케이션용 스킨 시스템.
  • 제 1 항에 있어서, 상기 XML 구문 해석부는
    상기 스킨 자료 관리부로부터 전달받은 스킨 데이터를 해석하여 XML DOM API로 접근가능한 데이터구조로 변환하는 기능을 수행하는 것을 특징으로 하는 윈도우 어플리케이션용 스킨 시스템.
  • 제 1 항에 있어서, 상기 메타윈도우 엔진부는
    스킨 자료 관리부의 요청에 따라 윈도우 오브젝트 및 어플리케이션 프록시 오브젝트 같은 메타윈도우 엔진부내의 오브젝트를 생성하고 관리하는 기능을 수행하는 것을 특징으로 하는 윈도우 어플리케이션용 스킨 시스템.
  • 제 1 항에 있어서, 상기 스크립 엔진부는
    스킨데이터에서 텍스트로 기술되어 있는 윈도우 오브젝트나 서브어플리케이션 프록시 오브젝트의 추가메소드, 이벤트핸들러 스크립을 해석하고 처리하는 것을 특징으로 하는 윈도우 어플리케이션용 스킨 시스템.
  • 제 5 항에 있어서,
    상기 메타윈도우 엔진부에서 등록한 어플리케이션을 비롯한 오브젝트내에 이벤트가 발생하는 경우 해당 이벤트에 지정되어 있는 스크립 문장을 실행하고 스크립 문장을 수행 시 메타윈도우엔진내의 오브젝트와 어플리케이션부의 메소드를 실행시키거나 특정값을 엑세스하는 것을 특징으로 하는 윈도우 어플리케이션용 스킨 시스템.
  • 说明书全文

    윈도우 어플리케이션용 스킨 시스템{skin system for Window applications}

    본 발명은 XML을 이용한 윈도우 어플리케이션용 스킨 시스템에 관한 것이다.

    오늘날 개인용 컴퓨터(personal computer, 이하 PC라 칭함)를 비롯해서 웹 TV, 디지털가전, 은행점포의 자동화 기기(ATM) 등 많은 컴퓨터 시스템들이 그래픽 사용자 인터페이스(Graphic user interface, 이하 GUI라 칭함)인 윈도우(window) 시스템으로 이루어져 있는데, 상기 윈도우시스템이란 멀티윈도우 표시에 의해 각 윈도마다 할당한 응용 프로그램을 차례로 전환하여 실행할 수 있는 것으로 이용자의 필요에 따라 정보를 정리하여 표시하는 기능은 이용자의 인터페이스의 점에서 매우 중요하다.

    윈도우시스템의 대표적인 예로 마이크로소프트사의 윈도95, IBM의 OS/2, UNIX 기반의 XWINDOW 등을 꼽을 수 있는데, 기존 윈도우시스템은 각 제품간 서로 다른 방식으로 시스템이 구현되어 있어 호환성이 결여됨에 따라 이 분야의 전문가들이 이기종 컴퓨터시스템에서 이용가능한 광범위한 용도의 윈도우시스템 어플리케이션을 개발하는 경우 이기종 컴퓨터시스템의 운영체제(Operating System, 이하 OS라 칭함)의 차이로 인한 어플리케이션의 비즈니스 로직의 실행코드 포팅(porting)뿐 아니라 윈도우시스템간 그래픽 사용자 인터페이스(GUI) 요소나 제어방법의 차이를 고려한 프리젠테이션 로직의 실행코드들의 재설계를 필요로 하는 기술적 어려움과 비용의 손실을 감수해야 하는 문제가 있다.

    또한 휴대폰과 같은 공산품의 경우 공급초기에는 공급과 수요물량이 적고 제품의 기능이 우선시되기 때문에 모델이 다양하지 못하지만 시장이 확대되고 경쟁이 심화되면 소비자는 개개인의 개성에 따라 다양한 모델을 요구하게 되는데, 이러한 공산품의 예와 마찬가지로 컴퓨터시스템에 있어서도 하드웨어 제조기술의 급격한 발전으로 인한 가격하락과 전세계적인 인터넷의 보급으로 개인용 컴퓨터의 사용이 생활화 됨에 따라 획일화된 윈도우시스템에서 보다 다양하고 개개인의 개성을 반영하는 어플리케이션들이 속속 등장하고 있으며, 그리고 MP3 데이터를 복호화(decode)하여 사운드카드로 연주하여 주는 어플리케이션 중에 대표적으로 꼽히는 winamp와 같은 프로그램은 단순한 연주기(player)로의 기능 뿐만 아니라 컴퓨터를 사용하는 사용자의 취향에 따라 동작에 관한 선택사항들을 결정할 수 있고 아울러 윈도우내의 모든 화면요소에 대한 취사선택, 변경이 가능하도록 지원하는 실정이다.

    종래에는 윈도우시스템의 개인화지원, 윈도우어플리케이션의 개인화지원 및 특정 윈도우시스템의 일부분만을 특화시켜 각 윈도우시스템내의 어플리케이션 전체에 반영하는 특수한 개인화지원과 같은 기능이 있는데, 상기 윈도우시스템의 개인화지원은 획일화된 윈도우에서 화면색, 문자폰트, 윈도우타이틀크기, 경계선의 너비 등 극히 제한적인 것만을 지원하며 또한 이러한 설정은 각각의 윈도우 별로 설정가능한 것이 아니라 시스템의 모든 윈도우에게 동일하게 적용되는 단점이 있으며, 상기 윈도우어플리케이션의 개인화지원기능은 각 개별 윈도우 별로 원하는 GUI 구성이 가능하나 현실적으로 어플리케이션이 본래 목적하는 비즈니스로직의 구현보다도 오히려 부수적인 개인화 기능에 더 많은 비용을 투입해야 하는 주객이 전도되는 결과를 초� �할 수 있는 단점을 가진다.

    또한 상기 특정 윈도우시스템의 일부분만을 특화시켜 각 윈도우 시스템내의 어플리케이션 전체에 반영하는 특수한 개인화지원기능은, 기본적으로 윈도우시스템의 개인화 기능을 쉽게 이용할 수 있도록 응용한 것에 머무르며 결국 윈도우시스템의 개인화 기능이 갖는 단점을 대부분 동일하게 갖게 되며 개별 어플리케이션의 개인화나 독립적으로 구현된 GUI를 침해함으로써 윈도우화면이 손상되는 등의 문제를 야기할 수 있다.

    한편 인터넷을 대중에게 보급한 견인차이자 윈도우시스템의 대안으로 제시되는 HTML 브라우져는, HTML 문서를 원격의 HTTP 서버로부터 전송받거나 파일로부터 읽어들여 이를 GUI로 표현해주는 기능을 수행하는데, 상기 HTML은 XML과 마찬가지로 SGML로 정의된 문서형 정세부(Document Type Definition, 이하 DTD라 칭함)로 대부분의 기능이 화면(혹은 인쇄물)상의 출력형식의 표현에 국한되기 때문에 윈도우 시스템의 GUI 등을 표현하고 처리하는데 적합하지 못한 단점이 있다.

    상기 단점을 해결하기 위해 본 발명은, XML을 이용하여 윈도우 어플리케이션을 위한 스킨 시스템을 제공하는 것을 목적으로 한다.

    상기 목적을 달성하기 위해 본 발명은, 윈도우 어플리케이션이 제공한 스킨정보를 받아 스킨데이터가 담긴 XML 문서와 부속데이터를 수집하는 스킨 자료 관리부, 상기 스킨 자료 관리부로부터 전달된 윈도우의 구성과 동작에 관한 정보를 구비한 XML 문서를 해석하는 XML 구문 해석부, 상기 XML 구문 해석부를 통해 해석된 XML 문서의 윈도우 개체를 생성 및 관리하는 메타윈도우 엔진부 및 상기 메타 윈도우엔진부에서 생성된 윈도우 개체별로 XML 문서내에 스크립으로 기록된 이벤트 프로시져를 수행하는 스크립 엔진부를 포함하는 것을 특징으로 한다.

    상기 윈도우시스템용 어플리케이션은 공학계산, 통신, 수치제어 등의 어플리케이션이 수행해야 할 목적에 따른 프로그램부분과 윈도우시스템에 소속되어 자신의 윈도우를 제어하고 윈도우시스템의 요구에 대해 응답하는 프로그램부분으로 나눌 수 있는데, 하지만 애니메이션과 같은 목적의 어플리케이션은 윈도우를 제어하는 부분이 프로그램의 주된 부분일 수 있으며, 이러한 GUI가 주된 목적인 어플리케이션들도 윈도우의 프레임이나 메뉴, 툴바 등과 같은 윈도우 요소들을 표현, 관리하는 기능이 요구되며 스킨시스템이 이러한 부분을 대신 수행할 수 있다.

    도 1 은 본 발명이 적용되는 스킨 시스템 구조도,

    도 2 은 본 발명에 따른 상기 도 1의 스킨 시스템 중 스킨 자료 관리부의 상 세 구조도,

    도 3 은 본 발명에 따른 상기 도 1의 스킨 시스템 중 메타윈도우엔진부의 상 세 구조도,

    도 4 는 본 발명에 따른 스킨시스템이 적용된 어플리케이션이 각각 다른 스 킨 데이터를 로딩하여 실행하였을 때 전혀 다른 윈도우로 표현된 예 시도.

    * 도면의 주요부분에 대한 부호의 설명

    100 : 스킨 자료 관리부 110 : 메타 윈도우 엔진부

    120 : XML 구문해석부 130 : 스크립 엔진부

    140 : 어플리케이션부 150 : 원격 자료 서버부

    160 : 윈도우 시스템부 170 : 서브 어플리케이션부

    이하 첨부된 도면을 참조하여 본 발명을 상세히 설명하면 다음과 같다.

    도 1 은 본 발명이 적용되는 윈도우 어플리케이션용 스킨 시스템 구조도로서, 어플리케이션별로 해당 어플리케이션의 윈도우 구성정보를 담고 있는 WinML 데이터(data)를 불러들여 해석하고 WinML 데이터를 관리하는 스킨 자료 관리부(100), 상기 스킨 자료 관리부를 구동시키는 어플리케이션부(140), 각 컴퓨터시스템별로 존재하는 윈도우 시스템부(160), 상기 스킨 자료 관리부로부터 해석된 스킨데이터를 바탕으로 윈도우 개체를 생성하고 관리하는 메타윈도우 엔진부(110), 상기 메타윈도우 엔진부에서 생성된 윈도우 개체별로 XML문서내에 스크립으로 기록된 이벤트 프로시져를 수행하는 스크립 엔진부(130), 상기 스킨 자료 관리부로부터 원격지에 존재하는 데이터 요청을 받아 처리하는 원격 자료 서버부(150)로 이루어져 있다.

    상기 스킨 자료 관리부(100)는 어플리케이션으로부터 구동되는데, 스킨 자료 관리부 구동시 상기 어플리케이션부(140)로부터 전달받은 스킨(skin) 정보를 통해 스킨윈도우를 생성하기 위한 완벽한 스킨정보를 수집하는데, 이때 상기 스킨 정보는 스킨 데이터를 가르키는 단순 URI이거나 스킨 데이터 자체일 수 있으며, 그 구동상태를 보면, 첫째, 스킨(skin) 정보가 단순한 URI(Universal Resource Identifier)인 경우 URI를 해석하여 URI의 경로가 원격 자료 서버인 경우 원격 자료 서버로 스킨 데이터를 요청하고, URI 경로가 local인 경우 local file system으로부터 스킨 데이터를 읽어들이며, 둘째, 스킨(skin) 정보가 스킨 데이터인 경우 바로 데이터를 해석하는데, 데이터의 해석은 상기 XML 구문해석부(120)에 스킨 데이터를 전달하여 시작되며, XML 구문해석부가 스킨 데이터를 처� �하기 위해서 스킨 데이터는 반드시 XML로 작성된 XML DI(DOCUMENT INSTANCE)이어야 한다.

    상기 XML 구문해석부(120)로부터 해석된 스킨데이터는 XML DOM API를 통해 접근가능한 데이터구조로 바뀌어 스킨 자료 관리부(100)로 돌아오면 상기 스킨 자료 관리부는 XML DOM API를 통해 스킨데이터에서 ROOT ELEMENT부터 window object model에 맞게 데이터를 읽으면서 상기 메타윈도우엔진에 object 준비를 요청하고, Object 생성과정에서 추가적으로 데이터가 필요한 경우 스킨 자료 관리부는 원격 자료 서버나 local file system으로부터 데이터를 읽어들이며, ROOT ELEMENT로부터맨 하위 LEAF ELEMENT까지 모든 element의 해석과 object 준비가 끝나면 메타윈도우엔진에 윈도우 생성을 지시한다.

    상기 XML 구문해석부(120)는 상기 스킨 자료 관리부(100)로부터 전달받은 스킨 데이터를 해석하여 XML DOM API로 접근가능한 데이터구조로 변환하는 기능을 수행하는데, 상기 XML 구문해석부(120)가 정상적인 동작을 수행하기 위해서 상기 스킨 자료 관리부(100)로부터 전달되는 스킨 데이터는 반드시 XML로 작성된 XML DI이어야 하고, DTD validation 작업과 XSL transformation 작업을 수행한 후 최종적으로 변환된 XML data는 XML로 작성된 WinML(Window Markup Language) DTD를 만족하는 WinML DI이어야 하며, 상기 XML 구문해석부는 스킨 데이터가 XSL(Extensible Stylesheet Language ) 데이터를 링크하고 있는 경우 XSL데이터를 가져와서(원격 혹은 로컬) XSL변환을 한다.

    상기 메타윈도우 엔진부(110)는 상기 스킨 자료 관리부(100)로부터 구동되며 스킨 자료 관리부의 요청에 따라 윈도우 오브젝트와 어플리케이션 프록시 오브젝트와 같은 메타윈도우엔진내의 object를 생성하고 관리하는 기능을 수행하며, 상기 스크립 엔진부는 상기 메타윈도우 엔진부에 의해 구동되는데 스킨데이터에서 텍스트로 기술되어있는 이벤트나 윈도우오브젝트의 추가메소드 스크립을 해석하고 처리하는 모듈로서 메타윈도우 엔진부에서 등록한 어플리케이션을 비롯한 오브젝트내에 이벤트가 발생하는 경우 해당 이벤트에 지정되어 있는 스크립 문장을 실행하고 스크립 문장을 수행할 때 필요한 경우 메타윈도우엔진내의 오브젝트와 시작 어플리케이션의 메소드를 실행시키거나 특성값(attributes)를 엑세스 한다.

    상기 서브 어플리케이션부(170)는 윈도우 UI를 지원하기 위해 스킨시스템을 구동하며 스킨시스템 구동시 스킨시스템이 필요로 하는 스킨정보를 전달하는데, 스킨시스템을 이용하기 위해서 어플리케이션 개발자가 항상 스킨시스템을 구동하는 시작 어플리케이션을 작성할 필요는 없고, 별도의 시작 어플리케이션을 작성하지 않고도 스킨시스템에 포함된 기본 시작어플리케이션을 이용할 수 있다.

    상기 원격 자료 서버부(150)는 개인화정보나 스킨데이터, 스킨데이터와 관련있는 멀티미디어 데이터들을 인터넷상에서 관리하여주는 서버로서 보통은 HTTP 프로토콜을 지원하는 월드와이드웹 서버로서, 상기 원격 자료 서버는 업계 표준의 인터넷 프로토콜을 이용하기 때문에 별도의 서버없이 바로 기존 인터넷 환경에 스킨시스템의 적용이 가능하다.

    상기 윈도우시스템은 스킨시스템이 윈도우를 만들고 관리해야 하는 대상 시스템인데, 예를 들면 마이크로소프트사의 windows 95/98/NT/2000 이나 UNIX 시스템의 XWINDOW이 상기 윈도우시스템이 될 수 있고, 각 윈도우시스템별로 동일 기능을 수행하는 스킨시스템을 이식함으로써 어플리케이션의 개발시에는 스킨데이터의 수정없이 곧 동일한 기능의 윈도우 UI를 서로 다른 윈도우시스템에서 구현이 가능하게 된다.

    상기 서브 어플리케이션부(170)는 스킨시스템이 지원하는 윈도우 오브젝트 이외에 다른 기능을 수행하는 윈도우 오브젝트나 UI이 없이 스크립 엔진부가 오브젝트에 속한 스크립 코드를 수행할 때 이용하기 위한 로직들을 담고 있는 별도의 이진실행파일로 상기 서브 어플리케이션을 통해 스킨시스템은 계속 추가 기능의 확장이 가능하고, 또한 시작어플리케이션으로서 별도의 기능을 수행할 필요가 없는 어플리케이션은 시작 어플리케이션을 개발할 필요없이 기본 시작어플리케이션으로 시작하고 상기 서브 어플리케이션과 스킨데이터내의 스크립만 작성하여도 개발이 가능하다.

    상기 스킨 자료 관리부(100)의 상세도면를 나타내고 있는 도 2에서 상기 loader부는 상기 어플리케이션부(170)로부터 전달받은 스킨정보를 상기 XML 구문해석부(120)로 전달하여 XML DOM API 형식의 데이터구조로 변환하여 이를 상기 WOM XMLDOM 변환부(converter)(102)로 전달하며, 상기 WOM XMLDOM 변환부(converter)는 XML 구문해석부(120)로부터 XML DOM API 형식의 데이터구조로 변환된 스킨정보로부터 오브젝트에 관한 정보를 하나씩 ROOT ELEMENT부터 검색하여 상기 메타윈도우 엔진부(110)에 전달하고 또한 메타윈도우 엔진부(110)로부터 오브젝트 정보를 받아서 반대로 XMLDOM으로 변환하는 기능을 수행하는 모듈이며, 저장부(saver)(103)는 상기 XMLDOM으로 변환된 오브젝트정보를 받아서 원본 스킨정보와 달라진 정보를 분석하여 저장하는 기능을 수행한다.

    메타윈도우 엔진부(110)의 상세도면을 나타내고 있는 도 3에서 상기 window object manager부(111)는 상기 스킨 자료 관리부로부터 각각 전달받은 오브젝트 정보를 분석하여 오브젝트가 window object일 경우 window object(112)를 생성하고, 서브 어플리케이션 proxy object일 경우에는 서브 어플리케이션 proxy object(113)를 생성하며, 모든 오브젝트 생성작업이 끝나면 오브젝트를 실행하여 윈도우가 윈도우시스템에 만들어지는 작업에 들어가며, 상기 window object부는 상기 windowobject manager부가 생성하는 window object가 실제로 수행되는 모듈인, 즉 상기 윈도우시스템과 직접 연결되며 window object manager가 제공한 정보에 따라 window로서 정해진 동작을 수행하게 되며, 상기 서브 어플리케이션 proxy object부는 상기 window object가 일정하게 정해진 방법대로 동작하는 것을 보완하여 어플리� �이션이 특별히 필요한 경우 원하는 동작을 수행하게 하기 위해서 어플리케이션이 원하는 동작을 수행하는 서브 어플리케이션을 컴포넌트로 개발하거나 이미 존재하는 컴포넌트를 지정하여 스킨시스템에서 이를 윈도우내에서 처리되도록 동작하는 모듈이다.

    스킨 시스템에서는 윈도우를 객체지향언어인 C++ 등에서 CLASS나 XML DOM에서 각 ELEMENT의 관계를 나타내는 것과 유사하게 스킨에 사용되는 윈도우 정보를 window object model(이하 WOM)이라고 명명한 어플리케이션 프로그래밍 인터페이스(이하 API)로 나타내는데, 상기 WOM은 그 형식이 XML DOM의 형식과 유사하며, 상기 WOM은 윈도우에 관하여 크게 2가지 종류의 정보를 다룬다.

    그 첫째로, 각 윈도우별 윈도우자체의 특성과 동작에 관한 정보들이고 둘째로, 윈도우와 다른 윈도우간의 종속관계에 관한 정보들이다.

    먼저, 상기 윈도우자체의 특성과 동작에 관한 정보에는 윈도우의 크기나 위치와 모양, 마우스나 키보드 입력에 대한 처리, 배경이미지나 애니메이션 등이 해당되며, 상기 윈도우와 다른 윈도우간의 종속관계에 관한 정보에는 윈도우의 소유관계, 동일 윈도우에 소속한 윈도우간의 병렬관계 등이 해당된다.

    이때 상기 WOM에서는 상기 정보들의 엑세스는 윈도우 객체에 대한 Attribute와 Method 형식의 API를 통해서 구현되며, 또한 Method의 특별한 형식으로 Event Handler API가 있는데 상기 Attribute API는 윈도우에 관한 정보를 얻거나 값을 직접 변경할 수 있으며, 상기 Method API는 윈도우에게 원하는 동작을 명령하는데 사용되고, 상기 Event Handler API는 사전에 상태변화를 각각 하나의 이벤트(event)로 정의하여 두고 메타윈도우 엔진부의 윈도우오브젝트부가 실행될 때 매 상태변화마다 상기 이벤트(event)를 발생시켜 스크립엔진이 스크립에 포함된 Event handler의 스크립 코드를 수행하게 되는, 즉 상기 Event Handler API는 Method의 형식 중 하나이지만 일반 Method API는 메타윈도우 엔진부의 윈도우오브젝트에서 구현되어 있고 스크립 코드에서 필요에 따라 호출하는 API임에 반해서 상기 Event Handler API는 반대로 스크립 코드에서 구현되어 있고 윈도우오브젝트부에서 이벤트(event) 발생시마다 호출하는 API이다. 몰론 상기 Event Handler API 역시 Method API이기 때문에 스크립 코드에서도 필요한 경우 직접 호출이 가능하다.

    상기 WOM의 규격은 고정된 단일규격이 아니라 본 스킨시스템을 적용하여 개발하고자 하는 시스템에 따라 개별적으로 정의될 수 있고, 또한 상기 WOM은 상기 메타윈도우 엔진부에서 사용되며 각 어플리케이션별로 필요한 윈도우 정보를 항구적을 저장하고 엑세스 하기 때문에 상기 WOM을 이용한 메타윈도우 엔진부의 윈도우정보는 상기 스킨자료관리부에서 XML 데이터 형식으로 관리하며, 상기 스킨자료관리부에서 메타윈도우엔진부에서 사용되는 윈도우정보를 XML 데이터 형식으로 저장하기 위해 윈도우 정보를 XML 데이터 형식으로 표현하기 위한 XML DTD를 정의하였는데 이를 WinML(Window Markup Language)라 명명한다. 즉 WinML은 상기 스킨자료관리부가 WinML에 맞게 작성된 XML 데이터로부터 윈도우정보를 추출하여 메타윈도우엔진부로 추출된 윈도우정보를 전달할 수 있도록 하는 XML DTD이다.

    상기 WinML은 상기 WOM에서 정의된 오브젝트에 대해 각각 엘리먼트(element)로 정의하고 각 오브젝트들의 속성(attribute)값과 추가적인 메소드(method), 이벤트를 처리하기 위한 이벤트핸들러(event handler)는 각 엘리먼트내의 하위 엘리먼트나 엘리먼트 속성(attribute)으로 정의하며, 또한 상기 WinML에서는 윈도우의 속성을 각 개인이 변경하고자 할 때 어플리케이션의 개발측에서 이와 같은 각 개인의 변경허용범위를 제한하여 어플리케이션의 개발의도가 훼손되지 않도록 하기 위하여 엘리먼트로 정의되는 오브젝트, 주요 오브젝트 속성에 대해서 개인화가능 여부 속성을 추가로 정의한다.

    개인화 가능 여부 속성값에 따라 상기 스킨자료관리부내의 개인화 데이터 관리부에서 실시간(Run-Time)동안 변경된 데이터를 원본 스킨 데이터와 별도로 저장하고 저장된 개인화 데이터는 상기 스킨자료관리부내의 적재부 구동시에 적재부의 요청에 따라 엑세스되어 원본 스킨 데이터에 합쳐지게 된다.

    개인화의 범위에 있어서 첫째로, 한 어플리케이션내에서 계층화된 오브젝트(윈도우 오브젝트, 서브어플리케이션 프록시 오브젝트)의 관계에서 오브젝트의 개인화 여부는 상위 오브젝트로부터 하위오브젝트로 속성이 자동상속된다. 둘째로, 윈도우 시스템내에서 개인화의 범위는 개별 윈도우 스킨데이터가 XML 문서에서 외부 엔터티로 참조되거나 XML 문서 자체에 포함되어 있는 경우 변경된 윈도우 속성은 해당 어플리케이션에만 제한적으로 적용된다. 그러나 개별 윈도우 스킨데이터가 윈도우 오브젝트나 서브어플리케이션 프록시 오브젝트를 나타내는 엘리먼트의 속성 중에 WinML에서 정의한 외부 소스 속성으로서 참조되는 경우 개인화의 범위는 해당 윈도우 스킨데이터를 외부소스로서 참조하는 모든 어플리케이션에 공통적으로 적용된다.

    도 4 는 본 발명에 따른 예시도로서, 마이크로소프트의 windows 환경에서 개발된 스킨시스템이 구현된 예이다.

    상기 도 4의 좌우 두 도면에서 어플리케이션의 실행파일은 동일한 것을 사용하고 있으며 WinML로 작성된 스킨정보와 관련된 부속 이미지정보 등만이 각각의 스킨을 표현하기 위해 달리 사용되고 있는데, 프로그램의 기능상의 차이점은 없으며, 다만 화면상의 버튼 등 윈도우 컨트롤러의 배치와 크기, 이미지정보를 달리하였으며, 각 컨트롤러의 기능상의 차이가 없도록 하였다.

    종래의 시스템에서는 프로그램 고유의 기능의 차이없이 단순히 UI만을 변경하고자 하여도 프로그램 자체를 변경해야만 하였으나, 상기 도 4에서 예시된 스킨시스템이 적용된 어플리케이션의 경우 프로그램 변경없이 XML로 작성된 스킨데이터나 부속 멀티미디어 데이터만을 수정하여도 가능하다.

    상술한 바와 같이 본 발명을 이용하면 소프트웨어 개발자는 윈도우를 제어하기 위한 제어루틴을 별도의 프로그램실행코드로 작성할 필요가 없으며, 윈도우 인터페이스의 개인화를 위한 별도의 프로그램실행코드를 작성할 필요가 없고, 각기다른 윈도우시스템별로 윈도우 제어루틴용 프로그램실행코드를 포팅(porting)할 필요가 없으며, 프로그램의 수정없이 윈도우를 관리하는 WinML DI만을 수정하거나 관련된 리소스파일을 원하는 리소스파일로 대치함으로서 자신의 윈도우인터페이스를 구성할 수 있으며, 각 소프트웨어별 혹은 전체윈도우시스템에 대한 개인화가 모두 가능해지며, 윈도우를 구성하는 GUI 요소들을 원격에서 전송함으로 네트워크 PC 등에서 응용가능한 장점을 갖는다.

    또한 본 발명을 응용하면 단순한 스킨 기능뿐만 아니라 이기종 컴퓨터 시??템간 호환이 가능한 윈도우 시스템 및 서로 다른 윈도우시스템간 호환이 가능한 메타 윈도우시스템의 구현이 가능한 효과를 갖는다.

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈