Nick et al.,
I've been addressing Lasher's request for "Auto-wrap to window size" to work on a textrectangle with suggestions of how it might be made to work and reasons why one might want it, presupposing that the desired functionality is for resizing the textrectangle to wrap old lines as well as newly received lines. This could of course have been a foolish assumption on my part. If the desired functionality, as Lasher hints at in his last post, is to only set the wrap point for newly incoming lines based on the width of the textarea, then the problem is very different and much simpler, since the obvious solution is to make the statement "With output redirected to a TextRectangle this setting appears to be ignored" not be true. Twisol's latest suggestion is also more to the point on resizing itself. But I don't think that resizing is always the right answer. The user may want a certain font size and a certain textrectangle size.
If that answers all of your concerns, stop reading this post now. Now on with more blather. :)
Worstje said:
I don't want resizing to reflow my stuff. The speed bump would make it a nightmare, since even when ignoring me 100,000 line buffers, I often size the window smaller temporarily because I don't need the full width I usually do (with mw's being hidden at that point.)
I'm not sure I understand how the scenario you present is possible in the context of textrectangle.
Nick Gammon said: To address the quoted point first, certainly a new routine could be added (or GetLineInfo modified) to supply extra meta-data. In fact the timestamp of the line is already there.
Nick, to address half of your question of what part you would play in any of this. This is probably it, if anything. All the rest would be handled by someone else who cares to use the functionality in a particular way. To address the second half, see the opening paragraph of this note.
Quote: There would be memory considerations. You suggested doing what can currently be done in Lua, and then "a small routine to copy and paste the history buffer". Well effectively you would need two copies of every line, and someone who is close to the limit of memory might push it into a massive amount of paging to accomplish that.
That's true of most new software functionality. I'm not really concerned with marginally increased memory requirements.
Quote: For example, on Aardwolf: ... Ah, it looks the same. So why bother?
Set your width to 100 characters. Watch a few channels. Then set your width to 85 characters. It doesn't look the same. Or are you thinking that with chat capture the way it is, we never need to deal with long lines in the main output area? I don't think I can agree with that premise.
Twisol said: Windows sends fluid resize events, so you'd actually have to reflow multiple times while the user is still dragging the window borders.
I already encountered this issue with my chat capture plugin. The short answer is "no you don't". The slightly longer answer is, "No you don't. And besides, we're not even talking about Windows resize events. We're talking about a textrectangle. So you're doubly in error."
Nick Gammon said: You could add a RH-click to copy the line under the cursor functionality, that could be nice. And you could add timestamps if you RH-click, or hover over the line, etc.
[EDIT] I take that back, they are already time-stamped.
It also already lets you click to copy messages. :D
What it doesn't let you do is select an arbitrary block of text. I hope to add that eventually.
|