Commit graph

1844 commits

Author SHA1 Message Date
Benoît Minisini
1fe49aaff4 [DEVELOPMENT ENVIRONMENT]
* NEW: Farm client: Allow to ignore missing components when installing a software.

[GB.FORM]
* BUG: TerminalView: Better scrollbar layout. Put the scrollbar on the left for right-to-left written languages.

[GB.NET.CURL]
* BUG: Closing a CURL stream object does not raise an error anymore. It just does nothing.


git-svn-id: svn://localhost/gambas/trunk@7752 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-05-03 01:07:39 +00:00
Benoît Minisini
5da7ed1c4e [DEVELOPMENT ENVIRONMENT]
* BUG: Remove old console search code.

[GB.FORM]
* NEW: MenuButton controls now automatically pop up when one of their sibling is already opened.

[GB.FORM.EDITOR]
* NEW: TextEditor: The cursor position label background is now semi-transparent.

[GB.GTK]
* BUG: Mouse.ScreenX and Mouse.ScreenY now always query the pointer.
* NEW: Menu.Close() is a new method that hides a popup menu from the screen.

[GB.GTK3]
* BUG: Mouse.ScreenX and Mouse.ScreenY now always query the pointer.
* NEW: Menu.Close() is a new method that hides a popup menu from the screen.

[GB.QT4]
* BUG: Mouse.ScreenX and Mouse.ScreenY now always query the pointer.
* NEW: Menu.Close() is a new method that hides a popup menu from the screen.

[GB.QT5]
* BUG: Mouse.ScreenX and Mouse.ScreenY now always query the pointer.
* NEW: Menu.Close() is a new method that hides a popup menu from the screen.


git-svn-id: svn://localhost/gambas/trunk@7751 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-05-02 23:55:10 +00:00
Benoît Minisini
0b928f80ef [DEVELOPMENT ENVIRONMENT]
* NEW: Use terminal emulator control from gb.form.terminal as console output.
* NEW: You cannot search into the terminal output directly anymore.
* NEW: A button that opens the terminal output content inside a new IDE editor tab, so that you can search inside, or do anything you want.

[WIKI]
* NEW: A command-line option to generate offline help.

[GB.FORM.TERMINAL]
* NEW: TerminalView: ShowScrollBar is a new property that makes the vertical scrollbar always visible.
* NEW: TerminalView: Exec() and Shell() methods now take the environment as an optional argument.
* NEW: TerminalView: Text is a new read-only property that returns the terminal contents.

[GB.WEB.FORM]
* BUG: WebButton: Take the Width and Height properties into account correctly.
* BUG: WebComboBox: The List property now can take a null value without crashing.
* OPT: WebControl: Setting most of properties without changing their value now does nothing.
* BUG: WebLabel: The Alignment property is correctly declared now.
* NEW: WebProgressBar: A new control that displays a progress bar.
* NEW: WebTable: Select is a new event that is raised when the WebTable selection changes.
* NEW: WebUploadArea: A new container that selects a local file when the user clicks on it, and that allows to upload it to the server.


git-svn-id: svn://localhost/gambas/trunk@7750 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-05-02 22:00:53 +00:00
Benoît Minisini
052eb75eee [GB.DBUS]
* BUG: Fix memory leak in array marshalling.

[GB.DBUS.TRAYICON]
* BUG: Remove debugging messages.


git-svn-id: svn://localhost/gambas/trunk@7747 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-15 22:33:03 +00:00
Fabien Bodard
1513e0f40c [GB.TERMAPP]
* NEW: Continue control class writing


git-svn-id: svn://localhost/gambas/trunk@7744 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-13 21:44:45 +00:00
Benoît Minisini
20b5726463 [GB.FORM.TERMINAL]
* OPT: When interpreting the terminal output of a process, ignore every printable character sent before a full screen erase.
* OPT: Use a cache for line graphical characters.


git-svn-id: svn://localhost/gambas/trunk@7743 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-13 21:38:44 +00:00
Fabien Bodard
977023524e [GB.TERMAPP]
* NEW: Initial commit
  Create the base object structure.



git-svn-id: svn://localhost/gambas/trunk@7740 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-13 20:00:25 +00:00
Benoît Minisini
df4069ed9c [GB.MEDIA.FORM]
* BUG: Fix some refresh bugs, except when using GTK+3, which still does not like MediaView.
* NEW: MediaView.Duration is a new property that returns the media duration in seconds.
* NEW: MediaView.Position is a new property that returns or sets the media current position in seconds.


git-svn-id: svn://localhost/gambas/trunk@7738 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-13 18:56:54 +00:00
Tobias Boege
446af60cc1 [GB.UTIL.WEB]
* NEW: Always initialise JSON.Null, so that an entry in a JSONCollection with value JSON.Null appears in the Encode() string.



git-svn-id: svn://localhost/gambas/trunk@7737 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-11 17:04:36 +00:00
Benoît Minisini
229928614e [GB.FORM.TERMINAL]
* BUG: Fix drawing of bold characters.
* OPT: Detect spaces to draw them a bit faster.


git-svn-id: svn://localhost/gambas/trunk@7734 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-10 10:45:10 +00:00
Benoît Minisini
3fed388e79 [GB.GUI.BASE]
* BUG: TreeView item Clear() method does not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@7732 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-08 21:45:09 +00:00
Benoît Minisini
49b75202fe [GB.FORM.TERMINAL]
* NEW: Enable mouse support in TerminalView when -any- mouse mode is activated.
* NEW: Draw the terminal mouse with another cursor, and hide the X11 mouse cursor.
* BUG: Refresh the terminal before sending any terminal mouse event to the process.


git-svn-id: svn://localhost/gambas/trunk@7731 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-07 22:28:40 +00:00
Fabien Bodard
007abf12c3 [GB.FORM.TERMINAL]
* BUG: Found a workaround for the dblclick event.


git-svn-id: svn://localhost/gambas/trunk@7730 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-07 21:10:41 +00:00
Fabien Bodard
f99a71e137 [GB.FORM.TERMINAL]
* NEW: Add filter for mouse events. All work fine but there is a problem
  on detecting dblClick. Gambas not emit all the mouseUp events.


git-svn-id: svn://localhost/gambas/trunk@7727 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-06 21:39:34 +00:00
Benoît Minisini
4bc919331c [GB.FORM.TERMINAL]
* BUG: Don't scroll to the cursor if a key is ignored by the terminal filter.
* NEW: Finish the graphical characters drawing routine.


git-svn-id: svn://localhost/gambas/trunk@7725 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-05 23:50:56 +00:00
Benoît Minisini
227e6a033a [GB.FORM.TERMINAL]
* NEW: Bold graphical line characters are supported now.


git-svn-id: svn://localhost/gambas/trunk@7724 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-05 21:56:55 +00:00
Fabien Bodard
cbac3825d9 [GB.FORM.TERMINAL]
* BUG: Re activate Fast mode.


git-svn-id: svn://localhost/gambas/trunk@7723 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-05 21:15:10 +00:00
Fabien Bodard
3dda8c8c71 [GB.FORM.TERMINAL]
* NEW: Write the mouse event filter function (not connected yet)


git-svn-id: svn://localhost/gambas/trunk@7722 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-05 21:07:17 +00:00
Benoît Minisini
27ae18d403 [GB.FORM.TERMINAL]
* NEW: TerminalView.Print() is a new method that allows to print characters into the terminal view.
* NEW: Draw line graphical characters manually, without using the font.


git-svn-id: svn://localhost/gambas/trunk@7720 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-05 13:03:17 +00:00
Benoît Minisini
10568e0876 [GB.FORM.TERMINAL]
* BUG: Fix drawing of characters not in the initial font cache.


git-svn-id: svn://localhost/gambas/trunk@7719 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-05 01:05:52 +00:00
Benoît Minisini
d093273eaf [DEVELOPMENT ENVIRONMENT]
* BUG: Correctly detect virtual controls that need a parent or not.

[GB.FORM.TERMINAL]
* NEW: Support for graphical charset (used by alsamixer for example).
* BUG: Correctly initialize font cache. Better support for variable-width fonts.

[GB.WEB.FORM]
* NEW: Initial implementation of WebUploadButton, a new control that allows to select a file for uploading. Uploading by itself is not yet implemented yet.


git-svn-id: svn://localhost/gambas/trunk@7718 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-04 17:41:58 +00:00
Benoît Minisini
75901f6215 [GB.FORM.TERMINAL]
* BUG: Remove debugging code.


git-svn-id: svn://localhost/gambas/trunk@7717 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-03 14:08:32 +00:00
Benoît Minisini
130f127adb [GB.FORM.TERMINAL]
* NEW: Better suppor for variable-width fonts.
* BUG: Draw the terminal background everywhere, not just where there are characters.


git-svn-id: svn://localhost/gambas/trunk@7716 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-03 13:31:02 +00:00
Benoît Minisini
ff7bbe8a21 [DEVELOPMENT ENVIRONMENT]
* NEW: Add 'gb.form.terminal' to the component list.
* NEW: New component status icons.

[INTERPRETER]
* BUG: Correctly export Stream.Term description.
* NEW: Stream.Term.FlowControl is a new property that allows to set or retrieve if flow control is enabled on a terminal stream.

[GB.GTK]
* NEW: Change the name of 'NewChild' event argument.

[GB.GTK3]
* NEW: Change the name of 'NewChild' event argument.

[GB.QT4]
* NEW: Change the name of 'NewChild' event argument.

[GB.QT5]
* NEW: Change the name of 'NewChild' event argument.

[GB.FORM.TERMINAL]
* NEW: Support for the 'Set title' command.
* NEW: TerminalView now emits the Title event when the terminal requests a title change.
* NEW: Support for flow control. When output is suspended, the terminal contents becomes darker.
* BUG: Correctly update the scrollbar when switching between screens.


git-svn-id: svn://localhost/gambas/trunk@7714 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-03 10:54:21 +00:00
Benoît Minisini
da2825d82a [GB.FORM.TERMINAL]
* BUG: Fix screen refresh.
* NEW: Implement "Erase character" escape sequence.


git-svn-id: svn://localhost/gambas/trunk@7713 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-03 01:24:33 +00:00
Benoît Minisini
ff31478dab [GB.FORM.TERMINAL]
* BUG: Ensure the current line is visible and refreshed after a key has been pressed.


git-svn-id: svn://localhost/gambas/trunk@7712 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-02 19:08:10 +00:00
Benoît Minisini
55dba3f13b [GB.FORM.TERMINAL]
* NEW: TerminalView.Limit is 1000 lines by default. 0 means no limit again.
* OPT: Many little optimizations everywhere.
* BUG: Fix "Device status report" escape sequence detection.
* BUG: Fix bracketed paste string sent to the process.
* NEW: Clearing the screen now automatically scrolls the screen to the bottom.


git-svn-id: svn://localhost/gambas/trunk@7711 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-02 12:35:00 +00:00
Fabien Bodard
e513eae9f4 [GB.FORM.TERMINAL]
* NEW: Finish BraketedPaste Mode


git-svn-id: svn://localhost/gambas/trunk@7710 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-02 07:50:43 +00:00
Benoît Minisini
781882c601 [GB.FORM.TERMINAL]
* NEW: Implement "Insert space" escape sequence.
* NEW: Detect blink escape sequences.
* BUG: Fix Return and Enter key support.
* BUG: Fix selection on void lines.


git-svn-id: svn://localhost/gambas/trunk@7709 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-02 00:01:53 +00:00
Benoît Minisini
e2245b80ef [GB.FORM.TERMINAL]
* NEW: Support for blinking text.


git-svn-id: svn://localhost/gambas/trunk@7708 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-01 23:22:39 +00:00
Fabien Bodard
d7740890c5 [GB.FORM.TERMINAL]
* NEW: Prepare for mouse events filters
* NEW: Add support for bracketed paste mode (not finished)
  https://cirw.in/blog/bracketed-paste



git-svn-id: svn://localhost/gambas/trunk@7707 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-01 21:57:25 +00:00
Fabien Bodard
f8cfb2052d [GB.FORM.TERMINAL]
* NEW: Support multiple parameters on Set Mode.
* BUG: Convert the return key in filter for application mode.


git-svn-id: svn://localhost/gambas/trunk@7706 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-01 20:12:29 +00:00
Benoît Minisini
864a452bb0 [GB.FORM.TERMINAL]
* NEW: Selected text is automatically copied to the secondary clipboard.
* NEW: The middle mouse button now paste the secondary clipboard.
* BUG: Automatic scrolling while selecting works correctly again.


git-svn-id: svn://localhost/gambas/trunk@7705 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-01 08:50:28 +00:00
Benoît Minisini
b0cd5108a4 [GB.FOM.TERMINAL]
* OPT: Delay the process output interpretation instead of the refresh. Better performances, and less flicker.


git-svn-id: svn://localhost/gambas/trunk@7704 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-01 07:30:19 +00:00
Benoît Minisini
34834e5fee [GB.FORM.TERMINAL]
* NEW: Move project files to the 'Project' directory.
* NEW: Remove an unused module.
* NEW: Take 'AppCursorKey' mode into account for a few keys.
* NEW: Take 'NewlineMode' mode into account for Return and Enter keys.
* NEW: Implement Shift+Return and Shift+Enter key sequences.


git-svn-id: svn://localhost/gambas/trunk@7703 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-01 06:46:40 +00:00
Benoît Minisini
ea743770ff [GB.FORM.TERMINAL]
* OPT: Compress/uncompress line attributes on demand.
* NEW: Implement "Scroll up", "Scroll down" and "Vertical line position" escape sequences.
* BUG: Fix "Hide cursor" and "Show cursor" interpretation.
* NEW: Draw cursor with transparency.


git-svn-id: svn://localhost/gambas/trunk@7702 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-01 05:55:14 +00:00
Benoît Minisini
d7e88bf641 [INTERPRETER]
* BUG: Fix a possible crash in String.Code().

[GB.FORM.TERMINAL]
* OPT: Compress the attribute array associated with each line.
* OPT: Drawing line routine uses the JIT compiler.



git-svn-id: svn://localhost/gambas/trunk@7701 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-31 19:06:03 +00:00
Fabien Bodard
0c158f7788 [GB.FORM.TERMINAL]
* NEW: Add filter for vertical cursor pos Y
* BUG: Add filter for normal character ESC [ m


git-svn-id: svn://localhost/gambas/trunk@7700 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-31 16:52:38 +00:00
Benoît Minisini
3ba017f5f0 [GB.FORM.TERMINAL]
* NEW: Support for up to 256 colors.
* NEW: Use brighter default colors for foreground.
* BUG: Fix font cache initialization for GTK+, by drawing printable characters only.


git-svn-id: svn://localhost/gambas/trunk@7699 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-31 16:43:38 +00:00
Benoît Minisini
79a4ea2a70 [INTERPRETER]
* BUG: Fix a crash on one error message thrown incorrectly.

[GB.FORM.TERMINAL]
* OPT: Optimize drawing routine. Still slow, but less flicker.
* NEW: TerminalView: Add a blink property that enables or disables cursor blink.

[GB.GTK]
* BUG: Use cairo_paint() instead of cairo_fill() when Paint.Operator is not Paint.OperatorOver. Is it a Cairo bug?

[GB.GTK3]
* BUG: Use cairo_paint() instead of cairo_fill() when Paint.Operator is not Paint.OperatorOver. Is it a Cairo bug?


git-svn-id: svn://localhost/gambas/trunk@7698 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-31 09:25:11 +00:00
Fabien Bodard
55b4ee5794 [GB.FORM.TERMINAL]
* BUG: Remove translator for TAB and SP


git-svn-id: svn://localhost/gambas/trunk@7697 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-30 22:21:26 +00:00
Benoît Minisini
82b52bdf3b [GB.FORM.TERMINAL]
* NEW: Support for inserting and deleting lines.
* NEW: Support for hide and show cursor.
* NEW: Disable history in alternate screen.
* NEW: New way of drawing text. Slower, but interesting. It can handle variable-width fonts like fixed-width fonts. Does not work yet with GTK+. Apparently cairo drawing operators behave strangely compated to the QT ones.
* BUG: TerminalView: Fix EnsureVisible() method.


git-svn-id: svn://localhost/gambas/trunk@7696 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-30 22:04:11 +00:00
Fabien Bodard
da4868a408 [GB.FORM.TERMINAL]
* NEW: Implement special keys translation.



git-svn-id: svn://localhost/gambas/trunk@7695 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-30 21:31:41 +00:00
Fabien Bodard
812467fbe0 [GB.FORM.TERMINAL]
* NEW: Add terminal type report


git-svn-id: svn://localhost/gambas/trunk@7694 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-30 20:36:02 +00:00
Benoît Minisini
589786c601 [GB.FORM.TERMINAL]
* BUG: Fix "Erase end of line" command.


git-svn-id: svn://localhost/gambas/trunk@7693 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-29 22:42:35 +00:00
Fabien Bodard
02128f960c [GB.FORM.TERMINAL]
* NEW: Change the attribute parsing, now attributes with multiple parameters
  are allowed. Note that the color management need to be improved to support
  colors value > to 256 and RGB colors.
  


git-svn-id: svn://localhost/gambas/trunk@7691 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-29 21:12:40 +00:00
Benoît Minisini
e459de75a8 [GB.FORM.TERMINAL]
* BUG: Fix text and attribute insertion.


git-svn-id: svn://localhost/gambas/trunk@7690 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-29 13:01:00 +00:00
Benoît Minisini
46822f31d6 [GB.FORM.TERMINAL]
* NEW: Make debugging messages conditonal.
* NEW: TerminalView: Use a DrawingArea instead of a ScrollArea, and a vertical scrollbar that hides automatically.


git-svn-id: svn://localhost/gambas/trunk@7689 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-29 12:33:24 +00:00
Benoît Minisini
0ea9aeb379 [GB.FORM.TERMINAL]
* BUG: Fix process output management when an UTF-8 character is cut.
* NEW: Implement Newline mode, Wrap mode and Insert mode.
* BUG: Fix cursor moves commands.
* NEW: Implement "Delete char" command.
* NEW: Use bold font instead of drawing the text twice.
* BUG: Correctly handle vector fonts with non-integer character width.
* NEW: Disable blinking cursor and add a lot of messages for debugging.


git-svn-id: svn://localhost/gambas/trunk@7688 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-29 11:44:20 +00:00
Benoît Minisini
64bbe678bc [GB.FORM.TERMINAL]
* BUG: Fix parsing of escape sequences.
* NEW: Add support for cursor moves.


git-svn-id: svn://localhost/gambas/trunk@7686 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-28 21:41:36 +00:00