Commit graph

1281 commits

Author SHA1 Message Date
Benoît Minisini
be6bde730d [DEVELOPMENT ENVIRONMENT]
* BUG: Correctly deals with unknown components in the project property 
  dialog.

[INTERPRETER]
* NEW: Error backtrace is now always printed.
* OPT: Some optimizations in mathematical routines.

[GB.IMAGE]
* NEW: Image.FillRect() is a new method that fills a rectangle with a 
  specified color.


git-svn-id: svn://localhost/gambas/trunk@3007 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-15 06:54:38 +00:00
Laurent Carlier
4d008efb61 [DEVELOPMENT ENVIRONMENT]
* NEW: Use a different color for unknown components.

I know the color is fluffy :-p


git-svn-id: svn://localhost/gambas/trunk@3006 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-14 14:18:50 +00:00
Benoît Minisini
aaf1044366 [INTERPRETER]
* OPT: Many optimizations. One is big (gcc is not really clever sometimes!), 
  and now Gambas is about 30% faster than interpreted Python when running 
  stupid benchmarks.


git-svn-id: svn://localhost/gambas/trunk@3005 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-13 20:25:34 +00:00
Benoît Minisini
390a19785c [INTERPRETER]
* BUG: Pointer are correctly managed in extern function calls now.


git-svn-id: svn://localhost/gambas/trunk@3004 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-13 15:00:32 +00:00
Benoît Minisini
a32166b185 [INTERPRETER]
* OPT: Many optimizations again.
* BUG: Fix an unitialized variable in string to float conversion routine.
* BUG: Handle extern functions that return a pointer.


git-svn-id: svn://localhost/gambas/trunk@3003 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-13 12:03:29 +00:00
Benoît Minisini
a01e8c1d72 [ARCHIVER]
* NEW: Ignore valgrind core files and callgrind output files when creating 
  an archive.


git-svn-id: svn://localhost/gambas/trunk@3002 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-13 11:04:57 +00:00
Benoît Minisini
29e1b1ae70 [DEVELOPMENT ENVIRONMENT]
* BUG: Display unknown components again.

git-svn-id: svn://localhost/gambas/trunk@3001 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-13 11:01:40 +00:00
Laurent Carlier
b065f55995 [GB.OPENGL]
* BUG: Add more OpenGL constants.


git-svn-id: svn://localhost/gambas/trunk@2997 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-09 14:06:09 +00:00
Benoît Minisini
405f8f89fe [INTERPRETER]
* OPT: Some optimizations again in memory allocator, object releasing 
  routine, arithmetic operators, class variable reader, line-by-line stream
  reader, class symbol sort routine.
* BUG: Using constant strings inside variant, like database drivers, works
  correctly again and does not crash the interpreter anymore.


git-svn-id: svn://localhost/gambas/trunk@2996 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-08 23:08:04 +00:00
Benoît Minisini
c52c9f0257 [INTERPRETER]
* OPT: Some optimizations again.

[COMPILER]
* BUG: Compile functions using ByRef correctly again.


git-svn-id: svn://localhost/gambas/trunk@2995 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-06 20:43:13 +00:00
Laurent Carlier
b87e25b5ba [GB.SDL]
* BUG: Remove buggy code, now interlacing line and image drawing work.


git-svn-id: svn://localhost/gambas/trunk@2994 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-05 20:39:57 +00:00
Laurent Carlier
3e92aaf056 [GB.SDL]
* NEW: New methods Font.Width() and Font.Height(), to retreive respectivly
       widht and height of text.

Now a default font (system font) is opened with New method,
but nothing is rendered yet.


git-svn-id: svn://localhost/gambas/trunk@2993 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-05 14:56:17 +00:00
Benoît Minisini
b3db598050 [DEVELOPMENT ENVIRONMENT]
* BUG: Breakpoints are correctly reset when opening a new project.

[INTERPRETER]
* BUG: The GB.NewString(), GB.NewZeroString() and GB.TempString() API 
  signature has changed. All components have been updated accordingly.
* OPT: Many optimizations to speed up the interpreter.

[GB.EVAL]
* NEW: During syntax highlighting, the first character of class names is
  automatically converted to uppercase.


git-svn-id: svn://localhost/gambas/trunk@2992 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-04 23:48:53 +00:00
David Villalobos Cambronero
2e0c3db634 [DEVELOPMENT ENVIROMENT]
* NEW: Spanish translation updated.

git-svn-id: svn://localhost/gambas/trunk@2991 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-04 21:12:46 +00:00
David Villalobos Cambronero
5048852864 [DEVELOPMENT ENVIROMENT]
* NEW: Spanish translation updated.

git-svn-id: svn://localhost/gambas/trunk@2990 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-04 14:04:18 +00:00
Benoît Minisini
2c2ad90faf [INTERPRETER]
* OPT: Start some optimizations in conversion routines.


git-svn-id: svn://localhost/gambas/trunk@2989 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-02 23:23:50 +00:00
Benoît Minisini
08f7fd6338 [INTERPRETER]
* BUG: Try to fix the floating-point precision/rounding bug. In other 
  words, 0.6 is now printed 0.6, and not 0.6000...001 anymore.


git-svn-id: svn://localhost/gambas/trunk@2988 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-02 21:12:23 +00:00
Benoît Minisini
a8f12f8e54 [GB.FORM]
* BUG: Use a default question icon for Message.Question icon.


git-svn-id: svn://localhost/gambas/trunk@2987 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-30 19:37:40 +00:00
Fabien Bodard
745c773703 [GB.REPORT]
* OPT: Some corrections


git-svn-id: svn://localhost/gambas/trunk@2986 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-30 19:10:06 +00:00
Laurent Carlier
1334cfc928 [GB.SDL]
* BUG: Disable line smoothing, as there is problem with intel driver.

A line of width equal to 1.0 isn't displayed with smoothing enabled.



git-svn-id: svn://localhost/gambas/trunk@2985 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-30 16:23:52 +00:00
Benoît Minisini
e21ee94bea [GB.GTK]
* BUG: Menu items have a better look now.
* BUG: Windows with Resizable set to FALSE work correctly now.


git-svn-id: svn://localhost/gambas/trunk@2984 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-30 14:11:36 +00:00
Laurent Carlier
bbddf37dca [GB.SDL]
* BUG: Fix Line/Points/... drawing with Image/Text drawing.



git-svn-id: svn://localhost/gambas/trunk@2983 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-30 12:55:15 +00:00
Benoît Minisini
d4f7952f5b [GB.NET.SMTP]
* BUG: Adds a newline between MIME part headers and MIME part body.


git-svn-id: svn://localhost/gambas/trunk@2981 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-30 11:18:17 +00:00
Benoît Minisini
65645599cb [INTERPRETER]
* BUG: Fix debug information loading on 64 bits OS.


git-svn-id: svn://localhost/gambas/trunk@2980 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-29 23:01:05 +00:00
Benoît Minisini
f75d640e3b [INTERPRETER]
* NEW: StrPtr() now can take a second argument to specify the length of the 
  string we will read from memory. If that argument is not specified, the
  string must ends with a zero character.
* OPT: Internal array management was optimized. It changes nothing for the
  Gambas array class.

[COMPILER]
* OPT: Internal array management was optimized.
* BUG: Using embedded structure with a class that is not a structure now
  raises an error.


git-svn-id: svn://localhost/gambas/trunk@2979 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-29 21:10:36 +00:00
Benoît Minisini
4351654665 [DEVELOPMENT ENVIRONMENT]
* BUG: Save report form coordinates as scaled.
* BUG: Correctly write scaled coordinates to form files again.


git-svn-id: svn://localhost/gambas/trunk@2978 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-29 21:06:39 +00:00
Benoît Minisini
4fff317030 [DEVELOPMENT ENVIRONMENT]
* NEW: Handle structures in automatic completion.

[INTERPRETER]
* BUG: Make the malloc cache returns 8-bytes aligned pointers on 64 bits 
  systems.

[COMPILER]
* OPT: Some optimizations again.
* OPT: Do not use -O3 for symbol table routines. Valgrind says that it is 
  slower than with -Os. Strange...


git-svn-id: svn://localhost/gambas/trunk@2977 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-29 00:11:55 +00:00
Benoît Minisini
3406d87d1d [INTERPRETER]
* BUG: Archives are read correctly again on 64 bits OS.
* OPT: Memory allocations are now cached in a memory pool, so that malloc() 
  and free() are not called too often.
* BUG: The initial allocation of a new hash table is not too big anymore.

[COMPILER]
* OPT: Memory allocations are now cached in a memory pool, so that malloc() 
  and free() are not called too often. The compiler is now twice as fast as 
  it was before all the recent optimizations!

[ARCHIVER]
* BUG: Archives are read correctly again on 64 bits OS.


git-svn-id: svn://localhost/gambas/trunk@2976 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-28 19:33:05 +00:00
Benoît Minisini
17a6f7ebed [DEVELOPMENT ENVIRONMENT]
* BUG: Ignore incorrect paths when loading recent file list.

[INTERPRETER]
* OPT: Compute stack backtrace only when needed.


git-svn-id: svn://localhost/gambas/trunk@2975 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-28 07:47:49 +00:00
Benoît Minisini
b727d17086 [INTERPRETER]
* OPT: Using object references is faster.
* BUG: Fix a misuse of GB.NewString() in the String class.

[COMPILER]
* BUG: Raise an error now when trying to create an array of structures.

[GB.QT4]
* OPT: Global widget event filter is faster.
* OPT: Do not internallt relayout TabStrip too often, because Qt takes a 
  lot of time to do that.



git-svn-id: svn://localhost/gambas/trunk@2974 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-28 06:24:14 +00:00
Benoît Minisini
74f930e0b6 [INTERPRETER]
* BUG: Make the interpreter compile on 64 bits OS.


git-svn-id: svn://localhost/gambas/trunk@2973 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-27 21:27:42 +00:00
Benoît Minisini
3412ce6442 [CONFIGURATION]
* NEW: Object file format has changed, so bytecode version has been 
  incremented, and all projects must be recompiled. Yes, again!

[INTERPRETER]
* OPT: Optimizations in comparison operators.
* OPT: Optimize symbol lookup tables.

[COMPILER]
* OPT: Optimize symbol lookup tables.

[GB.EVAL]
* BUG: Gambas source code is correctly highlighted again.
* NEW: Quoted identifiers (those between '{' and '}') are highlighted more 
  intelligently now.


git-svn-id: svn://localhost/gambas/trunk@2971 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-27 13:51:09 +00:00
Benoît Minisini
1f592094a6 [CONFIGURATION]
* NEW: Bytecode version has been increased, and so all projects must be 
  recompiled.

[INTERPRETER]
* OPT: Objects that do not raise events do not allocate the event 
  management structure anymore. That save four pointers by object.
* NEW: Structure management is done, and embedded (static) structures are
  handled too.
* BUG: Static array management was fixed.
* NEW: All functions synonymous whose name ends with a question mark have 
  been removed.

[COMPILER]
* OPT: Some optimization again.
* BUG: EXTERN declarations compile again.

[GB.DB.SQLITE2]
* BUG: Fix a misuse of GB.NewString().


git-svn-id: svn://localhost/gambas/trunk@2970 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-26 22:01:28 +00:00
Laurent Carlier
09ed25e356 [GB.COMPRESS.ZLIB]
* BUG: Fix compilation warning about _LARGEFILE64_SOURCE redefinition.


git-svn-id: svn://localhost/gambas/trunk@2969 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-26 20:04:32 +00:00
Laurent Carlier
3b2f4ce2ae [GB.DB.ODBC]
* BUG: Fix compilations warning.

Use SQLLEN type instead of SQLINTEGER type.


git-svn-id: svn://localhost/gambas/trunk@2968 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-26 19:56:15 +00:00
Laurent Carlier
cb2e6d7bd5 [GB.SDL]
* OPT: Code cleanup, use glew instead of internal functions.


git-svn-id: svn://localhost/gambas/trunk@2967 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-26 07:09:11 +00:00
Benoît Minisini
85576a5871 [GB.DB.MYSQL]
* BUG: Fix the use of GB.NewString() API.

[GB.NET.SMTP]
* BUG: Send a CR+LF and not just a LF before sending mime part body.


git-svn-id: svn://localhost/gambas/trunk@2966 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-25 13:49:17 +00:00
Benoît Minisini
b0a0c52af0 [INTERPRETER]
* NEW: More work on structure support.
* BUG: Fix optimization in error management.

[COMPILER]
* OPT: More optimizations. The Gambas 3 compiler is faster to compile the 
  Gambas 3 IDE than the Gambas 2 compiler to compile the Gambas 2 IDE, 
  which is smaller!
* NEW: Do not compute variable position and size, as it is done by the 
  interpreter anyway.

[GB.EVAL]
* NEW: Use the same optimizations as the compiler in the parser.

[GB.XML.RPC]
* BUG: The component compiles again.



git-svn-id: svn://localhost/gambas/trunk@2964 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-25 11:19:00 +00:00
Laurent Carlier
0bee2e02dd [GB.SDL]
* BUG: Properly free allocations.


git-svn-id: svn://localhost/gambas/trunk@2962 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-24 09:56:14 +00:00
Laurent Carlier
e4836e99d6 [GB.SDL]
* BUG: Do not forget to ref/unref the font.



git-svn-id: svn://localhost/gambas/trunk@2961 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-24 09:01:25 +00:00
Benoît Minisini
48f6a6a309 [INTERPRETER]
* BUG: L'API GB.ReturnNewString() doit pouvoir retourner une chaîne vide. 
  Dans ce cas elle le transforme en un GB.ReturnNull().


git-svn-id: svn://localhost/gambas/trunk@2960 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-23 18:59:11 +00:00
Benoît Minisini
2215ca1b08 [DEVELOPMENT ENVIRONMENT]
* BUG: Correctly reset the breakpoint list when opening a project.


git-svn-id: svn://localhost/gambas/trunk@2959 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-23 18:57:25 +00:00
Laurent Carlier
9510ec8d21 [GB.SDL]
* NEW: Loading font through Font.Load() method and displaying it
       with Draw.Text() method
* NEW: Draw.Rotate() and Draw.Scale() to respectivly rotate and scale
       images and fonts when displaying them.
* NEW: Draw.ForeColor() affect image displayed too.
* OPT: Some optimizations. 


git-svn-id: svn://localhost/gambas/trunk@2958 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-23 15:27:56 +00:00
Benoît Minisini
4a544c567a [INTERPRETER]
* BUG: Use GB.ReturnNewZeroString() instead of GB.ReturnNewString() now. 
  All components using the old syntax should be fixed now.
* NEW: Start to manage structures.


git-svn-id: svn://localhost/gambas/trunk@2957 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-23 11:07:14 +00:00
Benoît Minisini
41a002012a [COMPILER]
* BUG: Reserved functions following the READ keyword are correctly detected 
  again.


git-svn-id: svn://localhost/gambas/trunk@2956 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-22 21:56:42 +00:00
Benoît Minisini
dffc0cbaa8 [GB.EVAL]
* NEW: Fix the error management the same way as in the interpreter.


git-svn-id: svn://localhost/gambas/trunk@2955 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-22 20:41:11 +00:00
Benoît Minisini
ed041dc7d0 [COMPILER]
* BUG: Forgot to add the source file that generates the reserved keywords 
  analyzer.


git-svn-id: svn://localhost/gambas/trunk@2954 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-22 19:35:18 +00:00
Benoît Minisini
117f2ac635 [INTERPRETER]
* NEW: New GB.NewZeroString() API to create a Gambas string from a 
  null-terminated string. Components were modified to use it.
* OPT: Many optimizations everywhere.

[COMPILER]
* OPT: Many optimizations. The compiler should be noticeably faster.


git-svn-id: svn://localhost/gambas/trunk@2953 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-22 18:02:34 +00:00
Benoît Minisini
8e1604e59d [CONFIGURATION]
* NEW: The bytecode version has been incremented, as the object file format 
  has changed.

[DEVELOPMENT ENVIRONMENT]
* BUG: Handle static arrays in automatic completion.

[INTERPRETER]
* BUG: Handle public static arrays correctly.

[COMPILER]
* NEW: Handle structures, and write them inside object files.
* NEW: Class options (EXPORT, CREATE...) can only be written at the 
  beginning of the source file now.
* BUG: Fix some use of uninitialized values.
* BUG: Correctly write public static arrays in *.info files.
* NEW: Do not support old OPEN syntax anymore.


git-svn-id: svn://localhost/gambas/trunk@2952 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-20 23:23:39 +00:00
Benoît Minisini
74e8fc7fed [INTERPRETER]
* OPT: Many branch prediction optimizations.


git-svn-id: svn://localhost/gambas/trunk@2951 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-19 20:18:23 +00:00