File tree and file selector tabs in kdevelop

Jens Dagerbo jens.dagerbo at
Fri Apr 14 16:35:07 UTC 2006

On Friday 14 April 2006 05:47, Tim Harper wrote:
> There are few things I'd like to give a whack at for kdevelop, with the
> file tree and file selector panes:
> * Merge the file tree and file selector panes.  Make a singular icon that
> will switch the views
> * Right click on empty space gives you the option to create a new file in
> that folder

Ah.. my favorite topic. ;)

Last time it came up:

I'm not against the idea of merging FileTree (and FileGroups) and 
FileSelector, but you probably need to be aware of the following:

FileTree (FT) and FileGroups (FG) are implemented in the same plugin, though 
the code is fairly separated. FT in particular has more responsibilities than 
might be immediately obvious. In addition to optionally showing VCS 
information (if there is a VCS plugin loaded) it acts as the "project view" 
for project types with no dedicated project view of their own (only automake 
and qmake have their own views - automake manager and qmake manager). 
This really just means displaying if a file is part of the project or not and 
making it possible to add/remove a file from project membership. The entire 
project membership concept for custom makefiles and script projects needs 
looking at, really...

FileSelector (FS) is implemented in a plugin on its own and is really a code 
"fork" from a Kate widget. (I say "fork" because the code is essentially 
indentical and we usually manage to track them if a bug is fixed.) The one 
really nice feature it has (apart from a flexible UI) is network transparancy 
via KIO. It would really be a pity to lose this. It also seems to be the 
source of some really hard to figure out crashes.

I long have had the idea that FT and FG could/should be merged. FG could be 
implemented as "virtual folders" that collects files in a group based on some 
rule or manual adding. I'm not sure of the best way to display this in a 
widget like FS where the root folder isn't constant, however.

Just some thoughts.

// jens

More information about the KDevelop-devel mailing list