Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 20 Feb 2017 12:42:35 +0100] rev 31095
color: drop the 'colorui' class
Now that all logics formally bared by 'colorui' have been moved to the main ui
class, that class is empty and can be dropped. As a nice side effect we can get
rid of the baroque Initialization associated to it.
There was much rejoicing.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 20 Feb 2017 12:42:23 +0100] rev 31094
color: move 'write-err' logic to the core ui class
This is similar to what we needed for 'write', we move the logic from the
extension to the core class. Beside the dispatch to 'win32print', we just apply
label to the argument.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Feb 2017 19:53:41 +0100] rev 31093
ui: extract low level part of 'write_err' in its own method
Same as for 'write' and '_write' we needs it available for some of the color logic.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Feb 2017 19:28:45 +0100] rev 31092
ui: extract buffer write from protect and timed 'write_err' output
That subcall to 'self.write' is never doing actual write but only store things
in buffers. So we do not need to protect it for exception not to time its
execution.
This will make it easier to extract a '_write_err' function as we did for
'write'.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 20 Feb 2017 12:31:39 +0100] rev 31091
color: move 'write' logic to the core ui class
One more step, the support for writing color is not directly in core. No
behavior change for the default case ('_colormode' = None).
Here are the details of what we have to change to the core method:
* apply to 'self.label' to input in the buffered case
* dispatch to 'win32print' when applicable
* apply to 'self.label' to input when applicable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Feb 2017 19:27:00 +0100] rev 31090
ui: extract the low level part of 'write' in a dedicated function
We are about to add some extra logic related to color. That logic will need to
access the low level layer of ui doing the actual write to a stream. (eg:
'win32print'). We extract this logic into a private method for this purpose.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Feb 2017 21:34:07 +0100] rev 31089
color: add multiple messages input support to 'win32print'
All other function doing writes support any number of input message. For
simplicity, we make 'win32print' able to do the same.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Feb 2017 21:31:47 +0100] rev 31088
color: clarify name of an argument of 'win32print'
In the current code, the function called to write happens to the 'orig' version
of the method calling 'win32print' (obtained with a 'super' call). However, the
variable could have a better name. That will be useful when we'll stop having
inheritance in play.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Feb 2017 19:45:32 +0100] rev 31087
color: move the 'colorlabel' call to the core 'ui' class
This bring us closer to supporting color in core natively. Core already have a
'label' method that was a no-op. We update its to call the new 'colorlabel'
function. Behavior is unchanged when colormode = None.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Feb 2017 19:10:24 +0100] rev 31086
color: move the 'colorlabel' function in the core module
The extract code is relocated in core.