Open CASCADE Technology
7.5.0
|
This class gives a set of functions to manage and use a list of translated messages (messagery) More...
#include <Interface_MSG.hxx>
Public Member Functions | |
Interface_MSG (const Standard_CString key) | |
A MSG is created to write a "functional code" in conjunction with operator () attached to Value Then, to have a translated message, write in C++ : More... | |
Interface_MSG (const Standard_CString key, const Standard_Integer i1) | |
Translates a message which contains one integer variable It is just a help which avoid the following : char mess[100]; sprintf(mess,Interface_MSG("code"),ival); then AddFail(mess); replaced by AddFail (Interface_MSG("code",ival));. More... | |
Interface_MSG (const Standard_CString key, const Standard_Integer i1, const Standard_Integer i2) | |
Translates a message which contains two integer variables As for one integer, it is just a writing help. More... | |
Interface_MSG (const Standard_CString key, const Standard_Real r1, const Standard_Integer intervals=-1) | |
Translates a message which contains one real variable <intervals> if set, commands the variable to be rounded to an interval (see below, method Intervals) As for one integer, it is just a writing help. More... | |
Interface_MSG (const Standard_CString key, const Standard_CString str) | |
Translates a message which contains one string variable As for one integer, it is just a writing help. More... | |
Interface_MSG (const Standard_CString key, const Standard_Integer ival, const Standard_CString str) | |
Translates a message which contains one integer and one string variables As for one integer, it is just a writing help Used for instance to say "Param n0.<ival> i.e. <str> is not..". More... | |
void | Destroy () |
Optimised destructor (applies for additional forms of Create) More... | |
~Interface_MSG () | |
Standard_CString | Value () const |
Returns the translated message, in a functional form with operator () was C++ : return const. More... | |
operator Standard_CString () const | |
Static Public Member Functions | |
static Standard_Integer | Read (Standard_IStream &S) |
Reads a list of messages from a stream, returns read count 0 means empty file, -1 means error. More... | |
static Standard_Integer | Read (const Standard_CString file) |
Reads a list of messages from a file defined by its name. More... | |
static Standard_Integer | Write (Standard_OStream &S, const Standard_CString rootkey="") |
Writes the list of messages recorded to be translated, to a stream. Writes all the list (Default) or only keys which begin by <rootkey>. Returns the count of written messages. More... | |
static Standard_Boolean | IsKey (const Standard_CString mess) |
Returns True if a given message is surely a key (according to the form adopted for keys) (before activating messages, answer is false) More... | |
static Standard_CString | Translated (const Standard_CString key) |
Returns the item recorded for a key. Returns the key itself if : More... | |
static void | Record (const Standard_CString key, const Standard_CString item) |
Fills the dictionary with a couple (key-item) If a key is already recorded, it is possible to : More... | |
static void | SetTrace (const Standard_Boolean toprint, const Standard_Boolean torecord) |
Sets the trace system to work when activated, as follow : More... | |
static void | SetMode (const Standard_Boolean running, const Standard_Boolean raising) |
Sets the main modes for MSG : More... | |
static void | PrintTrace (Standard_OStream &S) |
Prints the recorded errors (without title; can be empty, this is the normally expected case) More... | |
static Standard_Real | Intervalled (const Standard_Real val, const Standard_Integer order=3, const Standard_Boolean upper=Standard_False) |
Returns an "intervalled" value from a starting real <val> : i.e. a value which is rounded on an interval limit Interval limits are defined to be in a coarsely "geometric" progression (two successive intervals are inside a limit ratio) More... | |
static void | TDate (const Standard_CString text, const Standard_Integer yy, const Standard_Integer mm, const Standard_Integer dd, const Standard_Integer hh, const Standard_Integer mn, const Standard_Integer ss, const Standard_CString format="") |
Codes a date as a text, from its numeric value (-> seconds) : YYYY-MM-DD:HH-MN-SS fixed format, completed by leading zeros Another format can be provided, as follows : C:d ... C like format, preceeded by C: S:... format to call system (not yet implemented) More... | |
static Standard_Boolean | NDate (const Standard_CString text, Standard_Integer &yy, Standard_Integer &mm, Standard_Integer &dd, Standard_Integer &hh, Standard_Integer &mn, Standard_Integer &ss) |
Decodes a date to numeric integer values Returns True if OK, False if text does not fit with required format. Incomplete forms are allowed (for instance, for only YYYY-MM-DD, hour is zero) More... | |
static Standard_Integer | CDate (const Standard_CString text1, const Standard_CString text2) |
Returns a value about comparison of two dates 0 : equal. <0 text1 anterior. >0 text1 posterior. More... | |
static Standard_CString | Blanks (const Standard_Integer val, const Standard_Integer max) |
Returns a blank string, of length between 0 and <max>, to fill the printing of a numeric value <val>, i.e. : If val < 10 , max-1 blanks If val between 10 and 99, max-2 blanks ... etc... More... | |
static Standard_CString | Blanks (const Standard_CString val, const Standard_Integer max) |
Returns a blank string, to complete a given string <val> up to <max> characters : If strlen(val) is 0, max blanks If strlen(val) is 5, max-5 blanks etc... More... | |
static Standard_CString | Blanks (const Standard_Integer count) |
Returns a blank string of <count> blanks (mini 0, maxi 76) More... | |
static void | Print (Standard_OStream &S, const Standard_CString val, const Standard_Integer max, const Standard_Integer just=-1) |
Prints a String on an Output Stream, as follows : Accompagned with blanks, to give up to <max> charis at all, justified according just : -1 (D) : left 0 : center 1 : right Maximum 76 characters. More... | |
This class gives a set of functions to manage and use a list of translated messages (messagery)
Keys are strings, their corresponding (i.e. translated) items are strings, managed by a dictionary (a global one).
If the dictionary is not set, or if a key is not recorded, the key is returned as item, and it is possible to :
It is also possible to suspend the translation (keys are then always returned as items)
This class also provides a file format for loading : It is made of couples of lines, the first one begins by '@' the following is the key, the second one is the message Lines which are empty or which begin by '@' are skipped
Interface_MSG::Interface_MSG | ( | const Standard_CString | key | ) |
A MSG is created to write a "functional code" in conjunction with operator () attached to Value Then, to have a translated message, write in C++ :
Interface_MSG("...mykey...") which returns a CString See also some help which follow
Interface_MSG::Interface_MSG | ( | const Standard_CString | key, |
const Standard_Integer | i1 | ||
) |
Translates a message which contains one integer variable It is just a help which avoid the following : char mess[100]; sprintf(mess,Interface_MSG("code"),ival); then AddFail(mess); replaced by AddFail (Interface_MSG("code",ival));.
The basic message is intended to be in C-sprintf format, with one d form in it
Interface_MSG::Interface_MSG | ( | const Standard_CString | key, |
const Standard_Integer | i1, | ||
const Standard_Integer | i2 | ||
) |
Translates a message which contains two integer variables As for one integer, it is just a writing help.
The basic message is intended to be in C-sprintf format with two d forms in it
Interface_MSG::Interface_MSG | ( | const Standard_CString | key, |
const Standard_Real | r1, | ||
const Standard_Integer | intervals = -1 |
||
) |
Translates a message which contains one real variable <intervals> if set, commands the variable to be rounded to an interval (see below, method Intervals) As for one integer, it is just a writing help.
The basic message is intended to be in C-sprintf format with one f form (or equivalent : e etc) in it
Interface_MSG::Interface_MSG | ( | const Standard_CString | key, |
const Standard_CString | str | ||
) |
Translates a message which contains one string variable As for one integer, it is just a writing help.
The basic message is intended to be in C-sprintf format with one s form in it
Interface_MSG::Interface_MSG | ( | const Standard_CString | key, |
const Standard_Integer | ival, | ||
const Standard_CString | str | ||
) |
Translates a message which contains one integer and one string variables As for one integer, it is just a writing help Used for instance to say "Param n0.<ival> i.e. <str> is not..".
The basic message is intended to be in C-sprintf format with one d then one s forms in it
|
inline |
|
static |
Returns a blank string, of length between 0 and <max>, to fill the printing of a numeric value <val>, i.e. : If val < 10 , max-1 blanks If val between 10 and 99, max-2 blanks ... etc...
|
static |
Returns a blank string, to complete a given string <val> up to <max> characters : If strlen(val) is 0, max blanks If strlen(val) is 5, max-5 blanks etc...
|
static |
Returns a blank string of <count> blanks (mini 0, maxi 76)
|
static |
Returns a value about comparison of two dates 0 : equal. <0 text1 anterior. >0 text1 posterior.
void Interface_MSG::Destroy | ( | ) |
Optimised destructor (applies for additional forms of Create)
|
static |
Returns an "intervalled" value from a starting real <val> : i.e. a value which is rounded on an interval limit Interval limits are defined to be in a coarsely "geometric" progression (two successive intervals are inside a limit ratio)
<order> gives the count of desired intervals in a range <1-10> <upper> False, returns the first lower interval (D) <upper> True, returns the first upper interval Values of Intervals according <order> : 0,1 : 1 10 100 ... 2 : 1 3 10 30 100 ... 3(D): 1 2 5 10 20 50 100 ... 4 : 1 2 3 6 10 20 30 60 100 ... 6 : 1 1.5 2 3 5 7 10 15 20 ... 10 : 1 1.2 1.5 2 2.5 3 4 5 6 8 10 12 15 20 25 ...
|
static |
Returns True if a given message is surely a key (according to the form adopted for keys) (before activating messages, answer is false)
|
static |
Decodes a date to numeric integer values Returns True if OK, False if text does not fit with required format. Incomplete forms are allowed (for instance, for only YYYY-MM-DD, hour is zero)
Interface_MSG::operator Standard_CString | ( | ) | const |
|
static |
Prints a String on an Output Stream, as follows : Accompagned with blanks, to give up to <max> charis at all, justified according just : -1 (D) : left 0 : center 1 : right Maximum 76 characters.
|
static |
Prints the recorded errors (without title; can be empty, this is the normally expected case)
|
static |
Reads a list of messages from a stream, returns read count 0 means empty file, -1 means error.
|
static |
Reads a list of messages from a file defined by its name.
|
static |
Fills the dictionary with a couple (key-item) If a key is already recorded, it is possible to :
|
static |
Sets the main modes for MSG :
|
static |
Sets the trace system to work when activated, as follow :
|
static |
Codes a date as a text, from its numeric value (-> seconds) : YYYY-MM-DD:HH-MN-SS fixed format, completed by leading zeros Another format can be provided, as follows : C:d ... C like format, preceeded by C: S:... format to call system (not yet implemented)
|
static |
Returns the item recorded for a key. Returns the key itself if :
Standard_CString Interface_MSG::Value | ( | ) | const |
Returns the translated message, in a functional form with operator () was C++ : return const.
|
static |
Writes the list of messages recorded to be translated, to a stream. Writes all the list (Default) or only keys which begin by <rootkey>. Returns the count of written messages.