|
Boost : |
From: Reece Dunn (msclrhd_at_[hidden])
Date: 2004-12-15 15:51:10
Jeff Flinn wrote:
> Reece Dunn wrote:
>
>>Hi All,
>>
>>I have been working on revising my GUI library that is currently in
>
>
> ...
>
>
>>Also, the target operating system places design problems on creating a
>>generic interface. For example, Windows supports char * and wchar_t *
>>versions of its API, but the version that should be used depends on
>>whether you are targetting Windows 9x or NT based systems. Windows
>
>
> The vast majority of textual data in my W2K applications tend to be char.
> I'd hate to have to explicitly convert to wchar_t for every API textual
> call.
The same is true when using std::string. I have provided a helper string
class that will perform implicit conversion so that on unicode builds,
char strings are converted to wchar_t strings and vice versa for ascii
builds.
This allows you to do:
gui::main_frame mainfrm( "GUI Application" );
// ...
and have it build on either configuration of the windows API. It also
makes the code more portable, since I am not sure what string type the
other APIs use as default (I presume most are char *), and doing:
gui::main_frame mainfrm( TEXT( "GUI Application" ));
is non-portable and ugly.
The library currently works on msvc 8.0 and 7.1. I am currently getting
an undefined reference to _WinMain_at_16 error on gcc 3.3 and on cw 9.2 I
am getting:
### mwcc Compiler:
# In: ..\..\..\..\boost\boost\function\function_template.hpp
# From: ..\src\win\radio_group.cpp
#-----
# 473: on::has_empty_target(addressof(f))) {
# Error: ^
# ambiguous access to overloaded function
I am going to look into fixing these errors
I also intend on supporting the alternate Boost.Signal syntax for broken
compilers so that msvc 7.0 and borland 5.6 can be supported. I am
getting far too many errors on msvc 6.5 and will not provide support for it.
I have made a few more modifications, available here:
http://uk.geocities.com/msclrhd/gui/gui.zip
Regards,
Reece
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk