Jerome St-Louis [Tue, 31 Jan 2012 21:30:12 +0000 (04:30 +0700)]
samples/blokus: Various usability tweaks
- Made chat log inactive to not disrupt piece rotation with wheel
- Flashing window on move/join
- Fixed graying out pieces when not player's turn
- Moved Pass button next to the board
Jerome St-Louis [Tue, 31 Jan 2012 20:20:41 +0000 (03:20 +0700)]
ecere/net: Socket & Distributed Objects tweaks to work around various issues (Blokus)
* SendMessage collision lockup
- Instead of just waiting for other thread, process the current thread's object socket
* Various Connect/Disconnect (while messages being fired) crashes and lockups
- Added Socket::ProcessTimeOut() that times out the select to avoid lockups
- Modified ecs to add incref/delete in bindings (Interestingly, they had been there in some places before!)
- Started out reference counts at 1
- Moved object deletion from DCOMServerObject's OnDisconnect to destructor
- Added missing guiApp.Lock() in CallMethod() before returning
(debug check in GuiApplication to verify if something ProcessInput() didn't lock back the GUI)
* Start/Stop game fast lockup
- Replaced wait for thread semaphore by sleep
(Added synchronization debugging tools)
Jerome St-Louis [Mon, 30 Jan 2012 17:48:21 +0000 (00:48 +0700)]
samples/Blokus: Added confirmation dialogs
Jerome St-Louis [Mon, 30 Jan 2012 16:50:49 +0000 (23:50 +0700)]
samples/Blokus: Final Scores Screen
Jerome St-Louis [Mon, 30 Jan 2012 12:45:54 +0000 (19:45 +0700)]
ecere/net/dcom; compiler/ecs: Improvements to solve interlock and racing conditions in Blokus
- Solved interlock by letting virtual methods that do not return information, return before going into user code
This way all 4 players can be notified before one such notification ends up waiting on something that will get done
after notifying all players is completed.
- Solved racing condition involving Server object's virtualsBuffer by locking a mutex around its use
- DCOM bindings generation had to be modified in ecs
Jerome St-Louis [Sun, 29 Jan 2012 14:31:21 +0000 (21:31 +0700)]
ecere/net: Fixed a bug when using Socket::OnReceivePacket and multiple packets are ready (was discarding current packet before callback)
Jerome St-Louis [Sun, 29 Jan 2012 14:29:59 +0000 (21:29 +0700)]
ecere/net/dcom: Improved DCOM reentrancy support for calling methods (Experienced in auto-passing in Blokus)
Jerome St-Louis [Sat, 28 Jan 2012 16:51:21 +0000 (23:51 +0700)]
samples/Blokus: Valid pieces/Game Over Detection
Jerome St-Louis [Sat, 28 Jan 2012 14:38:09 +0000 (21:38 +0700)]
samples/Blokus: Fixed a deadlock on clicking 'Stop Hosting' while game is running
Jerome St-Louis [Sat, 28 Jan 2012 14:28:11 +0000 (21:28 +0700)]
samples/Blokus: Chat support
Jerome St-Louis [Sat, 28 Jan 2012 13:48:41 +0000 (20:48 +0700)]
samples/Blokus: Player & Turn indicators, Various improvements
Jerome St-Louis [Sat, 28 Jan 2012 11:08:50 +0000 (18:08 +0700)]
samples/games/blokus: Communication panel
Jerome St-Louis [Sat, 28 Jan 2012 11:04:35 +0000 (18:04 +0700)]
ecere/net/dcom: Added lock/unlock around DCOM calls and callbacks to safely access GUI API from DCOM object virtual methods
Jerome St-Louis [Sat, 28 Jan 2012 11:01:27 +0000 (18:01 +0700)]
ecere/networking: Added 'mustLock' to Socket::Free() to prevent network.mutex to remain locked within OnDisconnect
Jerome St-Louis [Fri, 27 Jan 2012 11:43:23 +0000 (18:43 +0700)]
samples/Blokus: Initial Networking Support
Jerome St-Louis [Thu, 5 Jan 2012 10:59:31 +0000 (05:59 -0500)]
extras/gui/skins: Merged in native decorations support for SimSkin
Jerome St-Louis [Thu, 5 Jan 2012 10:44:34 +0000 (05:44 -0500)]
extras/gui/skins: Added missing 'selectionText' property to SimSkin
Jerome St-Louis [Sat, 31 Dec 2011 17:57:32 +0000 (12:57 -0500)]
libec/loadSymbols: Fixed warning where an Iterator was used instead of a MapIterator
Jerome St-Louis [Mon, 12 Dec 2011 00:04:37 +0000 (19:04 -0500)]
libec/ide parsing: Fix for bad memory when opening multiple code editors importing a shared library (e.g. eda) that creates objects
- The module classes were being unregistered when the first loaded up file gets closed
- An extra safety module instance now gets loaded and only gets freed when all referencing editors are closed
Jerome St-Louis [Mon, 12 Dec 2011 00:02:44 +0000 (19:02 -0500)]
ecere/3D Camera: Fix for fovDirection wrongly defaulting to 'vertical' (rather than widest) when aspect ratio was not explicitly set
Jerome St-Louis [Mon, 12 Dec 2011 00:01:32 +0000 (19:01 -0500)]
ide/CodeEditor: Fixes for parsing memory leaks
Jerome St-Louis [Mon, 5 Dec 2011 05:41:38 +0000 (00:41 -0500)]
compiler/libec: Fixed parsing memory leaks
Jerome St-Louis [Sat, 26 Nov 2011 00:27:05 +0000 (19:27 -0500)]
eda/idlist: Fix to invoke data controls' NotifyChanged when currently set data is not present in list
Jerome St-Louis [Fri, 25 Nov 2011 22:50:49 +0000 (17:50 -0500)]
ecere/gui/ListBox: Fix for deleting sub-rows on a DeleteRow()
Jerome St-Louis [Mon, 21 Nov 2011 17:34:56 +0000 (12:34 -0500)]
ide: Fix to update project file dialog directory when adding project to the workspace
Jerome St-Louis [Sat, 19 Nov 2011 20:48:45 +0000 (15:48 -0500)]
eda/ers: Solved a modal lock-up between progress bar and file dialog in CSV reports
Jerome St-Louis [Mon, 7 Nov 2011 05:35:39 +0000 (00:35 -0500)]
Organized some Po editing functionality into a class
Jerome St-Louis [Mon, 7 Nov 2011 02:21:01 +0000 (21:21 -0500)]
Proper .pot generation (Wrap up ecere.com/mantis/view.php?id=649); Updated bootstrap
Jerome St-Louis [Thu, 3 Nov 2011 18:29:39 +0000 (14:29 -0400)]
Fixed a bug in renew/renew0 which would prevent from reusing memory
Jerome St-Louis [Tue, 18 Oct 2011 19:09:01 +0000 (15:09 -0400)]
ide: Fixed memory leak in ProjectView opening files (single return point)
Jerome St-Louis [Tue, 18 Oct 2011 19:07:00 +0000 (15:07 -0400)]
ecere/com: Worked around leak ecere.com/mantis/view.php?id=659 issue without breaking auto-overriding
Jerome St-Louis [Tue, 18 Oct 2011 18:39:34 +0000 (14:39 -0400)]
ecere/com: Fix for auto-completion in the
84d925c3301f3a5ecb77146c11bd92060f46eb03 patch for ecere.com/mantis/view.php?id=659
Jerome St-Louis [Tue, 18 Oct 2011 17:47:04 +0000 (13:47 -0400)]
samples/net/SocketSample: comments typos
Jerome St-Louis [Tue, 18 Oct 2011 17:35:20 +0000 (13:35 -0400)]
samples/net: Added a SocketSample to showcase how to use the Ecere Socket and Service classes for TCP/IP networking
Rejean Loyer [Mon, 17 Oct 2011 22:16:14 +0000 (18:16 -0400)]
ide:epj: fixed empty description and license written to epj file.
Rejean Loyer [Mon, 17 Oct 2011 19:56:43 +0000 (15:56 -0400)]
documentor: use native decorations.
Rejean Loyer [Mon, 17 Oct 2011 19:55:50 +0000 (15:55 -0400)]
documentor: added application icon.
Rejean Loyer [Tue, 18 Oct 2011 01:44:57 +0000 (21:44 -0400)]
makefiles: single file per line for all file lists in all makefiles.
Rejean Loyer [Tue, 18 Oct 2011 02:12:28 +0000 (22:12 -0400)]
ide/epj2make: makefile generation: print a single file per line for all file lists in order to be diff friendly.
Rejean Loyer [Mon, 17 Oct 2011 19:50:41 +0000 (15:50 -0400)]
compiler:libec: fix for null pointer crash. not sure how to reproduce.
Jerome St-Louis [Mon, 17 Oct 2011 23:04:17 +0000 (19:04 -0400)]
ecere: Temporary patch for ecere.com/mantis/view.php?id=659 (Leak instead of crashing)
A proper fix would be to ensure hierarchies are established in firstPass.ec before assigning Method objects to AST elements
Jerome St-Louis [Mon, 17 Oct 2011 23:03:10 +0000 (19:03 -0400)]
ide: Fix for 'Copying include directories from one compiler to the next does not save when switching compiler'
Jerome St-Louis [Mon, 17 Oct 2011 06:39:36 +0000 (02:39 -0400)]
ide: Memory leaks fixes
See note in ProjectConfig.ec regarding the JSON parser deleting string values set to properties
Jerome St-Louis [Mon, 17 Oct 2011 06:34:45 +0000 (02:34 -0400)]
ecere:Stacker; extras:SelectorBar: Further fixes to Stacker and SelectorBar addressing memory leaks
* We needed to add a buttons holder to SelectorBar because the Stacker only keeps track of created controls
* Took out the 'delete child' from the Stacker's DestroyChildren(), because all the dereferencing that
was required to match the incref's within the Stacker was done by the controls.Free()
* These fixes are related to the problems http://ecere.com/mantis/view.php?id=656 and http://ecere.com/mantis/view.php?id=657
that led to a revert of the FlipStacker code: https://github.com/ecere/sdk/commit/
28a771133cb578c040cf7f6e06588400eb3103ec
Jerome St-Louis [Mon, 17 Oct 2011 06:22:56 +0000 (02:22 -0400)]
ecere:GlobalAppSettings: Now preferring .ini extension over .[app]rc on Windows when HOME is set
Jerome St-Louis [Mon, 17 Oct 2011 06:12:21 +0000 (02:12 -0400)]
ecere:Window: Fixed nulling out the 'activeChild' member of parent when destroying a child window that has not yet been created
It seems the parent's active child can still get modified if all windows are not yet created
Window::ActivateEx checks for '!destroyed', but does not check for 'created'
(Adding && !created to that ActivateEx check was an alternative fix, but this fix seemed safer)
Jerome St-Louis [Sun, 16 Oct 2011 18:59:10 +0000 (14:59 -0400)]
eda/edb: Proper fix for ecere.com/mantis/view.php?id=646 (
fb5b0907e281e269dcb01ab1a14fe5b00f79639a introduced a bug)
Jerome St-Louis [Sun, 16 Oct 2011 08:33:18 +0000 (04:33 -0400)]
ide/Project: Fixed a major memory leak in platformSpecificFu property (exclusionInfo map was not deleted)
Jerome St-Louis [Sun, 16 Oct 2011 04:43:25 +0000 (00:43 -0400)]
ide/Project: Fixes to prevent ever saving empty arrays/objects [ Comprehensive fix for ecere.com/mantis/view.php?id=527 ]
e.g. to fix a .epj with arrays/objects already empty
Implemented as properties in ProjectNode: options, platforms and configurations; Smart handling of topNode mirroring project's
Implemented as properties in ProjectConfig: options and platforms
Implemented as properties in Project: options and platforms
When these properties are set, the ownership of the value is transferred to the object
Careful not to call delete on those properties, the assignment to null will crash! http://ecere.com/mantis/view.php?id=658
The Project's topNode's properties automatically map the Project's, so they should not be accessed within ProjectNode as data members
Jerome St-Louis [Sat, 15 Oct 2011 20:01:24 +0000 (16:01 -0400)]
ide: Added extra checks to ProjectOptions::isEmpty for includeDirs, libraryDirs and pre/post build commands [ Core fix for ecere.com/mantis/view.php?id=527 ]
Jerome St-Louis [Sat, 15 Oct 2011 19:58:13 +0000 (15:58 -0400)]
ide: Fixed another i18n string mistake on File Reload; Commented out unused code in Workspace
Jerome St-Louis [Sat, 15 Oct 2011 19:53:03 +0000 (15:53 -0400)]
ecere/MemoryGuard: Added check in eInstance_Delete to prevent crash and see MemoryGuard info on object double-deletion
Ecere Corporation [Fri, 14 Oct 2011 06:19:23 +0000 (23:19 -0700)]
Merge pull request #1 from darkf/master
Fix mantis issue 655
Jerome St-Louis [Fri, 14 Oct 2011 06:12:07 +0000 (02:12 -0400)]
Revert "ecere:Stacker: added FlipStacker class to support stacking from both end of the stack."
The Stacker is used in the crucial GlobalSettingsDialog and is not a place for experimental code. Segfaults and Memory leaks causing a major setbacks in the IDE's useability. The OnResize() implementation is way too complicated and prone to such problems.
This reverts commit
b589a174573a6fd7d136c41fe0c0828df24f46ac.
Jerome St-Louis [Fri, 14 Oct 2011 06:11:58 +0000 (02:11 -0400)]
Revert "ecere:Stacker: fixed order of non visible controls not remembered. setting visible to true when originally false was moving the child window at the end of the stack."
The Stacker is used in the crucial GlobalSettingsDialog and is not a place for experimental code. Segfaults and Memory leaks causing a major setbacks in the IDE's useability. The OnResize() implementation is way too complicated and prone to such problems.
This reverts commit
30d7efdad14b25f651f86f6293044f2cc9f57d25.
Jerome St-Louis [Fri, 14 Oct 2011 06:11:54 +0000 (02:11 -0400)]
Revert "ecere:Stacker: fixed spring feature not properly implemented for all directions/orders"
The Stacker is used in the crucial GlobalSettingsDialog and is not a place for experimental code. Segfaults and Memory leaks causing a major setbacks in the IDE's useability. The OnResize() implementation is way too complicated and prone to such problems.
This reverts commit
832efbbe6f459a49c76700af9b09ab46cb8f50b9.
Jerome St-Louis [Fri, 14 Oct 2011 06:09:18 +0000 (02:09 -0400)]
Revert "ecere/controls/Stacker: Moved the delete and Free() of controlsDirA & B to fix memory leak; Added conditions to deletion of controls in oldControls array as an attempt to fix ecere.com/mantis/view.php?id=656"
The Stacker is used in the crucial GlobalSettingsDialog and is not a place for experimental code. Segfaults and Memory leaks causing a major setbacks in the IDE's useability. The OnResize() implementation is way too complicated and prone to such problems.
This reverts commit
0ff8d61afda2a538b2445c0ee86b82f175d43387.
darkf [Fri, 14 Oct 2011 05:45:37 +0000 (00:45 -0500)]
Initialize network when network functions are called. Fixes ecere.com/mantis/view.php?id=655
Jerome St-Louis [Fri, 14 Oct 2011 04:26:32 +0000 (00:26 -0400)]
ecere/controls/Stacker: Moved the delete and Free() of controlsDirA & B to fix memory leak; Added conditions to deletion of controls in oldControls array as an attempt to fix ecere.com/mantis/view.php?id=656
That whole OnResize() implementation need to be re-examined
Jerome St-Louis [Thu, 13 Oct 2011 21:01:42 +0000 (17:01 -0400)]
ecere/JSON: Fix to JSON Parser: Parsing empty objects would generate a Syntax Error and resulted in NULL ProjectOptions crashes in the IDE
Jerome St-Louis [Thu, 13 Oct 2011 21:00:27 +0000 (17:00 -0400)]
ecere(Linux/X11): Fix for annoying X error on startup (Was positionning the window with a 0,0 size)
Jerome St-Louis [Thu, 13 Oct 2011 19:00:46 +0000 (15:00 -0400)]
compiler/i18n: Temporary fix for ecs null pointer crash on XP until .pot generation is fixed
Jerome St-Louis [Thu, 13 Oct 2011 06:54:35 +0000 (02:54 -0400)]
ide: Fixed a few translated strings issues
Jerome St-Louis [Thu, 13 Oct 2011 06:52:06 +0000 (02:52 -0400)]
compiler/ecere/i18n: Added i18n context support through $"context"."string" syntax; Added multiple references support in .bowl files (.pot generation in ecs still need to be finalized); Updated bootstrap compiler
Jerome St-Louis [Thu, 13 Oct 2011 06:50:06 +0000 (02:50 -0400)]
ecere/i18n: Fixed dllexport in bootstrap that would break build on Linux
Jerome St-Louis [Thu, 13 Oct 2011 06:46:53 +0000 (02:46 -0400)]
ecere/Containers: Improved support for Map with 'struct' key
Jerome St-Louis [Thu, 13 Oct 2011 06:46:09 +0000 (02:46 -0400)]
documentor: Took out left-over reference to -lintl in package build Makefile
Jerome St-Louis [Tue, 4 Oct 2011 03:53:27 +0000 (23:53 -0400)]
Fixed up some i18n strings
Jerome St-Louis [Mon, 3 Oct 2011 08:50:28 +0000 (04:50 -0400)]
ecere: Some more translation support in FileDialog
Jerome St-Louis [Mon, 3 Oct 2011 08:33:07 +0000 (04:33 -0400)]
ecere: Fixed up i18n Support; Started Chinese translation integration
Jerome St-Louis [Mon, 3 Oct 2011 05:02:43 +0000 (01:02 -0400)]
Merge branch 'i18n'
Jerome St-Louis [Mon, 3 Oct 2011 05:01:50 +0000 (01:01 -0400)]
ecere/i18n: Made moduleMaps static
Jerome St-Louis [Mon, 3 Oct 2011 04:52:45 +0000 (00:52 -0400)]
ecere/compiler: Included i18n in bootstrap and updated tarball build Makefiles
Jerome St-Louis [Mon, 3 Oct 2011 00:33:59 +0000 (20:33 -0400)]
ecere & compiler: Built-in internationalization support
Jerome St-Louis [Sun, 2 Oct 2011 23:10:55 +0000 (19:10 -0400)]
ecere: Initial gettext implementation, following GNU gettext API (about to change)
Rejean Loyer [Sat, 1 Oct 2011 16:48:52 +0000 (12:48 -0400)]
ide: fixed null pointer crash in Project::MarkChanges
Rejean Loyer [Sat, 1 Oct 2011 16:45:12 +0000 (12:45 -0400)]
ecere:ToolBar: made toolbar buttons transparent
Rejean Loyer [Sat, 1 Oct 2011 16:34:44 +0000 (12:34 -0400)]
ecere:Stacker: fixed spring feature not properly implemented for all directions/orders
Rejean Loyer [Sat, 1 Oct 2011 16:33:41 +0000 (12:33 -0400)]
ecere:Stacker: fixed order of non visible controls not remembered. setting visible to true when originally false was moving the child window at the end of the stack.
Rejean Loyer [Sat, 1 Oct 2011 16:29:31 +0000 (12:29 -0400)]
ecere:PathBox: added foreground/background watchers for embeded EditBox and selectionColor/selectionText properties
Rejean Loyer [Sat, 1 Oct 2011 16:21:15 +0000 (12:21 -0400)]
ecere:PaneSplitter: fixed for resizing when dynamically setting left/right panes
Rejean Loyer [Sat, 1 Oct 2011 16:18:24 +0000 (12:18 -0400)]
ecere:ListBox: fixed alt/ctrl-arrows combination key events aren't received by ListBox user
Rejean Loyer [Sat, 1 Oct 2011 16:14:40 +0000 (12:14 -0400)]
ecere:ListBox: null check for allowing setting currentRow to null
Jerome St-Louis [Sat, 1 Oct 2011 12:36:55 +0000 (08:36 -0400)]
Merge branch 'master' into i18n
Jerome St-Louis [Sat, 1 Oct 2011 12:35:01 +0000 (08:35 -0400)]
Merge commit 'd0e27' into i18n
Jerome St-Louis [Sat, 1 Oct 2011 05:52:28 +0000 (01:52 -0400)]
eda/edb: Fixed a bug in EDBRow::SetData that would make rewriting to the last field growing the record each time
Jerome St-Louis [Fri, 30 Sep 2011 20:28:35 +0000 (16:28 -0400)]
ecere/EditBox: Fix a bug in multi-line EditBox without vertical scrollbar that caused the last line to be repeated on adding an extra \n failing; eda/gui: (Fixed)MultiLineString: Not adding an extra '\n' anymore on the last line
Jerome St-Louis [Fri, 30 Sep 2011 07:24:37 +0000 (03:24 -0400)]
eda: Added Database::Begin & Commit to speed up Saving from Editor with SQLite driver
Jerome St-Louis [Fri, 30 Sep 2011 07:23:11 +0000 (03:23 -0400)]
eda/sqlite: Building EDASQLite statically (ecc/.imp bug: import "EDASQLite" is not enough, need to use a class)
Jerome St-Louis [Fri, 30 Sep 2011 07:22:32 +0000 (03:22 -0400)]
eda/sqlite: Updated SQLite to 3.7.8
Jerome St-Louis [Thu, 29 Sep 2011 14:26:29 +0000 (10:26 -0400)]
ecere: Fixed File object leak in File::CopyTo
Jerome St-Louis [Tue, 27 Sep 2011 20:48:52 +0000 (16:48 -0400)]
samples: New: ecas, curvyweb, gltriangle
Jerome St-Louis [Mon, 26 Sep 2011 06:37:08 +0000 (02:37 -0400)]
eda/ers: Fixed potentially uninitialized variables reading with Row::GetData, when data fields are not set (from EDB)
Jerome St-Louis [Sun, 25 Sep 2011 02:29:37 +0000 (22:29 -0400)]
compiler/db: Recognizing CIString as a nameField; eda/sqlite: Use of index ordering in default Row statement and Finds; Support for Find with MoveOptions::next; eda/ers: Now processing input while rendering reports, PleaseWait now modal
Jerome St-Louis [Sun, 25 Sep 2011 02:08:09 +0000 (22:08 -0400)]
samples/blokus: Can now play a local game! :)
Jerome St-Louis [Mon, 19 Sep 2011 01:53:14 +0000 (21:53 -0400)]
eda/sqlite: Added Row::AddID method to create a row with a specified ROWID, to facilitate database migration
Jerome St-Louis [Sun, 18 Sep 2011 08:53:47 +0000 (04:53 -0400)]
ecere: Fixed size setting for raster fonts
Jerome St-Louis [Sun, 18 Sep 2011 07:58:07 +0000 (03:58 -0400)]
ecere: Font/Text engine improvements; Update from freetype-2.3.5 --> freetype-2.3.12; Harfbuzz update
Jerome St-Louis [Sun, 18 Sep 2011 04:16:58 +0000 (00:16 -0400)]
Took out i18n from Documentor until we have our own gettext, too much of a hassle on all platforms to get -lintl working!! (Moved to i18n branch)
Jerome St-Louis [Sun, 18 Sep 2011 04:03:11 +0000 (00:03 -0400)]
Fixes for Archlinux: #ifdef out stdcall (weird segfault on gcc 4.6 with -O2 on ecere/bootstrap), __volatile and __attribute_deprecated__ parsing from malloc.h; Updated bootstrap