GSOC Day 74-75 – Order Pasting
I’ve spent the past two days fixing order copy/paste functionality in the client. The copying has always worked, but there were major issues with pasting an order into the queue. The main problem revolved around two factors: 1. orders are not easily copied completely, and 2. order changes have to be synced over the network.
Yesterday, I tried to go with the approach of writing a __deepcopy__() method in the DynamicOrder class. After some work, I was able to make a full copy of an order. The problem was that when it was returned to the original function, it couldn’t be sent over the network because DynamicOrder stuff is client-specific. So that wasn’t the right way to go, even though it was what I’d been working on all afternoon.
Fortunately, I finally came up with a solution today. I realized that I could use a similar process to that used to build new orders from given parameters, copying the data from one order into another and sending that across the network. This time, I was building the class that could be transmitted, so everything was much smoother. Finally, we have the ability to copy and paste orders.
That means that tomorrow, I’ll be looking into testing the new client on Mac and Windows, trying to get it ready for the final push towards the release.