You can subscribe to this list here.
| 2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1041) |
Sep
(746) |
Oct
(46) |
Nov
(89) |
Dec
(117) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2006 |
Jan
(21) |
Feb
(236) |
Mar
(316) |
Apr
(166) |
May
(114) |
Jun
(18) |
Jul
(23) |
Aug
(10) |
Sep
(35) |
Oct
(8) |
Nov
(44) |
Dec
(54) |
| 2007 |
Jan
(7) |
Feb
(21) |
Mar
(3) |
Apr
(1) |
May
|
Jun
(78) |
Jul
(9) |
Aug
(12) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
|
From: andrew7 <bd...@us...> - 2007-06-23 13:07:16
|
Update of /cvsroot/smartwin/SmartWin/include/io In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv18479 Modified Files: iolib.h Log Message: Add comment. Index: iolib.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/include/io/iolib.h,v retrieving revision 1.14 retrieving revision 1.15 diff -u -d -r1.14 -r1.15 --- iolib.h 9 Jun 2007 17:13:32 -0000 1.14 +++ iolib.h 23 Jun 2007 13:07:13 -0000 1.15 @@ -49,6 +49,8 @@ { public: +// IN: hexstring is of format "43 56 8F 3B 33 92" +// static void StringToBytes( const string & hexstring, unsigned char dat[], int & len ) { len = 0; |
|
From: andrew7 <bd...@us...> - 2007-06-23 13:05:35
|
Update of /cvsroot/smartwin/SmartWin/SmartUtil In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv17721 Modified Files: tstring.h Log Message: Patch Index: tstring.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/SmartUtil/tstring.h,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- tstring.h 24 Dec 2006 15:53:39 -0000 1.10 +++ tstring.h 23 Jun 2007 13:05:31 -0000 1.11 @@ -30,6 +30,7 @@ #include <iosfwd> #include <sstream> #include <algorithm> +#include <string> #ifndef tstring_smartwin_H #define tstring_smartwin_H @@ -39,52 +40,52 @@ // begin namespace SmartUtil #if defined UNICODE || defined _UNICODE -# if defined _STRING_ || defined _CPP_STRING || defined _GLIBCXX_STRING +# if defined _STRING_ || defined _CPP_STRING || defined _GLIBCXX_STRING || defined _STLP_STRING typedef std::wstring tstring; # endif //_STRING_ -# if defined _SSTREAM_ || defined _CPP_SSTREAM || defined _GLIBCXX_SSTREAM +# if defined _SSTREAM_ || defined _CPP_SSTREAM || defined _GLIBCXX_SSTREAM || defined _STLP_SSTREAM typedef std::wstringstream tstringstream; typedef std::wostringstream tostringstream; typedef std::wistringstream tistringstream; # endif //_SSTREAM_ -# if defined _OSTREAM_ || defined _GLIBCXX_OSTREAM +# if defined _OSTREAM_ || defined _GLIBCXX_OSTREAM || defined _STLP_OSTREAM typedef std::wostream tostream; # endif //_OSTREAM_ -# if defined _ISTREAM_ || defined _GLIBCXX_ISTREAM +# if defined _ISTREAM_ || defined _GLIBCXX_ISTREAM || defined _STLP_ISTREAM typedef std::wistream tistream; # endif //_ISTREAM_ -# if defined _OSTREAM_ || defined _CPP_OSTREAM || defined _GLIBCXX_OSTREAM -# if defined _ISTREAM_ || defined _CPP_ISTREAM || defined _GLIBCXX_ISTREAM +# if defined _OSTREAM_ || defined _CPP_OSTREAM || defined _GLIBCXX_OSTREAM || defined _STLP_OSTREAM +# if defined _ISTREAM_ || defined _CPP_ISTREAM || defined _GLIBCXX_ISTREAM || defined _STLP_ISTREAM typedef std::wiostream tiostream; # endif //_ISTREAM_ # endif //_OSTREAM_ -# if defined _IOSFWD_ || defined _FSTREAM_ || defined _CPP_FSTREAM || defined _GLIBCXX_FSTREAM +# if defined _IOSFWD_ || defined _FSTREAM_ || defined _CPP_FSTREAM || defined _GLIBCXX_FSTREAM || defined _STLP_FSTREAM typedef std::wfilebuf tfilebuf; typedef std::wfstream tfstream; typedef std::wifstream tifstream; typedef std::wofstream tofstream; # endif //_FSTREAM_ #else // UNICODE -# if defined _STRING_ || defined _CPP_STRING || defined _GLIBCXX_STRING +# if defined _STRING_ || defined _CPP_STRING || defined _GLIBCXX_STRING || defined _STLP_STRING typedef std::string tstring; # endif //_STRING_ -# if defined _SSTREAM_ || defined _CPP_SSTREAM || defined _GLIBCXX_SSTREAM +# if defined _SSTREAM_ || defined _CPP_SSTREAM || defined _GLIBCXX_SSTREAM || defined _STLP_SSTREAM typedef std::stringstream tstringstream; typedef std::ostringstream tostringstream; typedef std::istringstream tistringstream; # endif //_SSTREAM_ -# if defined _OSTREAM_ || defined _GLIBCXX_OSTREAM +# if defined _OSTREAM_ || defined _GLIBCXX_OSTREAM || defined _STLP_OSTREAM || defined _STLP_OSTREAM typedef std::ostream tostream; # endif //_OSTREAM_ -# if defined _ISTREAM_ || defined _GLIBCXX_ISTREAM +# if defined _ISTREAM_ || defined _GLIBCXX_ISTREAM || defined _STLP_ISTREAM || defined _STLP_ISTREAM typedef std::istream tistream; # endif //_ISTREAM_ -# if defined _OSTREAM_ || defined _CPP_OSTREAM || defined _GLIBCXX_OSTREAM -# if defined _ISTREAM_ || defined _CPP_ISTREAM || defined _GLIBCXX_ISTREAM +# if defined _OSTREAM_ || defined _CPP_OSTREAM || defined _GLIBCXX_OSTREAM || defined _STLP_OSTREAM +# if defined _ISTREAM_ || defined _CPP_ISTREAM || defined _GLIBCXX_ISTREAM || defined _STLP_ISTREAM typedef std::iostream tiostream; # endif //_ISTREAM_ # endif //_OSTREAM_ -# if defined _IOSFWD_ || defined _FSTREAM_ || defined _CPP_FSTREAM || defined _GLIBCXX_FSTREAM +# if defined _IOSFWD_ || defined _FSTREAM_ || defined _CPP_FSTREAM || defined _GLIBCXX_FSTREAM || defined _STLP_FSTREAM typedef std::filebuf tfilebuf; typedef std::fstream tfstream; typedef std::ifstream tifstream; |
|
From: andrew7 <bd...@us...> - 2007-06-23 12:39:55
|
Update of /cvsroot/smartwin/SmartWin/include/io In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv7208 Added Files: Process.h Log Message: First version of a class that can create processes, terminate them, and wait for their completion. --- NEW FILE: Process.h --- #ifndef process_83467 #define process_83467 #include "SmartUtil.h" /* Sample usage: string args( _T("gzip -f -d ccdat.gz") ); Process p( _T("program.exe"), args ); if ( ! p.start() ) return false; p.wait(); */ class Process { private: SmartUtil::tstring itsExename, itsArgs; STARTUPINFO si; PROCESS_INFORMATION pi; public: // /// args should include the exename too ! Process( SmartUtil::tstring exename, SmartUtil::tstring args ) : itsExename( exename ), itsArgs( args ) { ZeroMemory( &si, sizeof(si) ); si.cb = sizeof(si); ZeroMemory( &pi, sizeof(pi) ); } bool start() { DWORD creationFlags= CREATE_NO_WINDOW; // ; if ( ! CreateProcess( itsExename.c_str(), (LPSTR)itsArgs.c_str(), NULL, NULL, FALSE, creationFlags, NULL, NULL, &si, &pi ) ) { return false; } return true; } // Return true if the process has completed. // bool done( ) { return WAIT_FAILED != WaitForSingleObject( pi.hProcess, 0 ); } // Wait until child process exits. bool wait( DWORD waitMillisecs = INFINITE ) { return WAIT_FAILED != WaitForSingleObject( pi.hProcess, waitMillisecs ); } long getTimes ( FILETIME * CreationTime, FILETIME * ExitTime, FILETIME * KernelTime, FILETIME * UserTime ) { if ( GetProcessTimes( pi.hProcess, CreationTime, ExitTime, KernelTime, UserTime ) ) { long t1= get100microsecs( CreationTime ); long t2= get100microsecs( ExitTime ); return (t2 - t1) / 10; } else return -1; } // Each time is in 10th of a microsecond == 10,000 th of a millisec // By throwing away the low ten bits, we approximately divide by 1000 (1024) // and thus return a number in hundreds of microseconds. // long get100microsecs( FILETIME * ft ) { long x= (ft->dwHighDateTime << 10) & 0x7fffffff; x |= (ft->dwLowDateTime >> 10) & 0x003fffff; return x; } bool terminate( DWORD waitTime = INFINITE, unsigned int exitCode = -1 ) { if ( ! TerminateProcess( pi.hProcess, exitCode ) ) { return false; } return true; } ~Process() { // Close process and thread handles. CloseHandle( pi.hProcess ); CloseHandle( pi.hThread ); } }; /* Seeing as it took some time to actually find them, here are some links to the new Vista APIs: Windows API: http://msdn2.microsoft.com/en-us/library/aa383874.aspx GDI: http://msdn2.microsoft.com/en-us/library/ms536794.aspx GDI+: http://msdn2.microsoft.com/en-us/library/ms533798.aspx And a download which has "New Windows Vista APIs.xls" and TopTen.chm http://download.microsoft.com/download/D/9/B/D9BEB875-BC1D-4338-A655-251F4F353B2E/Top10Wave.exe */ #endif |
|
From: andrew7 <bd...@us...> - 2007-06-21 01:26:37
|
Update of /cvsroot/smartwin/SmartWin/include/smartwin/widgets In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv13806 Modified Files: WidgetWindowBase.h Log Message: Mingw (3.4.2) doesn't like ::KillTimer( handle(), idx->first ); Index: WidgetWindowBase.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/include/smartwin/widgets/WidgetWindowBase.h,v retrieving revision 1.36 retrieving revision 1.37 diff -u -d -r1.36 -r1.37 --- WidgetWindowBase.h 19 Jun 2007 01:13:17 -0000 1.36 +++ WidgetWindowBase.h 21 Jun 2007 01:26:33 -0000 1.37 @@ -421,7 +421,7 @@ typename ThisMessageMap::TupleCommandFunctionThis tfc= idx->second; comInList= tfc.template get< 1 >(); if ( comInList->Name() == command.Name() ) { - ::KillTimer( handle(), idx->first ); + ::KillTimer( this->Widget::itsHandle, idx->first ); itsTimerMapThis.erase( idx->first ); return; } |
|
From: andrew7 <bd...@us...> - 2007-06-19 01:14:43
|
Update of /cvsroot/smartwin/SmartWin/tests/TimerTest In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv29225 Modified Files: Main.cpp Log Message: Added a slower timer that can stop the faster scrolling timer. Tests killTimer() Index: Main.cpp =================================================================== RCS file: /cvsroot/smartwin/SmartWin/tests/TimerTest/Main.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- Main.cpp 5 May 2006 17:21:45 -0000 1.5 +++ Main.cpp 19 Jun 2007 01:14:38 -0000 1.6 @@ -8,16 +8,34 @@ : public WidgetFactory< WidgetWindow, WidgetTest1 > { public: + enum param { delay= 100, // milliseconds between scrolling timer event. + delayMb= 10000 }; // milliseconds before message box event. + WidgetTest1() - {} + { + } - void timerTest( const CommandPtr & cmd ) + void timerRespondOnce( const CommandPtr & cmd ) + { + WidgetMessageBox msgBox1; + if ( WidgetMessageBox::RETBOX_CANCEL == + msgBox1.show( _T( "Keep the scrolling going ?"), _T("One time timer event"), + WidgetMessageBox::BOX_OKCANCEL ) ) { + // User want to cancel the scrolling. + Command com ( _T( "ScrollingTitle" ) ); + killTimer( com ); + } + } + + + void timerRespondMultiple( const CommandPtr & cmd ) { SmartUtil::tstring text = getText(); text = text.substr( 1 ) + text.substr( 0, 1 ); setText( text ); - Command com ( _T( "Testing" ) ); - createTimer( & WidgetTest1::timerTest, 100, com ); + + Command com ( _T( "ScrollingTitle" ) ); + createTimer( & WidgetTest1::timerRespondMultiple, delay, com ); } void initAndCreate() @@ -27,16 +45,22 @@ setText( _T( "WidgetWindow Timer compile and execute test" ) ); - Command com( _T( "Testing" ) ); - createTimer( & WidgetTest1::timerTest, 100, com ); + Command com( _T( "ScrollingTitle" ) ); + createTimer( & WidgetTest1::timerRespondMultiple, delay, com ); } + }; -// Unit test for WidgetSaveFile, tries to instantiate all different forms of WidgetSaveFile and also tries to use all functions + +// Unit test for timers int SmartWinMain( Application & app ) { // Widget (Factory) version WidgetTest1 * testWnd1 = new WidgetTest1; testWnd1->initAndCreate(); + + Command outCom( _T( "OnceTimer" ) ); + testWnd1->createTimer( & WidgetTest1::timerRespondOnce, WidgetTest1::delayMb, outCom ); + return app.run(); } |
|
From: andrew7 <bd...@us...> - 2007-06-19 01:13:23
|
Update of /cvsroot/smartwin/SmartWin/include/smartwin/widgets In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv28800 Modified Files: WidgetWindowBase.h Log Message: Add killTimer funciton so timers can be aborted. Index: WidgetWindowBase.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/include/smartwin/widgets/WidgetWindowBase.h,v retrieving revision 1.35 retrieving revision 1.36 diff -u -d -r1.35 -r1.36 --- WidgetWindowBase.h 26 Dec 2006 01:17:29 -0000 1.35 +++ WidgetWindowBase.h 19 Jun 2007 01:13:17 -0000 1.36 @@ -258,6 +258,9 @@ void createTimer( typename ThisMessageMap::voidFunctionTakingCommand eventHandler, unsigned int milliSecond, const SmartWin::Command & command ); #endif + /// Removes the "its" timer + void killTimer( const Command & command ); + /// Closes the window /** Call this function to raise the "Closing" event. <br> * This will normally try to close the window. <br> @@ -334,6 +337,8 @@ {} private: + unsigned int getNewTimerEvent(); + // Static/Global timer map std::map< UINT, typename ThisMessageMap::TupleCommandFunctionGlobal > itsTimerMap; @@ -404,6 +409,47 @@ } + +template< class EventHandlerClass, class MessageMapPolicy > +void WidgetWindowBase< EventHandlerClass, MessageMapPolicy >::killTimer( const Command & command ) +{ + // Find the event ID in itsTimerMapThis, and then kill the timer. + CommandPtr comInList; + typename std::map < UINT, typename ThisMessageMap::TupleCommandFunctionThis >::iterator idx; + + for ( idx= itsTimerMapThis.begin(); idx != itsTimerMapThis.end(); idx++ ) { + typename ThisMessageMap::TupleCommandFunctionThis tfc= idx->second; + comInList= tfc.template get< 1 >(); + if ( comInList->Name() == command.Name() ) { + ::KillTimer( handle(), idx->first ); + itsTimerMapThis.erase( idx->first ); + return; + } + } +} + + +// There are some unanswered questions here: +// 1) Is it possible to actually use the timer outside of a WidgetWindow ? +// 2) If not, why bother with itsTimerMap instead of just itsTimerMapThis ? +// 3) Is it time to outfactor this into an aspect ? +// +template< class EventHandlerClass, class MessageMapPolicy > +unsigned int WidgetWindowBase< EventHandlerClass, MessageMapPolicy >::getNewTimerEvent() +{ + for ( int n = 0; n < 100; ++n ) { // Why not n=1; n <101 as below ? + typename std::map < UINT, + typename ThisMessageMap::TupleCommandFunctionGlobal >::iterator idx = itsTimerMap.find( n ); + if ( idx == itsTimerMap.end() ) { + return n; // Return an event not already used. + } + } + + xCeption x( _T( "More than 100 timers defined" ) ); + throw x; +} + +// This is unused ? template< class EventHandlerClass, class MessageMapPolicy > #ifdef _MSC_VER void WidgetWindowBase< EventHandlerClass, MessageMapPolicy >::createTimer( voidFunctionTakingCommand eventHandler, @@ -417,23 +463,7 @@ const Command & command ) #endif { - unsigned int event = - 1; - for ( int n = 0; n < 100; ++n ) - { - typename std::map < UINT, - typename ThisMessageMap::TupleCommandFunctionGlobal >::iterator idx - = itsTimerMap.find( n ); - if ( idx == itsTimerMap.end() ) - { - event = n; - break; - } - } - if ( event == - 1 ) - { - xCeption x( _T( "More than 100 timers defined" ) ); - throw x; - } + unsigned int event = getNewTimerEvent(); CommandPtr comPtr( command.clone().release() ); itsTimerMap[event] = typename ThisMessageMap::TupleCommandFunctionGlobal( eventHandler, comPtr ); @@ -441,6 +471,8 @@ } + +// This is the createTimer actually used by in-widget response function. template< class EventHandlerClass, class MessageMapPolicy > #ifdef _MSC_VER |
|
From: andrew7 <bd...@us...> - 2007-06-18 01:48:45
|
Update of /cvsroot/smartwin/SmartWin/source In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv16468 Modified Files: Application.cpp Log Message: Remove \ characters from mutex name so isAppAlreadyRunning() would work. Index: Application.cpp =================================================================== RCS file: /cvsroot/smartwin/SmartWin/source/Application.cpp,v retrieving revision 1.47 retrieving revision 1.48 diff -u -d -r1.47 -r1.48 --- Application.cpp 15 Jun 2007 22:22:28 -0000 1.47 +++ Application.cpp 18 Jun 2007 01:48:42 -0000 1.48 @@ -208,15 +208,21 @@ bool Application::isAppAlreadyRunning() { + // Construct an application unique string without '\' characters. SmartUtil::tstring appPath = getModulePath() + getModuleFileName(); + SmartUtil::tstring::size_type p = 0; + while( (p = appPath.find(_T('\\'), p)) != SmartUtil::tstring::npos ) { + appPath[p] = _T('_'); + } + + // Since this can only be done once, we know if the app is already running. itsMutex = ::CreateMutex( NULL, FALSE, appPath.c_str() ); if ( !itsMutex ) - return false; - if ( ::GetLastError() == ERROR_ALREADY_EXISTS ) - { + return false; // I created the Mutex, so I'm the first. + if ( ::GetLastError() == ERROR_ALREADY_EXISTS ) { ::CloseHandle( itsMutex ); itsMutex = 0; - return true; + return true; // I'm the second application instance. } else { |
|
From: andrew7 <bd...@us...> - 2007-06-18 01:18:19
|
Update of /cvsroot/smartwin/SmartWin/doxygenIn/html In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv4946 Modified Files: wince.html Log Message: Updates to WINCE information. Index: wince.html =================================================================== RCS file: /cvsroot/smartwin/SmartWin/doxygenIn/html/wince.html,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- wince.html 9 Jun 2007 17:09:21 -0000 1.1 +++ wince.html 18 Jun 2007 01:18:16 -0000 1.2 @@ -5,15 +5,16 @@ </head> <body> <h2>Windows CE </h2> + + <P> Win32 on WINCE is not quite the same as WIN32 on WinXP/Vista. But SmartWin++ can handle + most of the differences. </P> <P> There is a Visual Studio solution called SmartWinDevices which can be used to build Smartwin. You should adjust the platform to suit your target system. </P> - <P> Under test\PocketPC\SmartWinDevices, There is a Visual Studio solution called SmartWinDevices that can be used + <P> Under test\PocketPC\SmartWinDevices, there is a Visual Studio solution called SmartWinDevices that can be used to try a few of the standard smartwin tests. </P> - - <H3> Compile time issues </H3> <P> interlocked.hpp needed some #ifndef WINCE to get things to compile. Perhaps a Boost upgrade issue ? </P> <pre> @@ -24,14 +25,21 @@ </pre> <H3> Link time issues </H3> - <P> CVTRES : fatal error CVT1109: target machine 'THUMB' requires '/WINDOWSCE <br></br> - was fixed by placing /subsystem:windowsce,4.20 /machine:ARM /ARMPADCODE in the linker additional options </P> + <p> CVTRES : fatal error CVT1109: target machine 'THUMB' requires '/WINDOWSCE </p> + <p> was fixed by placing /subsystem:windowsce,4.20 /machine:ARM /ARMPADCODE in the linker additional options </p> - - </p> <H3> Runtime issues. </H3> - <P> Menus ? </P> +<P> 1) Obviously you need to consider the smaller screen sizes with typical wince devices.</P> +<P> 2) WINCE seems to neglect the menu bar when calculating the client area,thus a + slight adjustment needs to be conditionally made for source running on both + windows and wince. </P> + + +<H3> General Status. </H3> +<P> Smartwin++ has been running on WINCE for quite some time. + I have tested HelloSmartWin on a T-Mobile Wing without major problems. + </P> </body> |
|
From: andrew7 <bd...@us...> - 2007-06-18 01:08:59
|
Update of /cvsroot/smartwin/SmartWin/doxygenIn/html In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv1100 Modified Files: linuxwine.html Log Message: Fix cvs check out command. Index: linuxwine.html =================================================================== RCS file: /cvsroot/smartwin/SmartWin/doxygenIn/html/linuxwine.html,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- linuxwine.html 24 Dec 2006 01:05:58 -0000 1.3 +++ linuxwine.html 18 Jun 2007 01:08:56 -0000 1.4 @@ -44,7 +44,7 @@ <TT>cvs -d:pserver:ano...@sm...:/cvsroot/smartwin login </TT> <LI> <TT>cvs -z3 -d:pserver:ano...@sm...:/cvsroot/smartwin co -P SmartWin </TT> - checkout SmartWin + (checkout SmartWin) <LI> cd SmartWin/source <LI> |
|
From: andrew7 <bd...@us...> - 2007-06-18 01:07:33
|
Update of /cvsroot/smartwin/SmartWin/tests In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv696 Modified Files: testcheck.html Log Message: Latest test results. Index: testcheck.html =================================================================== RCS file: /cvsroot/smartwin/SmartWin/tests/testcheck.html,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- testcheck.html 17 Dec 2006 16:44:06 -0000 1.8 +++ testcheck.html 18 Jun 2007 01:07:30 -0000 1.9 @@ -16,7 +16,7 @@ anonymous access.</p> <TABLE id="Table1" cellSpacing="1" cellPadding="1" width="100%" bgColor="lime" border="1"> <TR> - <TH> + <TH style="width: 351px"> <STRONG>Test name</STRONG></TH> <TH> <STRONG>Windows using MSVC++</STRONG></TH> @@ -27,16 +27,16 @@ <TH> <STRONG>Wine 0.9.10 (Linux)</STRONG></TH></TR> <TR> - <TD>AddressBook</TD> + <TD style="width: 351px">AddressBook</TD> <TD>Works as of 10. Dec 2005</TD> - <TD>Works as of 9 Dec 2006, asw</TD> + <TD>Works as of 16 June 2007, asw</TD> <TD>?</TD> - <TD>works, ASW Mar 22, 2006</TD> + <TD>works, ASW Dec 23, 2006</TD> </TR> <TR> - <TD>Calculator</TD> + <TD style="width: 351px">Calculator</TD> <TD>Works as of 10. Dec 2005</TD> - <TD>Works as of 9 Dec 2006, asw</TD> + <TD>Works as of 16 June 2007, asw</TD> <TD>?</TD> <TD> <P>Norwegian resource .rc file does not work now.</P> @@ -44,76 +44,65 @@ </TD> </TR> <TR> - <TD>Canvas</TD> + <TD style="width: 351px">Canvas</TD> <TD>Works as of 10. Dec 2005</TD> - <TD>Works as of 9 Dec 2006, asw</TD> + <TD>Works as of 16 June 2007, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> - <TD> works, ASW Mar 22, 2006</TD> + <TD> works, ASW Dec 23, 2006</TD> </TR> <TR> - <TD>CustomWidget</TD> + <TD style="width: 351px">CustomWidget</TD> <TD>Works as of 10. Dec 2005</TD> - <TD>Works as of 9 Dec 2006, asw</TD> + <TD>Works as of 16 June 2007, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> - <TD bgColor="red">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</TD> + <TD bgColor="red">Runtime misfunction. (comes up but the colored circles are + not placed correctly. The color switching works.) ASW Dec 23, 2006</TD> </TR> <TR> - <TD>DragAndDrop</TD> + <TD style="width: 351px">DragAndDrop</TD> <TD>Works as of 10 Dec 2006, asw</TD> - <TD>Works as of 9 Dec 2006, asw</TD> - <TD>?</TD> + <TD>Works as of 16 June 2007, asw</TD> <TD>?</TD> + <TD bgColor="red">Does not respond to dragged files.</TD> </TR> <TR> - <TD>FreeDialog</TD> + <TD style="width: 351px">FreeDialog</TD> <TD>Works as of 10. Dec 2005</TD> - <TD>Works as of 9 Dec 2006, asw</TD> + <TD>Works as of 16 June 2007, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works, ASW Mar 22, 2006</TD> </TR> <TR> - <TD>HelloSmartWin</TD> + <TD style="width: 351px">HelloSmartWin</TD> <TD>Works as of 10. Dec 2005</TD> - <TD>Works as of 9 Dec 2006, asw</TD> + <TD>Works as of 16 June 2007, asw</TD> <TD></TD> <TD> works, (but large fonts in WidgetDataGrid don't resize correctly though.) - ASW Mar 21, 2006</TD> + ASW June 17, 2007</TD> </TR> <TR> - <TD>HelloSmartWinWorld</TD> + <TD style="width: 351px">HelloSmartWinWorld</TD> <TD>Works as of 10. Dec 2005</TD> - <TD>Works as of 9 Dec 2006, asw</TD> + <TD>Works as of 16 June 2007, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD> <P>works ASW Mar 22, 2006, BUT Mar 25 can't close the window !</P> </TD> </TR> <TR> - <TD>iolib</TD> + <TD style="width: 351px">iolib</TD> <TD>Works as of 10. Dec 2005<BR> 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...</TD> - <TD>Depends on SmartSoap, which does not build. Dec 6, 2006, asw</TD> + <TD>Depends on SmartSoap, which does build. 16 June 2007, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD bgColor="red"> <P> Compiles but MAPI services are not available on Wine, code guarded by the __WINE__ macro (LPMAPISENDMAIL undeclared, does not know about MAPISENDMAIL either.)</P> - <P>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: - <br> - w->setColumnWidth( c, LVSCW_AUTOSIZE_USEHEADER ) - <br> - 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.</P> <P> <br> InDialog comes up, but should be a bit wider. colors change, date works, @@ -123,30 +112,32 @@ <br> ASW Nov 13, 2005 </P> + <P> + Regretably, the new text iostream put in for SmartSoap is not cross platform, so + this no longer compiles. June 17, 2007, asw</P> </TD> </TR> <TR> - <TD>Notepad</TD> - <TD>Works as of 10. Dec 2005</TD> - <TD>Works as of 9 Dec 2006, asw</TD> + <TD style="width: 351px">Notepad</TD> + <TD>Works as of 16 June 2007, asw </TD> + <TD>Works as of 16 June 2007, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> - <TD>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</TD> + <TD>works. Font change, typing, arrows, copy and paste, Save and Load filedo + work.(Find needs a selection in the text to work) ASW June 17, 2007</TD> </TR> <TR> - <TD>OpenGLSample1</TD> - <TD>Works as of 9 Dec 2006, asw</TD> + <TD style="width: 351px">OpenGLSample1</TD> <TD>Works as of 9 Dec 2006, asw</TD> + <TD>Works as of 16 June 2007, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD></TD> </TR> <TR> - <TD>SampleWidgets</TD> + <TD style="width: 351px">SampleWidgets</TD> <TD>Works as of 10. Dec 2005</TD> - <TD>Works as of 9 Dec 2006, asw</TD> + <TD>Works as of 16 June 2007, asw</TD> <TD>?</TD> <TD> <P>Compiles but only with a dummy function for DateTime_SetMonthCalColor. ASW Nov @@ -154,9 +145,9 @@ </TD> </TR> <TR> - <TD>sw_mdi</TD> - <TD>Works as of 9 Dec 2006, asw</TD> + <TD style="width: 351px">sw_mdi</TD> <TD>Works as of 9 Dec 2006, asw</TD> + <TD bgColor="yellow">Works as of 16 June 2007, but the program does not terminate after closing. asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD bgColor="yellow">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 @@ -167,65 +158,65 @@ in last chars being chopped.</TD> </TR> <TR> - <TD>swDll</TD> + <TD style="width: 351px">swDll</TD> <TD>Works as of 10. Dec 2005</TD> - <TD bgColor="yellow">No .dev file</TD> + <TD bgColor="yellow">No .dev file, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>Untested in wine. The source is too new for the release version used to tryWine. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>Threads</TD> - <TD>Works as of 10. Dec 2005</TD> + <TD style="width: 351px">Threads</TD> <TD>Works as of 10. Dec 2005</TD> + <TD>Works as of 16 June 2007, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD bgColor="red">runtime misfunction. (Comes up but only runs one thread. No time spent to figure out why yet..) ASW Nov 13, 2005</TD> </TR> <TR> - <TD>TicTacTo</TD> + <TD style="width: 351px">TicTacToe</TD> <TD>Works as of 10. Dec 2005</TD> - <TD>Works as of 9 Dec 2006, asw</TD> + <TD>Works as of 16 June 2007, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>TimerTest</TD> + <TD style="width: 351px">TimerTest</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 9 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetButton</TD> + <TD style="width: 351px">WidgetButton</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 9 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Mar 22, 2006</TD> </TR> <TR> - <TD>WidgetButtonTrigger</TD> + <TD style="width: 351px">WidgetButtonTrigger</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 9 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetCheckBox</TD> + <TD style="width: 351px">WidgetCheckBox</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 9 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetCombo</TD> + <TD style="width: 351px">WidgetCombo</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 9 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetDateTime</TD> + <TD style="width: 351px">WidgetDateTime</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 9 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> @@ -234,23 +225,23 @@ </TR> <TR> - <TD>WidgetDialog</TD> + <TD style="width: 351px">WidgetDialog</TD> <TD>Works as of 9 Dec 2006, asw</TD> <TD>Works as of 16 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> - <TD></TD> + <TD>Works as of 17 June 2007, asw</TD> </TR> <TR> - <TD>WidgetFun</TD> + <TD style="width: 351px">WidgetFun</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 9 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetGraph</TD> + <TD style="width: 351px">WidgetGraph</TD> <TD>works ASW Nov 16, 2005</TD> <TD>Works, Dec 9, 2006, asw </TD> <TD>Doesn't exists with a Win CE sample project</TD> @@ -258,14 +249,14 @@ ASW Nov 16, 2005</TD> </TR> <TR> - <TD>WidgetInherited</TD> + <TD style="width: 351px">WidgetInherited</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 9 Dec 2006</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetList</TD> + <TD style="width: 351px">WidgetList</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Doesn't exists with a Win CE sample project</TD> @@ -273,14 +264,14 @@ ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetLoadFile</TD> + <TD style="width: 351px">WidgetLoadFile</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 9 Dec 2006, asw </TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetMDIWindow</TD> + <TD style="width: 351px">WidgetMDIWindow</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 9 Dec 2006</TD> <TD>Doesn't exists with a Win CE sample project</TD> @@ -288,7 +279,7 @@ runtime misfunction error 87 ASW Mar 22, 2006</TD> </TR> <TR> - <TD>WidgetMenu </TD> + <TD style="width: 351px">WidgetMenu </TD> <TD>Works as of 10. Dec 2005<BR> 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 @@ -299,7 +290,7 @@ banner, and the font is small on Linux. ASW Mar 22, 2006</TD> </TR> <TR> - <TD >WidgetMessageBox</TD> + <TD style="width: 351px" >WidgetMessageBox</TD> <TD >Note ASTERIX shows up as a !</TD> <TD >Works as of 9 Dec 2006, asw</TD> <TD >Doesn't exists with a Win CE sample project</TD> @@ -307,14 +298,14 @@ onlypartial functionality. Note ASTERIX shows up as a !.ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetModalDialog</TD> + <TD style="width: 351px">WidgetModalDialog</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 9 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> - <TD>works. ASW Nov 13, 2005</TD> + <TD bgColor="yellow">Mostly works, but Modal Dialog from Resource does not. ASW June 17, 2007</TD> </TR> <TR> - <TD>WidgetProgressBar</TD> + <TD style="width: 351px">WidgetProgressBar</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 10 Dec 2006, asw </TD> <TD>Doesn't exists with a Win CE sample project</TD> @@ -325,98 +316,98 @@ </TD> </TR> <TR> - <TD>WidgetRadioButtonGroup</TD> + <TD style="width: 351px">WidgetRadioButtonGroup</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. Did notice that Radio 1-2 position is a bit strange ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetRichTextBox</TD> + <TD style="width: 351px">WidgetRichTextBox</TD> <TD>Works as of 10 Dec 2005</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetSaveFile</TD> + <TD style="width: 351px">WidgetSaveFile</TD> <TD>Works as of 10 Dec 2005</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetSlider</TD> + <TD style="width: 351px">WidgetSlider</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetSpinner</TD> + <TD style="width: 351px">WidgetSpinner</TD> <TD>Double invocation from onScrollHorz.</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetSplitter</TD> + <TD style="width: 351px">WidgetSplitter</TD> <TD> Works as of 17 Dec 2006, asw </TD> <TD> Works as of 17 Dec 2006, asw </TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetStatic</TD> + <TD style="width: 351px">WidgetStatic</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetStatusBar</TD> + <TD style="width: 351px">WidgetStatusBar</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetTabControl</TD> + <TD style="width: 351px">WidgetTabControl</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetTextBox</TD> + <TD style="width: 351px">WidgetTextBox</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetToolbar</TD> + <TD style="width: 351px">WidgetToolbar</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Nov 13, 2005</TD> </TR> <TR> - <TD>WidgetTreeView</TD> + <TD style="width: 351px">WidgetTreeView</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Works as of 10 Dec 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Mar 22, 2006</TD> </TR> <TR> - <TD>WidgetWindow</TD> + <TD style="width: 351px">WidgetWindow</TD> <TD>works as Dec 10, 2006, asw</TD> <TD>works as Dec 10, 2006, asw</TD> <TD>Doesn't exists with a Win CE sample project</TD> <TD>works. ASW Mar 22, 2006</TD> </TR> <TR> - <TD>WidgetWindowSubclassed</TD> + <TD style="width: 351px">WidgetWindowSubclassed</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Works as of 10. Dec 2005</TD> <TD>Doesn't exists with a Win CE sample project</TD> |
|
From: andrew7 <bd...@us...> - 2007-06-18 00:34:20
|
Update of /cvsroot/smartwin/SmartWin/tests/Canvas In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv20272 Modified Files: canvas_all.cpp Log Message: Allow gdi+ only on Microsoft compilers Index: canvas_all.cpp =================================================================== RCS file: /cvsroot/smartwin/SmartWin/tests/Canvas/canvas_all.cpp,v retrieving revision 1.12 retrieving revision 1.13 diff -u -d -r1.12 -r1.13 --- canvas_all.cpp 18 Feb 2007 01:00:10 -0000 1.12 +++ canvas_all.cpp 18 Jun 2007 00:34:17 -0000 1.13 @@ -22,8 +22,11 @@ using namespace SmartWin; #include "encircle.h" -// Remove the comment part below to use GdiPlus and view an Image in addition to the other cool stuff you see... ;) +// Warning: Pre WinXp systems don't have gdi+ +#ifdef _MSC_VER #define UseGdiPlus 1 +#endif + #ifdef UseGdiPlus #include <gdiplus.h> using namespace Gdiplus; |
|
From: andrew7 <bd...@us...> - 2007-06-17 03:03:13
|
Update of /cvsroot/smartwin/SmartWin/tests/NotePad In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv14561 Modified Files: MainWindow.cpp Log Message: Add ES_AUTOHSCROLL | ES_AUTOVSCROLL so text area does not lockup after loading a file. Index: MainWindow.cpp =================================================================== RCS file: /cvsroot/smartwin/SmartWin/tests/NotePad/MainWindow.cpp,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- MainWindow.cpp 9 Jun 2007 19:32:03 -0000 1.17 +++ MainWindow.cpp 17 Jun 2007 03:03:09 -0000 1.18 @@ -169,11 +169,11 @@ WidgetTextBox::Seed textBoxCS; - textBoxCS.style = ES_MULTILINE | ES_WANTRETURN | WS_VISIBLE; + textBoxCS.style = ES_MULTILINE | ES_WANTRETURN | WS_VISIBLE | ES_AUTOHSCROLL | ES_AUTOVSCROLL ; textBoxCS.exStyle = WS_EX_CLIENTEDGE; textBoxCS.font = sw::createFont( _T( "Courier New" ), 16, 0, 1, ANSI_CHARSET, false, false, false, 0, OUT_DEFAULT_PRECIS ); itsTextField = createTextBox( textBoxCS ); - itsTextField->setTextLimit( 100000 ); // Allow large files to be edited. + itsTextField->setTextLimit( 1000000 ); // Allow large files to be edited. itsTextField->setScrollBarHorizontally(); itsTextField->setScrollBarVertically(); |
|
From: andrew7 <bd...@us...> - 2007-06-16 21:59:50
|
Update of /cvsroot/smartwin/SmartWin/SmartSOAP In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv25105/SmartSOAP Modified Files: SmartSOAP.dev Log Message: Use relative include path Index: SmartSOAP.dev =================================================================== RCS file: /cvsroot/smartwin/SmartWin/SmartSOAP/SmartSOAP.dev,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- SmartSOAP.dev 25 Mar 2006 09:54:44 -0000 1.2 +++ SmartSOAP.dev 16 Jun 2007 21:59:45 -0000 1.3 @@ -5,7 +5,7 @@ Type=2 Ver=1 ObjFiles= -Includes=D:\Projects\SmartWin\SmartWin\include +Includes=..\include Libs= PrivateResource= ResourceIncludes= |
|
From: andrew7 <bd...@us...> - 2007-06-16 20:04:36
|
Update of /cvsroot/smartwin/SmartWin/tests/HelloSmartWin In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv12334 Modified Files: hello.cpp Log Message: Adjustments for wince. Index: hello.cpp =================================================================== RCS file: /cvsroot/smartwin/SmartWin/tests/HelloSmartWin/hello.cpp,v retrieving revision 1.26 retrieving revision 1.27 diff -u -d -r1.26 -r1.27 --- hello.cpp 18 Feb 2007 01:01:33 -0000 1.26 +++ hello.cpp 16 Jun 2007 20:04:30 -0000 1.27 @@ -23,6 +23,77 @@ { SINGLE_WIDGETS = 0, MULTI_WIDGETS = 1 }; // Which of 2 tabbed pages + +#define tryIconButton 1 + +#ifdef tryIconButton + +// How to generate you own widgets derived from the existing Widgets +// +// Bitmap dogmap( _T("dog.bmp") ) ) +// +class IconButton + : public WidgetButton< IconButton, SmartWin::MessageMapPolicyNormalWidget > +{ +private: + BitmapPtr itsBgBitmap; + +public: + IconButton( Widget * parent, BitmapPtr bitmap ) + // Note! + // We MUST explicitly call Widget's Constructor since it's a diamond inheritence, at least until bjarne's C++0x gives us Constructor Forwarding... ;) + : Widget( parent ), itsBgBitmap( bitmap ), + WidgetButton< IconButton, SmartWin::MessageMapPolicyNormalWidget >( parent ) + { + } + + void paintBitmapButton( WidgetButton< IconButton, SmartWin::MessageMapPolicyNormalWidget > *btn, Canvas & canvas ) + { + Brush bitmapBrush( canvas, itsBgBitmap ); + sw::Rectangle rc( btn->getClientAreaSize() ); + canvas.fillRectangle( rc, bitmapBrush ); + canvas.setTextColor( RGB( 11, 0, 11 ) ); + canvas.setBkMode( true ); + boost::shared_ptr< Font > font( btn->getFont() ); + canvas.selectFont( font ); + canvas.drawText( btn->getText(), rc, DT_CENTER | DT_VCENTER ); + } + +/* + + // Creating bgImageButton + WidgetButton::Seed buttonCS; + + buttonCS.style |= BS_OWNERDRAW; + buttonCS.caption = _T( "Piip II!" ); + buttonCS.font = createFont( _T( "Comic Sans" ), 28, 8, 4, ANSI_CHARSET, false, false, false, 0, OUT_DEFAULT_PRECIS ); + itsImgButton = createButton( buttonCS ); + itsImgButton->onPainting( & Buttons::paintBitmapButton ); + +*/ + + + // Event handler for "click" event, maark the "funny" paramater... + void click( WidgetButton< IconButton, SmartWin::MessageMapPolicyNormalWidget > * btn ) + { + WidgetMessageBox< SmartWin::Widget > dlg( btn->getParent() ); + dlg.show( btn->getText() ); + } + + void init() + { + // Doing "init" stuff + create(); + onPainting( & IconButton::paintBitmapButton ); + } +}; + +#endif + + + + + // HelloWinClass defines a window with native controls based on the Win32 API. // // For our purposes, use this pattern for simple windows: @@ -66,7 +137,7 @@ // // By convention, we prefix all member variables with "its". // - WidgetButtonPtr itsButton; + WidgetButtonPtr itsButton; WidgetCheckBoxPtr itsCheckBox; WidgetComboBoxPtr itsComboBox; WidgetDataGridPtr itsGrid, itsList; @@ -80,6 +151,10 @@ WidgetTextBoxPtr itsTextA, itsTextB; WidgetTreeViewPtr itsTree; +#ifdef tryIconButton + IconButton * itsIconButton; +#endif + // The Widgets are organized on two child windows // which correspond to the two tabs of the WidgetTabSheet // @@ -123,9 +198,13 @@ // void menuChooseFont( WidgetMenuPtr menu, unsigned item ) { -#ifndef WINCE + FontPtr font; +#ifdef WINCE + font= createFont( _T( "Comic Sans" ), 8, 6 ); +#else WidgetChooseFont widget = createChooseFont(); // Built in dialog. - FontPtr font = widget.showDialog(); + font = widget.showDialog(); +#endif if ( font.get() != 0 ) { FontPtr choosenFont( font ); @@ -147,7 +226,6 @@ updateWidget(); // Redo everything with the new font. layout(); // to show how the new Font effects the layout. } -#endif } void menuCloseEvent( WidgetMenuPtr menu, unsigned item ) @@ -301,6 +379,11 @@ itsButton->setText( _T( "Display a message" ) ); itsButton->onClicked( & HelloWinClass::buttonClicked ); +#ifdef tryIconButton + itsIconButton; +#endif + + itsCheckBox = itsSingle->createCheckBox(); itsCheckBox->setText( _T( "&Check me" ) ); itsCheckBox->onClicked( & HelloWinClass::checkclicked ); @@ -425,7 +508,8 @@ itsColor = 0x808000; // Defaulting to yellow... itsEllipseSize = Point( 100, 100 ); - // Creating main menu + + // Creating main menu. itsMainMenu = createMenu(); WidgetMenuPtr file = itsMainMenu->appendPopup( _T( "&File" ) ); int m = 1; @@ -461,8 +545,9 @@ layout(); // for the first time, and only AFTER all Widgets are created. onSized( & HelloWinClass::isResized ); - // Since tab sheet will hide underlaying controls we need to position it at the BOTTOM of the Z-order window chain - ::SetWindowPos( itsTabSheet->handle(), HWND_BOTTOM, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE ); +#ifdef WINCE + itsTabSheet->bringToBottom(); // To prevent tab sheet from hiding its controls. +#endif updateWidget(); setVisible( true ); } @@ -485,6 +570,10 @@ { SmartWin::Rectangle r( getClientAreaSize() ); +#ifdef WINCE + r = r.cropTop( 24 ); // WinCe does not account for the menu in the client area +#endif + r = r.left( 1.0 - itsGraphicsPart ); // The non-graphics side. itsTabSheet->setBounds( r ); @@ -647,7 +736,7 @@ SmartWin::Rectangle texArea( area.row( r++, rows ) ); c.setBkColor( background ); - c.extTextOut( _T( "Hello Graphical World" ), texArea.pos.x, texArea.pos.y ); + c.extTextOut( _T( "Graphical Hello World" ), texArea.pos.x, texArea.pos.y ); SmartWin::Rectangle ellipseArea( area.row( r++, rows ) ); { @@ -663,7 +752,7 @@ c.line( area.row( r++, rows ) ); { TextPen purplepen( c, 0x800080 ); - c.drawText( _T( "Hello Purple World" ), area.row( r++, rows ), DT_SINGLELINE | DT_CENTER | DT_VCENTER ); + c.drawText( _T( "Purple Hello" ), area.row( r++, rows ), DT_SINGLELINE | DT_CENTER | DT_VCENTER ); } // purplepen is now out of scope, so we revert to old color. c.rectangle( area.row( r++, rows ) ); |
|
From: andrew7 <bd...@us...> - 2007-06-16 01:35:47
|
Update of /cvsroot/smartwin/SmartWin/include/smartwin/widgets In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv22328 Modified Files: WidgetSpinner.h Log Message: Allow UDM_GETPOS message to have ERROR_INVALID_INDEX without causing an exception. It seems to work anyhow. Index: WidgetSpinner.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/include/smartwin/widgets/WidgetSpinner.h,v retrieving revision 1.18 retrieving revision 1.19 diff -u -d -r1.18 -r1.19 --- WidgetSpinner.h 23 Jun 2006 22:38:13 -0000 1.18 +++ WidgetSpinner.h 16 Jun 2007 01:35:44 -0000 1.19 @@ -218,7 +218,9 @@ if ( HIWORD( retVal ) != 0 ) { xCeption err( _T( " Something went wrong while trying to retrieve value if WidgetSpinner" ) ); - throw err; + if ( ERROR_INVALID_INDEX != err.getErrorCode() ) { // Allow this error, not sure why. + throw err; + } } return LOWORD( retVal ); #else |
|
From: andrew7 <bd...@us...> - 2007-06-15 22:22:31
|
Update of /cvsroot/smartwin/SmartWin/source In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv9340 Modified Files: Application.cpp Log Message: Clean up on getModuleFileName() Index: Application.cpp =================================================================== RCS file: /cvsroot/smartwin/SmartWin/source/Application.cpp,v retrieving revision 1.46 retrieving revision 1.47 diff -u -d -r1.46 -r1.47 --- Application.cpp 9 Jun 2007 19:27:29 -0000 1.46 +++ Application.cpp 15 Jun 2007 22:22:28 -0000 1.47 @@ -340,9 +340,7 @@ SmartUtil::tstring Application::getModulePath() const { - TCHAR retVal[2049]; - GetModuleFileName( 0, retVal, 2048 ); - SmartUtil::tstring retStr = retVal; + SmartUtil::tstring retStr = getModuleFileName(); retStr = retStr.substr( 0, retStr.find_last_of( '\\' ) + 1 ); return retStr; } @@ -350,8 +348,8 @@ SmartUtil::tstring Application::getModuleFileName() const { TCHAR retVal[2049]; - ::GetModuleFileName( 0, retVal, 2048 ); - return retVal; + unsigned long len= ::GetModuleFileName( 0, retVal, 2048 ); + return SmartUtil::tstring( retVal, len ); } #ifdef __WINE__ |
|
From: andrew7 <bd...@us...> - 2007-06-15 22:09:15
|
Update of /cvsroot/smartwin/SmartWin/SmartUtil In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv3953 Modified Files: UtilSystemHeaders.h Log Message: Allow for these symbols to be predefined: _WIN_IE _WIN32_IE WINVER Index: UtilSystemHeaders.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/SmartUtil/UtilSystemHeaders.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- UtilSystemHeaders.h 5 May 2006 17:14:39 -0000 1.3 +++ UtilSystemHeaders.h 15 Jun 2007 22:09:12 -0000 1.4 @@ -32,9 +32,15 @@ #ifdef __GNUC__ // Need to tell gcc which version of Windows we're targeting! +#ifndef _WIN_IE #define _WIN_IE 0x0501 +#endif +#ifndef _WIN32_IE #define _WIN32_IE 0x0501 +#endif +#ifndef WINVER #define WINVER 0x500 +#endif // Removing windows.h max and min macro #undef NOMINMAX |
|
From: andrew7 <bd...@us...> - 2007-06-15 21:49:46
|
Update of /cvsroot/smartwin/SmartWin/SmartSOAP In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv29898 Modified Files: Makefile.mingw Log Message: Per arnetheduck, mingw. Get the case right for DateTime.obj Index: Makefile.mingw =================================================================== RCS file: /cvsroot/smartwin/SmartWin/SmartSOAP/Makefile.mingw,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- Makefile.mingw 18 Apr 2006 12:30:22 -0000 1.1 +++ Makefile.mingw 15 Jun 2007 21:49:39 -0000 1.2 @@ -2,7 +2,7 @@ ../SmartNetwork/HttpRequest.o \ ../SmartNetwork/HttpResponse.o \ ../SmartNetwork/TcpTextStream.o \ - ../SmartUtil/dateTime.o \ + ../SmartUtil/DateTime.o \ ../SmartUtil/TimeSpan.o \ ../SmartXML/XmlAttribute.o \ ../SmartXML/XmlDocument.o \ |
|
From: andrew7 <bd...@us...> - 2007-06-15 21:47:47
|
Update of /cvsroot/smartwin/SmartWin/include/smartwin/widgets In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv29133 Modified Files: WidgetDataGridEditBox.h WidgetTextBox.h Log Message: per arnetheduc's request to allow mingw Index: WidgetTextBox.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/include/smartwin/widgets/WidgetTextBox.h,v retrieving revision 1.38 retrieving revision 1.39 diff -u -d -r1.38 -r1.39 --- WidgetTextBox.h 10 Dec 2006 19:35:08 -0000 1.38 +++ WidgetTextBox.h 15 Jun 2007 21:47:44 -0000 1.39 @@ -74,7 +74,10 @@ typedef WidgetTextBox< EventHandlerClass, MessageMapPolicy, NormalTextBox< EventHandlerClass, MessageMapPolicy > > TextBoxType; }; +#ifdef _MSC_VER #pragma warning( disable : 4101 ) +#endif + /// Text Box Control class /** \ingroup WidgetControls * \WidgetUsageInfo Index: WidgetDataGridEditBox.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/include/smartwin/widgets/WidgetDataGridEditBox.h,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- WidgetDataGridEditBox.h 5 May 2006 17:14:42 -0000 1.8 +++ WidgetDataGridEditBox.h 15 Jun 2007 21:47:44 -0000 1.9 @@ -95,7 +95,10 @@ template< class EventHandlerClass, class MessageMapPolicy > LRESULT ListViewEditBox< EventHandlerClass, MessageMapPolicy >::sendWidgetMessage( HWND hWnd, UINT msg, WPARAM & wPar, LPARAM & lPar ) { +#ifdef _MSC_VER #pragma warning( disable : 4060 ) +#endif + switch ( msg ) { // Windows CE doesn't support WM_WINDOWPOSCHANGING message |
|
From: andrew7 <bd...@us...> - 2007-06-15 21:41:49
|
Update of /cvsroot/smartwin/SmartWin/include/smartwin In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv26581 Modified Files: GCCHeaders.h Log Message: Per arnetheduck's request. Index: GCCHeaders.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/include/smartwin/GCCHeaders.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- GCCHeaders.h 18 Dec 2006 01:05:03 -0000 1.6 +++ GCCHeaders.h 15 Jun 2007 21:41:45 -0000 1.7 @@ -32,9 +32,15 @@ #ifdef __GNUC__ // Need to tell gcc which version of Windows we're targeting! +#ifndef _WIN_IE #define _WIN_IE 0x0501 +#endif +#ifndef _WIN32_IE #define _WIN32_IE 0x0501 +#endif +#ifndef WINVER #define WINVER 0x500 +#endif // Removing windows.h max and min macro #undef NOMINMAX |
|
From: andrew7 <bd...@us...> - 2007-06-11 01:30:00
|
Update of /cvsroot/smartwin/SmartWin/tests/SmartSOAPWsdlParserTester In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv11803 Modified Files: ProxyClasses.h Log Message: Allow unicode or mbs compilation Index: ProxyClasses.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/tests/SmartSOAPWsdlParserTester/ProxyClasses.h,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- ProxyClasses.h 30 Nov 2006 01:02:09 -0000 1.4 +++ ProxyClasses.h 11 Jun 2007 01:29:55 -0000 1.5 @@ -354,7 +354,7 @@ { HelloWorldSerializer serializer; SmartSOAP::SoapRequest< HelloWorldSerializer, HelloWorldInput, HelloWorldResponseInput > request( - "http://localhost/Tester1Endpoint/CustomObjects.asmx", + _T("http://localhost/Tester1Endpoint/CustomObjects.asmx"), _T( "SOAPAction : \"http://smartwin.org/SmartSOAP/WebServices/Test/CustomObject/HelloWorld\""), 80, serializer, @@ -368,7 +368,7 @@ { GetArrayOfStringsSerializer serializer; SmartSOAP::SoapRequest< GetArrayOfStringsSerializer, GetArrayOfStringsInput, GetArrayOfStringsResponseInput > request( - "http://localhost/Tester1Endpoint/CustomObjects.asmx", + _T("http://localhost/Tester1Endpoint/CustomObjects.asmx"), _T( "SOAPAction : \"http://smartwin.org/SmartSOAP/WebServices/Test/CustomObject/GetArrayOfStrings\""), 80, serializer, @@ -382,7 +382,7 @@ { GetCustomObjectSerializer serializer; SmartSOAP::SoapRequest< GetCustomObjectSerializer, GetCustomObjectInput, GetCustomObjectResponseInput > request( - "http://localhost/Tester1Endpoint/CustomObjects.asmx", + _T("http://localhost/Tester1Endpoint/CustomObjects.asmx"), _T( "SOAPAction : \"http://smartwin.org/SmartSOAP/WebServices/Test/CustomObject/GetCustomObject\""), 80, serializer, @@ -396,7 +396,7 @@ { GetDateTimeNowSerializer serializer; SmartSOAP::SoapRequest< GetDateTimeNowSerializer, GetDateTimeNowInput, GetDateTimeNowResponseInput > request( - "http://localhost/Tester1Endpoint/CustomObjects.asmx", + _T("http://localhost/Tester1Endpoint/CustomObjects.asmx"), _T( "SOAPAction : \"http://smartwin.org/SmartSOAP/WebServices/Test/CustomObject/GetDateTimeNow\""), 80, serializer, @@ -410,7 +410,7 @@ { GetReallyAdvancedReturnValueSerializer serializer; SmartSOAP::SoapRequest< GetReallyAdvancedReturnValueSerializer, GetReallyAdvancedReturnValueInput, GetReallyAdvancedReturnValueResponseInput > request( - "http://localhost/Tester1Endpoint/CustomObjects.asmx", + _T("http://localhost/Tester1Endpoint/CustomObjects.asmx"), _T( "SOAPAction : \"http://smartwin.org/SmartSOAP/WebServices/Test/CustomObject/GetReallyAdvancedReturnValue\""), 80, serializer, |
|
From: andrew7 <bd...@us...> - 2007-06-11 01:28:10
|
Update of /cvsroot/smartwin/SmartWin/tests/WidgetDialog In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv11692 Modified Files: Main.cpp Log Message: Allow unicode or mbs compilation Index: Main.cpp =================================================================== RCS file: /cvsroot/smartwin/SmartWin/tests/WidgetDialog/Main.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- Main.cpp 18 Feb 2007 14:35:20 -0000 1.2 +++ Main.cpp 11 Jun 2007 01:28:07 -0000 1.3 @@ -139,7 +139,7 @@ for ( int i=0; i < 5; i++ ) { ss << _T("Page ") << i; - itsTabSheet->addPage( ss.str(), i ); ss.str( "" ); + itsTabSheet->addPage( ss.str(), i ); ss.str( _T("") ); ss << _T("Dialog ") << i; itsHexDialogs.push_back( new HexDialog<DialogTestClass>( this, ss.str(), IDD_HEXDIALOG ) ); @@ -252,7 +252,7 @@ { if ( NULL == itsPopupDialog ) { itsPopupDialog = new HexDialog<DialogTestClass>( - this, "Modeless dialog as POPUP", IDD_HEXDIALOGTWO ); + this, _T("Modeless dialog as POPUP"), IDD_HEXDIALOGTWO ); itsPopupDialog->setVisible( true ); // } else { itsPopupDialog->setFocus(); |
|
From: andrew7 <bd...@us...> - 2007-06-11 01:19:30
|
Update of /cvsroot/smartwin/SmartWin/include/smartwin/aspects In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv9473 Modified Files: AspectKeyPressed.h Log Message: Allow WinCE to compile this Index: AspectKeyPressed.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/include/smartwin/aspects/AspectKeyPressed.h,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- AspectKeyPressed.h 5 May 2006 17:14:38 -0000 1.15 +++ AspectKeyPressed.h 11 Jun 2007 01:19:26 -0000 1.16 @@ -251,6 +251,9 @@ } else { +#ifdef WINCE + theChar= MapVirtualKey( vkey, 2 ); // Needs checking.... +#else BYTE keyboardState[256]; ::GetKeyboardState( keyboardState ); @@ -260,6 +263,7 @@ { theChar = wordchar & 0xff; } +#endif } return theChar; } |
|
From: andrew7 <bd...@us...> - 2007-06-11 01:11:31
|
Update of /cvsroot/smartwin/SmartWin/SmartSOAP/Tester1 In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv6321 Modified Files: Main.cpp Log Message: Unicode Index: Main.cpp =================================================================== RCS file: /cvsroot/smartwin/SmartWin/SmartSOAP/Tester1/Main.cpp,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- Main.cpp 30 Nov 2006 00:44:55 -0000 1.15 +++ Main.cpp 11 Jun 2007 01:11:25 -0000 1.16 @@ -70,7 +70,7 @@ // Then we create our SoapRequest SoapRequest< HelloWorldSerializer, HelloWorldSender, HelloWorldReturnValue > soap( - "localhost", // Which host is our WebService located at + _T("localhost"), // Which host is our WebService located at _T("/Tester1Endpoint/CustomObjects.asmx"), // What is the PATH to our WebService _T("SOAPAction:\"http://smartwin.org/SmartSOAP/WebServices/Test/CustomObject/HelloWorld\""), // What is the SOAPAction or basically the NAMESPACE of our WebService + the name of the function we're calling 80, // Which TCP/IP port is the WebService listening on @@ -148,7 +148,7 @@ // Then we create our SoapRequest SoapRequest< GetArrayOfStringsSerializer, GetArrayOfStringsSender, GetArrayOfStringsReturnValue > soap( - "localhost", // Which host is our WebService located at + _T("localhost"), // Which host is our WebService located at _T("/Tester1Endpoint/CustomObjects.asmx"), // What is the PATH to our WebService _T("SOAPAction:\"http://smartwin.org/SmartSOAP/WebServices/Test/CustomObject/GetArrayOfStrings\""), // What is the SOAPAction or basically the NAMESPACE of our WebService + the name of the function we're calling 80, // Which TCP/IP port is the WebService listening on @@ -235,7 +235,7 @@ // Then we create our SoapRequest SoapRequest< GetCustomObjectSerializer, TestGetStuff, TestReturnStuff > soap( - "localhost", + _T("localhost"), _T("/Tester1Endpoint/CustomObjects.asmx"), _T("SOAPAction:\"http://smartwin.org/SmartSOAP/WebServices/Test/CustomObject/GetCustomObject\""), 80, @@ -305,7 +305,7 @@ // Then we create our SoapRequest SoapRequest< GetDateTimeNowSerializer, GetDateTimeNowRequest, GetDateTimeNowResponse > soap( - "localhost", + _T("localhost"), _T("/Tester1Endpoint/CustomObjects.asmx"), _T("SOAPAction:\"http://smartwin.org/SmartSOAP/WebServices/Test/CustomObject/GetDateTimeNow\""), 80, |
|
From: andrew7 <bd...@us...> - 2007-06-11 01:10:53
|
Update of /cvsroot/smartwin/SmartWin/SmartNetwork In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv5924 Modified Files: HttpRequest.cpp HttpRequest.h NetworkSystemHeaders.h TcpTextStream.cpp TcpTextStream.h Log Message: Unicode conversion Index: TcpTextStream.cpp =================================================================== RCS file: /cvsroot/smartwin/SmartWin/SmartNetwork/TcpTextStream.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- TcpTextStream.cpp 5 May 2006 17:21:44 -0000 1.2 +++ TcpTextStream.cpp 11 Jun 2007 01:10:45 -0000 1.3 @@ -33,10 +33,12 @@ namespace SmartNetwork { -TcpTextStream::TcpTextStream( const std::string & serverIpAddress, const std::string & port, unsigned int timeout, SmartUtil::ConversionCodepage::Codepage codepage ) +TcpTextStream::TcpTextStream( const SmartUtil::tstring & serverIpAddress, const SmartUtil::tstring & port, unsigned int timeout, SmartUtil::ConversionCodepage::Codepage codepage ) : std::basic_iostream< TCHAR >( & itsTcpStreamBuffer ), itsTcpStreamBuffer( timeout, codepage ) { - itsTcpStreamBuffer.clientInit( serverIpAddress, port ); + std::string serverIpAddr_ascii = SmartUtil::AsciiGuaranteed::doConvert( serverIpAddress.c_str(), codepage ); + std::string port_ascii = SmartUtil::AsciiGuaranteed::doConvert( port.c_str(), codepage ); + itsTcpStreamBuffer.clientInit( serverIpAddr_ascii, port_ascii ); } } Index: HttpRequest.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/SmartNetwork/HttpRequest.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- HttpRequest.h 5 May 2006 17:14:40 -0000 1.5 +++ HttpRequest.h 11 Jun 2007 01:10:45 -0000 1.6 @@ -51,7 +51,7 @@ std::vector< SmartUtil::tstring > itsHeaders; SmartUtil::tstring itsPostUrl; SmartUtil::tstring itsContentType; - std::string itsHost; + const SmartUtil::tstring itsHost; HttpRequest( const HttpRequest & rhs ); // Never implemented...!! @@ -66,10 +66,10 @@ * The timeout value defines how long time the request will wait after sending the request before it "gives up" getting a return value * and raises an exception. */ - HttpRequest( const std::string & host, const SmartUtil::tstring & postUrl, const SmartUtil::tstring & contentType, const std::string & port, unsigned int timeout ); + HttpRequest( const SmartUtil::tstring & host, const SmartUtil::tstring & postUrl, const SmartUtil::tstring & contentType, const SmartUtil::tstring & port, unsigned int timeout ); /// Parses the host and path automatically and adds up the parameters - HttpRequest( const std::string & connectionString, const SmartUtil::tstring & contentType, const std::string & port, unsigned int timeout ); + HttpRequest( const SmartUtil::tstring & connectionString, const SmartUtil::tstring & contentType, const SmartUtil::tstring & port, unsigned int timeout ); /// Adds up an HTTP header /** By default only the "POST", "Host:", "Content-Length:" and the "Content-Type:" headers are included. Index: TcpTextStream.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/SmartNetwork/TcpTextStream.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- TcpTextStream.h 5 May 2006 17:14:40 -0000 1.3 +++ TcpTextStream.h 11 Jun 2007 01:10:45 -0000 1.4 @@ -58,7 +58,7 @@ * is the amount of seconds we wait after starting a "read action" before we give up and throws an exception. * Stream is synchronous meaning if you need asynchronous access you need to wrap it yourself! */ - TcpTextStream( const std::string & serverHostAddress, const std::string & port, unsigned int timeout, + TcpTextStream( const SmartUtil::tstring & serverHostAddress, const SmartUtil::tstring & port, unsigned int timeout, SmartUtil::ConversionCodepage::Codepage codepage = SmartUtil::ConversionCodepage::UTF8 ); }; } Index: HttpRequest.cpp =================================================================== RCS file: /cvsroot/smartwin/SmartWin/SmartNetwork/HttpRequest.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- HttpRequest.cpp 5 May 2006 17:21:44 -0000 1.5 +++ HttpRequest.cpp 11 Jun 2007 01:10:45 -0000 1.6 @@ -34,29 +34,29 @@ namespace SmartHTTP { -HttpRequest::HttpRequest( const std::string & host, const SmartUtil::tstring & postUrl, const SmartUtil::tstring & contentType, const std::string & port, unsigned int timeout ) +HttpRequest::HttpRequest( const SmartUtil::tstring & host, const SmartUtil::tstring & postUrl, const SmartUtil::tstring & contentType, const SmartUtil::tstring & port, unsigned int timeout ) : itsTcp( new SmartNetwork::TcpTextStream( host, port, timeout ) ), itsPostUrl( postUrl ), itsContentType( contentType ), itsHost( host ) {} -std::string getHost( const std::string & conn ) +const SmartUtil::tstring getHost( const SmartUtil::tstring & conn ) { size_t startOfHost = conn.find_first_of( ':' ) + 3; size_t endOfHost = conn.find_first_of( '/', startOfHost ); - std::string retVal = conn.substr( startOfHost, endOfHost - startOfHost ); + SmartUtil::tstring retVal = conn.substr( startOfHost, endOfHost - startOfHost ); return retVal; } -SmartUtil::tstring getPostPath( const std::string & conn ) +SmartUtil::tstring getPostPath( const SmartUtil::tstring & conn ) { size_t startOfHost = conn.find_first_of( '/', conn.find_first_of( ':' ) + 4 ); - std::string retVal = conn.substr( startOfHost ); - return SmartUtil::Ascii2CurrentBuild::doConvert( retVal, SmartUtil::ConversionCodepage::ANSI ); + SmartUtil::tstring retVal = conn.substr( startOfHost ); + return retVal; } -HttpRequest::HttpRequest( const std::string & connectionString, const SmartUtil::tstring & contentType, const std::string & port, unsigned int timeout ) +HttpRequest::HttpRequest( const SmartUtil::tstring & connectionString, const SmartUtil::tstring & contentType, const SmartUtil::tstring & port, unsigned int timeout ) : itsTcp( new SmartNetwork::TcpTextStream( getHost( connectionString ), port, timeout ) ), itsPostUrl( getPostPath( connectionString ) ), itsContentType( contentType ), @@ -80,7 +80,7 @@ headers.push_back( SmartUtil::tstring( _T( "POST " ) ) + itsPostUrl + _T( " HTTP/1.0" ) ); // TODO: Optimize!! Really SLOW!! - headers.push_back( SmartUtil::tstring( _T( "Host: " ) ) + SmartUtil::Ascii2CurrentBuild::doConvert( itsHost, SmartUtil::ConversionCodepage::ANSI ) ); + headers.push_back( SmartUtil::tstring( _T( "Host: " ) ) + itsHost ); headers.push_back( SmartUtil::tstring( _T( "Content-Type: " ) ) + itsContentType ); headers.push_back( _T( "Content-Length: " ) + boost::lexical_cast< SmartUtil::tstring >( static_cast< unsigned >( SmartUtil::AsciiGuaranteed::doConvert( requestContent, SmartUtil::ConversionCodepage::UTF8 ).size() ) ) ); Index: NetworkSystemHeaders.h =================================================================== RCS file: /cvsroot/smartwin/SmartWin/SmartNetwork/NetworkSystemHeaders.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- NetworkSystemHeaders.h 24 Dec 2006 17:12:52 -0000 1.5 +++ NetworkSystemHeaders.h 11 Jun 2007 01:10:45 -0000 1.6 @@ -49,6 +49,7 @@ #ifndef WINCE #ifndef __GNUC__ #pragma comment( lib, "wsock32.lib" ) + #pragma comment( lib, "Ws2_32.lib" ) #endif #else #ifndef __GNUC__ |