So I've been using Code Blocks for quite a few years now and it's always been a reliable solution for me through them all. I always wanted to contribute something to pay it back but I never had the time. Well I found time to do so and I wanted to start on the one dialog that always aggravated me when I used it. In my mind I should be spending a few seconds and a few clicks on the sort order dialog but instead I end up spending minutes and what seemed like hundreds of clicks rearranging each item... So I set out to fix the problem by making the most robust Sort Order dialog the world of IDE's have seen! lol
Here is the result:
A bit more than a listbox and two buttons... But the best part is it's even easier to use than the old one and has advanced features to shave time off or outright semi-automate the rather boring task of sorting build targets.
Features include:
Multiple Selections (All other features work with this in mind as well)
Drag and drop for right mouse button. Also right clicking doubles as adding an item to a selection rather than clearing it like left click does.
Match based on standard search or even regex with selectable case sensitivity for both.
Searches can be added or removed from current selections allowing for multiple searches to narrow down what your looking for or to create entirely new selections from scratch. Simply by changing the mode.
Move to top and move to bottom buttons to compliment the original move and move down.
Alphabetical sorting of selections means a simple click will sort all those pesky version numbers.
Did someone list those release targets just above the debug version for every version in the project? Use the Collapse to Top or bottom buttons to move all the releases versions to the top and all the debug versions to the bottom in one click.
The number of selected items are also displayed so you don't accidentally move something you can't currently see.
Did you single single-handedly massively screw up your build target ordering beyond human comprehension? Just click the reset list button to put things back to when the dialog opened. No more canceling and then re-clicking the re-order button.
All settings and 10 previous searches are saved upon close so you can get right back to what you were doing last time.
And finally, of course no multiple selection listbox is complete without the standard select all and select none buttons.
you can download the patches and the whole source files here:
https://sites.google.com/site/ouchsdownloads/home/downloads/Sort%20Order.zipI have not gone through the official patching process because it's my first Code Blocks patch and I would like to make sure it follows all the coding conventions. And to ask is it possible to have posix style searches? Seems like the normal document search uses scintilla for that but when I tried it it kept complaining that it needed an object associated with it. I'm assuming it's because it wants to highlight words in a document which doesn't exactly work for wxlistboxes...
I'm also not sure I implemented all the config manager stuff correctly... I basically just shamelessly copied it from the document search stuff. I'm mainly concerned because it seemed too easy... lol
Also, let me know if anyone finds any bugs or has any ideas for things to add.
Oh and this was made with TDM mingw 4.7.1 and wxWidgets 2.8 SVN branch "WX_2_8_BRANCH" version 75268 on Win 7 64bit