SmartWin - C++ Application Development made easy!

Status of SmartWin self-tests and Samples

This is a matrix on the different samples we provide with SmartWin++ and how (if) they work in the different compilers we support and the different platforms we support.
Note that this the current CVS version. The latest download version may differ. It mostly should function as a basis to see what you can expect from the NEXT version of SmartWin++ or what you will get if you use the CVS version through anonymous access.

Test name Windows using MSVC++ Windows using MinGW Win CE Wine (Linux)
AddressBook Works as of 10. Dec 2005 Works as of 10. Dec 2005 works, ASW Nov 24, 2005
Calculator Works as of 10. Dec 2005 Works as of 10. Dec 2005 works, ASW Nov 13, 2005
Canvas Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works (After this extFloodFill patch: http://bugs.winehq.org/show_bug.cgi?id=3907 ) ASW Nov 24, 2005
CustomWidget Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project Runtime misfunction. (comes up but the colored circle turns into a curved increasing function for the upper left quadrant. The color switching does not work.) ASW Nov 13, 2005
FreeDialog Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works, ASW Nov 17, 2005
HelloSmartWin Works as of 10. Dec 2005 Works as of 10. Dec 2005 works if ExtTextOut is commented out. (large fonts in WidgetDataGrid don't resize correctly though.) ASW Nov 14, 2005
HelloSmartWinWorld Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works ASW Nov 13, 2005
iolib Works as of 10. Dec 2005
Though when not started from inside the IDE it doesn't find the initialization files so it doesn't display google/ibm etc in the combo box...
Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project

Compiles but MAPI services are not available on Wine, code guarded by the __WINE__ macro (LPMAPISENDMAIL undeclared, does not know about MAPISENDMAIL either.)

Had to add -lwsock32 (wininet) as linking library. After commenting out mapi, iolib comes up, Does not show any text in the boxes because the state.html file is missing ! I add state.html back. When loading state.html, the get ( WidgetDataGrid *w)function in html_get.h attempts to set the column width with:
w->setColumnWidth( c, LVSCW_AUTOSIZE_USEHEADER )
and that function crashes.(You can comment it out, and iolib will come up.)  But put sizing code beforehand and it will come up.  Its winebug 3934.


InDialog comes up, but should be a bit wider. colors change, date works, scissors rock paper ok, Password attribute fails though... in plaintext.
iostream to textbox fails but the tcp iostream actually worked!
ASW Nov 13, 2005

Notepad Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. Font change, typing, arrows, copy and paste, Save and Load filedo work.(Find needs a selection in the text to work) ASW Nov 15, 2005
SampleWidgets Works as of 10. Dec 2005 Works as of 10. Dec 2005

Compiles but only with a dummy function for DateTime_SetMonthCalColor. ASW Nov 13, 2005

sw_mdi Works as of 10. Dec 2005 Works UNTIL you choose the Creation Widgets menu item!! Doesn't exists with a Win CE sample project Comes up after a very long compile. ASW Nov 20, 2005. (Takes very long on SUSE GCC4) All windows can be created, but after around 4-5 child windows, it crashes. Edit:  has squigles instead of _][ X symbols for minimize, maximize, and close buttons.  The Ftp read works .  There is a bug in the test when adding a column when there is already some row data.  Column deletion crashs.  Tree: adding element results in last chars being chopped.
swDll Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project Untested in wine. The source is too new for the release version used to tryWine. ASW Nov 13, 2005
Threads Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project runtime misfunction. (Comes up but only runs one thread. No time spent to figure out why yet..) ASW Nov 13, 2005
TicTacTo Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
TimerTest Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetButton Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetButtonTrigger Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetCheckBox Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetCombo Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetDateTime Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project Compile failure. ( DateTime_SetMonthCalColor is undefined. Bug reported to WINE) But otherwise it runs. . ASW Nov 13, 2005
WidgetFun Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetGraph works ASW Nov 16, 2005 DEV-C++ has trouble compiling. ASW Nov 16, 2005 Doesn't exists with a Win CE sample project works ( with template compile warnings ) ASW Nov 16, 2005
WidgetInherited Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetList Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project runtime misfunction. (the checkboxes don't show up in Col1.) ASW Nov 13, 2005
WidgetLoadFile Works as of 10. Dec 2005

Doesn't compile as of 10. December 2005 due to CoInitialize, probably just a library which must be included

Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetMDIWindow Works as of 10. Dec 2005 Doesn't work when you click a new MDI Child window... Doesn't exists with a Win CE sample project runtime misfunction..(The child Minimize, Restore and Close icons are replaced with P P P or X X X or gibberish) ASW Nov 13, 2005
WidgetMenu Works as of 10. Dec 2005
Icons doesn't show up if started from the debug folder instead of through the IDE since it relies on finding the bmp/icon files which exists in the sample root directory and not within the debug folder.
Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works, but the new fancy menu does not appear at all. ( Line 244 of MenuExtended.h:  int count = ::GetMenuString( handle, wrapper->index, &buffer[0], length, MF_BYPOSITION ); returns 0.   Tried adding MFT_STRING to MFT_OWNERDRAWN but it did not fix the problem.)  ASW Dec 3, 2005
WidgetMessageBox Note ASTERIX shows up as a ! Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works.but MB_CANCELTRYCONTINUE is not defined, thus onlypartial functionality. Note ASTERIX shows up as a !.ASW Nov 13, 2005
WidgetModalDialog Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetProgressBar Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project

works (needed a updateWidget() call after each change to the position). Looks like there is a subtle difference in what is redrawn when between WINE and Windows.ASW Nov 18, 2005

WidgetRadioButtonGroup Did notice that Radio 1-2 position is a bit strange Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. Did notice that Radio 1-2 position is a bit strange ASW Nov 13, 2005
WidgetRichTextBox Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetSaveFile Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetSlider Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetSpinner Double invocation from onScrollHorz. Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetSplitter Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetStatic Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetStatusBar Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetTabControl Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetTextBox Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetToolbar Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetTreeView Works as of 10. Dec 2005 Works but gives compile time warning!! Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005
WidgetWindow Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. (docks, undocks,moves around )close with docked window still does not work..ASW Nov 16, 2005 works. (docks, undocks,moves around )close with docked window will work with a patch pending in Wine (EnumChildWindows Owned windows)..ASW Dec 10, 2005
WidgetWindowSubclassed Works as of 10. Dec 2005 Works as of 10. Dec 2005 Doesn't exists with a Win CE sample project works. ASW Nov 13, 2005

General Notes on the OS dependent portions of SmartWin++

Windows

As the base OS, Windows supports all features of SmartWin++

Windows CE

Certain features are missing from Windows CE such as:

  • Animation of closing and opening of windows.

Also the screen sizes are smaller, thus layouts should not assume wide widths are available.

Wine (Linux)

Certain features are missing from Wine such as:

  • Animation of closing and opening of windows.
  • mapi support for email.

    The existing source needs these generic changes to make it Wine compilable.

  • Most .rc files have #include "afxres.h" instead of "winres.h". Apperntly afx is MFC specific, and winres.h is not. We could just change all the .rc includes but then perhaps the MSVC++ resource editer would get confused or put them back ?
  • The case of #includes must be exactly correct, ie #include "SmartWin.h" not "smartwin.h" or "Smartwin.h". Hopefully all are fixed in the latest CVS now. Likewise with #include "Resource.h" instead of #include "resource.h"

    File paths and name in Unix are of the pattern /dir/dir/filename, and on windows c:\dir\dir\filename. The file selection dialogs under WINE on Linux have been compile time defined to produce a Unix type filepath. So if the program expects a Windows type pathname and wants to parse the file path itself it should handle this situation in __WINE__ conditional code.

  •  

    Wine Fixes needed for SmartWin++

    http://www.winehq.org/pipermail/wine-patches/2005-November/022346.html

    Some more pending bugs and their status:

    http://bugs.winehq.org/buglist.cgi?email1=andrew7webb%40comcast.net&emailtype1=exact&emailreporter1=1

     
    SourceForge.net Logo