"Sally - A Simple C++ IDE" is a GPL multi-compiler C++ IDE for WindowsXP/2000.
What makes it different from other similiar programs is a .Net style Visual GUI Designer for native C++ application that can be used with both Mingw and Visual C++ compilers (it's based on the emerging static library SmartWin++). No extern dlls (or the .Net framework) are required to run the executables and native windows applications can be created with virtually no C++ code. Moreover, it contains an embedded icon and image editor that is able to edit, convert and save images in the following formats: .ico,.bmp,.gif,.tiff,.png,.jpg.
It's a very useful solution for users of the Mingw or Visual C++ compiler that want to develop native applications for the Windows operating system with a visual GUI designer for free!
The program is written in the C# programming language, and requires the Framework .Net 1.1 to run. It might work on Win98, ME, NT but it's not been tested yet.
NOTE: "Sally - A Simple C++ IDE" needs write access to the installation directory.
The Framework .Net 1.1 can be downloaded here: FRAMEWORK .NET 1.1 (~20Mb) and can be installed side by side to other versions (older or newer) of the .Net Framework.
- Multi compiler C++ IDE
- Other programming languages (C#,HLA,etc.) can be configured
- Projects and Solutions can be easily imported
- Project templates
- File templates
- SmartWin++ Visual GUI Designer (configured for SW 2.0, older versions are NOT supported anymore). C++ native Windows Applications can be created with virtually no code, and don't require additional dlls or the .Net Framework to run (SmartWin++ is a static library).
Note: the SmartWin++ 2.0 library must be downloaded separately.
- SmartWin++ Extra Widgets (18 custom widgets + many helper classes)
- SmartWin++ Example Projects (more than 70 + 2 SW OpenGL templates)
- Icon (and image) editor
- No exporter supported
- No debugging support
- No code completion available
DOWNLOAD"Sally - A Simple C++ IDE" can be downloaded here: DOWNLOAD
- PROJECT CONVERTER: LINK 1 LINK 2
- UPX: LINK
- SMARTWIN++: HOMEPAGE DOWNLOADS
- A C++ COMPILER SUCH AS:
- LAST AVAILABLE RELEASE : 1.3 DEC 2008
1) SmartWin Form Header Files now contain IDE generated methods that are not inline and are guarded by a preprocessor definition that by default is added to the associated cpp file before that header inclusion. This way the header file is a bit lighter when multiple files include it. This is the major change of version 1.3. Please keep it present when migrating projects from previous versions.
2) Now it's possible to compile swHelper (or swGdiplusHelper) as a static library and to link projects to it by adding "USE_SWHELPER_STATIC_LIBRARY" to the "Project Options" (although this approach is never used in the template and demo projects).
3) Three commonly used open source libraries have been added to <swHelper.h>: libb64 (LINK),TinyXML (LINK) and libbz2 (LINK). Some demo projects have been added to show how to use them (some pics HERE and HERE)
4) Added the header "XTrace.h" (it's included by <swHelper.h>, but can be used without SmartWin too). It's an extension of the original XTrace.h file (LINK) originally written by Hans Dietrich. It has been further extended to provide basic time profiling and method statistics. Tracing is very important since the Sally IDE does not give any support for debugging; it can be enabled in release builds by defining "TRACEDEBUG" in the "Projects Options" (see "SW XTracing" demo project or open its tracing log HERE using Wordpad).
5) Fixed a few bugs in the "SmartWin Extra Widgets" (expecially the artifacts that affected WidgetGroupBoxEx and WidgetButtonEx (toggle button only) when the TAB key was pressed).
6) Added to WidgetPictureBox zooming, panning, selecting, extracting and color picking capabilities (please see the updated "SW PictureBox" demo project).
7) Added a list of the recent Solutions, Projects and Files for quick access to them from the File Menu of the IDE.
8) Slightly better support for precompiled headers when using a MS compiler. (simply now the compiler option /Yc is automatically converted to /Yu when needed). Anyway it's not possible to exclude single files from using precompiled headers (it's only possible in the MS VC++ IDE), and this approach currently works if all project files are in the same directory.
9) This version should save a bit more RAM than the previous one when compiling, since a garbage collection is performed before processing each file. (Now the background image can be disabled too, in case of extreme memory needs: this was not possible with previous versions).
- LAST AVAILABLE RELEASE : 1.2 SEP 2007
1) Fixed a bug about wrong SmartWin++ code generated for some WidgetMenu (and WidgetMenuExtended). Added some improvements in the Menu Editor as well.
2) Added two animated "SmartWin++ Gdiplus Only Extra Widgets":
WidgetProgressBarEx [based on the original C# code by xasthom]
WidgetButtonEx [based on the original C# code by xasthom]
3) Added one more "SmartWin++ Extra Widget":
WidgetPrintDocument [based on the original C++ code by Ivan Markovic (and others)]
- RELEASE : 1.1 MAY 2007
1) In the SmartWin++ GUI Designer, XP Styles can be assigned on a per widget basis.
2) Added four "SmartWin++ Extra Widgets":
WidgetNotifyIcon (i.e. WidgetTaskBarIcon)
WidgetScintilla [required Scintilla SDK (tested version 173)]
WidgetOgre [required Ogre SDK (tested version 1.4.0 for VC 7.1)]
RELEASE: 1.0 NOV 2006
1) Only SmartWin++ 2.0 (RC2) is supported.
2) A lot of minor changes (too many to be reported here).
RELEASE: RC 2.0 AUG 2006
1) Added support for ASCII, UTF8, UNICODE, and Big Endian UNICODE encoding.
2) DockPanel library updated: now it's possible to drag the document tabs and position the documents so that more than one can be visible simultaneously.
3) A few bugs have been fixed.
4) The Form Designer now supports SmartWin++ version 2.0 RC1 (recommended).
RELEASE: RC 1.0 APR 2006
1) The C++ region syntax has changed:
now a space is required before "//region" (please look image above).
Old files will be converted automatically.
2) The compilation target is not automatically changed by the mouse in the "Solution Explorer", but by middle-clicking or double-clicking on a project/solution.
3) In SmartWin++ Header Files, the user can edit the three writable areas by accessing them through the right-click menu in the code window, once the file has been "activated" (i.e. at least a switch to the "GUI Editor" has been made after opening).
Previously, the writable areas could be accessed only by the properties in the "GUI Editor" window.
4) In SmartWin++ Header Files, the writable area called "Extra Variables" is not parsed any more by the IDE.
That means that it is a very useful spot to insert not only variables, but almost everything (like in place method declarations and definitions, declarations of methods that the user wants to implement in a different C++ file, and so on).
SUPPORT FORUM A "Sally - A Simple C++ IDE" online forum is available here: FORUM
IDE LICENSE: GPL (C# CODE)
"Sally-A Simple C++ IDE" is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. "Sally-A Simple C++ IDE" is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with "Sally-A Simple C++ IDE"; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Generally speaking, AFAIK, if you plan to develop a program based on the Sally IDE C# source code, you must release it with the same GPL license.
EXTRA WIDGETS LICENSE:(C++ CODE)
The C++ files contained in the "SmartWin Extra Widgets" folder generally share the same open source license as the SmartWin++ library itself (unless specified in the files themselves).
The libraries: libb64, TinyXML and libbz2 have their own (open source) licenses that can be found in their own subfolders inside the "SmartWin Extra Widgets" directory. Be sure to read them if you plan to use any of these libraries in your projects.
Generally speaking, AFAIK, it should be possible to use the Sally IDE + SmartWin++ + SmartWin Extra Widgets to develop commercial programs.