TODO list: always incomplete :-) -------------------------------- COMPILER - Compilation error must indicate the column, not only the line. - Conditional compilation #IF DEBUG - Warn for unused local or private variables. - CASE LIKE INTERPRETER /**** NEIN! - OPTIONAL arguments should take any expression. - Class synonymous. - Array[x] when x < 0 should return Array[Array.Count - x] - NEW Collection OF String - A ConstCopy() function for arrays, and const arrays. ****/ - A special syntax to make variable writable once only (for controls variables). - Add global parameters for each component. Or no, a global configuration repository, to tell, for example, which socket the mysql component must use... - Make objects printable, with a "_print" hidden method or something else. - Make objects writable and readable to streams. - Perl regexp with the MATCH operator. - Type mismatch error: print the mismatched values. - Special runtime debugging commands for dumping all the variables for example. - A new debugging compilation option to only put line number information in the output files. - NInstr() -> Count the number of patterns. - If project compilation version < compiler version then => compile all - Intercept all signals in Application_Signal. - Catch kill signal to remove temporary files. - Structure support - Callback support - Sorting two or more arrays at the same time. - MOD with floats. - Make the error information associated with the current stack frame. DEVELOPMENT ENVIRONMENT - Bookmarks in editor. - Manage Object properties in IDE. - Put a language code in comments, and hide them as needed by the user. - Make a visual control clipboard. - Load/Save in menu editor. - Generates an index control->component to suggest components for missing controls. - Be able to open a .tar.gz project, and compress it back when the project is closed. - Conditional breakpoints. - Allow changing the case of class names. - Finding files in the treeview. GUI RELATED STUFF - Deleting a currently expanding item in TreeView crashes. - A Settings property everywhere? Mmmfff... At least for ColumnView, GridView. - TabStrip.TextFont. - Standard dialog must remember their size. - Form.KeyPreview - ValueBox.Value should be visible in the IDE. DESKTOP COMPONENT - Detect an already running application. DATABASE COMPONENT - Add Views support in database component. - Changeable client Charset in database driver. - Returns the number of records affected by a query. - A new database driver model. - Copy a result line into another one. - Use SAVEPOINT in postgresql to simulate nested transactions. DOCUMENTATION WIKI - Mass rename command. - Fix last changes: only those in one language. - A documentation page to explain the Gambas syntax. COMPONENTS - Put version number in *.component files, and use it when making dependencies in the IDE.