File tree and file selector tabs in kdevelop
jens.dagerbo at swipnet.se
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.
More information about the KDevelop-devel