general scripting:i forget to mention, that i added also squirrel debugger interface, so you can debug squirrel code running in codeblocks with codeblocks (you need the squirrel debugger: https://github.com/bluehazzard/cbSquirrelDebugger this debugger should work with the current Codeblocks version). I will post a video how it works probably later this week...
# unified error handling
# more informative errors and error reporting dialog
+ complete unicode utf8 support
+ Add more test cases
+ Add menu test script
+ Add script to convert old 2.0.8 squirrel scripts to new 3.0.4
script plugins
# Fix multiple bugs in script Menu Handling
+ Add parameter to OnModuleMenuClicked to distinguish between module
menus
+ CodeBlocks event handling in scripts
add cb_vm:
+ Prepared to use multiple vms
+ Sand boxing
script binding utility
+ Add StackHandler class for easy squirrel stack handling
wxWidgets binding
+ wxStrings are now handled as native strings: no need of
_("") or wxT("") to create wxStrings. Calls to wxWidgets functions
can now handle native strings
+ Add various global bindings
documentation
+ begin squirrel section in doxygen documentation
diff --git a/src/sdk/scripting/squirrel/sqrdbg.cpp b/src/sdk/scripting/squirrel/sqrdbg.cpp
index 08da664..0c90b3d 100644
--- a/src/sdk/scripting/squirrel/sqrdbg.cpp
+++ b/src/sdk/scripting/squirrel/sqrdbg.cpp
@@ -103,7 +103,11 @@ SQRESULT sq_rdbg_update(HSQREMOTEDBG rdbg)
return sq_throwerror(rdbg->_v,_SC("disconnected"));
case SOCKET_ERROR:
{
+#ifdef _GLIBCXX_HAVE_EWOULDBLOCK
if(errno == EAGAIN || errno == EWOULDBLOCK)
+#else
+ if(errno == EAGAIN )
+#endif // _GLIBCXX_HAVE_EWOULDBLOCK
{
// No bytes received in Linux
}
Do you keep the version with separate commits somewhere?Sadly not. This work is nearly 2 years old, and i was a git beginner at that moment. I used git and the main branch to sync my two workstations and so the commit history was cluttered with shit. At one point i squashed them together, without making a branch...
This one is really massive 17k loc added and only 1.5k loc removed according to github.
I don't think anyone can review such a big commit :(
Already saw bad staff in the commit.
1. There was a using namespace in a header.
2. Some new classes have been named in non conforming to the naming convention way (Menu_point_item).
3. I don't like the ->GetVM()->GetVM() pattern I see all over the place.
4. The changes in the envvars plugin looks to be mostly cosmetic, but they clutter the diff for no apparent reason.
5. You can remove all the code in the debugger plugin. It is mostly useless.
6. The changes in common_functions.script look to be cosmetic only.
7. The convert script is using camelcase for the name of the file. It is better to stick to lowercase and underscores!
8. Why have you added 2 new scripting extensions?
9. Problems with indents in src/sdk/menuitemsmanager.cpp
10. Using std::list in the same file. Using std::list ist the same as committing a crime against humanity. Vectors are always better. :)
11. Mixing includes with "" and <>, I'd say prefer "".
12. There are changes in wxpropgrid. Why? Why not separate commit?
13. Extremely log line in app.cpp
14. Lots of "FIXME (bluehazzard#1#): squirrel error" left in the code. Why?
FYI: Using "wxCHECK_VERSION" without including "wx/version.h" will likely lead to errors on NO PCH builds on Linux.
Edit: This header "wx/wxprec.h" includes "wx/defs.h"; and "wx/defs.h" includes "wx/version.h". Your patch guards "wx/wxprec.h" which will likely result in a NOPCH Build error.
From e90fb7713cd9d8f7da8ecb6593047cd45b22fe14 Mon Sep 17 00:00:00 2001
From: Tim S <stahta01@users.sourceforge.net>
Date: Thu, 18 Feb 2016 12:20:48 -0500
Subject: [PATCH 11/17] * sqrat: Removed the need to define "SCRAT_IMPORT" in
CB Projects. (Thanks stahta01)
Edited, scripting/sqrat/sqratUtil.h to define SCRAT_IMPORT if SCRAT_EXPORT is not defined.
---
src/include/scripting/sqrat/sqratUtil.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/include/scripting/sqrat/sqratUtil.h b/src/include/scripting/sqrat/sqratUtil.h
index c076d70..2c8460d 100644
--- a/src/include/scripting/sqrat/sqratUtil.h
+++ b/src/include/scripting/sqrat/sqratUtil.h
@@ -37,6 +37,12 @@
#include <unordered_map>
#endif
+/* C::B begin */
+#if !defined(SCRAT_EXPORT) && !defined(SCRAT_IMPORT)
+ #define SCRAT_IMPORT
+#endif // !defined(SCRAT_EXPORT) && !defined(SCRAT_IMPORT)
+/* C::B end */
+
namespace Sqrat {
/// @cond DEV
--
2.7.1.windows.2
The current patch is "mostly" needed for the transfer to sqrat.The patch is full with new features. There are two options - you can separate them or I can separate them. It is up to you to decide :)
i am on it...The current patch is "mostly" needed for the transfer to sqrat.The patch is full with new features. There are two options - you can separate them or I can separate them. It is up to you to decide :)
Also it will be good if the squirrel upgrade and the switch from sqplus to scrat is done in a single separate commit (no matter if it compiles or not).
Hi, i finally got somehow the time to finish a first patch for porting squirrel to the newest version and replace sqplus with sqrat.That is certainly nice!!! :)