|
|
|
/** \file FutureTasks.dox
|
|
|
|
* \brief Future tasks and ideas for the next release of KDevelop
|
|
|
|
*/
|
|
|
|
/** \page FutureTasks Future tasks and ideas for the next release of KDevelop
|
|
|
|
|
|
|
|
\section codereftodo Code Refactoring / Improvements:
|
|
|
|
|
|
|
|
- Core
|
|
|
|
- Make sure all lib interfaces are available via DCOP
|
|
|
|
- Find a nicer way to remove dynamic menu entries from context menus
|
|
|
|
- Resolve the path handling mess
|
|
|
|
- Project name should be able to contain spaces
|
|
|
|
- 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.
|
|
|
|
- use mimetype to determine code files, not extension
|
|
|
|
(see bug #
|
|
|
|
- Make the help buttons (that we already have) open the KDevelop Handbook on
|
|
|
|
the correct page (or the index if the subject is not covered yet).
|
|
|
|
- New and improved VCS framework (Needs better description)
|
|
|
|
- Another look at the plugin system (Nees better description)
|
|
|
|
- Another look at the project files (shared, non-shared, session)
|
|
|
|
- fix(redesign?) project language switching
|
|
|
|
- editor handling could be made a bit saner if editor plugin switching was an after-restart-only feature
|
|
|
|
|
|
|
|
- Programming Language Support Parts
|
|
|
|
- Create base classes for language support parts:
|
|
|
|
- AntlrLanguageSupport
|
|
|
|
- AntlrBackgroundParser
|
|
|
|
- AntlrProblemReporter
|
|
|
|
- Same for:
|
|
|
|
- YaccLanguageSupport
|
|
|
|
- YaccBackgroundParser
|
|
|
|
- YaccProblemReporter
|
|
|
|
- There is a possibility to create even something like
|
|
|
|
- LanguageSupportBase
|
|
|
|
|
|
|
|
Look at java, pascal and ada support parts to get more inspiration.
|
|
|
|
There should be base classes for ada, java and pascal language supports - too much code duplication.
|
|
|
|
|
|
|
|
- CppSupportPart
|
|
|
|
- Extended "make member" functionality - run on a .h to implement stubs for all unimplemented non-abstract methods
|
|
|
|
- Code Refactoring
|
|
|
|
- text hint type info tooltips (edit mode)
|
|
|
|
- text hint value info tooltips (debug mode)
|
|
|
|
- Make the language plugin know stuff like what file patterns to look for (for instance, "find in files" needs this)
|
|
|
|
|
|
|
|
- Build tools Parts
|
|
|
|
- Show .po files in project management
|
|
|
|
- Custom actions for groups, targets and files for project managers:
|
|
|
|
- any menu item should be a KAction plugged into KPopupMenu, also we need to define shortcuts for any such action,
|
|
|
|
also we should make sure those actions are properly executed from a shortcut.
|
|
|
|
- AutoProjectPart
|
|
|
|
- Should be able to DND files from other targets / file list / konq to add to targets
|
|
|
|
- Should loose the experimental crashy and nonstandard "add files" dialog
|
|
|
|
- Update configure.in when sub projects are added and the project doesn't use am_edit
|
|
|
|
- Keep the correctly cased project name and save it to the project file
|
|
|
|
|
|
|
|
- Debugger Parts
|
|
|
|
- Create a debugger support base classes. Make the current GDB support a plugin.
|
|
|
|
- Implement parts for other debuggers i.e. DBX, WDB, Ladebug, JDB, XDB, bashdb, the Perl debugger, or the Python debugger.
|
|
|
|
We can use DDD as inspiration.
|
|
|
|
- General debugger
|
|
|
|
- variable widget
|
|
|
|
- set variable by editing the value in the tree
|
|
|
|
- cast value by editing the type in the tree
|
|
|
|
- disassembly
|
|
|
|
- add breakpoint display
|
|
|
|
- set breakpoint by selecting a line as in the edit window
|
|
|
|
- allow scrolling of disassembled code about and below current limits
|
|
|
|
- add source to disassembled code as comments
|
|
|
|
- basically just re-work the whole disassemble window :)
|
|
|
|
- Bugs
|
|
|
|
- Fix "core file" handling
|
|
|
|
- Fix "attach to" handling
|
|
|
|
- Breakpoints can disappear at odd times
|
|
|
|
- When the target program crashes, the debugger can't be started again. (intermittant?)
|
|
|
|
- Break on method() - could have multiple methods which require a choice. How to handle this?
|
|
|
|
|
|
|
|
|
|
|
|
- Plugins
|
|
|
|
- DocTreeViewPart
|
|
|
|
- Implement plugin system for doctreeview.
|
|
|
|
- improve documentation browsing
|
|
|
|
- Check if a man page exists before offering the context menu item 'Goto manpage'
|
|
|
|
- right click -> set as bookmark in docviewer
|
|
|
|
- ClassViewPart
|
|
|
|
- Implement language-dependant plugin system for classview:
|
|
|
|
- namespaces/classes/functions are not always applicable to a language, we need a way to correctly
|
|
|
|
fill a class view and combo boxes - only a language support can do that properly.
|
|
|
|
- Distinguish vanilla c++ support from c++ + Qt extensions and show signals/slots in the class view only with Qt. (is this still valid?)
|
|
|
|
- KonsoleViewPart
|
|
|
|
- Perhaps use konsole part for the application frontend
|
|
|
|
- cd's when selecting a file, but doesn't when selecting a dir,
|
|
|
|
desired: a menu option to "cd" to that directory
|
|
|
|
- QEditor
|
|
|
|
- Replace editors/qeditor/koReplace.* and editors/qeditor/koFind.* with tdelibs/kutils/kreplace.* and tdelibs/kutils/kfind.*
|
|
|
|
|
|
|
|
|
|
|
|
\section extensiontodo Extensions / New Functionality:
|
|
|
|
|
|
|
|
- Core
|
|
|
|
- implement multiple-views per document (why?)
|
|
|
|
- Document manager (not obviously useful)
|
|
|
|
- Implement Add Plugin
|
|
|
|
- Show intro page on startup
|
|
|
|
- Programming Language Support Parts
|
|
|
|
- Build tools Parts
|
|
|
|
- Plugins
|
|
|
|
- better sourcenav part (all navigation tools should be supported with at least a "back" action - forward much less important)
|
|
|
|
- Integrate kontact's TODO-List and knotes plugin. (We need something like a
|
|
|
|
server/client system that all the knotes/toto-clients are always synced.)
|
|
|
|
- a generic macro-tool (if possible, probably best implemented as a KTE plugin)
|
|
|
|
- Free grouping of files in file group plugin
|
|
|
|
|
|
|
|
|
|
|
|
\section misctodo Miscellaneous (and possibly invalid) items:
|
|
|
|
|
|
|
|
- UI bugs
|
|
|
|
- Editor options dialog missing when all views are closed (virtually impossible to fix)
|
|
|
|
- If you click an error in the output view, "Next Error"/"Previous
|
|
|
|
Error" should then start from that point (already implemented?)
|
|
|
|
- Messages in status bar would look nicer if they appeared with
|
|
|
|
the same border as other items (impossible)
|
|
|
|
- Browser tool bar should truncate long menu entries so it doesn't
|
|
|
|
take so much space (already implemented?)
|
|
|
|
- Extend KDevPlugin-API in order to have a preferred border for at
|
|
|
|
least the selection parts (Automake Manager, Class Browser, File
|
|
|
|
Groups, etc...)
|
|
|
|
|
|
|
|
*/
|