gambas-source-code/TODO
Benoît Minisini 4c02c6d338 ******** Merged /branches/64bits r918:1003 into /trunk
[CONFIGURATION]
* NEW: 64 bits port.

[EXAMPLES]
* BUG: Fixed the AnalogWatch example.

[WIKI CGI SCRIPT]
* NEW: Some little cosmetic changes.

[INTERPRETER]
* NEW: The extern function implementation has been redesigned and is now
  based on libffi, so that it works on 64 bits system. Because of a flaw in
  the compiler design, projects that use the Pointer datatype must be
  recompiled to be used on a 64 bits system. This flaw will be fixed in
  Gambas 3.
* OPT: Put some tables into read-only memory. About 1000 bytes are saved
  for each running interpreter, except the first one.
* BUG: Does not crash anymore if a component cannot be loaded.
* NEW: Spanish translation updated.
* NEW: A new interpreter API for returning a pointer.

[COMPILER]
* BUG: Correctly compiles LONG constants inside code.

[GB.DEBUG]
* BUG: Compiles and links the gb.debug components with the thread
  libraries.

[GB.DB.SQLITE3]
* BUG: Getting the primary index of a table without primary index is safe
  now.

[GB.GTK]
* BUG: Modified the GLib priority of watched descriptors, as the main loop 
  could enter in a loop in which user interface events were not managed.
* BUG: Message boxes use application title without crashing now.

[GB.OPENGL]
* BUG: Disable dead code.

[GB.QT.EXT]
* BUG: TextEdit.TextWidth and TextEdit.TextHeight were not declared as
  read-only properties.

[GB.XML.XSLT]
* BUG: XSLT class is now declared as being not creatable.


git-svn-id: svn://localhost/gambas/trunk@1006 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-17 21:39:26 +00:00

94 lines
2.8 KiB
Text

TODO list: always incomplete :-)
--------------------------------
VERSION 2.0
-----------
- A stack that can grow dynamically.
- A special syntax to make variable writable once only (for controls variables).
- Doing something like ByRef to help porting VB projects.
- Add global parameters for each component.
- Compilation error must indicate the column, not only the line.
- 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.
Don't do it:
- OPTIONAL arguments should takes any expression.
- Class synonymous.
- Array[x] when x < 0 should return Array[Array.Count - x]
- NEW Collection OF String
Do it asap:
- Trim$(sStr, "pattern", " ", "/")
-> RTrim(sStr, "WHERE") or RTrim(sStr, " ", "\n")
- If project compilation version < compiler version then => compile all
- Intercept all signals in Application_Signal.
- Object.SetVariable, or SetSymbol, and that can act on static things.
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' ?).
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.
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.
64 BITS
-------
X11 Window datatype is a long => Control.Id should return a pointer
OTHER
-----
- gb.desktop kwalletmanager support. And gnome ?
COMPONENTS
----------
- gb.corba ?
- gb.v4l ?