Age | Commit message (Collapse) | Author |
|
Things were getting a little crowded in the project root, so this patch
moves the Lib*/ directories into Libraries/.
|
|
This patch adds an on_context_menu_request hook to GAbstractView which is
currently only invoked by GTableView. We also pass along the entire context
menu event, so that anyone using the hook can use it for menu placement etc.
|
|
|
|
Also run it across the whole tree to get everything using the One True Style.
We don't yet run this in an automated fashion as it's a little slow, but
there is a snippet to do so in makeall.sh.
|
|
Show a context menu when right clicking the headers of a GTableView, and
allow the user to hide/show individual columns.
|
|
The GModel now merely provides an initial width for the columns. Once that
has been queried, the table view manages width from then on.
|
|
|
|
GAbstractView should be able to manage the high-level editing logic, as long
as subclasses implement content_rect(GModelIndex) so we know where to put
the editing widgets. :^)
|
|
This is pretty shaky still, but the basic idea is that you subclass GModel
and return true for editable indices. The table view also needs to have its
editable flag set.
|
|
Now double-clicking an item in a GTableView or GItemView will activate it.
|
|
This is a GAbstractView subclass that implements a icon-based view onto
a GModel. It still need a bunch of work, but it's in basic usable shape.
|
|
This is in preparation for adding a new view class.
|
|
|
|
Use this in IRCClient to hide the "sender" column in the server message view
since everything in that view comes from the "Server" anyway.
|
|
It became clear that this class needs to support multiple owners.
|
|
This then becomes the base class for GTableView. I'd like to share as much
code as possible with GTextEditor and any other scrollable widgets.
|
|
|
|
There are many situations where you would want a table view without headers.
|
|
Also paint the sorted column slightly differently to indicate what's up.
|
|
|
|
Pressing Enter will now "activate" the selected index, meaning that
the model gets a call to activate(GModelIndex).
|
|
I don't want to use GEvent here since these need to be synchronous
and mixing sync and async GEvents would be stupid.
|
|
Now we can scroll content in both directions if it won't fit in the view.
|
|
|
|
Make it sufficiently generic that it can be reused for any table data. :^)
|