GSOC Day 18 – Multiple Order Queues
My work today had essentially two sections. The first was to split the TrackerObjectOrder class up, creating a TrackerOrder class (there was already a TrackerObject class, so I just had to make the other one). This would allow me to track a specific order queue separately from an object, enabling both multiple order queue support and support for order queues without associated objects (which Mithro says is possible, though I’m not sure how).
I was able to complete this task, and after a bit of debugging (there were name conflicts when I inherited from both TrackerObject and TrackerOrder, so I changed oid to qid in TrackerOrder and changed one of its function names), I was able to move on to my second task.
The second task was to finally implement support for selecting any one of an object’s order queues to track, then to update panelOrder with the new information and allow the creation of new orders for it. I was able to do this, although I have realized that I never remembered to put in the callback for changing order queues. I’ll do that first thing tomorrow.
I had some minor trouble in the middle of all of this, when the addition of the wxChoice box caused the rest of the panel to shrink more than it should have, not expanding to take the whole space available. I eventually realized that xrced was not updating the “expandable rows” section of the sizer everything was contained in, so I had to just enter the values directly without using the chooser. Then things worked.
Tomorrow, I will also try to create more (hopefully all) of the missing panels for different parameter types. Then I will need to find a way to test all of this, which could be difficult, since no current rulesets use some of these features.