gambas-source-code/TODO
Benoît Minisini bd322efa9c [DEVELOPMENT ENVIRONMENT]
* BUG: Use TextEdit.RichText insted of TextEdit.Text.
* BUG: END SUB can be the end of a method. The class analyze now takes 
  that into account.

[HELP]
* BUG: Fixed the generated treeview.

[COMPILER]
* OPT: The NOT operator used just at the beginning of a conditional 
  expression is optimized. Consequently, an expression like 'IF NOT 2' is 
  now equivalent to 'IF 2 = 0' and not to 'IF (NOT 2) <> 0' as before. In
  other words, the boolean conversion is now done before the NOT, and not 
  after. The following instructions are concerned: IF, WHILE, UNTIL.
* NEW: BYREF is new keyword that is a more readable synonymous of '@'.

[GB.DB.FORM]
* BUG: Correctly manage data controls inside TabStrip-like containers.
* BUG: Setting the focus on a non-initialized DataControl does not raise 
  an error anymore.

[GB.GTK]
* BUG: HSplitter.Layout and VSplitter.Layout now work correctly. It is a 
  list of children widths, hidden children having a zero width.
* BUG: Window arrangement is done before the Open event is raised, as in 
  gb.qt.
* BUG: Keyboard, focus and mouse events now work correctly on Window and 
  DrawingArea controls.

[GB.QT]
* BUG: HSplitter.Layout and VSplitter.Layout now work correctly. It is a 
  list of children widths, hidden children having a zero width.
* BUG: Many warning fixes.
* BUG: Now the Control.Visible property works like in gb.gtk, i.e. it 
  returns if the control was not explicitely hidden.


git-svn-id: svn://localhost/gambas/trunk@1060 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-02-06 00:25:48 +00:00

100 lines
3.2 KiB
Text

TODO list: always incomplete :-)
--------------------------------
CONFIGURATION
- Raise an error when libffi is not found.
COMPILER
- Compilation error must indicate the column, not only the line.
- Better error message if a class form structure is incorrect. Otherwise the error
talks about the form generated code.
INTERPRETER
- A stack that can grow dynamically.
- A special syntax to make variable writable once only (for controls variables).
- Add global parameters for each component.
- Make objects printable, with a "_print" hidden method or something else.
- Make objects writable and readable to streams.
- Perl regexp with the MATCH operator.
- An expression can begin with NEW.
- 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.
/*
- OPTIONAL arguments should takes any expression.
- Class synonymous.
- Array[x] when x < 0 should return Array[Array.Count - x]
- NEW Collection OF String
*/
- If project compilation version < compiler version then => compile all
- Intercept all signals in Application_Signal.
- Structure support
- Callback support
- Sorting two or more arrays at the same time.
DEVELOPMENT ENVIRONMENT
- .startup file, a copy of .project with only startup info inside.
- .project files should be marked as 2.0.
- Renaming controls in the IDE renames the source code too.
- Loading a "form" component needs calling InitControl on classes that are not
member of the list of controls.
- 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.
- Packager should manage component projects.
- A new folder for non-packaged data files ('Notes' ?).
- Fix the GameOfLife example, remove the 'public control' option.
- Fix the Gravity example either.
GUI RELATED STUFF
- Adds automatically the extension to the file in the save file dialog.
- Deleting a currently expanding item in TreeView crashes.
- A Settings property everywhere? Mmmfff... At least for ColumnView, GridView.
- Popup forms => Need to redesign some properties.
- Rewrite the HSplit/VSplit layout, and use a Integer[] or a Float[]
- Style API.
PE_Separator / paint_hline paint_vline
PE_*Arrow / paint_arrow
PE_Indicator + PE_CheckMark / paint_check
? PE_Tab / paint_extension
PE_Focus / paint_focus
PE_SplitterHandle / paint_handle
PE_ExclusiveIndicator / paint_option
PE_Button PE_Panel / paint_box
DESKTOP COMPONENT
- gb.desktop X11 properties management, and watch.
- Detect an already running application.
- gb.desktop kwalletmanager support. And gnome ?
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.
COMPONENTS
- State of gb.corba ?
HELP
- Update the event nodes in the tree in 3.0 and 2.0. Replace "+event" by "_event".