I do something along this line in a couple different ways.
First, I have an aversion to the view control because it simply does not give me the control I want.
Second I love the repeat control as I have found that I can do almost anything with it.
In this regard I did a show for Dave on NotesIn9 where I build a categorized repeat control structure. does not do everything you are looking for but a start. You can see the video at https://www.youtube.com/watch?v=DqSNMUiZ1SU and download the full function database used in the video from http://wfsystems.ca/XPages/Website/wfswebsite.nsf/xpIndex.xsp?xpButton=Downloads
In another instance I use a view full text search to get a collection of documents then feed them into a repeat control:
var n:Integer = vw.FTSearchSorted(query, maxReturn , column, sortOrder, exactCase, variants, fuzzy);
Note this method returns the number of found documents to now are working with the view and need to manipulate it into dataSource for the repeat control.
in your case I would start by calling a dialog where the user would select the "column" to sort by from a drop down. Note columns in view must be sortable.
The query would be something like "Originator =" + UserName
Then using the returned vw feed that to the repeat, how you do that will depend on how you need the data to display. I tend to create a collection of UNIDs and store that in a viewScope or sessionScope variable (could do all this as part of a viewScope or sessionScope managed Bean) then let the display in the repeat get the actual documents. Understanding that this does create a more processor and network traffic intensive application but I have tested this with some 10000 documents in the return list and the response is very acceptable. Your experience might vary. Besides if you just want this particular users current documents the return is probably fairly same, say a few hundred documents at most.
Hope this helps,