KR20060078498A - 엑스엠엘 및 리소스 패키지를 이용한 멀티링구얼 관리 방법 - Google Patents
엑스엠엘 및 리소스 패키지를 이용한 멀티링구얼 관리 방법 Download PDFInfo
- Publication number
- KR20060078498A KR20060078498A KR1020040118462A KR20040118462A KR20060078498A KR 20060078498 A KR20060078498 A KR 20060078498A KR 1020040118462 A KR1020040118462 A KR 1020040118462A KR 20040118462 A KR20040118462 A KR 20040118462A KR 20060078498 A KR20060078498 A KR 20060078498A
- Authority
- KR
- South Korea
- Prior art keywords
- application
- gui
- language
- library
- xml
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/454—Multi-language systems; Localisation; Internationalisation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
본 발명은 XML 및 리소스 패키지를 이용하여 멀티링구얼(multilingual)을 지원할 때, XML을 사용하여 각각의 나라 설정에 따라 셋팅해 주어야 하는 부분을 일일이 수정하지 않고 간편하게 변경할 수 있도록 한 기술에 관한 것이다. 이러한 본 발명은, GUI를 관리하는 별도의 라이브러리와 XML 파일을 준비하고, 그 GUI를 관리하는 라이브러리는 Dll로 만들어 모든 애플리케이션에서 동적으로 어태치할 수 있게 하는 제1과정과; 사용자가 랭귀지 설정 내용을 변경할 수 있도록 대부분 랭귀지를 셋팅하는 아이콘이나 별도의 애플리케이션을 제공할 때, 변경된 셋팅 내용을 레지스트리에 기록하는 제2과정과; 애플리케이션에서는 각각의 GUI에 해당하는 텍스트를 스트링으로 표시하지 않고 아이템 아이디만 설정하는 제3과정과; XML 파일의 루트 노드는 가장 큰 블록인 랭귀지 ID로, 애플리케이션의 이름은 그룹 ID로, 애플리케이션 스페시픽 GUI는 해당 그룹 ID 밑에 있는 아이템 ID에 각각 표시하는 제4과정에 의해 달성된다.
Description
도 1은 본 발명에 의해 설정된 샘플 XML 내용을 나타낸 예시도.
도 2는 본 발명에 의한 GUI 확인 절차를 나타낸 신호 흐름도.
본 발명은 엑스엠엘(XML) 및 리소스 패키지를 이용하여 멀티링구얼(multilingual)을 지원하는 기술에 관한 것으로, 특히 멀티링구얼 지원이 필요한 경우 XML을 사용하여 각각의 나라 설정에 따라 셋팅해 주어야 하는 부분을 일일이 수정하지 않고 간편하게 언어 설정을 변경할 수 있도록 한 엑스엠엘 및 리소스 패키지를 이용한 멀티링구얼 관리 방법에 관한 것이다.
근래 들어, 윈도우용 애플리케이션에서는 여러 가지 언어(language)에 대한 지원 요구가 점차 증가되고 있는 실정에 있다. 예를 들어, 시작 버튼을 아이콘(icon) 형식으로 표시하고 사용자의 편의를 위해 아이콘 밑에 설명이나 기능을 표시하는 경우에 "시작"이라고 표시해야 한다.
그런데, 사용자가 다른 언어로 표시해 주길 원할 때에는 그 "시작" 대신에 "start"나 기타 다른 언어로 표시해 주어야 하므로, 표시되는 텍스트를 애플리케이션에서 모두 바꾸어주었다.
이와 같이 종래에 있어서는 사용자가 다른 언어로 표시해 주길 원할 때 표시되는 텍스트를 애플리케이션에서 모두 해당 언어로 바꾸어주게 되어 있으므로, 애플리케이션의 작업량이 너무 많아지게 되는 문제점이 있었다.
또한, 하나의 제품에서 여러 개의 애플리케이션을 제공하는 경우에는 각 애플리케이션들이 표시하는 언어가 다를 수 있어 그에 따른 위험요소가 증가되는 문제점이 있었다.
따라서, 본 발명의 목적은 언어 타입에 영향을 받는 부분을 모두 추출하여 하나의 라이브러리(library)와 XML 파일로 관리하는 방법을 제공함에 있다.
본 발명의 제1특징에 따르면, 다양한 언어를 하나의 XML 파일과 GUI 라이브러리에서 관리한다.
본 발명의 제2특징에 따르면, 애플리케이션에서 언어를 관리할 필요가 없게 되어 애플리케이션 개발이 수월해진다.
본 발명에 의한 엑스엠엘 및 리소스 패키지를 이용한 멀티링구얼 관리 방법은, GUI를 관리하는 별도의 라이브러리와 XML 파일을 준비하고, 그 GUI를 관리하는 라이브러리는 Dll로 만들어 모든 애플리케이션에서 동적으로 어태치할 수 있게 하는 제1과정과; 사용자가 랭귀지 설정 내용을 변경할 수 있도록 대부분의 랭귀지를 셋팅하는 아이콘이나 별도의 애플리케이션을 제공할 때, 그 셋팅 내용이 변경된 경우 변경된 내용을 레지스트리에 기록하는 제2과정과; 애플리케이션에서 각각의 GUI에 해당하는 텍스트를 스트링으로 표시하지 않고 아이템 아이디만 설정해 놓으면, GUI 라이브러리에서 적절한 값을 XML 파일에서 읽어들여 화면에 표시할 수 있도록 하는 제3과정과; XML 파일의 루트 노드는 가장 큰 블록인 랭귀지 ID로 표시하고, 애플리케이션의 이름은 그룹 ID로 표시하며, 애플리케이션 스페시픽 GUI는 해당 그룹 ID 밑에 있는 아이템 ID에 표시하는 제4과정으로 이루어지는 것으로, 이와 같이 이루어지는 본 발명의 멀티링구얼 관리 과정을 첨부한 도 1 및 도 2를 참조하여 설명하면 다음과 같다.
먼저, GUI를 관리하는 별도의 라이브러리와 XML 파일을 준비하고, 그 GUI를 관리하는 라이브러리는 Dll로 만들어 모든 애플리케이션에서 동적으로 어태치(attach)할 수 있게 한다. 이렇게 함으로써, 애플리케이션에서 GUI를 표시할 때 상기 라이브러리를 사용하게 되면, 랭귀지 관련 작업량을 줄일 수 있게 된다.
사용자가 랭귀지 설정 내용을 바꿀 수 있도록 대부분 랭귀지를 셋팅하는 아이콘이나 별도의 애플리케이션을 제공하게 되는데, 그 셋팅 내용이 변경된 경우 그 변경된 내용을 레지스트리(registry)에 기록해 놓는다. 이렇게 함으로써, 각각의 애플리케이션이 실행될 때, GUI 라이브러리가 그 레지스트리에 기록된 값을 읽어들여 현재 무슨 랭귀지로 표시해야 되는지 알게 된다.
애플리케이션에서는 각각의 GUI에 해당하는 텍스트를 스트링(string)으로 표시하지 않고, 아이템 아이디(Item ID)만 설정해 놓으면 GUI 라이브러리에서 적절한 값을 XML 파일로부터 읽어들여 화면에 표시할 수 있게 한다.
XML 파일의 루트 노드(root node)는 가장 큰 블록인 랭귀지 ID로 표시한다. 그리고, 애플리케이션의 이름은 그룹 ID가 되며, 여러 애플리케이션에서 공동으로 사용하는 GUI는 "Common"이라고 표시해 둔다. 애플리케이션 스페시픽(specific) GUI는 해당 그룹 ID 밑에 있는 아이템 ID에 표시하여 애플리케이션에서 아이템 ID만 설정해 두면 GUI 라이브러리에서는 자신을 호출(call)한 애플리케이션의 이름을 읽어들이고 아이템 ID를 찾아서 해당 텍스트를 애플리케이션에 리턴시킨다. 이때, 상기 애플리케이션에서는 전달받은 해당 텍스트를 화면에 표시하게 된다.
도 1은 상기와 같은 처리과정을 통해 설정된 샘플 XML 내용을 예시적으로 나타낸 것이다. 즉, 상기와 같은 과정을 통해 랭귀지 ID, 그룹 ID 및 아이템 ID를 각각 부여하여 각 애플리케이션의 랭귀지에 영향을 받는 아이템은 애플리케이션에서 관리하지 않고 수정할 수 있게 한다.
한편, 도 2는 본 발명에 의한 GUI 확인 절차를 나타낸 것으로, 애플리케이션이 기동되면, 각각의 랭귀지 ID를 확인하여 해당 랭귀지가 검출되지 않거나, 각각의 그룹 ID를 확인하여 해당 그룹 ID가 검출되지 않거나, 각각의 아이템 ID를 확인하여 해당 아이템 ID가 검출되지 않으면 리소스 사용 실패로 처리한다. 그러나, 상기 각 ID가 검출되면 리소스를 사용한다.
이상에서 상세히 설명한 바와 같이 본 발명은 복수의 랭귀지를 지원할 때 각각의 애플리케이션에서 각 GUI를 랭귀지별로 별도로 관리하지 않고 하나의 xml 파 일을 통해 GUI가 변경되기 때문에 랭귀지 변경에 의해 애플리케이션의 부하량이 증가되는 것을 방지할 수 있는 효과가 있다.
또한, 하나의 xml 파일로 랭귀지별 GUI를 관리하기 때문에, 애플리케이션마다 다른 랭귀지로 표시되는 오류 현상을 방지할 수 있는 효과가 있다.
Claims (4)
- GUI를 관리하는 별도의 라이브러리와 XML 파일을 준비하고, 그 GUI를 관리하는 라이브러리는 Dll로 만들어 모든 애플리케이션에서 동적으로 어태치할 수 있게 하는 제1과정과;사용자가 랭귀지 설정 내용을 변경할 수 있도록 대부분 랭귀지를 셋팅하는 아이콘이나 별도의 애플리케이션을 제공할 때, 변경된 셋팅 내용을 레지스트리에 기록하는 제2과정과;애플리케이션에서는 각각의 GUI에 해당하는 텍스트를 스트링으로 표시하지 않고 아이템 아이디만 설정하는 제3과정과;XML 파일의 루트 노드는 가장 큰 블록인 랭귀지 ID로, 애플리케이션의 이름은 그룹 ID로, 애플리케이션 스페시픽 GUI는 해당 그룹 ID 밑에 있는 아이템 ID에 각각 표시하는 제4과정으로 이루어지는 것을 특징으로 하는 엑스엠엘 및 리소스 패키지를 이용한 멀티링구얼 관리 방법.
- 제1항에 있어서, 제2과정은 각각의 애플리케이션이 실행될 때 GUI 라이브러리가 상기 레지스트리에 기록된 값을 읽어들여 현재 표시해야 할 랭귀지를 인식하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 엑스엠엘 및 리소스 패키지를 이용한 멀티링구얼 관리 방법.
- 제1항에 있어서, 제3과정은 GUI 라이브러리에서 적절한 값을 읽어들여 화면에 표시하는 단계를 포함하여 이루어지는 것을 특징으로 하는 엑스엠엘 및 리소스 패키지를 이용한 멀티링구얼 관리 방법.
- 제1항에 있어서, 제4과정은 GUI 라이브러리에서는 자신을 호출한 애플리케이션의 이름을 읽어들이고 아이템 ID를 찾아서 해당 텍스트를 애플리케이션에 리턴시키는 단계를 포함하여 이루어지는 것을 특징으로 하는 엑스엠엘 및 리소스 패키지를 이용한 멀티링구얼 관리 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040118462A KR20060078498A (ko) | 2004-12-31 | 2004-12-31 | 엑스엠엘 및 리소스 패키지를 이용한 멀티링구얼 관리 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040118462A KR20060078498A (ko) | 2004-12-31 | 2004-12-31 | 엑스엠엘 및 리소스 패키지를 이용한 멀티링구얼 관리 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20060078498A true KR20060078498A (ko) | 2006-07-05 |
Family
ID=37170388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020040118462A KR20060078498A (ko) | 2004-12-31 | 2004-12-31 | 엑스엠엘 및 리소스 패키지를 이용한 멀티링구얼 관리 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20060078498A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114579235A (zh) * | 2022-02-24 | 2022-06-03 | 百果园技术(新加坡)有限公司 | 基于语言类型的图标显示方法、装置、设备及存储介质 |
-
2004
- 2004-12-31 KR KR1020040118462A patent/KR20060078498A/ko not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114579235A (zh) * | 2022-02-24 | 2022-06-03 | 百果园技术(新加坡)有限公司 | 基于语言类型的图标显示方法、装置、设备及存储介质 |
CN114579235B (zh) * | 2022-02-24 | 2024-04-09 | 百果园技术(新加坡)有限公司 | 基于语言类型的图标显示方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Blanchette et al. | C++ GUI programming with Qt 4 | |
EP0640913B1 (en) | Multilingual standard resources | |
US10762054B2 (en) | Cloud content states determination logic | |
US20050216834A1 (en) | Method, apparatus, and computer-readable medium for dynamically rendering a user interface menu | |
CA2431104A1 (en) | Providing contextually sensitive tools and help content in computer-generated documents | |
US20080005752A1 (en) | Methods, systems, and computer program products for generating application processes by linking applications | |
KR20050084049A (ko) | 편집 선택 제어 장치 및 그 내의 엔트리 선택 방법 | |
US20070240128A1 (en) | Systems and methods for generating a user interface using a domain specific language | |
US8745512B2 (en) | Method and computer-readable medium for interacting with a portion of an electronic document | |
US20190156702A1 (en) | Accessible Metadata in Data Structures | |
US20090217254A1 (en) | Application level smart tags | |
KR20060078498A (ko) | 엑스엠엘 및 리소스 패키지를 이용한 멀티링구얼 관리 방법 | |
Hermes et al. | Building Xamarin. Forms Mobile Apps Using XAML: Mobile Cross-Platform XAML and Xamarin. Forms Fundamentals | |
CN101101545A (zh) | 利用可扩展标记语言及资源包对多种语言进行管理的方法 | |
US20070143673A1 (en) | Extensible architecture for chart styles and layouts | |
Miller | Cross-platform localization for native mobile apps with Xamarin | |
Zukowski | Java 6 platform revealed | |
JP6419902B1 (ja) | プログラム比較方法、プログラム比較装置およびプログラム比較プログラム | |
Ashley et al. | Menus and Toolbars | |
Campesato | Android: Pocket Primer | |
Krause | Menus and Toolbars | |
Rubio et al. | Django Model Forms and Class Views | |
Bertram et al. | Write for the Next Person | |
Zuckarelli | User Interfaces: How Do I Input and Output Data? | |
Gerber et al. | Reminders Lab: Part 1 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |