Mercurial > projects > dwt-addons
changeset 41:1ab001d67011
implement win version detection
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Thu, 10 Apr 2008 11:21:35 +0200 |
parents | da5ad8eedf5d |
children | 4567a6f54939 |
files | dwtx/jface/resource/FontRegistry.d |
diffstat | 1 files changed, 16 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/dwtx/jface/resource/FontRegistry.d Thu Apr 10 08:59:39 2008 +0200 +++ b/dwtx/jface/resource/FontRegistry.d Thu Apr 10 11:21:35 2008 +0200 @@ -45,6 +45,7 @@ import dwt.dwthelper.ResourceBundle; import dwt.dwthelper.utils; import dwt.dwthelper.Runnable; +version(Windows) import dwt.internal.win32.OS; /** * A font registry maintains a mapping between symbolic font names @@ -349,11 +350,21 @@ } else version( Windows ){ char[] propdata; - static assert( false, "TODO: detect windows version" ); - propdata = import( prefix ~ "windowsnt" ~ postfix ); - propdata = import( prefix ~ "windows98" ~ postfix ); - propdata = import( prefix ~ "windows2000" ~ postfix ); - propdata = import( prefix ~ "windowsxp" ~ postfix ); + if( OS.IsWin95 && OS.WIN32_VERSION >= OS.VERSION (4, 10 )){ + propdata = import( prefix ~ "windows98" ~ postfix ); + } + else if( OS.WIN32_VERSION >= OS.VERSION (5, 1 )){ + propdata = import( prefix ~ "windowsxp" ~ postfix ); + } + else if( OS.WIN32_VERSION >= OS.VERSION (5, 0)){ + propdata = import( prefix ~ "windows2000" ~ postfix ); + } + else if( OS.WIN32_VERSION >= OS.VERSION (4, 0)){ + propdata = import( prefix ~ "windowsnt" ~ postfix ); + } + else{ + assert( false, "TODO: detect windows version" ); + } } else { static assert( false, "unknown plattform" );