Okay guys, so after I have released this version I will be adding extra features to make Moonlite more awesome and make you be able to code faster. I want you to take a look at the features and maybe suggest some stuff.
- Auto recovery – saves projects into a backup directory every (x) minutes and if Moonlite crashes, the user will have an option to recover the “unsaved” project.
- Code insight – a dialog on top of the editor window that has “insight” into the current file. Holds stats such as number of lines, number of methods, number of properties, etc. When the user hovers over for example the text saying “Properties: (x)”, a textbox should popup giving the type, name and signatures of the given objects.
- Change Ribbon interface to Toolbar interface in order to save space and have a more IDE like and intuitive layout.
- Add Build messages to the statusbar in order to indicate that the program is building the project rather than it has frozen.
- Add an “Object Browser” for having a tree view of for example the stdlib’s classes/enrichments/structs. A class/enrichment/struct’s members can also be viewed.
- Floating run button – having a Test Map button right next to the text editor instead of the top of the screen in order to make the distance the user has to move the cursor smaller.
- Template toolbox – a dock window that contains a list of code templates. A code template is represented as an item that can be dragged into your code. When the item is dropped, the code of the item will be inserted at the place the item was dropped. Templates could be added via files (like the File Templates in the current Templates directory in the installation directory), so that the user can add custom made templates. The templates would use a special template markup language, e.g: “if (<cursor index=”0” />) {
<cursor index=”1” />
}”
This would make the user’s cursor be first set to the “if” statement’s condition statement, and when he pressed a given “tabbing” key (maybe Ctrl + Shift + Right arrow key), the cursor would go to the next cursor statement. - Full keyboard support – all commands should have keyboard shortcuts. (http://www.devexpress.com/go/DevExpress_Newsletter29_CTOVideoMsg.aspx)