High priority tasks!
====================

1. Fixing major/annoying bugs
-----------------------------

* konsole part:
  - cd's when selecting a file, but doesn't when selecting a dir
    desired: a menu option to "cd" to that directory
  - CTRL-C doesn't work, typing ../ does weird things

* automake part:
  - Should be able to DND files from other targets / file list / konq
    to add to targets.
  - Doesn't always get lib path relative to $top_buildir correct.
    (projectDirectory() != $(top_builddir) in general)

* UI bugs:
  - view-taskbar missing
  - editor options dialog missing when all views are closed
  - messages view should hold place when scrolled but new output is
    being added
  - If you click an error in the output view, "Next Error"/"Previous Error"
    should then start from that point.
  - Messages in status bar would look nicer if they appeared with the same
    border as other items.
  - Browser tool bar should truncate long menu entries so it doesn't take so
    much space.
  - Open last open panel in the sidebars on startup, if possible (should be
    stored in project session file, not globally)
  - Tag file creation fails silently if ctags is not installed

* misc:
  - Trying Java projects results in mysterious error messages
  - Project name should be able to contain spaces
  - Should be able to keep project file in a separate directory and
    specify what the project root directory is.
  - Also, should be able to have a separate project root and top build dir.
    E.g. I want to have a kate project in kdebase, but I want to project file
    to live in ~/src/projects. So I set projectDir = ~/src/kdebase/kate and
    topBuildDir = ~/src/kdebase. Should be able to specify these paths as
    absolute or relative to home or relative to the project file or relative
    to each other, for portability across team projects.

2. KDevelop 2 compatibility
---------------------------

These are things that must be accomplished before we can say that
gideon >= kdevelop 2.x UI-wise and functionality-wise!

* general UI issues:
  - new file: a New File action in File menu & class/file views
  - toplevel UI mode broken
  - [Modified] missing in mainframe caption
  - captions missing for toolbar buttons
  
* cppsupport:
  - new class dialog belongs in File menu

* doctreeview:
  - use kdoc to update Qt/KDE docs
  - navigation toolbar

* editing:
  - RMB on qeditor doesn't have the 'Switch to declaration/definition'
    functionality

* build/configuration:
  - cross-compiling feature missing
    
* interoperability:
  - import/export 2.1-projects<-->Gideon-projects
  - version control: integration with Cervisia?

* classview:
  - delete method/class menu items
  
3. Missing UIs (other than 2)
-----------------------------

UIs that intuitively ought to be there

* automakemanager:
  - install, etc. targets besides "build" for subproject menus & toolbar
  
* TopLevel SDI UI-mode:
   -> Extend KDevPlugin-API in order to have a preferred border for at least the selection parts
       (Automake Manager, Class Browser, File Groups, etc...)

  
Other Issues
============


4. New features
---------------
  
* short-term:

  - improve documentation browsing

* mid-term:

  - valgrind!
  - use mimetype to determine code files, not extension

* long-term:

  - write a lot more plugins ;) ideas here for which ones
  - sourcenav database and navigation tools

  
5. Code refactoring/improvements
--------------------------------

* architecture:
  - implement multiple-views per document

* modularity:
  - make the KDevPart template work standalone
  - make sure all lib interfaces are available via DCOP

* improvement:
  - find a nicer way to remove dynamic menu entries from context menus
  - make all functions using filenames use KURLs instead

* optimization:  

* Import existing directory: Should be named "Import existing project" and more intuitive (wizard-like)
  - Question from the wizard: "I have found C++ files in your project directory. Should C++ be the primary language
  of your project?" User: [Yes/No] => Next Step...
  - Something intuitive for the binary/-ies (for debugger and execution of program), libtool ([Yes/No] for the debugger), build tool
  (qmake, automake,...?), etc.., too.


6. Misc.
--------

* mhk: add doc comments to the lib files I changed ;)

* Update configure.in when sub projects are added and the
  project doesn't use am_edit

* Implement removing sub projects.

* Implement Add Plugin

* Show .po files in project management

* Distinguish vanilla c++ support from c++ + Qt extensions
  and show signals/slots in the class view only with Qt.

* Perhaps use konsole part for the application frontend

* Check if a man page exists before offering the context menu
  item 'Goto manpage'

* Show intro page on startup

