mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-08-26 21:47:04 +00:00
35 lines
1.5 KiB
Plaintext
35 lines
1.5 KiB
Plaintext
CPLog Custom Message Formatters
|
|
===============================
|
|
|
|
You may now use a custom message formatter function with CPLog. To use a custom formatter, do the following:
|
|
|
|
- Create a formatter function that receives 3 parameters:
|
|
|
|
function myFormatter(aString, aLevel, aTitle)
|
|
{
|
|
// return a string
|
|
}
|
|
|
|
- Pass the formatter function when you register your loggers:
|
|
|
|
CPLogRegister(aProvider, aMaxLevel, aFormatter)
|
|
CPLogRegisterRange(aProvider, aMinLevel, aMaxLevel, aFormatter)
|
|
CPLogRegisterSingle(aProvider, aLevel, aFormatter)
|
|
|
|
If you don't pass a formatter or pass null, the default CPLog formatter is used. You can change the formatter
|
|
for a registered logger by calling one of the CPLogRegister functions again with the new formatter.
|
|
|
|
Each provider/level pair can have its own formatter. So, for example, you can use one formatter for errors
|
|
sent to CPLogPopup, a different formatter for other levels sent to CPLogPopup, and a totally different
|
|
formatter for CPLogConsole.
|
|
|
|
If you are writing a command line app and want to colorize all or part of a message according to the level,
|
|
you can use:
|
|
|
|
CPLogColorize(aString, aLevel)
|
|
|
|
This function can safely be used within a browser environment, it just returns the string unmodified.
|
|
This allows you to reuse the same formatting functions for both environments.
|
|
|
|
For examples of usage in the browser, see main.j and AppController.j in the test app. For examples of usage
|
|
in a command-line app, see test.j and run the file "execute_me". |