Monkey Studio IDE The way IDEs should be


pasnox's picture

Done tasks

  1. Universal class browser (done by PasNox on 2009 August): Many users asked about class browser for whole project, not only for one file (as in the Navigator plugin). But for implement it, need to make big internal changes. We have to collect all possible info from project internally, and implement some engines, maybe inherited from QAbstractItemModel, for display whole project, single file, current scope. Also, will be possible to do variant of Navigator, which will be ComboBox on top toolbar, not a big dock. Also, data model with information about project will be base for smart autocompletion feature.
  2. Support of project type, which builds by custom (entered by user) console commands (done by PasNox on 2009 August): As result, user will be able to build from IDE any project, which have Makefiles. Generally, it's possible now. You can create user tool, which will use Console Manager and execute build process; but it is bad way.
  3. New workspace & file watcher (done by PasNox on 2009 september): We will drop our own class pExtendedWorkspace as since Qt 4.5 QMdiArea is mimicing our api, this will mark the optionnal tab bar come back. In the same time I will rewrite the "files list" dock with a most powerfull model that will allow some sort possibility ( kate like ) and a best file watcher tracker.
  4. Preparing release (done by PasNox on 2009 december): Fixing opened bugs for preparing the second beta of the version.
  5. Search & Replace plugin (done by PasNox on 2009 december): Rewriting the search & replace plugin, create scalabe and powerfull threaded search engine, threaded replace engine. Add new features : search / replace in opened files / project files, rework the gui.
  6. Environment variables editor with MkS Shell support (done by PasNox on 2010 january): Add an environment variables editor that will allow to customize/override global environment variables for process started from MkS (like make, execute target etc). This will make windows users (and others too) to set minimal commands in their customs commands/tools, and plugins creator. You can manage the variables from Edit > Settings > Environment variables or by using MkS Shell commands. It's not intrusive, tehre is NO CHANGE made to your SYSTEM.
  7. BuildStep rework (done by pasnox on 2010 February): Rework MessageBox and internal MessageBoox::Step to use custom model in place of QListWidget item which is not enought optimized for our needs. This avoid freeze in the BuildStep views in case of many errors appear in a short laps of time.
  8. Tools plugin (done by pasnox on 2010 February): We will move all code related to tools in the core to a dedicated plugin for lightweight the core code.

Current tasks

  1. Debugger (started by hlamer on 2009 August): Now we have a debugger, but it not so usable, as necessary. We can finish debugger, written by xiantia, or take some other, from Qt Creator for instance ;).
  2. release (started by pasnox on 2010 April): Fixing last bugs for releasing MkS, and then starting working on the next minor version (1.8.5.x).

Waiting tasks

(In no particular order)
  1. Smart autocompletion Now we have only simple autocompletion - from current source file, or from .api file. But - it only completion of words, and editor know nothing about classes, methods, enumerators. With start autocompletion we will be able to show methods only current object, enumerators only of this type. But, maybe it's will be hard enough to do :-;
  2. Internal MkS shell Enhance features of internal MkS shell.
  3. Expert .pro editor Currently we have only simple editor of .pro files (QMake project), and we don't know, how to do comfort GUI with full support of .pro format. PasNox generated idea to write advanced text editor for it. So, novice user will use our simple GUI, and advanced users, which need more features - let's edit .pro file by manually in the comfort editor.
  4. File associations MkS already can open files and projects, if give names to it in the console. And, we will implement some way, for automatically create file associations within the desktop.
  5. Rework IRC plugin
  6. Cmake project support. On this stage we will be able to edit cmake projects (cmake project files)
  7. SVN integration User will be able to work with Subversion version control system dirrectly from the IDE