Copy from one RenderBuffer to another

Registered by Paul "LeoNerd" Evans on 2014-12-19

Copying of the entire content of one RenderBuffer into the active position of another, while fully translate/clipping/masking. This must not destroy the content of the source RB.

Blueprint information

Status:
Complete
Approver:
Paul "LeoNerd" Evans
Priority:
High
Drafter:
Paul "LeoNerd" Evans
Direction:
Approved
Assignee:
None
Definition:
Approved
Series goal:
Accepted for trunk
Implementation:
Implemented
Milestone target:
None
Started by
Paul "LeoNerd" Evans on 2014-12-26
Completed by
Paul "LeoNerd" Evans on 2014-12-26

Related branches

Sprints

Whiteboard

Looking at this quickly there are a couple of small things that make this a bit harder than it might have otherwise been.

* Copying a TEXT span isn't possible with the current API as it is a byte-counted thing rather than nul-terminated. There could be an internal API that tickit_renderbuffer_text_at also used, but it would have to be careful to not assume null-termination as well (so the call to strdup would become a malloc + memcpy).
* I'm not sure how to best go about copying line data.
* I think it is fine to just skip SKIP spans rather than copy the SKIP, right?

 - Bruce

---

 * TEXT span copy should now be possible with the new 'textn' methods.
 * SKIP spans in the source should result in no action on the destination, yes. A SKIP span basically removes any rendering instructions from that point in the buffer - don't remove any content that was already there in the destination. Consider it a bit like a transparent section.

 -- LeoNerd

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.