Commit graph

3008 commits

Author SHA1 Message Date
Benoît Minisini
a9fbd40cd8 [INTERPRETER]
* NEW: Implement the ^ operator in the '_operators' interface.

[GB.COMPLEX]
* NEW: Implement the ^ operator.

[GB.GSL]
* NEW: Implement the ^ operator in the Complex class.


git-svn-id: svn://localhost/gambas/trunk@4931 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-10 02:37:39 +00:00
Adrien Prokopowicz
47985d1d8e [GB.XML]
* NEW: Added a new XmlElement.ClearChildren method, that removes all the children of an element.
* BUG: Setting the XmlElment.TextContent property now correctly remove all children of an element.
* BUG: Setting the XmlElment.TextContent with a null string has now no effect, as mentioned in the W3C specifications.

git-svn-id: svn://localhost/gambas/trunk@4930 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-10 00:17:15 +00:00
Benoît Minisini
a3966cf195 [DEVELOPMENT ENVIRONMENT]
* BUG: Array of classes exported by a component are now correctly handled
  by the component interface analyzer.

[INTERPRETER]
* BUG: The _operators interface now correctly takes into account the
  "Float - Object" case.

[GB.GSL]
* NEW: Redesign of the Polynomial class. Now it implements a polynomial 
  that can switch between real and complex coefficients transparently.
* NEW: The ComplexPolynomial class has been removed.


git-svn-id: svn://localhost/gambas/trunk@4929 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-10 00:13:00 +00:00
Adrien Prokopowicz
fc299f0180 [GB.XML]
* BUG: The TextContent property now correctly ignores the contents of comment nodes, as mentioned in the W3C specifications.

git-svn-id: svn://localhost/gambas/trunk@4928 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 23:33:56 +00:00
Adrien Prokopowicz
159390bc46 [GB.XML]
* BUG: Getting an attribute that doesn't exist doesn't crashes anymore, it returns a null string instead.
* BUG: The string comparison mode argument is now correctly handled by XmlElement.GetAttribute().

git-svn-id: svn://localhost/gambas/trunk@4927 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 22:22:11 +00:00
Benoît Minisini
a036882dcc [GB.GSL]
* NEW: Handle GSL errors.
* NEW: Reimplement the Polynomial class by inheriting Float[].


git-svn-id: svn://localhost/gambas/trunk@4926 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 19:42:49 +00:00
Benoît Minisini
9a46cc0486 [INTERPRETER]
* NEW: Temporary hack in the GB.New() API so that we can pass a number of 
  arguments in some cases.

[GB.COMPLEX]
* OPT: Do not create complex objects during arithmetic operations when we 
  are sure that we can reuse a temporary one. That trick can be used in any
  '_operators' interface.


git-svn-id: svn://localhost/gambas/trunk@4925 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 17:10:21 +00:00
Benoît Minisini
fa552f69c1 [DEVELOPMENT ENVIRONMENT]
* NEW: New gb.complex component

[INTERPRETER]
* BUG: Automatic array conversion now works with not yet loaded array 
  classes.

[GB.COMPLEX]
* NEW: New component that implements a rudimentary management of complex 
  numbers. This component is automatically loaded if a complex number
  constant is encountered and no loaded component can already handle 
  complex numbers.


git-svn-id: svn://localhost/gambas/trunk@4924 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 15:37:42 +00:00
Benoît Minisini
ad823d98cf [GB.GSL]
* NEW: Add Complex.Neg() to return the negative of a complex number.
* NEW: Add Complex.Inv() to return the inverse of a complex number.


git-svn-id: svn://localhost/gambas/trunk@4923 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 14:30:44 +00:00
Benoît Minisini
c89b8a5011 [GB.GSL]
* NEW: Add a Complex.Conj() method to return the conjugate of a complex number.


git-svn-id: svn://localhost/gambas/trunk@4922 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 14:27:33 +00:00
Laurent Carlier
3045e50490 [GB.GSL]
* BUG: Properly fix library detection.



git-svn-id: svn://localhost/gambas/trunk@4921 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 12:47:55 +00:00
Laurent Carlier
44f737a21d [GB.GSL]
* BUG: Use the proper detection method for gsl library.


git-svn-id: svn://localhost/gambas/trunk@4920 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 09:07:04 +00:00
Benoît Minisini
53d05b0549 [GB.GSL]
* NEW: Work continue on Vector class...


git-svn-id: svn://localhost/gambas/trunk@4919 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 02:20:57 +00:00
Benoît Minisini
2402db91f0 [INTERPRETER]
* NEW: Support for imaginary number syntax. For example, using "3i" will 
  automatically load the gb.gsl component, create the corresponding complex 
  number and return it.

[COMPILER]
* NEW: Support for imaginary number syntax.

[GB.EVAL]
* NEW: Support for imaginary number syntax.

[GB.GSL]
* NEW: Support for imaginary number syntax.
* NEW: Vector class is now generic, and has two child classes: FloatVector 
  and ComplexVector, depending on the type of its elements.
* BUG: Support for arithmetic operators on Vector class has been removed. 
  It had too many problems.


git-svn-id: svn://localhost/gambas/trunk@4918 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 23:23:24 +00:00
Adrien Prokopowicz
e8e480ac39 [GB.XML]
* BUG: The GetAttribute() method now correctly returns the attribute value.

git-svn-id: svn://localhost/gambas/trunk@4917 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 20:27:03 +00:00
Benoît Minisini
fc1c1e5531 [INTERPRETER]
* NEW: When converting an instance of A to the class B, try the conversion 
  interface of A first. If A has no conversion interface, or if it cannot 
  handle the B class, then try the conversion interface of B if any.

[GB.GSL]
* NEW: Vector class has been implemented.

[GB.JIT]
* NEW: SPEC_CONVERT constant has been replaced by a field in the CLASS 
  structure.


git-svn-id: svn://localhost/gambas/trunk@4916 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 20:08:43 +00:00
Adrien Prokopowicz
91b8363562 [GB.XML]
* BUG: The encoding is now correctly specified in the document header.

git-svn-id: svn://localhost/gambas/trunk@4915 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 19:33:17 +00:00
Emil Lenngren
ad81cf629a [GB.JIT]
* NEW: Use VALUE_convert instead of VALUE_convert_object.


git-svn-id: svn://localhost/gambas/trunk@4914 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 18:59:10 +00:00
Benoît Minisini
ef37065297 [INTERPRETER]
* BUG: Correctly raise an error when trying to use NULL on classes 
  implementing the _operators interface.
* NEW: The _convert interface now must handle conversions from any 
  datatype.

[GB.GSL]
* NEW: Automatic conversion from numbers to Complex.
* NEW: Start implementating the Vector class.


git-svn-id: svn://localhost/gambas/trunk@4913 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 16:55:35 +00:00
Benoît Minisini
64505bbb0b [INTERPRETER]
* BUG: Abs() and the negation operator on a null object implementing the 
  '_operators' interface does not crash anymore, and correctly raises an 
  error now.


git-svn-id: svn://localhost/gambas/trunk@4912 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 16:23:40 +00:00
Benoît Minisini
fc19d7bd78 [GB.GSL]
* NEW: Complex class has been cleaned up.
* BUG: Fix array creation in CComplexPolynomial.ComplexSolve().


git-svn-id: svn://localhost/gambas/trunk@4911 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 15:39:38 +00:00
Adrien Prokopowicz
2256d5f5a4 [GB.XML]
* OPT: Do not use the UTF-8 string methods anymore when parsing text opened with the XmlReader.FromString() method, they are too slow. This also may solve UTF-8 chars reading problems.

git-svn-id: svn://localhost/gambas/trunk@4910 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 15:30:42 +00:00
Emil Lenngren
393decb5e1 [GB.JIT]
* NEW: Implement _unknown.
* BUG: Remove some warnings.

[INTERPRETER]
* BUG: Fix exception handling for JIT functions.


git-svn-id: svn://localhost/gambas/trunk@4909 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 14:53:23 +00:00
Benoît Minisini
7bd330aa00 [INTERPRETER]
* NEW: "_operators" is a new interface that allows any native class to be
  used with most of arithmetic operators: +, -, *, /, Abs, =, <> at the 
  moment.
* NEW: The "_convert" interface now allows a class to be converted to any
  datatype, not just other classes.
* NEW: Str() and Print uses the "_convert" interface to print a localized
  string conversion of any object.

[GB.GSL]
* NEW: Use the new "_operators" interface so that complex numbers can be 
  handled by standard arithmetic operators.
* NEW: The Complex class now implements the "_convert" interface.


git-svn-id: svn://localhost/gambas/trunk@4908 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 14:35:58 +00:00
Benoît Minisini
2c631a0874 [INTERPRETER]
* BUG: Do not leak memory if the _unknown method raised an error.


git-svn-id: svn://localhost/gambas/trunk@4907 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 14:29:44 +00:00
Benoît Minisini
a903da98f2 [INTERPRETER]
* BUG: Correctly read unknown properties.


git-svn-id: svn://localhost/gambas/trunk@4906 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 13:27:56 +00:00
Benoît Minisini
7a198731d2 [DEVELOPMENT ENVIRONMENT]
* BUG: Do not display spurious 'missing component' messages in the project 
  property dialog.


git-svn-id: svn://localhost/gambas/trunk@4905 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 12:45:20 +00:00
Benoît Minisini
bbe3baa41e [GB.SIGNAL]
* BUG: Remove an apparently useless type definition, and fix compilation on 
  recent Linux kernels.


git-svn-id: svn://localhost/gambas/trunk@4902 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-07 22:18:14 +00:00
Benoît Minisini
95a0f6c319 [DEVELOPMENT ENVIRONMENT]
* BUG: Do not crash when a component required by a library is missing.


git-svn-id: svn://localhost/gambas/trunk@4901 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-07 08:08:15 +00:00
Benoît Minisini
1b28a5f062 [COMPILER]
* BUG: Like can be used in a Case expression just after the Case keyword
  only.



git-svn-id: svn://localhost/gambas/trunk@4900 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-06 21:50:15 +00:00
Benoît Minisini
bbfb58afa4 [GB.WEB]
* NEW: Request.Debug is a new property to activate the debugging mode of 
  the Request class.
* NEW: Request.Post.Contents returns the contents of the last POST request,
  provided that the debugging mode has been activated.


git-svn-id: svn://localhost/gambas/trunk@4899 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-05 16:28:16 +00:00
Benoît Minisini
bee8a886a3 [GB.QT4]
* BUG: ScrollView internal visible flag is correctly set, and so the 
  Hovered property returns the right value.


git-svn-id: svn://localhost/gambas/trunk@4898 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-04 23:32:00 +00:00
Benoît Minisini
fa67280e7a [INTERPRETER]
* NEW: Static unknown properties can be used in a dynamic context now.


git-svn-id: svn://localhost/gambas/trunk@4897 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-04 22:06:19 +00:00
Benoît Minisini
6fd31cfe59 [INTERPRETER]
* BUG: Now the _property special method can be static even if _unknown is 
  dynamic. Anyway, if _unknown is static then all unknown properties and 
  methods must be static, and if _unknown is dynamic, they all must be 
  dynamic.


git-svn-id: svn://localhost/gambas/trunk@4896 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-04 21:59:16 +00:00
Benoît Minisini
069b5f8707 [GB.QT4]
* OPT: During a mouse event, Mouse.ScreenX and Mouse.ScreenY returns the 
  global position stored in the received event. It does not query the X11 
  server.

[GB.DESKTOP]
* NEW: Support for the Mate desktop in Desktop.Open, Desktop.OpenTerminal
  and Desktop.Passwords.


git-svn-id: svn://localhost/gambas/trunk@4895 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-04 19:11:57 +00:00
Benoît Minisini
6b6ca7654d [INTERPRETER]
* BUG: Allows the _unknown method to be static.


git-svn-id: svn://localhost/gambas/trunk@4894 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-03 23:45:09 +00:00
Benoît Minisini
9ef8385dc9 [DEVELOPMENT ENVIRONMENT]
* NEW: Display the signal description when the interpreter has crashed.
* BUG: Ghost frame and arrangement icons are now correctly updated when the 
  mouse leaves a form editor.


git-svn-id: svn://localhost/gambas/trunk@4893 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-03 18:23:27 +00:00
Benoît Minisini
307e7d396f [INTERPRETER]
* BUG: Raise the Kill event of a Process after having closed its I/O 
  streams.

[GB.DEBUG]
* NEW: Debug.GetSignal() is a new method that returns the description of a 
  signal from its numeric value.


git-svn-id: svn://localhost/gambas/trunk@4892 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-03 18:21:54 +00:00
Benoît Minisini
02eb02cd4f [INTERPRETER]
* BUG: Reading an unknown property does not crash anymore if _unknown is 
  defined but not _property.


git-svn-id: svn://localhost/gambas/trunk@4891 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-03 17:41:36 +00:00
Benoît Minisini
ddff42d95b [GB.OPTION]
* BUG: The component is now compatible with the new way of arguments 
  handling, and does not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@4890 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-03 17:32:39 +00:00
Adrien Prokopowicz
bbe2044823 [GB.XML]
* BUG: Solved a few bugs with the indentation in XmlWriter.

git-svn-id: svn://localhost/gambas/trunk@4889 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-03 17:16:36 +00:00
Emil Lenngren
44f7bd086b [GB.JIT]
* OPT: Don't do any obvious unnecessary unref-checks.


git-svn-id: svn://localhost/gambas/trunk@4888 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-03 00:07:54 +00:00
Benoît Minisini
e76e7ee468 [DEVELOPMENT ENVIRONMENT]
* NEW: Allow to save and open a profile file.
* BUG: Correctly ignore ghost frame and arrangement icons when saving a 
  form.


git-svn-id: svn://localhost/gambas/trunk@4887 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-02 23:33:14 +00:00
Emil Lenngren
76e3dee4d0 [GB.JIT]
* NEW: Can now profile each line of code, but beware: profiling makes the program much much slower.

[GB.DEBUG]
* OPT: Now DEBUG_calc_line_from_position has logaritmic time complexity instead of linear. That makes profiling each line much faster for large functions!


git-svn-id: svn://localhost/gambas/trunk@4886 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-02 22:38:29 +00:00
Benoît Minisini
ad19031dfc [DEVELOPMENT ENVIRONMENT]
* BUG: Fix rectangular selection in form editor.


git-svn-id: svn://localhost/gambas/trunk@4885 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-02 18:18:41 +00:00
Benoît Minisini
1393597f4f [CONFIGURATION]
* BUG: When a top-level source directory actually several components, 
  compile the sub-components *after* the main components. This is 
  especially important with gb.xml and gb.xml.rpc.


git-svn-id: svn://localhost/gambas/trunk@4884 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-02 17:51:54 +00:00
Benoît Minisini
056a3f560e [DEVELOPMENT ENVIRONMENT]
* BUG: In form editor and form hierarchy window, correctly ignore controls 
  that are edition helpers (handles, ghost frame...).


git-svn-id: svn://localhost/gambas/trunk@4883 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-02 17:34:15 +00:00
Benoît Minisini
0d8a6bd737 [DEVELOPMENT ENVIRONMENT]
* BUG: Do not apply the Ignore property in form editor.
* NEW: Some redesign in the way ghost frame, red containers frame and 
  arrangement icons are drawn.


git-svn-id: svn://localhost/gambas/trunk@4882 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-02 14:14:46 +00:00
Benoît Minisini
5a24ec1e2a [GB.QT4]
* OPT: When reading the ClientX or ClientY property of a Window, arrange 
  its contents only if necessary.


git-svn-id: svn://localhost/gambas/trunk@4881 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-02 14:05:57 +00:00
Emil Lenngren
5f52130f31 [GB.JIT]
* BUG: Use correct IRBuilder.h



git-svn-id: svn://localhost/gambas/trunk@4880 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-01 22:51:34 +00:00