[DONE] Storing & inheriting locale-specific information.

Ruslan Zasukhin sunshine at public.kherson.ua
Wed Apr 7 12:54:03 CDT 2004


On 4/7/04 3:05 AM, "Igor Gomon" <giv at tlc.kherson.ua> wrote:

> Storing & inheriting locale-specific information implemented for
> Database, Table & some field classes as we have discussed at the
> recent meeting.
> 
> For this have been implemented many (small) changes to existing methods
> and also some new functions have been added.
> 
> So, step by step:
> 1) Factory function CreateDatabase() changed - it now takes additional
>   parameters, so it's defined now as:
> 
>   I_Database* CreateDatabase(
>                           EStorageType inStorage = kStorage_Disk,
>                           const char* inEncoding = NULL,
>                           const char* inLocale = NULL,
>                           const char* inSortOrder = NULL );
>   Accordingly Database' class constructor also updated.

What is SortOrder?

Give please example of call

> 2)  Added two new global functions:

As I understand, I must make sure they work on MAC, yes?

>       /** Returns system-level default locale. All new databases inherits this
>              locale if the user not specified different on database creation.
> */
> const Locale& GetDefaultLocale( void );
> 
>       /** Returns system-level default encoding. All new databases inherits
>           this value if the user not specified different on database creation.
> */
> const String& GetDefaultEncoding( void );

> It is used when NULL parameters passed to the Database constructor.
> These functions may determine default locale & encoding differently.
> For example, they may get these values from the configuration file, etc.

You mean that C++ developer can change them in own application?
Where they are located?
Public zone?


> 3) Database::CreateTable() method has also changed since it now take the
>   same 3 parameters (as specified in CreateDatabase() call).
>   Accordingly Table constructor also updated.


> 4) Added 3 new classes - field properties:
>       Prop_Encoding,
>       Prop_Locale,
>       Prop_SortOrder.
>   These classes play the same role as method parameter in previous examples.
>   It's processed by VString::FinishCreate() method.
    ^^^^^^^ "they are", Igor

I see.

> 5) New I_Localizable interface added.
>   (And its default implementation Localizable_Imp).

>   This interface provides functionality of localizable object.

>   Currently 3 classes implements this interface:
>       Database (indirectly - through Localizable_Imp)
>       Table (indirectly - through Localizable_Imp)
>       VString (indirectly - through Localizable_Imp)
>       (... maybe later some else)

Of course! also must be VarChar and VText

> So, the summary on new files:
>   FBL/prot/Interfaces/FBL_I_Localizable.h

ok

>   FBL/prot/Structure/Database/FBL_Localizable_Imp.h

Hmm, Not agree. 
This is not database only class.
Must go to some other place.

> P.S. Changes not yet in the CVS - I will commit it in the morning.
> 
> --
> Best regards,
> Igor Gomon
> -------------------------------------------------------------
> e-mail: giv at tlc.kherson.ua
> web: http://www.paradigmasoft.com

-- 
Best regards,
Ruslan Zasukhin      [ I feel the need...the need for speed ]
-------------------------------------------------------------
e-mail: ruslan at paradigmasoft.com
web: http://www.paradigmasoft.com

To subscribe to the Valentina mail list go to:
http://lists.macserve.net/mailman/listinfo/valentina
-------------------------------------------------------------



More information about the Valentina-beta mailing list