[go: up one dir, main page]

WO2000067117A2 - Modules multilingues d'elaboration d'une application permettant une presentation de donnees sensible aux parametres de lieu et adaptee a la culture - Google Patents

Modules multilingues d'elaboration d'une application permettant une presentation de donnees sensible aux parametres de lieu et adaptee a la culture Download PDF

Info

Publication number
WO2000067117A2
WO2000067117A2 PCT/US2000/011720 US0011720W WO0067117A2 WO 2000067117 A2 WO2000067117 A2 WO 2000067117A2 US 0011720 W US0011720 W US 0011720W WO 0067117 A2 WO0067117 A2 WO 0067117A2
Authority
WO
WIPO (PCT)
Prior art keywords
locale
multilingual
language
component
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/US2000/011720
Other languages
English (en)
Other versions
WO2000067117A3 (fr
Inventor
Martin J. Levy
Rajiv Vij
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PeopleSoft Inc
Original Assignee
PeopleSoft Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PeopleSoft Inc filed Critical PeopleSoft Inc
Priority to AU46851/00A priority Critical patent/AU4685100A/en
Publication of WO2000067117A2 publication Critical patent/WO2000067117A2/fr
Publication of WO2000067117A3 publication Critical patent/WO2000067117A3/fr
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/454Multi-language systems; Localisation; Internationalisation

Definitions

  • the present invention relates to software components and development environments for developing software applications, and more particularly to software components for use in developing internationalized software applications useful for operation in different national locales having various language and cultural requirements for presentation of information.
  • each country may have conventions pertaining to general numeric or text data, or to specific types of data such as time, currency, addresses, telephone numbers, and the like.
  • a software vendor in order to provide internationalized software for distribution in many different countries, a software vendor must modify a software product to operate in each supported country or locale. To provide a single software product that is truly multilingual and internationally distributable, that is, that can be adapted to operate in different locales, is a considerable challenge.
  • a user fluent in multiple different languages may desire to change the language of the menus and dialogs of an application during operation. This is typically not possible. Instead, the user is at best allowed a limited ability to change only the language and format of data that is input into a program (e.g. text that is typed into a word processing document, or data entered into a spreadsheet), but not the language, formatting of the menus, dialogs, and other software elements of the application itself. This normally requires the software application to be restarted. In other cases, the user can change the overall language and data formatting for all applications, but this requires changing an operating system parameter and rebooting the computer.
  • a program e.g. text that is typed into a word processing document, or data entered into a spreadsheet
  • the present invention overcomes the limitations of conventional approaches to the internationalization of software, is responsive to the cultural needs of software systems and software users, and eliminates the necessity of rewriting software components for every different cultural environment.
  • the present invention does this by providing intelligent multilingual components that can dynamically modify their language and their data formatting parameters in response to a variety of different cultural environments, or more specifically in response to change in a currently selected locale.
  • the selection of locale and the change in language and formatting parameters can be made both at development time initially by the applications developer, and during runtime operation by the user.
  • the multilingual components are independent from the software application that uses them, and may be reused in different applications.
  • the cultural requirements for software can be broken down into small discrete multilingual components that contain embedded knowledge and behaviors about the language and presentation formats of a variety of different cultural domains or locales. These components are then used by the applications developer as building blocks for creating completely dynamic multilingual software applications. In addition, consistent culturally correct results can be achieved by centrally coupling certain processing events to be handled by the multilingual components to available system or application level data descriptive of the current locale.
  • each multilingual component can be developed and maintained individually.
  • a multilingual component contains the required knowledge to perform its function in any of a target environment's supported languages.
  • Each multilingual component provides services for formatting, interpreting and presenting locale sensitive data within a software application.
  • a multilingual component is sensitive and responsive to the data identifying the locale in which it is operating, and thus dynamically modifies its language or other cultural parameters in response to this locale data.
  • the multilingual components provide programming interfaces with callable methods and modifiable properties that condition, control and alter the component's behavior.
  • the multilingual components utilize a host environment that is able to detect the presence of the multilingual components and then support two-way communication to such components via events and messages.
  • the host environment conveys certain basic ambient conditions that the multilingual components abide by such as font styles, colors, border style, appearance (3d or flat), background color, foreground color, and font.
  • Each multilingual component is responsible for property persistence per instance of utilization. This allows the same type of multilingual component to be used in multiple scenarios in the same application while at the time retaining their individual instance configuration.
  • a currency multilingual component can have multiple appearances in an application in different windows or message boxes, and each appearance can be defined as having different language and culturally specific presentation formats.
  • one instance of a currency multilingual component may be formatted with the English language style comma and period separation of numbers and "$" for currency, and present its data in that format, while another currency multilingual component in the same application may be formatted for a specific European currency symbol and number format.
  • Each instance would maintain its formatting features over time until changed by the user or underlying environment information.
  • a locale multilingual component that supports the definitions of the language and formatting requirements for each locale; other multilingual components refer to the locale multilingual components to obtain the necessary formatting and language information.
  • a locale multilingual component obtains the underlying data from the operating system; this information is overridable by the developer if desired.
  • the host environment is able to programmatically query each multilingual component in an application to determine a particular component's interfaces and property set. The host environment uses this capability to support dynamic manipulation of the entity at runtime through application specific means (scripting, dialogs, menus, etc.).
  • the software application is able to notify the multilingual component of changes in the application's active language state in order to cause the multilingual component to modify its presentation and result set in accordance with the cultural conventions of the specific language request.
  • Multilingual support is based around a locale model that is used to identify particular languages and drive the multilingual components.
  • Multilingual components can either use the host platform operating system's national language support primitives or any other proprietary API that provides the required international support.
  • multilingual components for software application development shifts the burden of significant internationalization development, maintenance and support by shifting the locale specific responsibility of multilingual support for data formatting, interpretation and presentation to the multilingual components themselves.
  • the multilingual components are maintained independently of any software application and provide a consistent trusted set of interfaces, methods and properties that can relied upon to manage all related multilingual operations.
  • Multilingual components provide several layers of interfaces that share many common multilingual services. Some the services and functionality that these multilingual components may provide include:
  • Multilingual components are small and discrete and can be used as building blocks to construct more complex multilingual components and applications.
  • a multilingual component can work in conjunction with other multilingual components.
  • the multilingual components may be used in a visual and non-visual mode. This means that they can be used to interact with a software application's end user for data presentation and data entry as well as be used to perform the associated multilingual support services for any requested locale on demand.
  • the multilingual components can be used in multiple software applications.
  • the multilingual components are used as follows:
  • the developer generally creates a container window of a client application and hosts one or more of the multilingual components in this container window by instantiating the multilingual component and attaching it to the container window. Thereafter the developer can manipulate any properties or methods that the multilingual component exposes.
  • the developer may use the multilingual component's interface in a non-visual way by just instantiating the component and calling methods on it.
  • the multilingual components can either be made available in a commercially or proprietary available rapid application development environment that supports the language and communications mechanism in which the multilingual components have been implemented.
  • a multilingual component can usually be added to a container window via a menu user interface.
  • the multilingual components can be utilized in two major ways:
  • Each multilingual component provides a simple interface of methods and properties (API) that can be used to set and get data on the component in a culturally correct manner for the particular language that the components has determined to be active and in effect for itself according to any of a number of property rules.
  • API methods and properties
  • the multilingual component is capable of visually receiving and presenting data interactively through the normal means of user data entry within a software application.
  • the entity is able to operate in both a visual and non-visual manner.
  • multilingual components include, but are not limited to the following:
  • the present invention provides numerous advantages over conventional approaches to internationalization. Developing and maintaining individual software components that can be tested in isolation from any of the hosting applications is an efficient mode of software development. Shifting complex multilingual knowledge and requirements, normally required of a software application, to the internals of the multilingual component alleviates the burden from software developers and allows developers to focus on their primary domain of expertise, creating the application itself, rather than attempting to internationalize the application.
  • Figs, la- Id are illustrations of a calendar multilingual component.
  • Figs. 2a-2b are illustrations of a date/time multilingual component.
  • Fig. 3a-3b are illustrations of a currency multilingual component.
  • Figs. 4a-4b are illustrations of an edit multilingual component.
  • Fig. 5a is another illustration of an edit multilingual component.
  • Fig. 5b is an illustration of the property sheet of an edit multilingual component.
  • Figs. 6a-6b are illustrations of the property sheets of a calendar multilingual component.
  • Figs. 7a-7b are illustrations of a development environment supporting the multilingual components of the present invention.
  • Fig. 8 is an illustration of the modules for one implementation of the calendar multilingual component.
  • Fig. 9 is a flowchart of the input reaction unit of the calendar multilingual component.
  • Fig. 10 is a flowchart of the calendar rendering engine of the calendar multilingual component.
  • Fig. 11 is a flowchart of the selector control of the calendar multilingual component.
  • the present invention supports both visual and non-visual multilingual components, the former type having a user interface for presentation of data to, and receipt of data from, the user; the latter which operate without direct presentation to the user, but which store and operate on user or application provided data, or which provide services to other multilingual components.
  • a calendar multilingual component 100 As with all multilingual components of the present invention, the calendar multilingual component 100 is a reusable component, allowing it to be used in different applications by an applications developer as needed, and altered by the developer for the particular application.
  • the calendar multilingual component 100 provides the functionality of multi-year calendar, which can be used in a software program to enable the user to quickly select dates from current, past, or future months, and provide the selected date information to other functional aspects of the software program.
  • the calendar multilingual component 100 includes a month name area 104, a day name area 106, along with standard layout of dates for corresponding months.
  • the calendar multilingual component 100 includes a context menu 102 which lists the various locales, here identified by a combination of language, (e.g. "English") and region (e.g. "United States”) or type (e.g. "Standard") that are supported by the calendar 100.
  • the available languages are chosen by the applications developer from a total list of languages supported by the calendar multilingual component.
  • the month name area 104 and day name area 106 are updated to reflect the name of the shown month and the names of the days in the language associated with the selected locale.
  • This selection of locale and language for the calendar multilingual component 100 occurs independently of, and may be different from, the language designation (if any) of any other multilingual component that the software program (client application) supports.
  • Fig. lb now shows the same calendar multilingual component 100 after the user has selected Japanese as the desired language.
  • the month name area 104 and the day name area 106 have each automatically updated themselves to reflect their respective data in the Japanese language. This includes selection of both appropriate font types and sizes, and selection of correct day and month names (since mere change of font from English to Japanese would not effect the correct change in names).
  • Figs, lc and Id illustrate further changes in the same calendar multilingual component 100, with Fig. lc illustrating the calendar multilingual component in the French language and showing the context menu designation, and Fig. Id illustrating the change in the calendar multilingual component to Hebrew language. Again, in each case the name of the month and days has been changed, in addition to proper selection of the appropriate font for the language.
  • Figs. 2a and 2b illustrate a date/time multilingual component 200 operating in conjunction with a calendar multilingual component.
  • Fig. 2a illustrates the component 200 with English date/time formatting, i.e. MM/DD/YY.
  • the context menu 202 Also shown is the context menu 202. Note that here, there are a variety of locales that share the English language, but which differ by region (e.g. United States, United Kingdom, etc.).
  • Fig. 2b shows another date/time component 200, but after the user has selected, via the context menu, German as the locale specific language.
  • Figs. 3a and 3b illustrate a currency multilingual component 300 in its various presentations of different currency data responsive to locale selection by a user. In Fig.
  • the currency multilingual component 300 with its context menu 302 showing the available locales that are supported.
  • the currency multilingual component 300 includes the data field 304 in which the currency data 304 is shown with the appropriate locale specific numeric formatting, and with the appropriate currency symbol 306.
  • Fig. 3b illustrates that selection of another language for a different locale, e.g. Japanese, results in the currency multilingual component 300 automatically reformatting the currency data 304 and selecting the appropriate currency symbol 306 (Yen) for the locale associated with the selected language.
  • the component provides a conversion between currencies using a predetermined conversion ratio, e.g. 1 :1.
  • the conversion ratio is dynamic and determined at the time the user invokes the change of currency, such as looking up the conversion ratio in a database or table which stores frequently updated conversion ratios.
  • Fig. 4a illustrates an edit multilingual component 400.
  • the edit control 400 is simply a text box in which text may be entered.
  • a context menu 402 which allows the formatting and presentation to be dynamically altered for different locales.
  • Fig. 4b illustrates the same text box, after the locale has been changed from English to German.
  • the multilingual components of the present invention operate in a conventional computer system, including a processor, memory, disk storage, network connection, and operating system environment.
  • the operating system preferably supports a windowing environment.
  • a suitable operating system includes Microsoft Corp.'s Windows95, WindowsNT and the like.
  • the multilingual components of the present invention are embodied as ActiveX controls and objects; however, the present invention may be implemented as other types of entities, for example as classes in object oriented environments, such as Java, C++, SmallTalk, Eiffel, and the like.
  • the multilingual components may operate in a network computer running a browser environment for connection to a server providing the multilingual components. ActiveX implementations operate in Microsoft's Internet Explorer, or other browsers supporting ActiveX plugins.
  • the multilingual components are reusable components, such as ActiveX controls, that provide a collectively common set of internationalization services via their interfaces and a high level of flexibility in controlling the component's behavior, dynamically, via a set of configurable properties and methods.
  • These multilingual components can be used both by the developers and end users.
  • the multilingual components can be used both as container-embedded controls or as foundation controls to exploit their services in non-visual applications.
  • component and control are used interchangeably.
  • the multilingual components are locale sensitive and are driven by a locale property.
  • a multilingual component can simultaneously represent data in any supported locale just by modifying its locale property. This modification can take place programmatically or a user can interact with the multilingual component at runtime and decide to change the locale and language in which the user wants to view the data. For instance a user viewing a numeric value on a numeric multilingual component, formatted for a German locale, can instantly choose to view it formatted for the U.S. locale by altering the locale via the context menu.
  • the output in the German locale will display the thousands separator as a period, ".”, with the comma "," as the decimal point, and changing to U.S. locale will automatically display the comma as the thousands separator, and the period as the decimal point.
  • Container A client application that is capable of embedding an multilingual component.
  • the locale attribute associated with a piece of data For example, an item of currency data stored in a database or application may have a German locale associated with it, representing a German currency, but be presented in a currency multilingual component which has a different locale, such as Japanese.
  • Locale ID A value defined by the operating system that uniquely identifies a locale.
  • the locale determines the language/country/culture conventions such as number/currency/date/time formats.
  • Locale Sensitive Properties Multilingual component properties that are changed by the component when the underlying Locale ID is altered.
  • the locale specific properties include the language and formatting parameters of the component.
  • View Locale The locale to use for formatting and presenting the data to the user.
  • the View Locale is used to present the data in an alternative locale, instead of that of the Data Locale.
  • the View Locale is Japanese.
  • the Resource locale dictates the language/country/culture conventions in which the error messages and string resources of the application will be displayed.
  • a currency multilingual component which displays U.S. currency data, may display an error message in Korean, on invalid input entry, if the resource locale is set to Korean.
  • the string resources are those that are used to display text and other data of the multilingual component itself, such as its menus, title bars, dialogues, and other display areas.
  • a multilingual component could operate in multiple languages, but it is useful to provide a neutral language to display string and menu resources.
  • a significant locale is conceptual construct describing which locale is most significant for a particular component.
  • the significant locale may either be the
  • all multilingual components comprise common features including stock properties and events.
  • each instance of an multilingual component is associated by containment with one or more locale multilingual components.
  • Each locale multilingual component encapsulates the locale specific properties and requirements of a particular locale.
  • a multilingual component obtains this information from the locale multilingual component interface.
  • all components are dual-interfaced, i.e. they can be driven either through an IDispatch interface type invocation, which allows late binding of object methods, or can be manipulated directly through a virtual function table.
  • This allows the component to be used efficiently from high level languages like C++ which access the virtual function table directly, rather than accessing properties and methods from the Dispatch interface, which can be slow.
  • error messages are generated via the OLE Dispatch Exception mechanism. Error messages are dispatched in the language determined by the Resource Locale property. Error messages are distributed in a specific DLL for a language. The error messages are loaded from this DLL when the application is executed. If the DLL does not exist, the message as a last resort is displayed in the default resource language. Locale Driven The locale sensitive properties of a multilingual component are driven by a multilingual component's view or data locale. Modifying one of these locale properties result in an appropriate alteration of the locale sensitive properties. Control Service Access
  • Some controls support interfaces for user interaction support. Where the multilingual component are implemented as ActiveX controls, then all component services should be accessible via an -Unknown Interface. Since the controls also support automation the methods and properties can be accessed via the IDispatch interface. Control License In one preferred embodiment, all multilingual components implement a licensing interface, so that their use is legalized. A client running an multilingual component has to obtain appropriate licenses for using the multilingual component .
  • the controls implement the lObjectSafety interface for determining whether the control is safe for scripting or initializing.
  • the multilingual components are written in C++ and use the Microsoft Foundation Class DLL's.
  • the non-visual objects may be written using Microsoft's ATL SDK.
  • Visual Multilingual Component Stock Properties Table 1 lists the preferred stock properties that are implemented by the visual multilingual components.
  • Fig. 5b illustrates a sample property sheet 512 for accessing the properties of a multilingual component directly by the applications developer.
  • the property sheet 512 is for an instance of an edit multilingual component is shown.
  • Fields 514 here allow the developer to define the locale IDs of the Resource and View locales. These locale IDs reference specific locale multilingual components which embed the locale specific information for their respective locales. Other fields allow the developer to specify, for example, whether the edit is a multi-line or not (516) or read-only (518).
  • Fig. 5a illustrates an example of an edit component itselfr. Via the miscellaneous setting checkboxes 502, one can enable or disable various ones of the above mentioned properties.
  • Default text is set in text box 506.
  • the user can select the locale and language, using context menu 508. Updates to these setting are effected by update button 510.
  • Figs. 6a and 6b illustrate the property sheet 600 for an instance of a calendar multilingual component.
  • the basic organization of the calendar is defined by the applications developer, including alignment, styles, grid type, and so forth.
  • the context menu for allowing user alteration of the locale can be enabled at checkbox 608.
  • the developer specifies the locales by LocalelD for the ResourceLocale (602) and the ViewLocale (604). These locales will be used, as described above, when the calendar multilingual component attempts to determine which LocalelD to use.
  • Fig. 6b the developer selects from a list 610 of supported locales those that will be available to the end user, and places those selected locales in the locale menu items list 612. These selected locales will appear on the context menu if enabled.
  • the non-selected locales are not available to the user. This allows the developer to specifically control which locales will be supported at the user level, thereby limiting, if desired, the user's ability to dynamically change the locale and presentation of the component.
  • the applications developer is freed from having to define the locale specific information, as this is encapsulated in the multilingual component as provided to the developer.
  • the property pages include a font page 607 (itself not shown) for selecting a default font for the presentation of the component; a font selection list of available system fonts is provided with standard mechanisms for selection.
  • a color page 609 (not shown) provides standard mechanisms (e.g. color palette or wheel) for selecting a default color for the component.
  • the property specification including identification of resource and view locales, and selection of available locales, fonts, and colors, are essentially the same as illustrated in Figs. 6a and 6b.
  • each visual multilingual component supports additional useful behavior in response to various user actions.
  • each multilingual component preferably supports a tool tip. If the cursor is pointed on the multilingual component, a tool tip appears, indicating the currently selected language for the chosen multilingual component.
  • the appearance of the tool pip can be enabled or disabled via a ToolTip property by the developer or application user.
  • this feature need not be always made available to the user, and can be enabled via an ContextMenu property.
  • the keyboard input layout changes, to reflect the input locale, determined by it's significant locale. This feature can be enabled via the AutoKBLayout property.
  • a LostFocus event is sent to the container, which then checks if the input is valid and determines whether can switch focus out of the multilingual component. If so, the focus is released, and the container switches focus to the appropriate object.
  • ViewLocaleChange This event is generated when the multilingual component's View locale (language) is changed via the context menu. During the processing of the ViewLocaleChange, the container may set a new font on the control or perform other related tasks.
  • the visual multilingual components are embedded in a container, with the container responsible for controlling the component.
  • a container may be any window or visual object of a client application, such as a Visual Basic application.
  • a user may interact with the multilingual component by inputting information or accessing a multilingual component's context menu to change the view locale or other properties.
  • the multilingual components can be hosted in any container that supports the OCX96 specification, as specified by Microsoft Corp.
  • a multilingual component can be embedded in the container application, for example, by dragging an icon for the multilingual component from a Tool Box over to the container.
  • Each container includes a LocalelD which defines the locale which is used to define the initial local specific properties of its components.
  • Fig. 7a illustrates an exemplary development environment 700, such as Microsoft Visual Basic.
  • the developer defines various containers, such as form 702, to contain various components, including the multilingual components of the present invention.
  • the multilingual components are included, along with pre-existing components, in a palette 704, or other user interface mechanism.
  • Fig. 7b illustrates the same form 702 after the developer has placed a calendar multilingual component 706 on the form.
  • the multilingual component When a multilingual component is placed in a container, the multilingual component initializes itself by retrieving the ambient locale Identifier (LocalelD) from the container and setting its ViewLocale with this value. If the container does not support the LocalelD property then the control initializes itself with the user's default locale ID, which is managed by the operating system. If the user's default locale cannot be retrieved, the operating system's locale (regional settings) is used to set both both the ViewLocale and the ResourceLocale (and the DataLocale, if present).
  • the ambient locale Identifier LocalelD
  • the control initializes itself with the user's default locale ID, which is managed by the operating system. If the user's default locale cannot be retrieved, the operating system's locale (regional settings) is used to set both both the ViewLocale and the ResourceLocale (and the DataLocale, if present).
  • the data that is used in a multilingual component may have a Data Locale associated with it.
  • the ViewLocale will remain as set, but the Data Locale is selectively used to format the data.
  • the currency multilingual component operates on this principle.
  • a client application may store currency data such as ⁇ 100 (100 Yen) in a database as the value 100 and data locale code uniquely associated with Japan (e.g. JPN).
  • JPN data locale code uniquely associated with Japan
  • the currency multilingual component adopts as its data locale JPN and a distinct view locale, such as USA (U.S.A).
  • the component will display the 100 value formatted for the U.S. locale, though displaying the Yen symbol.
  • the ViewLocale can be changed (e.g. to German, for different number separators) while retaining the DataLocale.
  • the multilingual component sets its locale sensitive properties accordingly.
  • the container application When the container application is running it can now set the multilingual component's locale properties.
  • the initial locale sensitive properties of the control are set based according to the ViewLocale ID.
  • the container is responsible for mapping a database field data, or some other data entity to the multilingual component's Value property, if applicable.
  • the container event handler code may decide at this point to change the font of the multilingual component so that the presentation of data is visible in the appropriate font.
  • a container which stores an multilingual component drives the contained multimedia components based on the locale associated with any data retrieved from a database or other repository used by the container. This means that the container is responsible for maintaining the locale associated with the data and storing it in the database or other persistent data repository.
  • the container is responsible for providing the component with a handle to a property bag or stream for persistently storing its properties.
  • the container sets the value of the multilingual component by setting the Value property and also setting the ViewLocale property.
  • the container thus is responsible for mapping a database field data to the multilingual component's Value property. It also retrieves the data from the multilingual component as necessary and calls procedures to store it in the appropriate data repository.
  • a container preferably responds to a multilingual component's ViewLocaleChange event.
  • the application should be able to let a designer, at design time, create a Locale Default Properties Table.
  • This table preferably contains predefined settings that are defaults for the locale, like the font a particular locale should use as a default, among other properties like the style, size, and the like.
  • the container should also have access to such a table.
  • the container can decide to set the font to the default that has been allocated at design time.
  • All strings passed as parameters to multilingual components are preferably converted to a wide (Unicode) format in embodiment where this is an OLE requirement.
  • All strings received by the container for example, inside an event parameter, are wide format.
  • the container preferably stores a TimeZoneld that is associated with it. The container must be able to bind both the Value & TimeZone properties to a data source.
  • the container should handle exceptions and events as needed.
  • the container needs to handle any exceptions generated by the multilingual component.
  • a multilingual component generates errors via the OLE exception mechanism.
  • the OLE exception constitutes an Error Code and an Error String.
  • the Error String is in the language as specified by the container's locale ID. However the Error String may be empty, in case the multilingual component's resources do not contain an error string for the container language. In any case the container must process the exception in an appropriate manner, which may be as simple as displaying the error string in a message box.
  • the container is responsible for determining whether it wants to handle events generated by the multilingual component for the purpose of event handling.
  • the container or the multilingual component must not violate each other's boundaries, and the communication between the two should confirm to the application communication standards for the implementation environment, e.g. COM standards for ActiveX controls.
  • the component and control communication is preferably by events and methods and properties. The following are preferred features of component-container communication:
  • the multilingual component should not have to maintain information about where and how its data is stored.
  • the container should have to maintain information about how to get data and set this data in the multilingual component. Likewise the container should also be liable of storing this data if needed.
  • the currency control for instance, need not have access to externally provided currency tables for conversion purposes. If the user changes the ViewLocale, an event gets generated, and the container should manage any conversions, if needed.
  • the calendar multilingual component provides a user interface for entering dates in a client application, and propagating such date information to other uses of the client.
  • the calendar multilingual component can be used as a standalone entity or in combination with the DateTime multilingual component.
  • the calendar multilingual component On instantiation the calendar multilingual component displays the days of the current month in a grid, with the current day highlighted. Initially the ViewLocale of the control defaults to the system default locale. The calendar multilingual component also displays the current month name and year, along with the day names in the language of the locale as implied by the ViewLocale property.
  • the user can select any day in the month by positioning the mouse on the day and clicking the left mouse button.
  • the user can also move to the next or previous month via the previous/next buttons.
  • the user can point the mouse on a bar and bring up a popup context menu which display the previous 3 month and the next three months (in the native language) as items, that can be chosen from the menu, which allows for a fast and efficient navigation into the months/years.
  • Table 2 Class Name: MC.Calendar Class Properties
  • This event is generated when a view locale change has been requested by the user via the context sensitive menu.
  • DATE NewDateParam DATE NewDate This event is generated when the user has modified the date via the user interface
  • Fig. 8 there is shown in further detail an exemplary implementation of a calendar multilingual component.
  • the component is implemented as a collection of series of high level modules. These modules are:
  • the IRU 808 is responsible for handling all end user input via the mouse or the keyboard. For instance a user might right click the mouse button on the component, which the IRU 808 will process to display a context menu containing languages that can be selected by the user.
  • Fig. 9 illustrates the control flow of the
  • IRU 808 in response to a user input.
  • the Calendar Rendering Engine (CRE) 804 is the portion of the component that takes care of the display issues and dynamically changing the view to display the calendar in various languages, that are supported by the operating system.
  • the CRE 804 is further responsible for generating the grid layout for the dates.
  • the CRE 804 exposes properties and methods to control the visual aspects of the calendar in the correct underlying language.
  • the CRE 804 draws the elements of the calendar multilingual component in the correct language and cultural conventions.
  • Fig. 10 illustrates the normal drawing sequence, including calculating 1002 settings for various elements, such as grid and border location, drawing 1004 calendar borders, drawing 1006 the month name in the correct language as determined by the locale, drawing 1008 days of the week in the correct language, and drawing 1010 the grid elements themselves.
  • the Selector Control Module (SCM) 802 When the user clicks the mouse in the title area 104, the IRU 808 sends the request to the SCM 802 to display a selector control containing months for the past and future months. From there on the SCM 802 communicates with the CRE 804 and the Calendar Events Generator 806 to process user requests.
  • Fig. 11 illustrates the general behavior of the selector control. The selector control pops up 1102 when selected. When the control receives 1 104 a user selection of month, the Calendar Events Generator 806 is notified 1106.
  • the CRE 804 renders 1108 (see Fig. 10) the calendar for the selected month, applying the appropriate locale format requirements, such as font, language, and so forth.
  • the selector control is a Windows class, which behaves like a menu control, and allows scrolling of items in both directions.
  • the scroll speed is determined by whether the mouse pointer is in the warm or hot scroll regions.
  • the selector control is composed of the selector window, which displays the selector items, and a selector list, which holds the items to be displayed.
  • the selector window displays a subset of the items held in the selector list. Items can be appended or inserted via sending the SLRM APPEND and SLRM INSERT messages to the control. The message
  • SLRM_SETVISIBLEITEMCOUNT determines the number of items that will be displayed in the selector window from the selector list. Further on, the message SLRM_SETTOPINDEX can be send to the control to determine the index in the selector list from which the selector control must start displaying the items.
  • the Calendar Events Generator (CEG) 806 This module is responsible for firing any events to the container of the calendar multilingual component. These events include DateChange, PageBrowse and the ViewLocaleChange events.
  • the other types of multilingual component have similar implementations, but typically simpler, such as without the selector control, and a simpler input reaction unit, specific to the types of inputs that the component receives.
  • a currency multilingual component exposes provisions to manage attributes that determine the formatting of a currency. It is a visual control that allows a user to enter a currency value.
  • the currency multilingual component provides validation by letting the user input only numbers, currency sign and the decimal separator string.
  • the user can decide which locale's formatting should be used to display the currency value. This is achieved by the user using the context menu of installed locales to choose from (the installed locales were illustrated, for example, in Fig. 6b).
  • the control display is formatted according to the ViewLocale when the control looses focus. Changing the ViewLocale resets the underlying currency formatting properties. By default the DataLocale and the ViewLocale properties represent the same Locale. However if the ViewLocale is changed by the user, the formatted currency output is displayed with the ViewLocale property's attributes and the DataLocale property's symbol.
  • a ViewLocaleChange event is generated to the container.
  • the container can do any currency conversions at this point and set the new value via the Value property.
  • the underlying value of the currency is set under two conditions: 1. Directly by setting the Value property; or
  • Table 3 Class Name: MC. Currency Class Properties
  • ViewLocaleChange This event is generated when a view locale change has been requested by the user.
  • the DateTime multilingual component is used for input and formatting of date and time strings.
  • the component allows users to format date & time via date/time specifiers.
  • On creation the control value defaults to the current date/time, and the system's default locale, and displays the current date in the formatting convention of the locale.
  • the control can represent either a date or a time at any given instance, or both.
  • the user inputs the date based on the convention of the locale identified by the
  • Date can be input in the form nl/n2/n3, where nl , n2 and n3 are numeric components of the date. Depending upon the locale, nl could either represent a month or a day, etc. A Date/Time could be entered in the format nl/n2/n3 n4:n5, and so on.
  • the date separator may or may not be "/", and is dependent upon the locale convention, as identified by the ViewLocale.
  • the time portion of the component encapsulates a time, which can be modified via the Hour/Minute/Second properties.
  • the DateTime component can be set to display a dropdown calendar, for ease of choosing dates. This calendar is based on the calendar multilingual component.
  • the Date/Time input is parsed and validated when the control looses focus, and if validated successfully is formatted and displayed according to the Format property. If the validation of input date fails, the date defaults to the value that existed upon the control gaining the input focus.
  • the date/time can be customized via the Format property. If the Format property has not been set, changing the ViewLocale (from the context sensitive menu) will modify the Format property, and display the date/time according to that locale.
  • the Format will be set specific to that locale.
  • Table 4 Class Name: MC.DateTime Class Properties
  • This event is generated when a view locale change has been requested by the user via the context sensitive menu.
  • DATE NewDate This event is generated when the user has modified the date via the user interface.
  • the locale multilingual component is a non-visual control used to define the language/country/font and other information pertaining to a particular locale ID.
  • the developer can set the locale for the whole system (Default Locale) or for a particular thread, via the SetThreadLocale() API call.
  • this level of locale specification is insufficient to allow for individualized localization of particular multilingual components.
  • the locale multilingual component provides a finer granularity & encapsulates locale management on per locale basis, giving the capability for each class to have its own locale, via containment. Locale information can either reflect the information, as defined by the system, or it can reflect any user overridden properties.
  • This feature is controlled via a UseUserOverride (or similar) property. It also features enumeration of supported and installed locales on the current system. All other types of multilingual components are dependent on at least one locale multilingual component to provide the information about the requirements of a particular locale. During initialization the locale multilingual component's default LocalelD is set to the default user supplied locale ID, such as provided by the operating system. The locale multilingual component then obtains from the operating system the appropriate formatting information for the locale, and makes this information available to other multilingual components. If this fails for some reason the system default locale ID is used. By default the locale multilingual component allows access to all the read only properties, which cannot be overridden.
  • Table 7 Class Name: MC. Locale Class Properties
  • LPDISPATCH GetDefaultFontQ Chooses and returns a font object, from a list of available fonts, that can be used to display the charset represented by the Locale property.
  • the numeric multilingual component furnishes capabilities to input numeric values, in a locale sensitive manner.
  • the numeric multilingual component provides input validation by letting the user input only numbers, negative sign, and or the decimal separator string.
  • the display is formatted according to the ViewLocale property, when the component loses focus. Changing the ViewLocale property resets the underlying currency formatting properties.
  • the underlying value of the numeral is set under two conditions: 1. Directly by setting the Value property 2. Implicitly after the user has entered data in the control, and it has been successfully parsed.
  • Minimum and Maximum properties are used to limit the range of numeric values that will be accepted by the component. Normally the Minimum and Maximum properties are both set to 0, which implies no enforcement of range limits (except of course and limitations of the underlying double data type). The following are the preferred features of the use of Minimum and Maximum properties, in conjunction with a SpinButton (increment/decrement control) and value Stepping properties:
  • Table 8 Class Name: MC.Numeric Class Properties
  • This event is generated when a view locale change has been requested by the user via the context sensitive menu.
  • the Resource multilingual component enables an application to retrieve native resources like strings, bitmaps and icons based on the Locale property. Rather than hard coding strings in an application, the resource multilingual component provides a locale independent way of retrieving strings based on a Resource ID.
  • a particular Resource ID can represent a string, bitmap or icon in different locales.
  • the resource multilingual component constructs a DLL name by concatenating the Language, Version and Application properties. Any request to retrieve a resource is fulfilled by acquiring the resource from this DLL.
  • the DLL is searched in the following order:
  • Table 9 Class Name: MC.Resource Class Properties
  • SAFEARRAY GetIcon(Long ResourcelD) Returns a single dimension safe array of bytes which contains a binary representation of an icon, based on the Locale property.
  • the edit multilingual component is a visual control for the purpose of inputting free format textual information.
  • Fig. 5b illustrated the property sheet for defining the properties of the edit multilingual component.
  • the multilingual component language and font is determined by the ViewLocale property. Depending upon the ViewLocale the input may either be displayed left to right or right to left or with BIDI (bi-directional text entry) functionality.
  • the edit multilingual component ensures proper editing/selection of characters whether the characters are half or full width.
  • An edit multilingual component can be single or multiline. If a multiline edit multilingual component cannot display all lines of data in its window, the scroll bar appears automatically, either on the right or the left edge of the window, depending upon the ViewLocale property.
  • Table 10 Class Name: MC.Edit Class Properties
  • This event is generated when a user presses a key in the control area.
  • the text multilingual component is a non-visual control which provides string manipulation services.
  • a new instance of the text multilingual component acquires its initial locale ID from the current user default locale.
  • the string that is represented by the text multilingual component is associated with the Locale property, which may be overridden by the user. All string mappings and conversions are based on the Locale property.
  • Table 1 1 Class Name: MC.Text Class Properties
  • Integer Find (Integer FindChar) Returns the index at which the character represented by FindChar is found.
  • the present invention provides various multilingual components that encapsulate intelligent behavior and data for dynamically altering the language, formatting, and presentation of data in a software application.
  • the components may be used by an applications developer to provide robust internationalized software that may be easily adapted, either during development or at runtime, to the specific cultural or language requirements for different geographic regions where the software it distributed or used.
  • the present invention encompasses the disclosed multilingual components, and any other component that encapsulates the information necessary to reformat its data for different locales dynamically, including special purpose components, such as the calendar component.
  • Other components may include, for example, postal address multilingual component that provides a multilingual address data entry and presentation environment, and automatically formats addresses according to a selected locale's addressing format parameters; a telephone number multilingual component provides a multilingual telephone number data entry and presentation environment, and that automatically reformats a telephone number; and a drop-down list multilingual component that provides a programmable multilingual drop-down list.

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)
  • Stored Programmes (AREA)

Abstract

Les modules multilingues de l'invention permettent tant l'élaboration que le choix du moment d'exécution dynamique des paramètres de lieu pour mettre à jour automatiquement les critères de langue et de mise en forme des données présentées ou stockées. Chaque module multilingue stocke des informations identifiant plusieurs paramètres de lieu différents reconnus par le module multilingue. Pendant l'élaboration, le développeur d'applications choisit un ensemble de paramètres de lieu devant être reconnus par le module multilingue au moment de l'exécution, et définit une interface utilisateur supplémentaire et des propriétés comportementales. En outre, le développeur choisit un des paramètres de lieu comme étant le paramètre de lieu initial qui définit les critères de mise en forme de la langue et de la présentation servant à présenter les données dans le module multilingue. Pendant l'exécution, le paramètre de lieu choisi par le développeur est utilisé pour présenter les données entrées (ou statiquement définies) par l'utilisateur dans la langue et le format du paramètre de lieu. S'il y est autorisé, l'utilisateur peut choisir un paramètres de lieu différent parmi ceux reconnus, auquel cas le module multilingue remplace la langue et la mise en forme des données présentées ou stockées par celles du paramètre de lieu choisi par l'utilisateur. Les modules multilingues peuvent se présenter sous diverses formes. Ils peuvent comporter des modules visuels, tels qu'un calendrier, un affichage horodateur, un affichage numérique, un affichage de mise en forme ou un échantillonnage de monnaie. Ils peuvent également comporter des modules non visuels, dont un module de paramètre de lieu qui stocke les critères de langue et de mise en forme pour un ou plusieurs paramètres de lieu, et une commande de manipulation d'une chaîne de textes.
PCT/US2000/011720 1999-04-30 2000-04-27 Modules multilingues d'elaboration d'une application permettant une presentation de donnees sensible aux parametres de lieu et adaptee a la culture Ceased WO2000067117A2 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU46851/00A AU4685100A (en) 1999-04-30 2000-04-27 Multilingual components for application development providing locale sensitive and culturally appropriate presentation of data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US30329899A 1999-04-30 1999-04-30
US09/303,298 1999-04-30

Publications (2)

Publication Number Publication Date
WO2000067117A2 true WO2000067117A2 (fr) 2000-11-09
WO2000067117A3 WO2000067117A3 (fr) 2001-01-18

Family

ID=23171415

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/011720 Ceased WO2000067117A2 (fr) 1999-04-30 2000-04-27 Modules multilingues d'elaboration d'une application permettant une presentation de donnees sensible aux parametres de lieu et adaptee a la culture

Country Status (2)

Country Link
AU (1) AU4685100A (fr)
WO (1) WO2000067117A2 (fr)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003001366A1 (fr) 2001-06-22 2003-01-03 Wonderware Corporation Application de systeme d'information de fabrication et de commande de processus de supervision a architecture en couches
WO2003001401A1 (fr) 2001-06-22 2003-01-03 Wonderware Corporation Internationalisation d'objets executables au cours d'un controle de processus de surveillance et fabrication d'un systeme d'informations
WO2003036472A1 (fr) * 2001-10-24 2003-05-01 Epicentric, Inc. Internationalisation de programmes informatiques au moyen d'une interface utilisateur graphique
WO2002075511A3 (fr) * 2001-03-16 2004-01-08 Lockheed Corp Systeme et procede d'interface utilisateur graphique multilingue
EP1361523A3 (fr) * 2002-05-07 2006-12-20 Microsoft Corporation Conversion de données numeriques entre des systèmes de mesure à base de séquences de caratères marquées de façon sémantique
EP1477896A3 (fr) * 2003-05-13 2007-01-24 Microsoft Corporation Méthode et système pour forcer sélectivement des thèmes de présentation
EP1480120A3 (fr) * 2003-05-22 2007-04-25 Cognos Incorporated Système et procédé pour la présentation de metadonnées multilingues
US7356537B2 (en) 2002-06-06 2008-04-08 Microsoft Corporation Providing contextually sensitive tools and help content in computer-generated documents
US7421645B2 (en) 2000-06-06 2008-09-02 Microsoft Corporation Method and system for providing electronic commerce actions based on semantically labeled strings
US7558841B2 (en) 2003-05-14 2009-07-07 Microsoft Corporation Method, system, and computer-readable medium for communicating results to a data query in a computer network
US7783614B2 (en) 2003-02-13 2010-08-24 Microsoft Corporation Linking elements of a document to corresponding fields, queries and/or procedures in a database
US7788590B2 (en) 2005-09-26 2010-08-31 Microsoft Corporation Lightweight reference user interface
US7992085B2 (en) 2005-09-26 2011-08-02 Microsoft Corporation Lightweight reference user interface
US8078965B2 (en) 2007-05-01 2011-12-13 Microsoft Corporation Automatic switching fonts on multilingual text runs
US8620938B2 (en) 2002-06-28 2013-12-31 Microsoft Corporation Method, system, and apparatus for routing a query to one or more providers
EP2713283A1 (fr) * 2012-10-01 2014-04-02 BlackBerry Limited Dispositif de calcul avec conversion automatique d'unités
US9020999B2 (en) 2012-10-01 2015-04-28 Blackberry Limited Computing device with automated conversion of units
US9076970B2 (en) 2010-01-15 2015-07-07 Nederlandse Organisatie Voor Toegepast-Natuurwetenschappelijk Onderzoek Tno Foil shaped electro-optical product, semi-finished product and method and apparatus for manufacturing the same
CN109597376A (zh) * 2017-10-02 2019-04-09 费希尔-罗斯蒙特系统公司 过程控制工厂中用于支持多语言显示视图能力的系统和方法
CN109683998A (zh) * 2017-10-19 2019-04-26 北京京东尚科信息技术有限公司 国际化实现方法、装置和系统
CN116737655A (zh) * 2022-03-03 2023-09-12 武汉联影智融医疗科技有限公司 文本资源的同步方法、装置、设备、介质和程序产品
EP4517522A1 (fr) * 2023-08-26 2025-03-05 Infosys Limited Procédé et système d'hyperlocalisation d'applications

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7281245B2 (en) 2002-06-05 2007-10-09 Microsoft Corporation Mechanism for downloading software components from a remote source for use by a local software application
US7392479B2 (en) 2002-06-27 2008-06-24 Microsoft Corporation System and method for providing namespace related information

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04261583A (ja) * 1991-02-15 1992-09-17 Minolta Camera Co Ltd メッセージ表示方式
US5416903A (en) * 1991-08-19 1995-05-16 International Business Machines Corporation System and method for supporting multilingual translations of a windowed user interface
DE59303218D1 (de) * 1992-02-25 1996-08-22 Siemens Ag Verfahren und Anordnung zum Auswählen von Parametern in einer programmgesteuerten Steuereinheit
US5442782A (en) * 1993-08-13 1995-08-15 Peoplesoft, Inc. Providing information from a multilingual database of language-independent and language-dependent items
US5555364A (en) * 1994-08-23 1996-09-10 Prosoft Corporation Windowed computer display
US5778356A (en) * 1994-11-10 1998-07-07 Cadis, Inc. Dynamically selectable language display system for object oriented database management system

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7421645B2 (en) 2000-06-06 2008-09-02 Microsoft Corporation Method and system for providing electronic commerce actions based on semantically labeled strings
WO2002075511A3 (fr) * 2001-03-16 2004-01-08 Lockheed Corp Systeme et procede d'interface utilisateur graphique multilingue
US8230443B2 (en) 2001-06-22 2012-07-24 Invensys Systems, Inc. Supervisory process control and manufacturing information system application having a layered architecture
US8499307B2 (en) 2001-06-22 2013-07-30 Invensys Systems, Inc. Internationalization of objects executable in a supervisory process control and manufacturing information system
US7730498B2 (en) 2001-06-22 2010-06-01 Invensys Systems, Inc. Internationalization of objects executable in a supervisory process control and manufacturing information system
EP1412873A4 (fr) * 2001-06-22 2008-03-26 Wonderware Corp Internationalisation d'objets executables au cours d'un controle de processus de surveillance et fabrication d'un systeme d'informations
US9268581B2 (en) 2001-06-22 2016-02-23 Invensys Systems, Inc. Internationalization of objects executable in a supervisory process control and manufacturing information system
EP1410173A4 (fr) * 2001-06-22 2008-04-09 Wonderware Corp Application de systeme d'information de fabrication et de commande de processus de supervision a architecture en couches
EP2369469A3 (fr) * 2001-06-22 2012-02-29 Wonderware Corporation Application de systeme d'information de fabrication et de commande de processus de supervision a architecture en couches
WO2003001401A1 (fr) 2001-06-22 2003-01-03 Wonderware Corporation Internationalisation d'objets executables au cours d'un controle de processus de surveillance et fabrication d'un systeme d'informations
WO2003001366A1 (fr) 2001-06-22 2003-01-03 Wonderware Corporation Application de systeme d'information de fabrication et de commande de processus de supervision a architecture en couches
US7650607B2 (en) 2001-06-22 2010-01-19 Invensys Systems, Inc. Supervisory process control and manufacturing information system application having a layered architecture
WO2003036472A1 (fr) * 2001-10-24 2003-05-01 Epicentric, Inc. Internationalisation de programmes informatiques au moyen d'une interface utilisateur graphique
EP1361523A3 (fr) * 2002-05-07 2006-12-20 Microsoft Corporation Conversion de données numeriques entre des systèmes de mesure à base de séquences de caratères marquées de façon sémantique
US7356537B2 (en) 2002-06-06 2008-04-08 Microsoft Corporation Providing contextually sensitive tools and help content in computer-generated documents
US8620938B2 (en) 2002-06-28 2013-12-31 Microsoft Corporation Method, system, and apparatus for routing a query to one or more providers
US7783614B2 (en) 2003-02-13 2010-08-24 Microsoft Corporation Linking elements of a document to corresponding fields, queries and/or procedures in a database
EP1477896A3 (fr) * 2003-05-13 2007-01-24 Microsoft Corporation Méthode et système pour forcer sélectivement des thèmes de présentation
US7558841B2 (en) 2003-05-14 2009-07-07 Microsoft Corporation Method, system, and computer-readable medium for communicating results to a data query in a computer network
US8010530B2 (en) 2003-05-22 2011-08-30 International Business Machines Corporation Presentation of multilingual metadata
US7409410B2 (en) 2003-05-22 2008-08-05 International Business Machines Corporation System and method of presenting multilingual metadata
EP1480120A3 (fr) * 2003-05-22 2007-04-25 Cognos Incorporated Système et procédé pour la présentation de metadonnées multilingues
US7788590B2 (en) 2005-09-26 2010-08-31 Microsoft Corporation Lightweight reference user interface
US7992085B2 (en) 2005-09-26 2011-08-02 Microsoft Corporation Lightweight reference user interface
US8078965B2 (en) 2007-05-01 2011-12-13 Microsoft Corporation Automatic switching fonts on multilingual text runs
US9076970B2 (en) 2010-01-15 2015-07-07 Nederlandse Organisatie Voor Toegepast-Natuurwetenschappelijk Onderzoek Tno Foil shaped electro-optical product, semi-finished product and method and apparatus for manufacturing the same
EP2713283A1 (fr) * 2012-10-01 2014-04-02 BlackBerry Limited Dispositif de calcul avec conversion automatique d'unités
US9020999B2 (en) 2012-10-01 2015-04-28 Blackberry Limited Computing device with automated conversion of units
CN109597376A (zh) * 2017-10-02 2019-04-09 费希尔-罗斯蒙特系统公司 过程控制工厂中用于支持多语言显示视图能力的系统和方法
US12327012B2 (en) 2017-10-02 2025-06-10 Fisher-Rosemount Systems, Inc. Systems and methods for configuring and presenting a display navigation hierarchy in a process plant
CN109683998A (zh) * 2017-10-19 2019-04-26 北京京东尚科信息技术有限公司 国际化实现方法、装置和系统
CN109683998B (zh) * 2017-10-19 2022-04-26 北京京东尚科信息技术有限公司 国际化实现方法、装置和系统
CN116737655A (zh) * 2022-03-03 2023-09-12 武汉联影智融医疗科技有限公司 文本资源的同步方法、装置、设备、介质和程序产品
EP4517522A1 (fr) * 2023-08-26 2025-03-05 Infosys Limited Procédé et système d'hyperlocalisation d'applications

Also Published As

Publication number Publication date
WO2000067117A3 (fr) 2001-01-18
AU4685100A (en) 2000-11-17

Similar Documents

Publication Publication Date Title
WO2000067117A2 (fr) Modules multilingues d'elaboration d'une application permettant une presentation de donnees sensible aux parametres de lieu et adaptee a la culture
US5515536A (en) Method and system for invoking methods of an object through a dispatching interface
US5907326A (en) System and method for updating cultural profiles with dragging and dropping locale objects
US7584430B2 (en) Method and apparatus for binding user interface objects to application objects
US6469714B2 (en) Infocenter user interface for applets and components
Blanchette et al. C++ GUI programming with Qt 4
US5664127A (en) System and methods for improved spreadsheet interface with user-familiar objects
US7865868B2 (en) .NET ribbon model for a ribbon user interface
US7546602B2 (en) Application program interface for network software platform
US6490719B1 (en) System and method for configuring and executing a flexible computer program comprising component structures
US6496844B1 (en) Method, system and computer program product for providing a user interface with alternative display language choices
KR20050039551A (ko) 컴퓨터 플랫폼용 프로그래밍 인터페이스
Lawrence et al. Programming graphical user interfaces in R
Gregory Using Visual C++ 6
US20030172107A1 (en) Runlets as application execution units
GB2320111A (en) Data processing system and method for software development/configuration
US20080005752A1 (en) Methods, systems, and computer program products for generating application processes by linking applications
Lawrence Compaq Visual Fortran: A guide to creating windows applications
Hunt Tkinter GUI Library
Hermes et al. Building Apps Using Xamarin
Kanalakis Developing Desktop Applications
Cowell Essential VB. Net fast
Spenke et al. GINA User Manual
Borycki Beginning Xamarin Development for the Mac
Ashley et al. Dialogs

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TR TT UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: A3

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TR TT UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP