You can subscribe to this list here.
2006 |
Jan
|
Feb
(24) |
Mar
(9) |
Apr
(4) |
May
(7) |
Jun
(13) |
Jul
(19) |
Aug
(1) |
Sep
(12) |
Oct
(20) |
Nov
(1) |
Dec
(15) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
|
Feb
(6) |
Mar
(24) |
Apr
(1) |
May
(10) |
Jun
(30) |
Jul
(46) |
Aug
(20) |
Sep
(12) |
Oct
(27) |
Nov
(51) |
Dec
(58) |
2008 |
Jan
(40) |
Feb
(40) |
Mar
(78) |
Apr
(138) |
May
(4) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(5) |
Sep
|
Oct
|
Nov
|
Dec
|
2010 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
|
Jun
(2) |
Jul
(10) |
Aug
(1) |
Sep
(11) |
Oct
(31) |
Nov
(7) |
Dec
(1) |
2011 |
Jan
(1) |
Feb
|
Mar
(3) |
Apr
|
May
(1) |
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
(2) |
Sep
|
Oct
|
Nov
(2) |
Dec
(2) |
2013 |
Jan
(3) |
Feb
(5) |
Mar
(1) |
Apr
|
May
|
Jun
(11) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(4) |
2014 |
Jan
(2) |
Feb
(3) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2015 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2025 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(4) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <pie...@us...> - 2008-03-14 22:13:59
|
Revision: 1040 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1040&view=rev Author: pietricica Date: 2008-03-14 15:13:55 -0700 (Fri, 14 Mar 2008) Log Message: ----------- edited changelog, nsi , version and some small errors in some po files. Modified Paths: -------------- dcplusplus/trunk/DCPlusPlus.nsi dcplusplus/trunk/changelog.txt dcplusplus/trunk/dcpp/po/es.po dcplusplus/trunk/dcpp/version.h dcplusplus/trunk/win32/DCPlusPlus.rc dcplusplus/trunk/win32/po/es.po dcplusplus/trunk/win32/po/ro.po Modified: dcplusplus/trunk/DCPlusPlus.nsi =================================================================== --- dcplusplus/trunk/DCPlusPlus.nsi 2008-03-13 22:02:50 UTC (rev 1039) +++ dcplusplus/trunk/DCPlusPlus.nsi 2008-03-14 22:13:55 UTC (rev 1040) @@ -64,6 +64,127 @@ File "LICENSE-OpenSSL.txt" File "mingwm10.dll" File "magnet.exe" + SetOutPath "$INSTDIR\locale\ar\LC_MESSAGES\" +File "locale\ar\LC_MESSAGES\dcpp-win32.mo" +File "locale\ar\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\bg\LC_MESSAGES\" +File "locale\bg\LC_MESSAGES\dcpp-win32.mo" +File "locale\bg\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\bs\LC_MESSAGES\" +File "locale\bs\LC_MESSAGES\dcpp-win32.mo" +File "locale\bs\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\ca\LC_MESSAGES\" +File "locale\ca\LC_MESSAGES\dcpp-win32.mo" +File "locale\ca\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\cs\LC_MESSAGES\" +File "locale\cs\LC_MESSAGES\dcpp-win32.mo" +File "locale\cs\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\da\LC_MESSAGES\" +File "locale\da\LC_MESSAGES\dcpp-win32.mo" +File "locale\da\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\de\LC_MESSAGES\" +File "locale\de\LC_MESSAGES\dcpp-win32.mo" +File "locale\de\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\el\LC_MESSAGES\" +File "locale\el\LC_MESSAGES\dcpp-win32.mo" +File "locale\el\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\en_GB\LC_MESSAGES\" +File "locale\en_GB\LC_MESSAGES\dcpp-win32.mo" +File "locale\en_GB\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\es\LC_MESSAGES\" +File "locale\es\LC_MESSAGES\dcpp-win32.mo" +File "locale\es\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\fi\LC_MESSAGES\" +File "locale\fi\LC_MESSAGES\dcpp-win32.mo" +File "locale\fi\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\fr\LC_MESSAGES\" +File "locale\fr\LC_MESSAGES\dcpp-win32.mo" +File "locale\fr\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\gl\LC_MESSAGES\" +File "locale\gl\LC_MESSAGES\dcpp-win32.mo" +File "locale\gl\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\he\LC_MESSAGES\" +File "locale\he\LC_MESSAGES\dcpp-win32.mo" +File "locale\he\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\hr\LC_MESSAGES\" +File "locale\hr\LC_MESSAGES\dcpp-win32.mo" +File "locale\hr\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\hu\LC_MESSAGES\" +File "locale\hu\LC_MESSAGES\dcpp-win32.mo" +File "locale\hu\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\id\LC_MESSAGES\" +File "locale\id\LC_MESSAGES\dcpp-win32.mo" +File "locale\id\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\is\LC_MESSAGES\" +File "locale\is\LC_MESSAGES\dcpp-win32.mo" +File "locale\is\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\it\LC_MESSAGES\" +File "locale\it\LC_MESSAGES\dcpp-win32.mo" +File "locale\it\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\ja\LC_MESSAGES\" +File "locale\ja\LC_MESSAGES\dcpp-win32.mo" +File "locale\ja\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\km\LC_MESSAGES\" +File "locale\km\LC_MESSAGES\dcpp-win32.mo" +File "locale\km\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\ko\LC_MESSAGES\" +File "locale\ko\LC_MESSAGES\dcpp-win32.mo" +File "locale\ko\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\lt\LC_MESSAGES\" +File "locale\lt\LC_MESSAGES\dcpp-win32.mo" +File "locale\lt\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\lv\LC_MESSAGES\" +File "locale\lv\LC_MESSAGES\dcpp-win32.mo" +File "locale\lv\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\mk\LC_MESSAGES\" +File "locale\mk\LC_MESSAGES\dcpp-win32.mo" +File "locale\mk\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\ms\LC_MESSAGES\" + +File "locale\ms\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\nb\LC_MESSAGES\" +File "locale\nb\LC_MESSAGES\dcpp-win32.mo" +File "locale\nb\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\nl\LC_MESSAGES\" +File "locale\nl\LC_MESSAGES\dcpp-win32.mo" +File "locale\nl\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\pl\LC_MESSAGES\" +File "locale\pl\LC_MESSAGES\dcpp-win32.mo" +File "locale\pl\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\pt\LC_MESSAGES\" +File "locale\pt\LC_MESSAGES\dcpp-win32.mo" +File "locale\pt\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\pt_BR\LC_MESSAGES\" +File "locale\pt_BR\LC_MESSAGES\dcpp-win32.mo" +File "locale\pt_BR\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\ro\LC_MESSAGES\" +File "locale\ro\LC_MESSAGES\dcpp-win32.mo" +File "locale\ro\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\ru\LC_MESSAGES\" +File "locale\ru\LC_MESSAGES\dcpp-win32.mo" +File "locale\ru\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\sl\LC_MESSAGES\" +File "locale\sl\LC_MESSAGES\dcpp-win32.mo" +File "locale\sl\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\sq\LC_MESSAGES\" +File "locale\sq\LC_MESSAGES\dcpp-win32.mo" +File "locale\sq\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\sv\LC_MESSAGES\" +File "locale\sv\LC_MESSAGES\dcpp-win32.mo" +File "locale\sv\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\tr\LC_MESSAGES\" +File "locale\tr\LC_MESSAGES\dcpp-win32.mo" +File "locale\tr\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\uk\LC_MESSAGES\" +File "locale\uk\LC_MESSAGES\dcpp-win32.mo" +File "locale\uk\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\zh_CN\LC_MESSAGES\" +File "locale\zh_CN\LC_MESSAGES\dcpp-win32.mo" +File "locale\zh_CN\LC_MESSAGES\libdcpp.mo" +SetOutPath "$INSTDIR\locale\zh_TW\LC_MESSAGES\" +File "locale\zh_TW\LC_MESSAGES\dcpp-win32.mo" +File "locale\zh_TW\LC_MESSAGES\libdcpp.mo" + ; Remove opencow just in case we're upgrading Delete "$INSTDIR\opencow.dll" @@ -125,7 +246,89 @@ Delete "$INSTDIR\Example.xml" Delete "$INSTDIR\Magnet.exe" Delete "$INSTDIR\GeoIPCountryWhois.csv" + Delete "$INSTDIR\mingwm10.dll" + Delete "$INSTDIR\locale\ar\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\ar\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\bg\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\bg\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\bs\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\bs\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\ca\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\ca\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\cs\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\cs\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\da\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\da\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\de\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\de\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\el\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\el\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\en_GB\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\en_GB\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\es\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\es\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\fi\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\fi\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\fr\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\fr\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\gl\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\gl\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\he\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\he\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\hr\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\hr\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\hu\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\hu\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\id\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\id\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\is\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\is\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\it\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\it\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\ja\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\ja\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\km\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\km\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\ko\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\ko\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\lt\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\lt\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\lv\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\lv\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\mk\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\mk\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\ms\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\ms\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\nb\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\nb\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\nl\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\nl\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\pl\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\pl\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\pt\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\pt\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\pt_BR\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\pt_BR\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\ro\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\ro\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\ru\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\ru\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\sl\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\sl\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\sq\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\sq\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\sv\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\sv\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\tr\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\tr\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\uk\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\uk\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\zh_CN\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\zh_CN\LC_MESSAGES\libdcpp.mo" +Delete "$INSTDIR\locale\zh_TW\LC_MESSAGES\dcpp-win32.mo" +Delete "$INSTDIR\locale\zh_TW\LC_MESSAGES\libdcpp.mo" + ; Remove registry entries ; dchub is likely only to be registered to us ; magnet is likely to be registere to other p2p apps Modified: dcplusplus/trunk/changelog.txt =================================================================== --- dcplusplus/trunk/changelog.txt 2008-03-13 22:02:50 UTC (rev 1039) +++ dcplusplus/trunk/changelog.txt 2008-03-14 22:13:55 UTC (rev 1040) @@ -1,4 +1,4 @@ --- 0.705 -- +-- 0.705 2008-03-14 -- * Several patches for better *nix compatibility of the core (thanks steven sheehy et al) * Improve segmented download implementation * Fix search request ip when using multiple ip's (thanks stanislav maslovski) Modified: dcplusplus/trunk/dcpp/po/es.po =================================================================== --- dcplusplus/trunk/dcpp/po/es.po 2008-03-13 22:02:50 UTC (rev 1039) +++ dcplusplus/trunk/dcpp/po/es.po 2008-03-14 22:13:55 UTC (rev 1040) @@ -73,7 +73,7 @@ #: dcpp/AdcHub.cpp:281 #, boost-format msgid "%1% was kicked by %2%: %3%" -msgstr "% 1% ha sido expulsado de% 2%:% 3%" +msgstr "%1% ha sido expulsado de% 2%:% 3%" #: dcpp/AdcHub.cpp:284 #, boost-format Modified: dcplusplus/trunk/dcpp/version.h =================================================================== --- dcplusplus/trunk/dcpp/version.h 2008-03-13 22:02:50 UTC (rev 1039) +++ dcplusplus/trunk/dcpp/version.h 2008-03-14 22:13:55 UTC (rev 1040) @@ -17,7 +17,7 @@ */ #define APPNAME "DC++" -#define VERSIONSTRING "0.704" -#define VERSIONFLOAT 0.704 +#define VERSIONSTRING "0.705" +#define VERSIONFLOAT 0.705 /* Update the .rc file as well... */ Modified: dcplusplus/trunk/win32/DCPlusPlus.rc =================================================================== --- dcplusplus/trunk/win32/DCPlusPlus.rc 2008-03-13 22:02:50 UTC (rev 1039) +++ dcplusplus/trunk/win32/DCPlusPlus.rc 2008-03-14 22:13:55 UTC (rev 1040) @@ -835,8 +835,8 @@ // VS_VERSION_INFO VERSIONINFO - FILEVERSION 0,7,0,4 - PRODUCTVERSION 0,7,0,4 + FILEVERSION 0,7,0,5 + PRODUCTVERSION 0,7,0,5 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -853,12 +853,12 @@ BEGIN VALUE "Comments", "http://dcplusplus.sourceforge.net" VALUE "FileDescription", "DC++" - VALUE "FileVersion", "0, 7, 0, 4" + VALUE "FileVersion", "0, 7, 0, 5" VALUE "InternalName", "DC++" - VALUE "LegalCopyright", "Copyright 2001-2006 Jacek Sieka" + VALUE "LegalCopyright", "Copyright 2001-2008 Jacek Sieka" VALUE "OriginalFilename", "DCPlusPlus.exe" VALUE "ProductName", "DC++" - VALUE "ProductVersion", "0, 7, 0, 4" + VALUE "ProductVersion", "0, 7, 0, 5" END END BLOCK "VarFileInfo" Modified: dcplusplus/trunk/win32/po/es.po =================================================================== --- dcplusplus/trunk/win32/po/es.po 2008-03-13 22:02:50 UTC (rev 1039) +++ dcplusplus/trunk/win32/po/es.po 2008-03-14 22:13:55 UTC (rev 1040) @@ -1212,7 +1212,7 @@ #: win32/SplashWindow.cpp:77 #, boost-format msgid "Loading DC++, please wait... (%1%)" -msgstr "Cargando DC++, por favor espere ... (% 1%)" +msgstr "Cargando DC++, por favor espere ... (%1%)" #: win32/LogPage.cpp:47 msgid "Log downloads" @@ -1726,7 +1726,7 @@ #: win32/TransferView.cpp:703 #, boost-format msgid "Requesting %1%" -msgstr "Solicitando % 1%" +msgstr "Solicitando %1%" #: win32/HashProgressDlg.cpp:48 msgid "Run in background" @@ -2116,7 +2116,7 @@ #: win32/HubFrame.cpp:387 #, boost-format msgid "Unknown command: %1%" -msgstr "Comando desconocido:% 1%" +msgstr "Comando desconocido: %1%" #: win32/UploadPage.cpp:41 msgid "Upload slots" Modified: dcplusplus/trunk/win32/po/ro.po =================================================================== --- dcplusplus/trunk/win32/po/ro.po 2008-03-13 22:02:50 UTC (rev 1039) +++ dcplusplus/trunk/win32/po/ro.po 2008-03-14 22:13:55 UTC (rev 1040) @@ -24,7 +24,7 @@ msgid "" "%1%\n" "Open download page?" -msgstr "Deschide pagina de descărcare?" +msgstr "%1%\nDeschide pagina de descărcare?" #: win32/TransferView.cpp:571 #, boost-format This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-13 22:02:54
|
Revision: 1039 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1039&view=rev Author: arnetheduck Date: 2008-03-13 15:02:50 -0700 (Thu, 13 Mar 2008) Log Message: ----------- Update translations Modified Paths: -------------- dcplusplus/trunk/dcpp/po/ar.po dcplusplus/trunk/dcpp/po/bg.po dcplusplus/trunk/dcpp/po/bs.po dcplusplus/trunk/dcpp/po/ca.po dcplusplus/trunk/dcpp/po/cs.po dcplusplus/trunk/dcpp/po/da.po dcplusplus/trunk/dcpp/po/de.po dcplusplus/trunk/dcpp/po/el.po dcplusplus/trunk/dcpp/po/en_GB.po dcplusplus/trunk/dcpp/po/es.po dcplusplus/trunk/dcpp/po/fi.po dcplusplus/trunk/dcpp/po/fr.po dcplusplus/trunk/dcpp/po/gl.po dcplusplus/trunk/dcpp/po/he.po dcplusplus/trunk/dcpp/po/hr.po dcplusplus/trunk/dcpp/po/hu.po dcplusplus/trunk/dcpp/po/id.po dcplusplus/trunk/dcpp/po/is.po dcplusplus/trunk/dcpp/po/it.po dcplusplus/trunk/dcpp/po/ja.po dcplusplus/trunk/dcpp/po/km.po dcplusplus/trunk/dcpp/po/ko.po dcplusplus/trunk/dcpp/po/lt.po dcplusplus/trunk/dcpp/po/lv.po dcplusplus/trunk/dcpp/po/mk.po dcplusplus/trunk/dcpp/po/ms.po dcplusplus/trunk/dcpp/po/nb.po dcplusplus/trunk/dcpp/po/nl.po dcplusplus/trunk/dcpp/po/pl.po dcplusplus/trunk/dcpp/po/pt.po dcplusplus/trunk/dcpp/po/pt_BR.po dcplusplus/trunk/dcpp/po/ro.po dcplusplus/trunk/dcpp/po/ru.po dcplusplus/trunk/dcpp/po/sl.po dcplusplus/trunk/dcpp/po/sq.po dcplusplus/trunk/dcpp/po/sv.po dcplusplus/trunk/dcpp/po/tr.po dcplusplus/trunk/dcpp/po/uk.po dcplusplus/trunk/dcpp/po/zh_CN.po dcplusplus/trunk/dcpp/po/zh_TW.po dcplusplus/trunk/win32/po/ar.po dcplusplus/trunk/win32/po/bg.po dcplusplus/trunk/win32/po/bs.po dcplusplus/trunk/win32/po/ca.po dcplusplus/trunk/win32/po/cs.po dcplusplus/trunk/win32/po/da.po dcplusplus/trunk/win32/po/de.po dcplusplus/trunk/win32/po/el.po dcplusplus/trunk/win32/po/en_GB.po dcplusplus/trunk/win32/po/es.po dcplusplus/trunk/win32/po/fi.po dcplusplus/trunk/win32/po/fr.po dcplusplus/trunk/win32/po/gl.po dcplusplus/trunk/win32/po/he.po dcplusplus/trunk/win32/po/hr.po dcplusplus/trunk/win32/po/hu.po dcplusplus/trunk/win32/po/id.po dcplusplus/trunk/win32/po/is.po dcplusplus/trunk/win32/po/it.po dcplusplus/trunk/win32/po/ja.po dcplusplus/trunk/win32/po/km.po dcplusplus/trunk/win32/po/ko.po dcplusplus/trunk/win32/po/lt.po dcplusplus/trunk/win32/po/lv.po dcplusplus/trunk/win32/po/mk.po dcplusplus/trunk/win32/po/nb.po dcplusplus/trunk/win32/po/nl.po dcplusplus/trunk/win32/po/pl.po dcplusplus/trunk/win32/po/pt.po dcplusplus/trunk/win32/po/pt_BR.po dcplusplus/trunk/win32/po/ro.po dcplusplus/trunk/win32/po/ru.po dcplusplus/trunk/win32/po/sl.po dcplusplus/trunk/win32/po/sq.po dcplusplus/trunk/win32/po/sv.po dcplusplus/trunk/win32/po/tr.po dcplusplus/trunk/win32/po/uk.po dcplusplus/trunk/win32/po/zh_CN.po dcplusplus/trunk/win32/po/zh_TW.po Modified: dcplusplus/trunk/dcpp/po/ar.po =================================================================== --- dcplusplus/trunk/dcpp/po/ar.po 2008-03-12 21:46:22 UTC (rev 1038) +++ dcplusplus/trunk/dcpp/po/ar.po 2008-03-13 22:02:50 UTC (rev 1039) @@ -7,12 +7,15 @@ msgstr "" "Project-Id-Version: dcpp\n" "Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"Last-Translator: <jma...@us...>\n" +"POT-Creation-Date: 2008-03-12 21:38+0100\n" +"PO-Revision-Date: 2008-03-05 00:18+0000\n" +"Last-Translator: Jmarhoon <Unknown>\n" +"Language-Team: LANGUAGE <LL...@li...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: plurals=2; plural=(n != 1);\n" +"X-Launchpad-Export-Date: 2008-03-13 15:20+0000\n" +"X-Generator: Launchpad (build Unknown)\n" #: dcpp/Util.cpp:381 #, c-format, boost-format @@ -123,8 +126,13 @@ msgid "Certificate not trusted, unable to connect" msgstr "" +#: dcpp/BufferedSocket.cpp:148 +#, fuzzy +msgid "Connection closed" +msgstr "لا يمكن التوصيل" + #: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 +#: dcpp/BufferedSocket.cpp:131 msgid "Connection timeout" msgstr "لا يمكن التوصيل" @@ -135,9 +143,9 @@ #: dcpp/ShareManager.cpp:418 msgid "Directory already shared" -msgstr "المجلد مستخدم حاليا " +msgstr "المجلد مستخدم حاليا" -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +#: dcpp/BufferedSocket.cpp:404 msgid "Disconnected" msgstr "انفصل" @@ -206,7 +214,7 @@ msgid "" "Failed to set up the socks server for UDP relay (check socks address and " "port)" -msgstr "(افحص عنوان السوكس و البورت) UDP فشل في عمل سوكس سيرفر لحدوث تبادل في " +msgstr "(افحص عنوان السوكس و البورت) UDP فشل في عمل سوكس سيرفر لحدوث تبادل في" #: dcpp/ShareManager.cpp:776 #, fuzzy, boost-format @@ -280,14 +288,14 @@ #: dcpp/FavoriteManager.cpp:438 msgid "Kick user(s)" -msgstr "فصل المستخدم " +msgstr "فصل المستخدم" #: dcpp/ConnectionManager.cpp:230 #, boost-format msgid "Listening socket failed (you need to restart %1%): %2%" msgstr "" -#: dcpp/BufferedSocket.cpp:261 +#: dcpp/BufferedSocket.cpp:237 msgid "Maximum command length exceeded" msgstr "" @@ -303,12 +311,12 @@ msgid "No slots available" msgstr "لا توجد وصلة خالية" -#: dcpp/AdcHub.cpp:576 +#: dcpp/AdcHub.cpp:577 #, boost-format msgid "Not listening for connections - please restart %1%" msgstr "" -#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:114 #: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 #: dcpp/SearchManager.cpp:331 msgid "Offline" Modified: dcplusplus/trunk/dcpp/po/bg.po =================================================================== --- dcplusplus/trunk/dcpp/po/bg.po 2008-03-12 21:46:22 UTC (rev 1038) +++ dcplusplus/trunk/dcpp/po/bg.po 2008-03-13 22:02:50 UTC (rev 1039) @@ -7,12 +7,15 @@ msgstr "" "Project-Id-Version: dcpp\n" "Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"Last-Translator: <gre...@us...>\n" +"POT-Creation-Date: 2008-03-12 21:38+0100\n" +"PO-Revision-Date: 2008-03-05 00:08+0000\n" +"Last-Translator: Greatgenius <Unknown>\n" +"Language-Team: LANGUAGE <LL...@li...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: plurals=2; plural=(n != 1);\n" +"X-Launchpad-Export-Date: 2008-03-13 15:20+0000\n" +"X-Generator: Launchpad (build Unknown)\n" #: dcpp/Util.cpp:381 #, c-format, boost-format @@ -124,8 +127,13 @@ msgid "Certificate not trusted, unable to connect" msgstr "" +#: dcpp/BufferedSocket.cpp:148 +#, fuzzy +msgid "Connection closed" +msgstr "Времето за свързване изтече!" + #: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 +#: dcpp/BufferedSocket.cpp:131 msgid "Connection timeout" msgstr "Времето за свързване изтече!" @@ -138,7 +146,7 @@ msgid "Directory already shared" msgstr "Папката вече е споделена!" -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +#: dcpp/BufferedSocket.cpp:404 msgid "Disconnected" msgstr "Изключен/Прекъснат" @@ -294,7 +302,7 @@ msgid "Listening socket failed (you need to restart %1%): %2%" msgstr "" -#: dcpp/BufferedSocket.cpp:261 +#: dcpp/BufferedSocket.cpp:237 msgid "Maximum command length exceeded" msgstr "" @@ -310,12 +318,12 @@ msgid "No slots available" msgstr "Няма слотове на разположение" -#: dcpp/AdcHub.cpp:576 +#: dcpp/AdcHub.cpp:577 #, boost-format msgid "Not listening for connections - please restart %1%" msgstr "" -#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:114 #: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 #: dcpp/SearchManager.cpp:331 msgid "Offline" Modified: dcplusplus/trunk/dcpp/po/bs.po =================================================================== --- dcplusplus/trunk/dcpp/po/bs.po 2008-03-12 21:46:22 UTC (rev 1038) +++ dcplusplus/trunk/dcpp/po/bs.po 2008-03-13 22:02:50 UTC (rev 1039) @@ -7,12 +7,15 @@ msgstr "" "Project-Id-Version: dcpp\n" "Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"Last-Translator: <mi...@us...>\n" +"POT-Creation-Date: 2008-03-12 21:38+0100\n" +"PO-Revision-Date: 2008-03-05 00:12+0000\n" +"Last-Translator: Mikula <Unknown>\n" +"Language-Team: LANGUAGE <LL...@li...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: plurals=2; plural=(n != 1);\n" +"X-Launchpad-Export-Date: 2008-03-13 15:20+0000\n" +"X-Generator: Launchpad (build Unknown)\n" #: dcpp/Util.cpp:381 #, c-format, boost-format @@ -123,8 +126,13 @@ msgid "Certificate not trusted, unable to connect" msgstr "" +#: dcpp/BufferedSocket.cpp:148 +#, fuzzy +msgid "Connection closed" +msgstr "Vrijeme za vezu isteklo" + #: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 +#: dcpp/BufferedSocket.cpp:131 msgid "Connection timeout" msgstr "Vrijeme za vezu isteklo" @@ -137,7 +145,7 @@ msgid "Directory already shared" msgstr "Sadrzaj se vec dijeli" -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +#: dcpp/BufferedSocket.cpp:404 msgid "Disconnected" msgstr "Iskljucen" @@ -290,7 +298,7 @@ msgid "Listening socket failed (you need to restart %1%): %2%" msgstr "" -#: dcpp/BufferedSocket.cpp:261 +#: dcpp/BufferedSocket.cpp:237 msgid "Maximum command length exceeded" msgstr "" @@ -306,12 +314,12 @@ msgid "No slots available" msgstr "Nema slobodnih slotova" -#: dcpp/AdcHub.cpp:576 +#: dcpp/AdcHub.cpp:577 #, boost-format msgid "Not listening for connections - please restart %1%" msgstr "" -#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:114 #: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 #: dcpp/SearchManager.cpp:331 msgid "Offline" Modified: dcplusplus/trunk/dcpp/po/ca.po =================================================================== --- dcplusplus/trunk/dcpp/po/ca.po 2008-03-12 21:46:22 UTC (rev 1038) +++ dcplusplus/trunk/dcpp/po/ca.po 2008-03-13 22:02:50 UTC (rev 1039) @@ -7,12 +7,15 @@ msgstr "" "Project-Id-Version: dcpp\n" "Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"Last-Translator: <su...@us...>\n" +"POT-Creation-Date: 2008-03-12 21:38+0100\n" +"PO-Revision-Date: 2008-03-05 00:46+0000\n" +"Last-Translator: Sunbit <Unknown>\n" +"Language-Team: LANGUAGE <LL...@li...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: plurals=2; plural=(n != 1);\n" +"X-Launchpad-Export-Date: 2008-03-13 15:20+0000\n" +"X-Generator: Launchpad (build Unknown)\n" #: dcpp/Util.cpp:381 #, c-format, boost-format @@ -124,8 +127,13 @@ msgid "Certificate not trusted, unable to connect" msgstr "" +#: dcpp/BufferedSocket.cpp:148 +#, fuzzy +msgid "Connection closed" +msgstr "S'ha esgotat el temps per la conexió" + #: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 +#: dcpp/BufferedSocket.cpp:131 msgid "Connection timeout" msgstr "S'ha esgotat el temps per la conexió" @@ -138,7 +146,7 @@ msgid "Directory already shared" msgstr "Aquest directori ja està compartit" -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +#: dcpp/BufferedSocket.cpp:404 msgid "Disconnected" msgstr "Desconectat" @@ -292,7 +300,7 @@ msgid "Listening socket failed (you need to restart %1%): %2%" msgstr "" -#: dcpp/BufferedSocket.cpp:261 +#: dcpp/BufferedSocket.cpp:237 msgid "Maximum command length exceeded" msgstr "" @@ -308,12 +316,12 @@ msgid "No slots available" msgstr "No queden slots disponibles" -#: dcpp/AdcHub.cpp:576 +#: dcpp/AdcHub.cpp:577 #, boost-format msgid "Not listening for connections - please restart %1%" msgstr "" -#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:114 #: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 #: dcpp/SearchManager.cpp:331 msgid "Offline" Modified: dcplusplus/trunk/dcpp/po/cs.po =================================================================== --- dcplusplus/trunk/dcpp/po/cs.po 2008-03-12 21:46:22 UTC (rev 1038) +++ dcplusplus/trunk/dcpp/po/cs.po 2008-03-13 22:02:50 UTC (rev 1039) @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: dcplusplus\n" "Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"PO-Revision-Date: 2008-02-08 19:17+0000\n" +"POT-Creation-Date: 2008-03-12 21:38+0100\n" +"PO-Revision-Date: 2008-03-05 00:25+0000\n" "Last-Translator: marek.tomass <mar...@gm...>\n" "Language-Team: Czech <cs...@li...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2008-03-04 21:52+0000\n" +"X-Launchpad-Export-Date: 2008-03-13 15:20+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: dcpp/Util.cpp:381 @@ -129,8 +129,13 @@ msgid "Certificate not trusted, unable to connect" msgstr "" +#: dcpp/BufferedSocket.cpp:148 +#, fuzzy +msgid "Connection closed" +msgstr "Cas pro pripojeni vyprsel" + #: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 +#: dcpp/BufferedSocket.cpp:131 msgid "Connection timeout" msgstr "Cas pro pripojeni vyprsel" @@ -143,7 +148,7 @@ msgid "Directory already shared" msgstr "Slozka je uz sdilena" -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +#: dcpp/BufferedSocket.cpp:404 msgid "Disconnected" msgstr "Odpojeny" @@ -229,7 +234,7 @@ msgid "" "File list refresh in progress, please wait for it to finish before trying to " "refresh again" -msgstr "Cekejte prosim, az sa dokonci obnova seznamu souboru " +msgstr "Cekejte prosim, az sa dokonci obnova seznamu souboru" #: dcpp/ShareManager.cpp:798 msgid "File list refresh initiated" @@ -297,7 +302,7 @@ msgid "Listening socket failed (you need to restart %1%): %2%" msgstr "" -#: dcpp/BufferedSocket.cpp:261 +#: dcpp/BufferedSocket.cpp:237 msgid "Maximum command length exceeded" msgstr "" @@ -313,12 +318,12 @@ msgid "No slots available" msgstr "Nejsou volne zadne sloty" -#: dcpp/AdcHub.cpp:576 +#: dcpp/AdcHub.cpp:577 #, boost-format msgid "Not listening for connections - please restart %1%" msgstr "" -#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:114 #: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 #: dcpp/SearchManager.cpp:331 msgid "Offline" Modified: dcplusplus/trunk/dcpp/po/da.po =================================================================== --- dcplusplus/trunk/dcpp/po/da.po 2008-03-12 21:46:22 UTC (rev 1038) +++ dcplusplus/trunk/dcpp/po/da.po 2008-03-13 22:02:50 UTC (rev 1039) @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: dcplusplus\n" "Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"PO-Revision-Date: 2008-02-23 10:32+0000\n" -"Last-Translator: carson <Unknown>\n" +"POT-Creation-Date: 2008-03-12 21:38+0100\n" +"PO-Revision-Date: 2008-03-10 10:27+0000\n" +"Last-Translator: Kryppy <Unknown>\n" "Language-Team: Danish <da...@li...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2008-03-04 21:52+0000\n" +"X-Launchpad-Export-Date: 2008-03-13 15:20+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: dcpp/Util.cpp:381 @@ -61,7 +61,7 @@ #, boost-format msgid "" "%1% not shared; calculated CRC32 does not match the one found in SFV file." -msgstr "" +msgstr "%1% Ikke delt; Udregnet CRC32 matcher ikke den som fantes i SFV filen." #: dcpp/QueueManager.cpp:325 #, boost-format @@ -128,21 +128,26 @@ msgid "Certificate not trusted, unable to connect" msgstr "Certifikan ikke pålideligt, kan ikke tilslutte" +#: dcpp/BufferedSocket.cpp:148 +#, fuzzy +msgid "Connection closed" +msgstr "Tiden er udløbet for forbindelsen" + #: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 +#: dcpp/BufferedSocket.cpp:131 msgid "Connection timeout" msgstr "Tiden er udløbet for forbindelsen" #: dcpp/DownloadManager.cpp:232 #, boost-format msgid "Could not open target file: %1%" -msgstr "" +msgstr "Kunne ikke åbne den valgte fil:: %1%" #: dcpp/ShareManager.cpp:418 msgid "Directory already shared" msgstr "Katalog deles allerede" -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +#: dcpp/BufferedSocket.cpp:404 msgid "Disconnected" msgstr "Afbrudt" @@ -165,7 +170,7 @@ #: dcpp/QueueManager.cpp:545 dcpp/QueueManager.cpp:549 #, boost-format msgid "Duplicate source: %1%" -msgstr "" +msgstr "Kilden findes allerede: %1%" #: dcpp/HashManager.cpp:456 #, boost-format @@ -189,9 +194,9 @@ msgstr "" #: dcpp/HashManager.cpp:118 dcpp/HashManager.cpp:333 -#, boost-format +#, fuzzy, boost-format msgid "Error saving hash data: %1%" -msgstr "" +msgstr "Fejl ved lagering af TTH-data: %1%" #: dcpp/CryptoManager.cpp:226 dcpp/CryptoManager.cpp:230 #: dcpp/CryptoManager.cpp:235 dcpp/CryptoManager.cpp:239 @@ -218,7 +223,7 @@ #: dcpp/ShareManager.cpp:776 #, boost-format msgid "File list refresh failed: %1%" -msgstr "" +msgstr "Opdatering af fillisten mislykkes: %1%" #: dcpp/ShareManager.cpp:820 msgid "File list refresh finished" @@ -240,14 +245,14 @@ msgstr "Filen er ikke tilgængelig" #: dcpp/HashManager.cpp:89 -#, boost-format +#, fuzzy, boost-format msgid "Finished hashing: %1%" -msgstr "" +msgstr "Færdig med at hashe: %1%" #: dcpp/HashManager.cpp:87 -#, boost-format +#, fuzzy, boost-format msgid "Finished hashing: %1% (%2%/s)" -msgstr "" +msgstr "Færdig med at hashe: %1% (%2%/s)" #: dcpp/DownloadManager.cpp:308 msgid "Full tree does not match TTH root" @@ -266,9 +271,9 @@ msgstr "Hash databasen er genopbygget" #: dcpp/HashManager.cpp:73 dcpp/HashManager.cpp:277 -#, boost-format +#, fuzzy, boost-format msgid "Hashing failed: %1%" -msgstr "" +msgstr "Indeksering misslyktes: %1%" #: dcpp/AdcHub.cpp:212 msgid "" @@ -297,7 +302,7 @@ msgid "Listening socket failed (you need to restart %1%): %2%" msgstr "" -#: dcpp/BufferedSocket.cpp:261 +#: dcpp/BufferedSocket.cpp:237 msgid "Maximum command length exceeded" msgstr "Maxsimal længde for kommando overskredet" @@ -313,12 +318,12 @@ msgid "No slots available" msgstr "Ingen ledige slots" -#: dcpp/AdcHub.cpp:576 +#: dcpp/AdcHub.cpp:577 #, boost-format msgid "Not listening for connections - please restart %1%" msgstr "" -#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:114 #: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 #: dcpp/SearchManager.cpp:331 msgid "Offline" @@ -348,7 +353,7 @@ #: dcpp/CryptoManager.cpp:221 #, boost-format msgid "TLS disabled, failed to generate certificate: %1%" -msgstr "" +msgstr "TLS deaktiveret, det misslykkedes at skabe certifikat: %1%" #: dcpp/CryptoManager.cpp:211 msgid "TLS disabled, no certificate file set" Modified: dcplusplus/trunk/dcpp/po/de.po =================================================================== --- dcplusplus/trunk/dcpp/po/de.po 2008-03-12 21:46:22 UTC (rev 1038) +++ dcplusplus/trunk/dcpp/po/de.po 2008-03-13 22:02:50 UTC (rev 1039) @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: dcplusplus\n" "Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"PO-Revision-Date: 2008-02-07 14:02+0000\n" +"POT-Creation-Date: 2008-03-12 21:38+0100\n" +"PO-Revision-Date: 2008-03-06 16:59+0000\n" "Last-Translator: soccer <soc...@gm...>\n" "Language-Team: German <de...@li...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2008-03-04 21:52+0000\n" +"X-Launchpad-Export-Date: 2008-03-13 15:20+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: dcpp/Util.cpp:381 @@ -50,7 +50,7 @@ #: dcpp/AdcHub.cpp:139 #, boost-format msgid "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" -msgstr "" +msgstr "%1% (%2%) hat die gleiche CID {%3%} wie %4% (%5%), wird ignoriert" #: dcpp/NmdcHub.cpp:281 #, boost-format @@ -73,12 +73,12 @@ #: dcpp/AdcHub.cpp:281 #, boost-format msgid "%1% was kicked by %2%: %3%" -msgstr "" +msgstr "%1% wurde von %2% gekickt: %3%" #: dcpp/AdcHub.cpp:284 #, boost-format msgid "%1% was kicked: %2%" -msgstr "" +msgstr "%1% wurde gekickt: %2%" #: dcpp/DownloadManager.cpp:530 #, boost-format @@ -130,8 +130,13 @@ msgid "Certificate not trusted, unable to connect" msgstr "Zertifikat nicht vertrauenswürdig, Verbindung nicht möglich" +#: dcpp/BufferedSocket.cpp:148 +#, fuzzy +msgid "Connection closed" +msgstr "Zeitüberschreitung der Verbindung" + #: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 +#: dcpp/BufferedSocket.cpp:131 msgid "Connection timeout" msgstr "Zeitüberschreitung der Verbindung" @@ -144,7 +149,7 @@ msgid "Directory already shared" msgstr "Verzeichnis ist bereits freigegeben" -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +#: dcpp/BufferedSocket.cpp:404 msgid "Disconnected" msgstr "Getrennt" @@ -209,7 +214,7 @@ #: dcpp/AdcHub.cpp:206 msgid "Failed to negotiate base protocol" -msgstr "" +msgstr "Basisprotokoll konnte nicht bestimmt werden" #: dcpp/Socket.cpp:408 msgid "" @@ -280,6 +285,8 @@ "Hub probably uses an old version of ADC, please encourage the owner to " "upgrade" msgstr "" +"Hub benutzt möglicherweise eine alte Version von ADC. Bitte empfehlen Sie " +"dem Besitzer zu aktualisieren." #: dcpp/DownloadManager.cpp:220 msgid "Invalid size" @@ -298,11 +305,11 @@ msgstr "Kicke User" #: dcpp/ConnectionManager.cpp:230 -#, fuzzy, boost-format +#, boost-format msgid "Listening socket failed (you need to restart %1%): %2%" -msgstr "Lesen vom Socket fehlgeschlagen (DC++ muss neugestartet werden): %1%" +msgstr "Lesen vom Socket fehlgeschlagen (%1% muss neugestartet werden): %2%" -#: dcpp/BufferedSocket.cpp:261 +#: dcpp/BufferedSocket.cpp:237 msgid "Maximum command length exceeded" msgstr "Maximale Befehlslänge überschritten" @@ -318,12 +325,12 @@ msgid "No slots available" msgstr "Keine Slots verfügbar" -#: dcpp/AdcHub.cpp:576 -#, fuzzy, boost-format +#: dcpp/AdcHub.cpp:577 +#, boost-format msgid "Not listening for connections - please restart %1%" -msgstr "Es wird nicht auf Verbindungen gewartet - bitte DC++ neustarten" +msgstr "Es wird nicht auf Verbindungen gewartet - bitte %1% neustarten" -#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:114 #: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 #: dcpp/SearchManager.cpp:331 msgid "Offline" @@ -338,9 +345,8 @@ msgstr "Alle Unterverzeichnisse entfernen bevor dieses hinzugefügt wird" #: dcpp/DownloadManager.cpp:225 -#, fuzzy msgid "Response does not match request" -msgstr "Kompletter Baum stimmt nicht mit TTH Root überein" +msgstr "Antwort stimmt nicht mit Anfrage überein" #: dcpp/DCPlusPlus.cpp:100 msgid "Shared Files" Modified: dcplusplus/trunk/dcpp/po/el.po =================================================================== --- dcplusplus/trunk/dcpp/po/el.po 2008-03-12 21:46:22 UTC (rev 1038) +++ dcplusplus/trunk/dcpp/po/el.po 2008-03-13 22:02:50 UTC (rev 1039) @@ -7,12 +7,15 @@ msgstr "" "Project-Id-Version: dcpp\n" "Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"Last-Translator: <jo...@us...>\n" +"POT-Creation-Date: 2008-03-12 21:38+0100\n" +"PO-Revision-Date: 2008-03-05 00:45+0000\n" +"Last-Translator: Johnkok <Unknown>\n" +"Language-Team: LANGUAGE <LL...@li...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Launchpad-Export-Date: 2008-03-13 15:20+0000\n" +"X-Generator: Launchpad (build Unknown)\n" #: dcpp/Util.cpp:381 #, c-format, boost-format @@ -124,8 +127,13 @@ msgid "Certificate not trusted, unable to connect" msgstr "Μη ασφαλές πιστοποιητικό, αδύνατη η σύνδεση" +#: dcpp/BufferedSocket.cpp:148 +#, fuzzy +msgid "Connection closed" +msgstr "Σύνδεση εκτός χρόνου" + #: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 +#: dcpp/BufferedSocket.cpp:131 msgid "Connection timeout" msgstr "Σύνδεση εκτός χρόνου" @@ -138,7 +146,7 @@ msgid "Directory already shared" msgstr "Ο φάκελος είναι ήδη κοινόχρηστος" -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +#: dcpp/BufferedSocket.cpp:404 msgid "Disconnected" msgstr "Αποσυνδέθηκε" @@ -294,7 +302,7 @@ msgid "Listening socket failed (you need to restart %1%): %2%" msgstr "" -#: dcpp/BufferedSocket.cpp:261 +#: dcpp/BufferedSocket.cpp:237 msgid "Maximum command length exceeded" msgstr "Υπέρβαση του μέγιστου μήκους εντολής" @@ -310,12 +318,12 @@ msgid "No slots available" msgstr "Δεν υπάρχουν ελεύθερες θέσεις" -#: dcpp/AdcHub.cpp:576 +#: dcpp/AdcHub.cpp:577 #, boost-format msgid "Not listening for connections - please restart %1%" msgstr "" -#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:114 #: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 #: dcpp/SearchManager.cpp:331 msgid "Offline" Modified: dcplusplus/trunk/dcpp/po/en_GB.po =================================================================== --- dcplusplus/trunk/dcpp/po/en_GB.po 2008-03-12 21:46:22 UTC (rev 1038) +++ dcplusplus/trunk/dcpp/po/en_GB.po 2008-03-13 22:02:50 UTC (rev 1039) @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: dcplusplus\n" "Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"PO-Revision-Date: 2008-02-28 12:52+0000\n" +"POT-Creation-Date: 2008-03-12 21:38+0100\n" +"PO-Revision-Date: 2008-03-06 11:07+0000\n" "Last-Translator: MikeJJ <Unknown>\n" "Language-Team: English (United Kingdom) <en...@li...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2008-03-04 21:52+0000\n" +"X-Launchpad-Export-Date: 2008-03-13 15:20+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: dcpp/Util.cpp:381 @@ -50,7 +50,7 @@ #: dcpp/AdcHub.cpp:139 #, boost-format msgid "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" -msgstr "" +msgstr "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" #: dcpp/NmdcHub.cpp:281 #, boost-format @@ -72,12 +72,12 @@ #: dcpp/AdcHub.cpp:281 #, boost-format msgid "%1% was kicked by %2%: %3%" -msgstr "" +msgstr "%1% was kicked by %2%: %3%" #: dcpp/AdcHub.cpp:284 #, boost-format msgid "%1% was kicked: %2%" -msgstr "" +msgstr "%1% was kicked: %2%" #: dcpp/DownloadManager.cpp:530 #, boost-format @@ -127,8 +127,13 @@ msgid "Certificate not trusted, unable to connect" msgstr "Certificate not trusted, unable to connect" +#: dcpp/BufferedSocket.cpp:148 +#, fuzzy +msgid "Connection closed" +msgstr "Connection timeout" + #: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 +#: dcpp/BufferedSocket.cpp:131 msgid "Connection timeout" msgstr "Connection timeout" @@ -141,7 +146,7 @@ msgid "Directory already shared" msgstr "Directory already shared" -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +#: dcpp/BufferedSocket.cpp:404 msgid "Disconnected" msgstr "Disconnected" @@ -206,7 +211,7 @@ #: dcpp/AdcHub.cpp:206 msgid "Failed to negotiate base protocol" -msgstr "" +msgstr "Failed to negotiate base protocol" #: dcpp/Socket.cpp:408 msgid "" @@ -277,6 +282,8 @@ "Hub probably uses an old version of ADC, please encourage the owner to " "upgrade" msgstr "" +"Hub probably uses an old version of ADC, please encourage the owner to " +"upgrade" #: dcpp/DownloadManager.cpp:220 msgid "Invalid size" @@ -295,11 +302,11 @@ msgstr "Kick user(s)" #: dcpp/ConnectionManager.cpp:230 -#, fuzzy, boost-format +#, boost-format msgid "Listening socket failed (you need to restart %1%): %2%" -msgstr "Listening socket failed (you need to restart DC++): %1%" +msgstr "Listening socket failed (you need to restart %1%): %2%" -#: dcpp/BufferedSocket.cpp:261 +#: dcpp/BufferedSocket.cpp:237 msgid "Maximum command length exceeded" msgstr "Maximum command length exceeded" @@ -315,12 +322,12 @@ msgid "No slots available" msgstr "No slots available" -#: dcpp/AdcHub.cpp:576 -#, fuzzy, boost-format +#: dcpp/AdcHub.cpp:577 +#, boost-format msgid "Not listening for connections - please restart %1%" -msgstr "Not listening for connections - please restart DC++" +msgstr "Not listening for connections - please restart %1%" -#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:114 #: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 #: dcpp/SearchManager.cpp:331 msgid "Offline" @@ -335,9 +342,8 @@ msgstr "Remove all subdirectories before adding this one" #: dcpp/DownloadManager.cpp:225 -#, fuzzy msgid "Response does not match request" -msgstr "Full tree does not match TTH root" +msgstr "Response does not match request" #: dcpp/DCPlusPlus.cpp:100 msgid "Shared Files" Modified: dcplusplus/trunk/dcpp/po/es.po =================================================================== --- dcplusplus/trunk/dcpp/po/es.po 2008-03-12 21:46:22 UTC (rev 1038) +++ dcplusplus/trunk/dcpp/po/es.po 2008-03-13 22:02:50 UTC (rev 1039) @@ -7,88 +7,93 @@ msgstr "" "Project-Id-Version: dcpp\n" "Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"Last-Translator: <re...@us...>\n" +"POT-Creation-Date: 2008-03-12 21:38+0100\n" +"PO-Revision-Date: 2008-03-07 12:20+0000\n" +"Last-Translator: Kryppy <Unknown>\n" +"Language-Team: LANGUAGE <LL...@li...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Launchpad-Export-Date: 2008-03-13 15:20+0000\n" +"X-Generator: Launchpad (build Unknown)\n" #: dcpp/Util.cpp:381 #, c-format, boost-format msgid "%'lld B" -msgstr "" +msgstr "%'lld B" #: dcpp/Util.cpp:343 #, c-format, boost-format msgid "%.02f GiB" -msgstr "" +msgstr "%.02f GiB" #: dcpp/Util.cpp:339 #, c-format, boost-format msgid "%.02f KiB" -msgstr "" +msgstr "%.02f KiB" #: dcpp/Util.cpp:341 #, c-format, boost-format msgid "%.02f MiB" -msgstr "" +msgstr "%.02f MiB" #: dcpp/Util.cpp:347 #, c-format, boost-format msgid "%.02f PiB" -msgstr "" +msgstr "%.02f PiB" #: dcpp/Util.cpp:345 #, c-format, boost-format msgid "%.02f TiB" -msgstr "" +msgstr "%.02f TiB" #: dcpp/AdcHub.cpp:139 #, boost-format msgid "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" -msgstr "" +msgstr "%1% (%2%) tiene el mismo CID {%3%} como %4% (%5%), ignorando" #: dcpp/NmdcHub.cpp:281 #, boost-format msgid "%1% (Nick unknown)" -msgstr "" +msgstr "%1% (Nick desconocido)" #: dcpp/HashManager.cpp:767 #, boost-format msgid "" "%1% not shared; calculated CRC32 does not match the one found in SFV file." msgstr "" +"%1% No compartido; el CRC32 calculado no concuerda con el encontrado en el " +"archivo SFV." #: dcpp/QueueManager.cpp:325 #, boost-format msgid "%1% renamed to %2%" -msgstr "" +msgstr "%1% renombrado a %2%" #: dcpp/AdcHub.cpp:281 #, boost-format msgid "%1% was kicked by %2%: %3%" -msgstr "" +msgstr "% 1% ha sido expulsado de% 2%:% 3%" #: dcpp/AdcHub.cpp:284 #, boost-format msgid "%1% was kicked: %2%" -msgstr "" +msgstr "%1% ha sido expulsado: %2%" #: dcpp/DownloadManager.cpp:530 -#, fuzzy, boost-format +#, boost-format msgid "%1%: File not available" -msgstr "Archivo no disponible" +msgstr "%1%: Archivo no disponible" #: dcpp/Util.cpp:337 #, c-format, boost-format msgid "%d B" -msgstr "" +msgstr "%d B" #: dcpp/Util.cpp:377 #, c-format, boost-format msgid "%s B" -msgstr "" +msgstr "%s B" #: dcpp/QueueManager.cpp:532 msgid "A file of equal or larger size already exists at the target location" @@ -113,39 +118,44 @@ #: dcpp/DownloadManager.cpp:376 msgid "CRC32 inconsistency (SFV-Check)" -msgstr "ERROR de CRC32 (¿fichero corrupto?) (SFV-Check)" +msgstr "Error de CRC32 (SFV-Check)" #: dcpp/DownloadManager.cpp:374 -#, fuzzy, boost-format +#, boost-format msgid "CRC32 inconsistency (SFV-Check) (File: %1%)" -msgstr "ERROR de CRC32 (¿fichero corrupto?) (SFV-Check)" +msgstr "Error de CRC32 (SFV-Check) (Archivo: %1%)" #: dcpp/ConnectionManager.cpp:376 msgid "Certificate not trusted, unable to connect" msgstr "Certificado no confiable, imposible conectar" +#: dcpp/BufferedSocket.cpp:148 +#, fuzzy +msgid "Connection closed" +msgstr "Conexión fuera de tiempo" + #: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 +#: dcpp/BufferedSocket.cpp:131 msgid "Connection timeout" msgstr "Conexión fuera de tiempo" #: dcpp/DownloadManager.cpp:232 #, boost-format msgid "Could not open target file: %1%" -msgstr "" +msgstr "No se puede abrir el archivo de destino: %1%" #: dcpp/ShareManager.cpp:418 msgid "Directory already shared" msgstr "Carpeta ya Compartida" -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +#: dcpp/BufferedSocket.cpp:404 msgid "Disconnected" msgstr "Desconectado" #: dcpp/UploadManager.cpp:450 #, boost-format msgid "Disconnected user leaving the hub: %1%" -msgstr "" +msgstr "Usuario desconectado porque se desconectó del hub:%1%" #: dcpp/DCPlusPlus.cpp:103 msgid "Download Queue" @@ -157,16 +167,18 @@ "Duplicate file will not be shared: %1%%2% (Size: %3% B) Dupe matched " "against: %4%%5%" msgstr "" +"El archivo repetido no será compartido: %1%%2% (Tamaño: %3%) Non " +"Encontrados :%4%%5%" #: dcpp/QueueManager.cpp:545 dcpp/QueueManager.cpp:549 #, boost-format msgid "Duplicate source: %1%" -msgstr "" +msgstr "Fuente Duplicada: %1%" #: dcpp/HashManager.cpp:456 -#, fuzzy, boost-format +#, boost-format msgid "Error creating hash data file: %1%" -msgstr "No se pudo leer el índice de la base de datos" +msgstr "No se pudo leer el índice de la base de datos: %1%" #: dcpp/ZUtils.cpp:33 dcpp/ZUtils.cpp:54 dcpp/ZUtils.cpp:76 dcpp/ZUtils.cpp:86 #: dcpp/BZUtils.cpp:31 dcpp/BZUtils.cpp:52 dcpp/BZUtils.cpp:60 @@ -177,17 +189,17 @@ #: dcpp/BZUtils.cpp:94 dcpp/BZUtils.cpp:97 dcpp/CryptoManager.cpp:342 #: dcpp/CryptoManager.cpp:361 dcpp/CryptoManager.cpp:375 msgid "Error during decompression" -msgstr "Error el la descompresión" +msgstr "Error en la descompresión" #: dcpp/HashManager.cpp:772 #, boost-format msgid "Error hashing %1%: %2%" -msgstr "" +msgstr "Error Indexado %1%: %2%" #: dcpp/HashManager.cpp:118 dcpp/HashManager.cpp:333 #, boost-format msgid "Error saving hash data: %1%" -msgstr "" +msgstr "Error al guardaro información de indexación:%1%" #: dcpp/CryptoManager.cpp:226 dcpp/CryptoManager.cpp:230 #: dcpp/CryptoManager.cpp:235 dcpp/CryptoManager.cpp:239 @@ -201,7 +213,7 @@ #: dcpp/AdcHub.cpp:206 msgid "Failed to negotiate base protocol" -msgstr "" +msgstr "No se ha podido negociar el protocolo base" #: dcpp/Socket.cpp:408 msgid "" @@ -212,9 +224,9 @@ "dirección socks y puerto)" #: dcpp/ShareManager.cpp:776 -#, fuzzy, boost-format +#, boost-format msgid "File list refresh failed: %1%" -msgstr "Refresco de la lista Terminada" +msgstr "Refresco de la lista Fallado:%1%" #: dcpp/ShareManager.cpp:820 msgid "File list refresh finished" @@ -225,6 +237,8 @@ "File list refresh in progress, please wait for it to finish before trying to " "refresh again" msgstr "" +"Refresco de la lista en progreso, por favor espere a que termine este " +"proceso antes que comenzar de nuevo" #: dcpp/ShareManager.cpp:798 msgid "File list refresh initiated" @@ -237,12 +251,12 @@ #: dcpp/HashManager.cpp:89 #, boost-format msgid "Finished hashing: %1%" -msgstr "" +msgstr "Indexado Finalizado:%1%" #: dcpp/HashManager.cpp:87 #, boost-format msgid "Finished hashing: %1% (%2%/s)" -msgstr "" +msgstr "Indexado Finalizado:%1%(%2%/s)" #: dcpp/DownloadManager.cpp:308 msgid "Full tree does not match TTH root" @@ -250,7 +264,7 @@ #: dcpp/CryptoManager.cpp:219 msgid "Generated new TLS certificate" -msgstr "" +msgstr "Generado nuevos certificado TLS" #: dcpp/DCPlusPlus.cpp:97 msgid "Hash database" @@ -263,17 +277,19 @@ #: dcpp/HashManager.cpp:73 dcpp/HashManager.cpp:277 #, boost-format msgid "Hashing failed: %1%" -msgstr "" +msgstr "Indexado Fallado:%1%" #: dcpp/AdcHub.cpp:212 msgid "" "Hub probably uses an old version of ADC, please encourage the owner to " "upgrade" msgstr "" +"Hub probablemente utiliza una versión antigua de ADC, por favor, a fomentar " +"el propietario de actualización" #: dcpp/DownloadManager.cpp:220 msgid "Invalid size" -msgstr "" +msgstr "Tamaño no válido" #: dcpp/QueueManager.cpp:515 dcpp/QueueManager.cpp:523 msgid "" @@ -290,9 +306,9 @@ #: dcpp/ConnectionManager.cpp:230 #, boost-format msgid "Listening socket failed (you need to restart %1%): %2%" -msgstr "" +msgstr "Falló Socket de Escucha (Es necesario reiniciar %1%): %2%" -#: dcpp/BufferedSocket.cpp:261 +#: dcpp/BufferedSocket.cpp:237 msgid "Maximum command length exceeded" msgstr "Tamaño máximo del comando excedido" @@ -308,12 +324,12 @@ msgid "No slots available" msgstr "Sin Slots Disponibles" -#: dcpp/AdcHub.cpp:576 +#: dcpp/AdcHub.cpp:577 #, boost-format msgid "Not listening for connections - please restart %1%" -msgstr "" +msgstr "No escuchando conexiones - por favor reinicie %1%" -#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:114 #: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 #: dcpp/SearchManager.cpp:331 msgid "Offline" @@ -328,7 +344,6 @@ msgstr "Eliminar todas los subcarpetas antes de agregar este" #: dcpp/DownloadManager.cpp:225 -#, fuzzy msgid "Response does not match request" msgstr "La estructura del árbol TTH no es correcta" @@ -343,9 +358,9 @@ "erronea?)" #: dcpp/CryptoManager.cpp:221 -#, fuzzy, boost-format +#, boost-format msgid "TLS disabled, failed to generate certificate: %1%" -msgstr "TLS desactivado, no hay definido un certificado" +msgstr "TLS desactivado, no hay definido un certificado: %1%" #: dcpp/CryptoManager.cpp:211 msgid "TLS disabled, no certificate file set" @@ -357,7 +372,7 @@ #: dcpp/QueueManager.cpp:798 msgid "Target removed" -msgstr "" +msgstr "Archivo destino eliminado" #: dcpp/Socket.cpp:255 msgid "The socks server doesn't support login / password authentication" @@ -387,26 +402,26 @@ #: dcpp/QueueManager.cpp:995 #, boost-format msgid "Unable to open filelist: %1%" -msgstr "" +msgstr "Imposible abrir Lista de Archivos:%1%" #: dcpp/HashManager.cpp:131 msgid "Unable to read hash data file" msgstr "No se pudo leer el índice de la base de datos" #: dcpp/QueueManager.cpp:327 -#, fuzzy, boost-format +#, boost-format msgid "Unable to rename %1%: %2%" -msgstr "No se puede iniciar tarea (crear nuevo thread)" +msgstr "No se puede renombrar %1%: %2%" #: dcpp/UploadManager.cpp:149 #, boost-format msgid "Unable to send file %1%: %2%" -msgstr "" +msgstr "Imposible enviar archivo %1%: %2%" #: dcpp/Socket.cpp:54 #, c-format, boost-format msgid "Unknown error: 0x%1$x" -msgstr "" +msgstr "Error Desconocido: 0x%1$x" #: dcpp/ShareManager.cpp:426 dcpp/ShareManager.cpp:468 msgid "Virtual directory name already exists" @@ -418,8 +433,8 @@ #: dcpp/SettingsManager.cpp:156 msgid "downloaded from" -msgstr "" +msgstr "descargado desde" #: dcpp/SettingsManager.cpp:157 msgid "uploaded to" -msgstr "" +msgstr "enviado a" Modified: dcplusplus/trunk/dcpp/po/fi.po =================================================================== --- dcplusplus/trunk/dcpp/po/fi.po 2008-03-12 21:46:22 UTC (rev 1038) +++ dcplusplus/trunk/dcpp/po/fi.po 2008-03-13 22:02:50 UTC (rev 1039) @@ -1,154 +1,166 @@ # Finnish translations for the DC++ package. # Copyright (C) 2008 The translators # This file is distributed under the same license as the DC++ package. -# <maa...@us...>, 2008. +# <ma...@ad...>, 2008. # msgid "" msgstr "" "Project-Id-Version: dcpp\n" "Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"Last-Translator: <maa...@us...>\n" +"POT-Creation-Date: 2008-03-12 21:38+0100\n" +"PO-Revision-Date: 2008-03-09 09:09+0000\n" +"Last-Translator: maksis <ma...@ad...>\n" +"Language-Team: LANGUAGE <LL...@li...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Launchpad-Export-Date: 2008-03-13 15:20+0000\n" +"X-Generator: Launchpad (build Unknown)\n" #: dcpp/Util.cpp:381 #, c-format, boost-format msgid "%'lld B" -msgstr "" +msgstr "%'lld t" #: dcpp/Util.cpp:343 #, c-format, boost-format msgid "%.02f GiB" -msgstr "" +msgstr "%.02f Gt" #: dcpp/Util.cpp:339 #, c-format, boost-format msgid "%.02f KiB" -msgstr "" +msgstr "%.02f Kt" #: dcpp/Util.cpp:341 #, c-format, boost-format msgid "%.02f MiB" -msgstr "" +msgstr "%.02f Mt" #: dcpp/Util.cpp:347 #, c-format, boost-format msgid "%.02f PiB" -msgstr "" +msgstr "%.02f Pt" #: dcpp/Util.cpp:345 #, c-format, boost-format msgid "%.02f TiB" -msgstr "" +msgstr "%.02f Tt" #: dcpp/AdcHub.cpp:139 #, boost-format msgid "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" -msgstr "" +msgstr "%1% (%2%) on sama CID {%3%} kuin käyttäjällä %4% (%5%), hylätään" #: dcpp/NmdcHub.cpp:281 #, boost-format msgid "%1% (Nick unknown)" -msgstr "" +msgstr "%1% (nimimerkki tuntematon)" #: dcpp/HashManager.cpp:767 #, boost-format msgid "" "%1% not shared; calculated CRC32 does not match the one found in SFV file." msgstr "" +"Tiedostoa %1% ei jaeta; laskettu CRC32 ei vastaa SFV-tiedostossa olevaa " +"arvoa." #: dcpp/QueueManager.cpp:325 #, boost-format msgid "%1% renamed to %2%" -msgstr "" +msgstr "%1% nimettiin tiedostoksi %2%" #: dcpp/AdcHub.cpp:281 #, boost-format msgid "%1% was kicked by %2%: %3%" -msgstr "" +msgstr "%2% potkaisi käyttäjän %1%: %3%" #: dcpp/AdcHub.cpp:284 #, boost-format msgid "%1% was kicked: %2%" -msgstr "" +msgstr "%1% potkaistiin: %2%" #: dcpp/DownloadManager.cpp:530 -#, fuzzy, boost-format +#, boost-format msgid "%1%: File not available" -msgstr "Häh, tätä fisua ei näy enä ton ämpärissä!" +msgstr "%1%: Tiedosto ei saatavilla" #: dcpp/Util.cpp:337 #, c-format, boost-format msgid "%d B" -msgstr "" +msgstr "%d t" #: dcpp/Util.cpp:377 #, c-format, boost-format msgid "%s B" -msgstr "" +msgstr "%s t" #: dcpp/QueueManager.cpp:532 msgid "A file of equal or larger size already exists at the target location" -msgstr "Samanpainoinen / suurempi fisu on jo ämpärissä!" +msgstr "Kohdehakemistossa on jo samanniminen tai -kokoinen tiedosto" #: dcpp/QueueManager.cpp:475 msgid "A file with a different size already exists in the queue" -msgstr "Muuten sama mutta eripainoinen fisu on jo menossa ämpäriin" +msgstr "Samanniminen, mutta eri kokoinen tiedosto on jo latausjonossa" #: dcpp/QueueManager.cpp:478 msgid "A file with different tth root already exists in the queue" -msgstr "Muuten sama fisu mutta eri kaulapannalla (TTH) on jo menossa ämpäriin" +msgstr "" +"Samanniminen, mutta eri TTH-tarkistussummalla oleva tiedosto on jo " +"latausjonossa" #: dcpp/QueueManager.cpp:442 msgid "A file with the same hash already exists in your share" -msgstr "Samalla pannalla (tth) oleva fisu löytyy jo jakoämpäristäsi" +msgstr "Samalla TTH-tarkistussummalla oleva tiedosto jo jaossa" #: dcpp/ConnectionManager.cpp:176 msgid "All download slots taken" -msgstr "Kaikissa koukuissa nykii jo, hanki lisä siimoja..." +msgstr "Kaikki latauspaikat käytössä" #: dcpp/DownloadManager.cpp:376 msgid "CRC32 inconsistency (SFV-Check)" msgstr "CRC32-ristiriita (SFV-tarkastus)" #: dcpp/DownloadManager.cpp:374 -#, fuzzy, boost-format +#, boost-format msgid "CRC32 inconsistency (SFV-Check) (File: %1%)" -msgstr "CRC32-ristiriita (SFV-tarkastus)" +msgstr "CRC32-ristiriita (SFV-tarkastus) (tiedosto: %1%)" #: dcpp/ConnectionManager.cpp:376 msgid "Certificate not trusted, unable to connect" -msgstr "Tohon kalastuslupaan ei luoteta" +msgstr "Ei luotettu sertifikaatti, ei voi yhdistää" +#: dcpp/BufferedSocket.cpp:148 +#, fuzzy +msgid "Connection closed" +msgstr "Yhteyden aikakatkaisu" + #: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 +#: dcpp/BufferedSocket.cpp:131 msgid "Connection timeout" -msgstr "Tä viehe ei vaan tunnu nykivän..." +msgstr "Yhteyden aikakatkaisu" #: dcpp/DownloadManager.cpp:232 #, boost-format msgid "Could not open target file: %1%" -msgstr "" +msgstr "Kohdetiedostoa ei voitu avata: %1%" #: dcpp/ShareManager.cpp:418 msgid "Directory already shared" -msgstr "Tämä ämpäri on jo jaossa!" +msgstr "Kansio on jo jaettu" -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +#: dcpp/BufferedSocket.cpp:404 msgid "Disconnected" -msgstr "Voi per... siima katkes !" +msgstr "Yhteys katkaistu" #: dcpp/UploadManager.cpp:450 #, boost-format msgid "Disconnected user leaving the hub: %1%" -msgstr "" +msgstr "Katkaistiin yhteys hubista lähtevään käyttäjään: %1%" #: dcpp/DCPlusPlus.cpp:103 msgid "Download Queue" -msgstr "Saalisämpärit" +msgstr "Latausjono" #: dcpp/ShareManager.cpp:741 #, boost-format @@ -156,266 +168,272 @@ "Duplicate file will not be shared: %1%%2% (Size: %3% B) Dupe matched " "against: %4%%5%" msgstr "" +"Tuplatiedostoja ei jaeta: %1%%2% (koko: %3% t) täsmäsi tiedostoon: %4%%5%" #: dcpp/QueueManager.cpp:545 dcpp/QueueManager.cpp:549 #, boost-format msgid "Duplicate source: %1%" -msgstr "" +msgstr "Sama lähde: %1%" #: dcpp/HashManager.cpp:456 -#, fuzzy, boost-format +#, boost-format msgid "Error creating hash data file: %1%" -msgstr "Karille meni järjestelyt..." +msgstr "Virhe tarkistussummatietokantatiedoston luonnissa: %1%" #: dcpp/ZUtils.cpp:33 dcpp/ZUtils.cpp:54 dcpp/ZUtils.cpp:76 dcpp/ZUtils.cpp:86 #: dcpp/BZUtils.cpp:31 dcpp/BZUtils.cpp:52 dcpp/BZUtils.cpp:60 msgid "Error during compression" -msgstr "Survottu surkeasti, sori..." +msgstr "Virhe pakkaamisessa" #: dcpp/ZUtils.cpp:100 dcpp/ZUtils.cpp:123 dcpp/BZUtils.cpp:72 #: dcpp/BZUtils.cpp:94 dcpp/BZUtils.cpp:97 dcpp/CryptoManager.cpp:342 #: dcpp/CryptoManager.cpp:361 dcpp/CryptoManager.cpp:375 msgid "Error during decompression" -msgstr "Virhe survoksen käsittelyssä, ei siitä enä fisua saa!" +msgstr "Virhe purkamisessa" #: dcpp/HashManager.cpp:772 #, boost-format msgid "Error hashing %1%: %2%" -msgstr "" +msgstr "Virhe tarkistussumman luonnissa tiedostolle %1%: %2%" #: dcpp/HashManager.cpp:118 dcpp/HashManager.cpp:333 #, boost-format msgid "Error saving hash data: %1%" -msgstr "" +msgstr "Virhe tallennettaessa tarkistussummaa: %1%" #: dcpp/CryptoManager.cpp:226 dcpp/CryptoManager.cpp:230 #: dcpp/CryptoManager.cpp:235 dcpp/CryptoManager.cpp:239 msgid "Failed to load certificate file" -msgstr "Epäonnea pyydettäessä kalastuslupaa" +msgstr "Sertifikaattitiedoston lataaminen epäonnistui" #: dcpp/CryptoManager.cpp:244 dcpp/CryptoManager.cpp:248 #: dcpp/CryptoManager.cpp:253 dcpp/CryptoManager.cpp:257 msgid "Failed to load private key" -msgstr "Epäonnea pyydettäessä yksityisavainta" +msgstr "Yksityisavaimen lataaminen epäonnistui" #: dcpp/AdcHub.cpp:206 msgid "Failed to negotiate base protocol" -msgstr "" +msgstr "Perusprotokollan neuvottelu epäonnistui" #: dcpp/Socket.cpp:408 msgid "" "Failed to set up the socks server for UDP relay (check socks address and " "port)" msgstr "" -"Vaimon sukat eivät mahdu jalkaan UDP-ohjauksella (tarkista koordinaatti ja " +"Socks-palvelimelle ei voitu määrittää UDP-ohjausta (tarkista osoite ja " "portti)" #: dcpp/ShareManager.cpp:776 -#, fuzzy, boost-format +#, boost-format msgid "File list refresh failed: %1%" -msgstr "Jakoämpärit järjestetty" +msgstr "Tiedostolistan päivitys epäonnistui: %1%" #: dcpp/ShareManager.cpp:820 msgid "File list refresh finished" -msgstr "Jakoämpärit järjestetty" +msgstr "Tiedostolistan päivitys valmis" #: dcpp/ShareManager.cpp:756 msgid "" "File list refresh in progress, please wait for it to finish before trying to " "refresh again" -msgstr "Jakoämpäriä putsataan... haisee edelleen... " +msgstr "" +"Tiedostolistan päivitys kesken, odota että se päättyy ennen kuin päivität " +"uudelleen" #: dcpp/ShareManager.cpp:798 msgid "File list refresh initiated" -msgstr "Jakoämpäriä siivotaan, kalanhaju on kuvottava..." +msgstr "Tiedostolistaa päivitetään..." #: dcpp/DirectoryListing.cpp:102 msgid "File not available" -msgstr "Häh, tätä fisua ei näy enä ton ämpärissä!" +msgstr "Tiedosto ei saatavilla" #: dcpp/HashManager.cpp:89 #, boost-format msgid "Finished hashing: %1%" -msgstr "" +msgstr "Tarkistussumman luonti valmis: %1%" #: dcpp/HashManager.cpp:87 #, boost-format msgid "Finished hashing: %1% (%2%/s)" -msgstr "" +msgstr "Tarkistussumman luonti valmis: %1% (%2%/s)" #: dcpp/DownloadManager.cpp:308 msgid "Full tree does not match TTH root" -msgstr "Värä vana - vaihda reittiä!" +msgstr "Hakemistopolku ei vastaa TTH-tarkistussummaa" #: dcpp/CryptoManager.cpp:219 msgid "Generated new TLS certificate" -msgstr "Kalastuslupa myönnetty" +msgstr "Uusi TLS-serfifikaatti luotu" #: dcpp/DCPlusPlus.cpp:97 msgid "Hash database" -msgstr "jakoämpärin tietokanta" +msgstr "Tarkistussummatietokanta" #: dcpp/HashManager.cpp:677 msgid "Hash database rebuilt" -msgstr "Siivoa jakoämpärisi uudelleen" +msgstr "Tarkistussummatietokanta koottu uudelleen" #: dcpp/HashManager.cpp:73 dcpp/HashManager.cpp:277 #, boost-format msgid "Hashing failed: %1%" -msgstr "" +msgstr "Tarkistussumman luonti epäonnistui: %1%" #: dcpp/AdcHub.cpp:212 msgid "" "Hub probably uses an old version of ADC, please encourage the owner to " "upgrade" msgstr "" +"Hubi todennäköisesti käyttää vanhaa ADC-versiota, kehota omistajaa " +"päivittämään" #: dcpp/DownloadManager.cpp:220 msgid "Invalid size" -msgstr "Liian pieni fisu" +msgstr "Virheellinen koko" #: dcpp/QueueManager.cpp:515 dcpp/QueueManager.cpp:523 msgid "" "Invalid target file (missing directory, check default download directory " "setting)" -msgstr "Tallennat fisua, mutta ämpärikö puuttuu? - vaihdettava!" +msgstr "" +"Kohdetiedosto ei kelpaa (puuttuva kansio, tarkista latauskansio asetuksista)" #: dcpp/FavoriteManager.cpp:438 msgid "Kick user(s)" -msgstr "Vedä kölin ali kalamies/miehet" +msgstr "Potkaise käyttäjä(t)" #: dcpp/ConnectionManager.cpp:230 #, boost-format msgid "Listening socket failed (you need to restart %1%): %2%" -msgstr "" +msgstr "Kuuntelukahvavirhe (käynnistä %1% uudestaan): %2%" -#: dcpp/BufferedSocket.cpp:261 +#: dcpp/BufferedSocket.cpp:237 msgid "Maximum command length exceeded" -msgstr "Ei saa puhua veneessä - ainakaan noin helvetin pitkän!" +msgstr "Suurin komennon pituus ylitettiin" #: dcpp/DownloadManager.cpp:280 msgid "More data was sent than was expected" -msgstr "Fisu painoi enemmän kuin miltä näytti" +msgstr "Enemmän dataa lähetettiin kuin odotettiin" #: dcpp/ShareManager.cpp:403 msgid "No directory specified" -msgstr "Ämpäriä ei ole märitetty!" +msgstr "Kansioita ei määritetty" #: dcpp/DownloadManager.cpp:419 msgid "No slots available" -msgstr "Ei voi heittä, liikaa ruuhkaa..." +msgstr "Ei vapaita latauspaikkoja" -#: dcpp/AdcHub.cpp:576 +#: dcpp/AdcHub.cpp:577 #, boost-format msgid "Not listening for connections - please restart %1%" -msgstr "" +msgstr "Ei kuunnella yhteyksiä - käynnistä %1% uudestaan" -#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:114 #: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 #: dcpp/SearchManager.cpp:331 msgid "Offline" -msgstr "Rannalla" +msgstr "Offline-tilassa" #: dcpp/FavoriteManager.cpp:442 msgid "Redirect user(s)" -msgstr "Opasta käyttäjä muualle" +msgstr "Uudelleenohjaa käyttäjä(t)" #: dcpp/ShareManager.cpp:421 msgid "Remove all subdirectories before adding this one" -msgstr "Poista kaikki ala-ämpärit ennen tämän lisämistä" +msgstr "Poista kaikki alihakemistot ennen tämän lisäämistä" #: dcpp/DownloadManager.cpp:225 -#, fuzzy msgid "Response does not match request" -msgstr "Värä vana - vaihda reittiä!" +msgstr "Vastaus ei täsmää pyyntöön" #: dcpp/DCPlusPlus.cpp:100 msgid "Shared Files" -msgstr "Luovutettavat fisut lastataan ruumaan" +msgstr "Jaetut tiedostot" #: dcpp/Socket.cpp:269 dcpp/Socket.cpp:273 msgid "Socks server authentication failed (bad login / password?)" -msgstr "Vaimon sukkien pukeminen epäonnistui (värä käyttäjätunnus / salasana?)" +msgstr "" +"Socks-palvelimelle kirjautuminen epäonnistui (väärä käyttäjätunnus / " +"salasana?)" #: dcpp/CryptoManager.cpp:221 -#, fuzzy, boost-format +#, boost-format msgid "TLS disabled, failed to generate certificate: %1%" -msgstr "TLS poissa pältä, ei kalastuslupaa" +msgstr "TLS ei käytössä, sertifikaatin luonti epäonnistui: %1%" #: dcpp/CryptoManager.cpp:211 msgid "TLS disabled, no certificate file set" -msgstr "TLS poissa pältä, ei kalastuslupaa" +msgstr "TLS ei käytössä, sertifikaattitiedostoja ei ole asetettu" #: dcpp/QueueManager.cpp:510 dcpp/QueueManager.cpp:519 msgid "Target filename too long" -msgstr "Fisun nimi on liian pitkä" +msgstr "Kohdetiedoston nimi on liian pitkä" #: dcpp/QueueManager.cpp:798 msgid "Target removed" -msgstr "Fisu poistettu" +msgstr "Kohde poistettu" #: dcpp/Socket.cpp:255 msgid "The socks server doesn't support login / password authentication" -msgstr "Vaimon sukkapalvelin ei tue käyttäjä/salasana tunnistusta" +msgstr "Socks-palvelin ei tue käyttäjä-/salasana-tunnistusta" #: dcpp/Socket.cpp:162 dcpp/Socket.cpp:173 dcpp/Socket.cpp:206 #: dcpp/Socket.cpp:210 dcpp/Socket.cpp:237 dcpp/Socket.cpp:252 msgid "The socks server failed establish a connection" -msgstr "Vaimon sukat jalassa ei voitu heittä viehettä" +msgstr "Socks-palvelin ei voinut avata yhteyttä" #: dcpp/Socket.cpp:241 msgid "The socks server requires authentication" -msgstr "Vaimon sukat pitä laittaa jalkaan (kirjaudu)" +msgstr "Socks-palvelin vaatii kirjautumisen" #: dcpp/ShareManager.cpp:407 msgid "The temporary download directory cannot be shared" -msgstr "" -"Vasta siimassa nykiviä fisuja ei voi luovuttaa...huijarit vedetän kölin ali" +msgstr "Keskeneräisten tiedostojen kansiota ei voi jakaa" #: dcpp/QueueManager.cpp:465 msgid "This file is already queued" -msgstr "Tä fisu on jo menossa ämpäriin!" +msgstr "Tämä tiedosto on jo latausjonossa" #: dcpp/Thread.cpp:34 dcpp/Thread.cpp:42 msgid "Unable to create thread" -msgstr "Siimaa ei saatu suoraksi" +msgstr "Säiettä ei voitu luoda" #: dcpp/QueueManager.cpp:995 #, boost-format msgid "Unable to open filelist: %1%" -msgstr "" +msgstr "Ei pysty avaamaan tiedostolistaa: %1%" #: dcpp/HashManager.cpp:131 msgid "Unable to read hash data file" -msgstr "Karille meni järjestelyt..." +msgstr "Ei pysty lukemaan TTH-tietokantatiedostoa" #: dcpp/QueueManager.cpp:327 -#, fuzzy, boost-format +#, boost-format msgid "Unable to rename %1%: %2%" -msgstr "Siimaa ei saatu suoraksi" +msgstr "Ei pysty uudelleennimeämään tiedostoa %1%: %2%" #: dcpp/UploadManager.cpp:149 #, boost-format msgid "Unable to send file %1%: %2%" -msgstr "" +msgstr "Ei pysty lähettämään tiedostoa %1%: %2%" #: dcpp/Socket.cpp:54 #, c-format, boost-format msgid "Unknown error: 0x%1$x" -msgstr "" +msgstr "Tuntematon virhe: 0x%1$x" #: dcpp/ShareManager.cpp:426 dcpp/ShareManager.cpp:468 msgid "Virtual directory name already exists" -msgstr "Tämä virtuaalisen ämpärin nimi on jo olemassa" +msgstr "Virtuaalinen kansionimi on jo olemassa" #: dcpp/QueueManager.cpp:412 dcpp/QueueManager.cpp:436 msgid "You're trying to download from yourself!" -msgstr "Jaa... Heitit sitte omaan ämpäriin!?!" +msgstr "Yrität ladata itseltäsi!" #: dcpp/SettingsManager.cpp:156 msgid "downloaded from" -msgstr "" +msgstr "ladattu käyttäjältä" #: dcpp/SettingsManager.cpp:157 msgid "uploaded to" -msgstr "" +msgstr "lähetetty käyttäjälle" Modified: dcplusplus/trunk/dcpp/po/fr.po =================================================================== --- dcplusplus/trunk/dcpp/po/fr.po 2008-03-12 21:46:22 UTC (rev 1038) +++ dcplusplus/trunk/dcpp/po/fr.po 2008-03-13 22:02:50 UTC (rev 1039) @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: dcpp\n" "Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"PO-Revision-Date: 2008-02-07 11:12+0000\n" +"POT-Creation-Date: 2008-03-12 21:38+0100\n" +"PO-Revision-Date: 2008-03-05 09:45+0000\n" "Last-Translator: Kryppy <Unknown>\n" "Language-Team: LANGUAGE <LL...@li...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2008-03-04 21:52+0000\n" +"X-Launchpad-Export-Date: 2008-03-13 15:20+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: dcpp/Util.cpp:381 @@ -50,7 +50,7 @@ #: dcpp/AdcHub.cpp:139 #, boost-format msgid "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" -msgstr "" +msgstr "%1% (%2%) a le mème CID {%3%} que %4% (%5%), ignore" #: dcpp/NmdcHub.cpp:281 #, boost-format @@ -73,12 +73,12 @@ #: dcpp/AdcHub.cpp:281 #, boost-format msgid "%1% was kicked by %2%: %3%" -msgstr "" +msgstr "%1% a été expulsé par %2%: %3%" #: dcpp/AdcHub.cpp:284 #, boost-format msgid "%1% was kicked: %2%" -msgstr "" +msgstr "%1% a été expulsé: %2%" #: dcpp/DownloadManager.cpp:530 #, boost-format @@ -131,8 +131,13 @@ msgid "Certificate not trusted, unable to connect" msgstr "Le certificat n'est pas De Confiance, ne parvient pas à se connecter" +#: dcpp/BufferedSocket.cpp:148 +#, fuzzy +msgid "Connection closed" +msgstr "Temps d'attente dépassé" + #: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 +#: dcpp/BufferedSocket.cpp:131 msgid "Connection timeout" msgstr "Temps d'attente dépassé" @@ -145,7 +150,7 @@ msgid "Directory already shared" msgstr "Répertoire déjà partagé" -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +#: dcpp/BufferedSocket.cpp:404 msgid "Disconnected" msgstr "Déconnecté" @@ -210,7 +215,7 @@ #: dcpp/AdcHub.cpp:206 msgid "Failed to negotiate base protocol" -msgstr "" +msgstr "Impossible de négocier le protocole de base" #: dcpp/Socket.cpp:408 msgid "" @@ -281,6 +286,8 @@ "Hub probably uses an old version of ADC, please encourage the owner to " "upgrade" msgstr "" +"L' Hub utilise probablement une ancienne version de ADC, s’il vous plaît " +"encourager le propriétaire à améliorer" #: dcpp/DownloadManager.cpp:220 msgid "Invalid size" @@ -299,11 +306,11 @@ msgstr "Kicker utilisateur(s)" #: dcpp/ConnectionManager.cpp:230 -#, fuzzy, boost-format +#, boost-format msgid "Listening socket failed (you need to restart %1%): %2%" -msgstr "Echec du socket d'écoute (vous devez redémarrer DC++): %1%" +msgstr "Echec du socket d'écoute (vous devez redémarrer %1%): %2%" -#: dcpp/BufferedSocket.cpp:261 +#: dcpp/BufferedSocket.cpp:237 msgid "Maximum command length exceeded" msgstr "Dépassement de la longueur maximale de la commande" @@ -319,12 +326,12 @@ msgid "No slots available" msgstr "Pas de slot disponible" -#: dcpp/AdcHub.cpp:576 -#, fuzzy, boost-format +#: dcpp/AdcHub.cpp:577 +#, boost-format msgid "Not listening for connections... [truncated message content] |
From: <arn...@us...> - 2008-03-12 21:46:49
|
Revision: 1038 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1038&view=rev Author: arnetheduck Date: 2008-03-12 14:46:22 -0700 (Wed, 12 Mar 2008) Log Message: ----------- ignore some more Property Changed: ---------------- dcplusplus/trunk/ Property changes on: dcplusplus/trunk ___________________________________________________________________ Name: svn:ignore - vc7 ADC* App* DCPlusPlus.aps DCPlusPlus.ncb DCPlusPlus.suo .* *.vcproj.* Example.xml build doc + vc7 ADC* App* DCPlusPlus.aps DCPlusPlus.ncb DCPlusPlus.suo .* *.vcproj.* Example.xml build doc *.pyc config.log This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-12 21:44:02
|
Revision: 1037 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1037&view=rev Author: arnetheduck Date: 2008-03-12 14:43:20 -0700 (Wed, 12 Mar 2008) Log Message: ----------- Ignore template Property Changed: ---------------- dcplusplus/trunk/dcpp/po/ Property changes on: dcplusplus/trunk/dcpp/po ___________________________________________________________________ Name: svn:ignore - dcpp.pot + dcpp.pot libdcpp.pot This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-12 21:41:14
|
Revision: 1036 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1036&view=rev Author: arnetheduck Date: 2008-03-12 14:40:53 -0700 (Wed, 12 Mar 2008) Log Message: ----------- Rename to simplified chinese locale Modified Paths: -------------- dcplusplus/trunk/DCPlusPlus.nsi dcplusplus/trunk/release.sh Added Paths: ----------- dcplusplus/trunk/dcpp/po/zh_CN.po dcplusplus/trunk/mingwm10.dll dcplusplus/trunk/win32/po/zh_CN.po Removed Paths: ------------- dcplusplus/trunk/dcpp/po/zh.po dcplusplus/trunk/win32/po/zh.po Modified: dcplusplus/trunk/DCPlusPlus.nsi =================================================================== --- dcplusplus/trunk/DCPlusPlus.nsi 2008-03-12 20:53:16 UTC (rev 1035) +++ dcplusplus/trunk/DCPlusPlus.nsi 2008-03-12 21:40:53 UTC (rev 1036) @@ -62,6 +62,7 @@ File "License.txt" File "LICENSE-GeoIP.txt" File "LICENSE-OpenSSL.txt" + File "mingwm10.dll" File "magnet.exe" ; Remove opencow just in case we're upgrading Delete "$INSTDIR\opencow.dll" Deleted: dcplusplus/trunk/dcpp/po/zh.po =================================================================== --- dcplusplus/trunk/dcpp/po/zh.po 2008-03-12 20:53:16 UTC (rev 1035) +++ dcplusplus/trunk/dcpp/po/zh.po 2008-03-12 21:40:53 UTC (rev 1036) @@ -1,419 +0,0 @@ -# Chinese translations for the DC++ package. -# Copyright (C) 2008 The translators -# This file is distributed under the same license as the DC++ package. -# <fen...@us...>, 2008. -# -msgid "" -msgstr "" -"Project-Id-Version: dcpp\n" -"Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"Last-Translator: <fen...@us...>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: plurals=2; plural=(n != 1);\n" - -#: dcpp/Util.cpp:381 -#, c-format, boost-format -msgid "%'lld B" -msgstr "" - -#: dcpp/Util.cpp:343 -#, c-format, boost-format -msgid "%.02f GiB" -msgstr "" - -#: dcpp/Util.cpp:339 -#, c-format, boost-format -msgid "%.02f KiB" -msgstr "" - -#: dcpp/Util.cpp:341 -#, c-format, boost-format -msgid "%.02f MiB" -msgstr "" - -#: dcpp/Util.cpp:347 -#, c-format, boost-format -msgid "%.02f PiB" -msgstr "" - -#: dcpp/Util.cpp:345 -#, c-format, boost-format -msgid "%.02f TiB" -msgstr "" - -#: dcpp/AdcHub.cpp:139 -#, boost-format -msgid "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" -msgstr "" - -#: dcpp/NmdcHub.cpp:281 -#, boost-format -msgid "%1% (Nick unknown)" -msgstr "" - -#: dcpp/HashManager.cpp:767 -#, boost-format -msgid "" -"%1% not shared; calculated CRC32 does not match the one found in SFV file." -msgstr "" - -#: dcpp/QueueManager.cpp:325 -#, boost-format -msgid "%1% renamed to %2%" -msgstr "" - -#: dcpp/AdcHub.cpp:281 -#, boost-format -msgid "%1% was kicked by %2%: %3%" -msgstr "" - -#: dcpp/AdcHub.cpp:284 -#, boost-format -msgid "%1% was kicked: %2%" -msgstr "" - -#: dcpp/DownloadManager.cpp:530 -#, fuzzy, boost-format -msgid "%1%: File not available" -msgstr "文件不存在" - -#: dcpp/Util.cpp:337 -#, c-format, boost-format -msgid "%d B" -msgstr "" - -#: dcpp/Util.cpp:377 -#, c-format, boost-format -msgid "%s B" -msgstr "" - -#: dcpp/QueueManager.cpp:532 -msgid "A file of equal or larger size already exists at the target location" -msgstr "一个相等或更大的文件已经存在于下载目录中" - -#: dcpp/QueueManager.cpp:475 -msgid "A file with a different size already exists in the queue" -msgstr "存在大小不同的同名文件" - -#: dcpp/QueueManager.cpp:478 -msgid "A file with different tth root already exists in the queue" -msgstr "队列中已经有一个不同 tth root 的文件" - -#: dcpp/QueueManager.cpp:442 -msgid "A file with the same hash already exists in your share" -msgstr "在你的共享中已经有一个相同hash值的文件了" - -#: dcpp/ConnectionManager.cpp:176 -msgid "All download slots taken" -msgstr "对方所有上传通道都已被占用" - -#: dcpp/DownloadManager.cpp:376 -msgid "CRC32 inconsistency (SFV-Check)" -msgstr "CRC32 出错(SFV-Check)" - -#: dcpp/DownloadManager.cpp:374 -#, fuzzy, boost-format -msgid "CRC32 inconsistency (SFV-Check) (File: %1%)" -msgstr "CRC32 出错(SFV-Check)" - -#: dcpp/ConnectionManager.cpp:376 -msgid "Certificate not trusted, unable to connect" -msgstr "" - -#: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 -#: dcpp/BufferedSocket.cpp:154 -msgid "Connection timeout" -msgstr "连接超时" - -#: dcpp/DownloadManager.cpp:232 -#, boost-format -msgid "Could not open target file: %1%" -msgstr "" - -#: dcpp/ShareManager.cpp:418 -msgid "Directory already shared" -msgstr "目录已经共享" - -#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 -msgid "Disconnected" -msgstr "连接中断" - -#: dcpp/UploadManager.cpp:450 -#, boost-format -msgid "Disconnected user leaving the hub: %1%" -msgstr "" - -#: dcpp/DCPlusPlus.cpp:103 -msgid "Download Queue" -msgstr "下载队列" - -#: dcpp/ShareManager.cpp:741 -#, boost-format -msgid "" -"Duplicate file will not be shared: %1%%2% (Size: %3% B) Dupe matched " -"against: %4%%5%" -msgstr "" - -#: dcpp/QueueManager.cpp:545 dcpp/QueueManager.cpp:549 -#, boost-format -msgid "Duplicate source: %1%" -msgstr "" - -#: dcpp/HashManager.cpp:456 -#, boost-format -msgid "Error creating hash data file: %1%" -msgstr "" - -#: dcpp/ZUtils.cpp:33 dcpp/ZUtils.cpp:54 dcpp/ZUtils.cpp:76 dcpp/ZUtils.cpp:86 -#: dcpp/BZUtils.cpp:31 dcpp/BZUtils.cpp:52 dcpp/BZUtils.cpp:60 -msgid "Error during compression" -msgstr "压缩过程发生错误" - -#: dcpp/ZUtils.cpp:100 dcpp/ZUtils.cpp:123 dcpp/BZUtils.cpp:72 -#: dcpp/BZUtils.cpp:94 dcpp/BZUtils.cpp:97 dcpp/CryptoManager.cpp:342 -#: dcpp/CryptoManager.cpp:361 dcpp/CryptoManager.cpp:375 -msgid "Error during decompression" -msgstr "解压缩出错" - -#: dcpp/HashManager.cpp:772 -#, boost-format -msgid "Error hashing %1%: %2%" -msgstr "" - -#: dcpp/HashManager.cpp:118 dcpp/HashManager.cpp:333 -#, boost-format -msgid "Error saving hash data: %1%" -msgstr "" - -#: dcpp/CryptoManager.cpp:226 dcpp/CryptoManager.cpp:230 -#: dcpp/CryptoManager.cpp:235 dcpp/CryptoManager.cpp:239 -msgid "Failed to load certificate file" -msgstr "" - -#: dcpp/CryptoManager.cpp:244 dcpp/CryptoManager.cpp:248 -#: dcpp/CryptoManager.cpp:253 dcpp/CryptoManager.cpp:257 -msgid "Failed to load private key" -msgstr "" - -#: dcpp/AdcHub.cpp:206 -msgid "Failed to negotiate base protocol" -msgstr "" - -#: dcpp/Socket.cpp:408 -msgid "" -"Failed to set up the socks server for UDP relay (check socks address and " -"port)" -msgstr "socks服务器UDP回应失败(检查socks服务器的地址和端口)" - -#: dcpp/ShareManager.cpp:776 -#, fuzzy, boost-format -msgid "File list refresh failed: %1%" -msgstr "文件列表已更新" - -#: dcpp/ShareManager.cpp:820 -msgid "File list refresh finished" -msgstr "文件列表已更新" - -#: dcpp/ShareManager.cpp:756 -msgid "" -"File list refresh in progress, please wait for it to finish before trying to " -"refresh again" -msgstr "" - -#: dcpp/ShareManager.cpp:798 -msgid "File list refresh initiated" -msgstr "文件列表刷新已开始" - -#: dcpp/DirectoryListing.cpp:102 -msgid "File not available" -msgstr "文件不存在" - -#: dcpp/HashManager.cpp:89 -#, boost-format -msgid "Finished hashing: %1%" -msgstr "" - -#: dcpp/HashManager.cpp:87 -#, boost-format -msgid "Finished hashing: %1% (%2%/s)" -msgstr "" - -#: dcpp/DownloadManager.cpp:308 -msgid "Full tree does not match TTH root" -msgstr "已下载的“树”不匹配于 TTH root" - -#: dcpp/CryptoManager.cpp:219 -msgid "Generated new TLS certificate" -msgstr "" - -#: dcpp/DCPlusPlus.cpp:97 -msgid "Hash database" -msgstr "Hash 数据库" - -#: dcpp/HashManager.cpp:677 -msgid "Hash database rebuilt" -msgstr "Hash 数据库已重建" - -#: dcpp/HashManager.cpp:73 dcpp/HashManager.cpp:277 -#, boost-format -msgid "Hashing failed: %1%" -msgstr "" - -#: dcpp/AdcHub.cpp:212 -msgid "" -"Hub probably uses an old version of ADC, please encourage the owner to " -"upgrade" -msgstr "" - -#: dcpp/DownloadManager.cpp:220 -msgid "Invalid size" -msgstr "" - -#: dcpp/QueueManager.cpp:515 dcpp/QueueManager.cpp:523 -msgid "" -"Invalid target file (missing directory, check default download directory " -"setting)" -msgstr "目标文件无法访问(目录已被删除, 请检查缺省的下载地址设置)" - -#: dcpp/FavoriteManager.cpp:438 -msgid "Kick user(s)" -msgstr "踢出该用户" - -#: dcpp/ConnectionManager.cpp:230 -#, boost-format -msgid "Listening socket failed (you need to restart %1%): %2%" -msgstr "" - -#: dcpp/BufferedSocket.cpp:261 -msgid "Maximum command length exceeded" -msgstr "" - -#: dcpp/DownloadManager.cpp:280 -msgid "More data was sent than was expected" -msgstr "发送了比预期更多的数据量" - -#: dcpp/ShareManager.cpp:403 -msgid "No directory specified" -msgstr "没有指定目录" - -#: dcpp/DownloadManager.cpp:419 -msgid "No slots available" -msgstr "对方上传通道都已经满了" - -#: dcpp/AdcHub.cpp:576 -#, boost-format -msgid "Not listening for connections - please restart %1%" -msgstr "" - -#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 -#: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 -#: dcpp/SearchManager.cpp:331 -msgid "Offline" -msgstr "离线" - -#: dcpp/FavoriteManager.cpp:442 -msgid "Redirect user(s)" -msgstr "重定向用户" - -#: dcpp/ShareManager.cpp:421 -msgid "Remove all subdirectories before adding this one" -msgstr "增加前先删除所有子文件夹" - -#: dcpp/DownloadManager.cpp:225 -#, fuzzy -msgid "Response does not match request" -msgstr "已下载的“树”不匹配于 TTH root" - -#: dcpp/DCPlusPlus.cpp:100 -msgid "Shared Files" -msgstr "共享文件" - -#: dcpp/Socket.cpp:269 dcpp/Socket.cpp:273 -msgid "Socks server authentication failed (bad login / password?)" -msgstr "Socks代理鉴权失败 (用户名/密码错误?)" - -#: dcpp/CryptoManager.cpp:221 -#, boost-format -msgid "TLS disabled, failed to generate certificate: %1%" -msgstr "" - -#: dcpp/CryptoManager.cpp:211 -msgid "TLS disabled, no certificate file set" -msgstr "" - -#: dcpp/QueueManager.cpp:510 dcpp/QueueManager.cpp:519 -msgid "Target filename too long" -msgstr "目标文件名太长" - -#: dcpp/QueueManager.cpp:798 -msgid "Target removed" -msgstr "" - -#: dcpp/Socket.cpp:255 -msgid "The socks server doesn't support login / password authentication" -msgstr "Socks代理不支持「用户/密码」验证" - -#: dcpp/Socket.cpp:162 dcpp/Socket.cpp:173 dcpp/Socket.cpp:206 -#: dcpp/Socket.cpp:210 dcpp/Socket.cpp:237 dcpp/Socket.cpp:252 -msgid "The socks server failed establish a connection" -msgstr "Socks代理连接失败" - -#: dcpp/Socket.cpp:241 -msgid "The socks server requires authentication" -msgstr "Socks代理需要「用户/密码」验证" - -#: dcpp/ShareManager.cpp:407 -msgid "The temporary download directory cannot be shared" -msgstr "不能共享下载的临时文件目录" - -#: dcpp/QueueManager.cpp:465 -msgid "This file is already queued" -msgstr "" - -#: dcpp/Thread.cpp:34 dcpp/Thread.cpp:42 -msgid "Unable to create thread" -msgstr "不能建立线程" - -#: dcpp/QueueManager.cpp:995 -#, boost-format -msgid "Unable to open filelist: %1%" -msgstr "" - -#: dcpp/HashManager.cpp:131 -#, fuzzy -msgid "Unable to read hash data file" -msgstr "不能建立线程" - -#: dcpp/QueueManager.cpp:327 -#, fuzzy, boost-format -msgid "Unable to rename %1%: %2%" -msgstr "不能建立线程" - -#: dcpp/UploadManager.cpp:149 -#, boost-format -msgid "Unable to send file %1%: %2%" -msgstr "" - -#: dcpp/Socket.cpp:54 -#, c-format, boost-format -msgid "Unknown error: 0x%1$x" -msgstr "" - -#: dcpp/ShareManager.cpp:426 dcpp/ShareManager.cpp:468 -msgid "Virtual directory name already exists" -msgstr "要虚拟的名字已经存在了(不允许重复)" - -#: dcpp/QueueManager.cpp:412 dcpp/QueueManager.cpp:436 -msgid "You're trying to download from yourself!" -msgstr "不能下载自己!" - -#: dcpp/SettingsManager.cpp:156 -msgid "downloaded from" -msgstr "" - -#: dcpp/SettingsManager.cpp:157 -msgid "uploaded to" -msgstr "" Copied: dcplusplus/trunk/dcpp/po/zh_CN.po (from rev 1033, dcplusplus/trunk/dcpp/po/zh.po) =================================================================== --- dcplusplus/trunk/dcpp/po/zh_CN.po (rev 0) +++ dcplusplus/trunk/dcpp/po/zh_CN.po 2008-03-12 21:40:53 UTC (rev 1036) @@ -0,0 +1,419 @@ +# Chinese translations for the DC++ package. +# Copyright (C) 2008 The translators +# This file is distributed under the same license as the DC++ package. +# <fen...@us...>, 2008. +# +msgid "" +msgstr "" +"Project-Id-Version: dcpp\n" +"Report-Msgid-Bugs-To: dcp...@li...\n" +"POT-Creation-Date: 2008-03-04 23:00+0100\n" +"Last-Translator: <fen...@us...>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: plurals=2; plural=(n != 1);\n" + +#: dcpp/Util.cpp:381 +#, c-format, boost-format +msgid "%'lld B" +msgstr "" + +#: dcpp/Util.cpp:343 +#, c-format, boost-format +msgid "%.02f GiB" +msgstr "" + +#: dcpp/Util.cpp:339 +#, c-format, boost-format +msgid "%.02f KiB" +msgstr "" + +#: dcpp/Util.cpp:341 +#, c-format, boost-format +msgid "%.02f MiB" +msgstr "" + +#: dcpp/Util.cpp:347 +#, c-format, boost-format +msgid "%.02f PiB" +msgstr "" + +#: dcpp/Util.cpp:345 +#, c-format, boost-format +msgid "%.02f TiB" +msgstr "" + +#: dcpp/AdcHub.cpp:139 +#, boost-format +msgid "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" +msgstr "" + +#: dcpp/NmdcHub.cpp:281 +#, boost-format +msgid "%1% (Nick unknown)" +msgstr "" + +#: dcpp/HashManager.cpp:767 +#, boost-format +msgid "" +"%1% not shared; calculated CRC32 does not match the one found in SFV file." +msgstr "" + +#: dcpp/QueueManager.cpp:325 +#, boost-format +msgid "%1% renamed to %2%" +msgstr "" + +#: dcpp/AdcHub.cpp:281 +#, boost-format +msgid "%1% was kicked by %2%: %3%" +msgstr "" + +#: dcpp/AdcHub.cpp:284 +#, boost-format +msgid "%1% was kicked: %2%" +msgstr "" + +#: dcpp/DownloadManager.cpp:530 +#, fuzzy, boost-format +msgid "%1%: File not available" +msgstr "文件不存在" + +#: dcpp/Util.cpp:337 +#, c-format, boost-format +msgid "%d B" +msgstr "" + +#: dcpp/Util.cpp:377 +#, c-format, boost-format +msgid "%s B" +msgstr "" + +#: dcpp/QueueManager.cpp:532 +msgid "A file of equal or larger size already exists at the target location" +msgstr "一个相等或更大的文件已经存在于下载目录中" + +#: dcpp/QueueManager.cpp:475 +msgid "A file with a different size already exists in the queue" +msgstr "存在大小不同的同名文件" + +#: dcpp/QueueManager.cpp:478 +msgid "A file with different tth root already exists in the queue" +msgstr "队列中已经有一个不同 tth root 的文件" + +#: dcpp/QueueManager.cpp:442 +msgid "A file with the same hash already exists in your share" +msgstr "在你的共享中已经有一个相同hash值的文件了" + +#: dcpp/ConnectionManager.cpp:176 +msgid "All download slots taken" +msgstr "对方所有上传通道都已被占用" + +#: dcpp/DownloadManager.cpp:376 +msgid "CRC32 inconsistency (SFV-Check)" +msgstr "CRC32 出错(SFV-Check)" + +#: dcpp/DownloadManager.cpp:374 +#, fuzzy, boost-format +msgid "CRC32 inconsistency (SFV-Check) (File: %1%)" +msgstr "CRC32 出错(SFV-Check)" + +#: dcpp/ConnectionManager.cpp:376 +msgid "Certificate not trusted, unable to connect" +msgstr "" + +#: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 +#: dcpp/BufferedSocket.cpp:154 +msgid "Connection timeout" +msgstr "连接超时" + +#: dcpp/DownloadManager.cpp:232 +#, boost-format +msgid "Could not open target file: %1%" +msgstr "" + +#: dcpp/ShareManager.cpp:418 +msgid "Directory already shared" +msgstr "目录已经共享" + +#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +msgid "Disconnected" +msgstr "连接中断" + +#: dcpp/UploadManager.cpp:450 +#, boost-format +msgid "Disconnected user leaving the hub: %1%" +msgstr "" + +#: dcpp/DCPlusPlus.cpp:103 +msgid "Download Queue" +msgstr "下载队列" + +#: dcpp/ShareManager.cpp:741 +#, boost-format +msgid "" +"Duplicate file will not be shared: %1%%2% (Size: %3% B) Dupe matched " +"against: %4%%5%" +msgstr "" + +#: dcpp/QueueManager.cpp:545 dcpp/QueueManager.cpp:549 +#, boost-format +msgid "Duplicate source: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:456 +#, boost-format +msgid "Error creating hash data file: %1%" +msgstr "" + +#: dcpp/ZUtils.cpp:33 dcpp/ZUtils.cpp:54 dcpp/ZUtils.cpp:76 dcpp/ZUtils.cpp:86 +#: dcpp/BZUtils.cpp:31 dcpp/BZUtils.cpp:52 dcpp/BZUtils.cpp:60 +msgid "Error during compression" +msgstr "压缩过程发生错误" + +#: dcpp/ZUtils.cpp:100 dcpp/ZUtils.cpp:123 dcpp/BZUtils.cpp:72 +#: dcpp/BZUtils.cpp:94 dcpp/BZUtils.cpp:97 dcpp/CryptoManager.cpp:342 +#: dcpp/CryptoManager.cpp:361 dcpp/CryptoManager.cpp:375 +msgid "Error during decompression" +msgstr "解压缩出错" + +#: dcpp/HashManager.cpp:772 +#, boost-format +msgid "Error hashing %1%: %2%" +msgstr "" + +#: dcpp/HashManager.cpp:118 dcpp/HashManager.cpp:333 +#, boost-format +msgid "Error saving hash data: %1%" +msgstr "" + +#: dcpp/CryptoManager.cpp:226 dcpp/CryptoManager.cpp:230 +#: dcpp/CryptoManager.cpp:235 dcpp/CryptoManager.cpp:239 +msgid "Failed to load certificate file" +msgstr "" + +#: dcpp/CryptoManager.cpp:244 dcpp/CryptoManager.cpp:248 +#: dcpp/CryptoManager.cpp:253 dcpp/CryptoManager.cpp:257 +msgid "Failed to load private key" +msgstr "" + +#: dcpp/AdcHub.cpp:206 +msgid "Failed to negotiate base protocol" +msgstr "" + +#: dcpp/Socket.cpp:408 +msgid "" +"Failed to set up the socks server for UDP relay (check socks address and " +"port)" +msgstr "socks服务器UDP回应失败(检查socks服务器的地址和端口)" + +#: dcpp/ShareManager.cpp:776 +#, fuzzy, boost-format +msgid "File list refresh failed: %1%" +msgstr "文件列表已更新" + +#: dcpp/ShareManager.cpp:820 +msgid "File list refresh finished" +msgstr "文件列表已更新" + +#: dcpp/ShareManager.cpp:756 +msgid "" +"File list refresh in progress, please wait for it to finish before trying to " +"refresh again" +msgstr "" + +#: dcpp/ShareManager.cpp:798 +msgid "File list refresh initiated" +msgstr "文件列表刷新已开始" + +#: dcpp/DirectoryListing.cpp:102 +msgid "File not available" +msgstr "文件不存在" + +#: dcpp/HashManager.cpp:89 +#, boost-format +msgid "Finished hashing: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:87 +#, boost-format +msgid "Finished hashing: %1% (%2%/s)" +msgstr "" + +#: dcpp/DownloadManager.cpp:308 +msgid "Full tree does not match TTH root" +msgstr "已下载的“树”不匹配于 TTH root" + +#: dcpp/CryptoManager.cpp:219 +msgid "Generated new TLS certificate" +msgstr "" + +#: dcpp/DCPlusPlus.cpp:97 +msgid "Hash database" +msgstr "Hash 数据库" + +#: dcpp/HashManager.cpp:677 +msgid "Hash database rebuilt" +msgstr "Hash 数据库已重建" + +#: dcpp/HashManager.cpp:73 dcpp/HashManager.cpp:277 +#, boost-format +msgid "Hashing failed: %1%" +msgstr "" + +#: dcpp/AdcHub.cpp:212 +msgid "" +"Hub probably uses an old version of ADC, please encourage the owner to " +"upgrade" +msgstr "" + +#: dcpp/DownloadManager.cpp:220 +msgid "Invalid size" +msgstr "" + +#: dcpp/QueueManager.cpp:515 dcpp/QueueManager.cpp:523 +msgid "" +"Invalid target file (missing directory, check default download directory " +"setting)" +msgstr "目标文件无法访问(目录已被删除, 请检查缺省的下载地址设置)" + +#: dcpp/FavoriteManager.cpp:438 +msgid "Kick user(s)" +msgstr "踢出该用户" + +#: dcpp/ConnectionManager.cpp:230 +#, boost-format +msgid "Listening socket failed (you need to restart %1%): %2%" +msgstr "" + +#: dcpp/BufferedSocket.cpp:261 +msgid "Maximum command length exceeded" +msgstr "" + +#: dcpp/DownloadManager.cpp:280 +msgid "More data was sent than was expected" +msgstr "发送了比预期更多的数据量" + +#: dcpp/ShareManager.cpp:403 +msgid "No directory specified" +msgstr "没有指定目录" + +#: dcpp/DownloadManager.cpp:419 +msgid "No slots available" +msgstr "对方上传通道都已经满了" + +#: dcpp/AdcHub.cpp:576 +#, boost-format +msgid "Not listening for connections - please restart %1%" +msgstr "" + +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 +#: dcpp/SearchManager.cpp:331 +msgid "Offline" +msgstr "离线" + +#: dcpp/FavoriteManager.cpp:442 +msgid "Redirect user(s)" +msgstr "重定向用户" + +#: dcpp/ShareManager.cpp:421 +msgid "Remove all subdirectories before adding this one" +msgstr "增加前先删除所有子文件夹" + +#: dcpp/DownloadManager.cpp:225 +#, fuzzy +msgid "Response does not match request" +msgstr "已下载的“树”不匹配于 TTH root" + +#: dcpp/DCPlusPlus.cpp:100 +msgid "Shared Files" +msgstr "共享文件" + +#: dcpp/Socket.cpp:269 dcpp/Socket.cpp:273 +msgid "Socks server authentication failed (bad login / password?)" +msgstr "Socks代理鉴权失败 (用户名/密码错误?)" + +#: dcpp/CryptoManager.cpp:221 +#, boost-format +msgid "TLS disabled, failed to generate certificate: %1%" +msgstr "" + +#: dcpp/CryptoManager.cpp:211 +msgid "TLS disabled, no certificate file set" +msgstr "" + +#: dcpp/QueueManager.cpp:510 dcpp/QueueManager.cpp:519 +msgid "Target filename too long" +msgstr "目标文件名太长" + +#: dcpp/QueueManager.cpp:798 +msgid "Target removed" +msgstr "" + +#: dcpp/Socket.cpp:255 +msgid "The socks server doesn't support login / password authentication" +msgstr "Socks代理不支持「用户/密码」验证" + +#: dcpp/Socket.cpp:162 dcpp/Socket.cpp:173 dcpp/Socket.cpp:206 +#: dcpp/Socket.cpp:210 dcpp/Socket.cpp:237 dcpp/Socket.cpp:252 +msgid "The socks server failed establish a connection" +msgstr "Socks代理连接失败" + +#: dcpp/Socket.cpp:241 +msgid "The socks server requires authentication" +msgstr "Socks代理需要「用户/密码」验证" + +#: dcpp/ShareManager.cpp:407 +msgid "The temporary download directory cannot be shared" +msgstr "不能共享下载的临时文件目录" + +#: dcpp/QueueManager.cpp:465 +msgid "This file is already queued" +msgstr "" + +#: dcpp/Thread.cpp:34 dcpp/Thread.cpp:42 +msgid "Unable to create thread" +msgstr "不能建立线程" + +#: dcpp/QueueManager.cpp:995 +#, boost-format +msgid "Unable to open filelist: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:131 +#, fuzzy +msgid "Unable to read hash data file" +msgstr "不能建立线程" + +#: dcpp/QueueManager.cpp:327 +#, fuzzy, boost-format +msgid "Unable to rename %1%: %2%" +msgstr "不能建立线程" + +#: dcpp/UploadManager.cpp:149 +#, boost-format +msgid "Unable to send file %1%: %2%" +msgstr "" + +#: dcpp/Socket.cpp:54 +#, c-format, boost-format +msgid "Unknown error: 0x%1$x" +msgstr "" + +#: dcpp/ShareManager.cpp:426 dcpp/ShareManager.cpp:468 +msgid "Virtual directory name already exists" +msgstr "要虚拟的名字已经存在了(不允许重复)" + +#: dcpp/QueueManager.cpp:412 dcpp/QueueManager.cpp:436 +msgid "You're trying to download from yourself!" +msgstr "不能下载自己!" + +#: dcpp/SettingsManager.cpp:156 +msgid "downloaded from" +msgstr "" + +#: dcpp/SettingsManager.cpp:157 +msgid "uploaded to" +msgstr "" Added: dcplusplus/trunk/mingwm10.dll =================================================================== (Binary files differ) Property changes on: dcplusplus/trunk/mingwm10.dll ___________________________________________________________________ Name: svn:executable + * Name: svn:mime-type + application/octet-stream Modified: dcplusplus/trunk/release.sh =================================================================== --- dcplusplus/trunk/release.sh 2008-03-12 20:53:16 UTC (rev 1035) +++ dcplusplus/trunk/release.sh 2008-03-12 21:40:53 UTC (rev 1036) @@ -5,7 +5,7 @@ i686-mingw32-strip DCPlusPlus.exe #copy /b app\dcplusplus.chm . -zip -9 DCPlusPlus-$1.zip changelog.txt dcppboot.xml DCPlusPlus.chm DCPlusPlus.exe Example.xml License.txt LICENSE-GeoIP.txt LICENSE-OpenSSL.txt magnet.exe GeoIPCountryWhois.csv +zip -9 DCPlusPlus-$1.zip changelog.txt dcppboot.xml DCPlusPlus.chm DCPlusPlus.exe Example.xml License.txt LICENSE-GeoIP.txt LICENSE-OpenSSL.txt magnet.exe GeoIPCountryWhois.csv mingwm10.dll find *.txt *.TXT *.nsi *.xml *.py *.csv *.sh magnet.exe Doxyfile SConstruct boost bzip2 dcpp help htmlhelp res smartwin win32 openssl zlib \ -wholename "*/.svn" -prune -o -print | grep -v gch$ | zip -9 DCPlusPlus-$1-src.zip -9 -@ Deleted: dcplusplus/trunk/win32/po/zh.po =================================================================== --- dcplusplus/trunk/win32/po/zh.po 2008-03-12 20:53:16 UTC (rev 1035) +++ dcplusplus/trunk/win32/po/zh.po 2008-03-12 21:40:53 UTC (rev 1036) @@ -1,2290 +0,0 @@ -# Chinese translations for the DC++ package. -# Copyright (C) 2008 The translators -# This file is distributed under the same license as the DC++ package. -# <fen...@us...>, 2008. -# -msgid "" -msgstr "" -"Project-Id-Version: win32\n" -"Report-Msgid-Bugs-To: dcp...@li...\n" -"POT-Creation-Date: 2008-03-04 23:00+0100\n" -"Last-Translator: <fen...@us...>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: plurals=2; plural=(n != 1);\n" - -#: win32/MainWindow.cpp:862 -#, fuzzy, boost-format -msgid "" -"%1%\n" -"Open download page?" -msgstr "打开下载目录" - -#: win32/TransferView.cpp:571 -#, boost-format -msgid "%1% (%2$0.2f)" -msgstr "" - -#: win32/HashProgressDlg.cpp:91 -#, boost-format -msgid "%1% files/h, %2% files left" -msgstr "" - -#: win32/SearchFrame.cpp:576 -#, boost-format -msgid "%1% filtered" -msgstr "" - -#: win32/SearchFrame.cpp:571 -#, boost-format -msgid "%1% item" -msgid_plural "%1% items" -msgstr[0] "" -msgstr[1] "" - -#: win32/HashProgressDlg.cpp:100 -#, boost-format -msgid "%1% left" -msgstr "" - -#: win32/HubFrame.cpp:927 -#, fuzzy, boost-format -msgid "%1% user" -msgid_plural "%1% users" -msgstr[0] "没有用户" -msgstr[1] "没有用户" - -#: win32/TransferView.cpp:586 win32/TransferView.cpp:633 -#, boost-format -msgid "%1%/s" -msgstr "" - -#: win32/HashProgressDlg.cpp:92 -#, boost-format -msgid "%1%/s, %2% left" -msgstr "" - -#: win32/HubListsDlg.cpp:63 win32/UCPage.cpp:33 -#, fuzzy -msgid "&Add" -msgstr "已添加" - -#: win32/UploadPage.cpp:37 win32/FavoriteDirsPage.cpp:34 -msgid "&Add folder" -msgstr "" - -#: win32/DirectoryListingFrame.cpp:369 win32/SearchFrame.cpp:774 -#: win32/SearchFrame.cpp:804 win32/DownloadPage.cpp:32 win32/LogPage.cpp:33 -#: win32/Appearance2Page.cpp:30 -#, fuzzy -msgid "&Browse..." -msgstr "浏览到" - -#: win32/UCPage.cpp:34 -#, fuzzy -msgid "&Change" -msgstr "更新记录" - -#: win32/PrivateFrame.cpp:388 win32/HubFrame.cpp:1178 -#, fuzzy -msgid "&Close" -msgstr "颜色" - -#: win32/PublicHubsFrame.cpp:150 -msgid "&Configure" -msgstr "" - -#: win32/FavHubsFrame.cpp:72 win32/FavHubsFrame.cpp:278 -#: win32/PublicHubsFrame.cpp:448 -#, fuzzy -msgid "&Connect" -msgstr "已连接" - -#: win32/TransferView.cpp:199 -#, fuzzy -msgid "&Disconnect" -msgstr "快速连接" - -#: win32/DirectoryListingFrame.cpp:311 win32/DirectoryListingFrame.cpp:336 -#: win32/DirectoryListingFrame.cpp:348 win32/SearchFrame.cpp:742 -#, fuzzy -msgid "&Download" -msgstr "下载" - -#: win32/MainWindow.cpp:214 -#, fuzzy -msgid "&Download Queue\tCtrl+D" -msgstr "下载队列" - -#: win32/HubListsDlg.cpp:75 -msgid "&Edit" -msgstr "" - -#: win32/MainWindow.cpp:211 -#, fuzzy -msgid "&Favorite Hubs\tCtrl+F" -msgstr "站点收藏夹" - -#: win32/MainWindow.cpp:188 -#, fuzzy -msgid "&File" -msgstr "文件" - -#: win32/TransferView.cpp:196 -msgid "&Force attempt" -msgstr "" - -#: win32/QueueFrame.cpp:1006 win32/WaitingUsersFrame.cpp:80 -#: win32/PrivateFrame.cpp:380 -msgid "&Get file list" -msgstr "" - -#: win32/DirectoryListingFrame.cpp:325 -#, fuzzy -msgid "&Go to directory" -msgstr "下载整个目录" - -#: win32/MainWindow.cpp:240 win32/ADLSearchFrame.cpp:93 -msgid "&Help" -msgstr "" - -#: win32/PrivateFrame.cpp:381 -#, fuzzy -msgid "&Match queue" -msgstr "队列匹配" - -#: win32/QueueFrame.cpp:960 win32/QueueFrame.cpp:978 win32/QueueFrame.cpp:988 -#, fuzzy -msgid "&Move/Rename" -msgstr "重命名" - -#: win32/FavHubsFrame.cpp:77 win32/FavHubsFrame.cpp:280 -#: win32/ADLSearchFrame.cpp:68 win32/ADLSearchFrame.cpp:291 -msgid "&New..." -msgstr "" - -#: win32/MainWindow.cpp:223 -#, fuzzy -msgid "&Notepad\tCtrl+N" -msgstr "记事本" - -#: win32/FavHubsFrame.cpp:82 win32/FavHubsFrame.cpp:281 -#: win32/ADLSearchFrame.cpp:73 win32/ADLSearchFrame.cpp:292 -#: win32/UsersFrame.cpp:186 -#, fuzzy -msgid "&Properties" -msgstr "ADL搜索选项 (ADLSearch Properties)" - -#: win32/MainWindow.cpp:210 -#, fuzzy -msgid "&Public Hubs\tCtrl+P" -msgstr "服务器列表" - -#: win32/MainWindow.cpp:190 -#, fuzzy -msgid "&Quick Connect ...\tCtrl+Q" -msgstr "快速连接" - -#: win32/MainWindow.cpp:192 win32/HubFrame.cpp:1173 -msgid "&Reconnect\tCtrl+R" -msgstr "" - -#: win32/PublicHubsFrame.cpp:156 -msgid "&Refresh" -msgstr "" - -#: win32/UploadPage.cpp:36 win32/QueueFrame.cpp:968 win32/QueueFrame.cpp:980 -#: win32/QueueFrame.cpp:990 win32/HubListsDlg.cpp:79 -#: win32/WaitingUsersFrame.cpp:82 win32/FavoriteDirsPage.cpp:33 -#: win32/SearchFrame.cpp:755 win32/FavHubsFrame.cpp:97 -#: win32/FavHubsFrame.cpp:285 win32/ADLSearchFrame.cpp:88 -#: win32/ADLSearchFrame.cpp:293 win32/UCPage.cpp:35 win32/UsersFrame.cpp:187 -#, fuzzy -msgid "&Remove" -msgstr "重命名" - -#: win32/SpyFrame.cpp:189 -#, fuzzy -msgid "&Search" -msgstr "搜索" - -#: win32/MainWindow.cpp:219 -#, fuzzy -msgid "&Search\tCtrl+S" -msgstr "搜索" - -#: win32/QueueFrame.cpp:1013 win32/WaitingUsersFrame.cpp:85 -msgid "&Send private message" -msgstr "" - -#: win32/MainWindow.cpp:208 -#, fuzzy -msgid "&View" -msgstr "视频" - -#: win32/DirectoryListingFrame.cpp:315 win32/SearchFrame.cpp:746 -msgid "&View as text" -msgstr "" - -#: win32/MainWindow.cpp:230 -msgid "&Window" -msgstr "" - -#: win32/HubFrame.cpp:487 -#, boost-format -msgid "*** Joins: %1%" -msgstr "" - -#: win32/HubFrame.cpp:494 -#, boost-format -msgid "*** Parts: %1%" -msgstr "" - -#: win32/HashProgressDlg.cpp:84 -#, boost-format -msgid "-.-- B/s, %1% left" -msgstr "" - -#: win32/HashProgressDlg.cpp:83 -#, boost-format -msgid "-.-- files/h, %1% files left" -msgstr "" - -#: win32/WinUtil.cpp:1036 -msgid "" -"A MAGNET link was given to DC++, but it didn't contain a valid file hash for " -"use on the Direct Connect network. No action will be taken." -msgstr "" -"一个MAGNET链接已经加给DC++, 但是它不包含一个在DC网络上可用的hash值. 没有动作" -"执行." - -#: win32/MainWindow.cpp:220 win32/MainWindow.cpp:294 -msgid "ADL Search" -msgstr "ADL 搜索" - -#: win32/ADLSProperties.cpp:49 -msgid "ADLSearch Properties" -msgstr "ADL搜索选项 (ADLSearch Properties)" - -#: win32/MainWindow.cpp:305 win32/MainWindow.cpp:564 -msgid "AWAY" -msgstr "离开" - -#: win32/MainWindow.cpp:245 -msgid "About DC++..." -msgstr "关于 DC++...(fenxiang汉化)" - -#: win32/AdvancedPage.cpp:43 -msgid "Accept custom user commands from hub" -msgstr "接受站点的自定义用户命令" - -#: win32/WaitingUsersFrame.cpp:84 win32/PrivateFrame.cpp:384 -#: win32/HubFrame.cpp:1170 win32/PublicHubsFrame.cpp:449 -#, fuzzy -msgid "Add To &Favorites" -msgstr "站点收藏夹" - -#: win32/AdvancedPage.cpp:45 -msgid "Add finished files to share instantly (if shared)" -msgstr "立刻把完成的文件加到共享(如果已加为共享)" - -#: win32/QueueFrame.cpp:45 -msgid "Added" -msgstr "已添加" - -#: win32/MainWindow.cpp:358 win32/PublicHubsFrame.cpp:52 -msgid "Address" -msgstr "服务器地址" - -#: win32/SettingsDialog.cpp:67 -msgid "Advanced" -msgstr "高级" - -#: win32/SettingsDialog.cpp:69 -msgid "Advanced\\Experts only" -msgstr "" - -#: win32/SettingsDialog.cpp:68 -#, fuzzy -msgid "Advanced\\Logs" -msgstr "高级" - -#: win32/SettingsDialog.cpp:71 -msgid "Advanced\\Security Certificates" -msgstr "" - -#: win32/SettingsDialog.cpp:70 -msgid "Advanced\\User Commands" -msgstr "" - -#: win32/QueueFrame.cpp:1022 win32/QueueFrame.cpp:1031 -msgid "All" -msgstr "全部" - -#: win32/QueueFrame.cpp:431 -#, fuzzy, boost-format -msgid "All %1% users offline" -msgstr "用户离线中" - -#: win32/CertificatesPage.cpp:43 -msgid "Allow TLS connections to clients without trusted certificate" -msgstr "" - -#: win32/CertificatesPage.cpp:42 -msgid "Allow TLS connections to hubs without trusted certificate" -msgstr "" - -#: win32/CommandDlg.cpp:117 -msgid "Always open help file with this dialog" -msgstr "总是在出现此对话框时打开帮助文件" - -#: win32/SearchFrame.cpp:182 win32/HubFrame.cpp:119 -#: win32/PublicHubsFrame.cpp:138 -msgid "Any" -msgstr "任意" - -#: win32/SettingsDialog.cpp:63 -msgid "Appearance" -msgstr "外观" - -#: win32/SettingsDialog.cpp:64 -msgid "Appearance\\Colors and sounds" -msgstr "" - -#: win32/SettingsDialog.cpp:65 -#, fuzzy -msgid "Appearance\\Tabs" -msgstr "外观" - -#: win32/SettingsDialog.cpp:66 -#, fuzzy -msgid "Appearance\\Windows" -msgstr "外观" - -#: win32/SearchFrame.cpp:156 -msgid "At least" -msgstr "最少" - -#: win32/SearchFrame.cpp:157 -msgid "At most" -msgstr "最多" - -#: win32/SearchFrame.cpp:183 -msgid "Audio" -msgstr "声音" - -#: win32/FavHubsFrame.cpp:32 -msgid "Auto connect / Name" -msgstr "是否自动连接 / 服务器(HUB)名称" - -#: win32/UsersFrame.cpp:30 -msgid "Auto grant slot / Nick" -msgstr "自动打开额外通道/用户昵称" - -#: win32/QueuePage.cpp:28 -msgid "Auto priority settings" -msgstr "" - -#: win32/Advanced3Page.cpp:40 -msgid "Auto refresh time" -msgstr "" - -#: win32/AdvancedPage.cpp:30 -msgid "Auto-away on minimize (and back on restore)" -msgstr "最小化时离开(复原时回来)" - -#: win32/WindowsPage.cpp:30 -msgid "Auto-open at startup" -msgstr "启动时自动打开" - -#: win32/Advanced3Page.cpp:41 -msgid "Auto-search limit" -msgstr "" - -#: win32/QueuePage.cpp:37 -#, fuzzy -msgid "Autodrop settings" -msgstr "连接设置" - -#: win32/QueuePage.cpp:69 -msgid "Autodrop slow sources for all queue items (except filelists)" -msgstr "" - -#: win32/ADLSearchFrame.cpp:40 -msgid "Automatic Directory Listing Search" -msgstr "ADL搜索" - -#: win32/AdvancedPage.cpp:37 -msgid "Automatically disconnect users who leave the hub" -msgstr "自动断开离线用户(当站点关闭/你离开的时候不断开)" - -#: win32/AdvancedPage.cpp:31 -msgid "Automatically follow redirects" -msgstr "自动跟随重定向" - -#: win32/QueuePage.cpp:73 -msgid "Automatically match queue for auto search hits" -msgstr "将自动搜索到的结果自动进行队列匹配" - -#: win32/UploadPage.cpp:39 -msgid "Automatically open an extra slot if speed is below (0 = disable)" -msgstr "当速度低于此值时自动打开额外通道 (0 = 禁用)" - -#: win32/QueuePage.cpp:72 -msgid "Automatically search for alternative download locations" -msgstr "自动搜索其他下载位置" - -#: win32/SpyFrame.cpp:115 -#, boost-format -msgid "Average/s: %1%" -msgstr "" - -#: win32/WinUtil.cpp:274 win32/WinUtil.cpp:284 -msgid "Away mode off" -msgstr "关闭离开状态" - -#: win32/WinUtil.cpp:279 -#, fuzzy, boost-format -msgid "Away mode on: %1%" -msgstr "关闭离开状态" - -#: win32/Advanced3Page.cpp:28 win32/SearchFrame.cpp:171 -#: win32/ADLSProperties.cpp:74 -msgid "B" -msgstr "B" - -#: win32/QueuePage.cpp:39 -#, fuzzy -msgid "B/s" -msgstr "KiB/s" - -#: win32/Advanced3Page.cpp:37 -msgid "Bind address" -msgstr "Bind地址" - -#: win32/AdvancedPage.cpp:41 -msgid "Break on first ADLSearch match" -msgstr "ADL搜索中得到第一个匹配文件后停止" - -#: win32/DownloadPage.cpp:34 -msgid "Browse..." -msgstr "浏览到" - -#: win32/SearchFrame.cpp:43 win32/HubFrame.cpp:44 win32/UsersFrame.cpp:34 -msgid "CID" -msgstr "" - -#: win32/QueueFrame.cpp:477 -msgid "CRC32 inconsistency (SFV-Check)" -msgstr "CRC32 出错(SFV-Check)" - -#: win32/MainWindow.cpp:244 -msgid "Change Log" -msgstr "更新记录" - -#: win32/CommandDlg.cpp:82 -msgid "Chat" -msgstr "聊天(Chat)" - -#: win32/QueuePage.cpp:40 -msgid "Check every" -msgstr "" - -#: win32/WinUtil.cpp:423 -msgid "Choose folder" -msgstr "选择文件夹" - -#: win32/TransferView.cpp:45 -#, fuzzy -msgid "Chunk" -msgstr "统计" - -#: win32/TransferView.cpp:48 -msgid "Cipher" -msgstr "" - -#: win32/AdvancedPage.cpp:32 -msgid "Clear search box after each search" -msgstr "每次搜索后清除搜索框" - -#: win32/MainWindow.cpp:233 -msgid "Close all PM windows" -msgstr "" - -#: win32/MainWindow.cpp:235 -msgid "Close all file list windows" -msgstr "" - -#: win32/MainWindow.cpp:234 -msgid "Close all offline PM windows" -msgstr "" - -#: win32/MainWindow.cpp:236 -msgid "Close all search windows" -msgstr "" - -#: win32/MainWindow.cpp:232 -msgid "Close disconnected" -msgstr "关闭已断开的站点" - -#: win32/Appearance2Page.cpp:31 -msgid "Colors" -msgstr "颜色" - -#: win32/UCPage.cpp:54 -msgid "Command" -msgstr "命令" - -#: win32/SearchFrame.cpp:184 -msgid "Compressed" -msgstr "压缩" - -#: win32/DownloadPage.cpp:41 -msgid "Configure Public Hub Lists" -msgstr "设定公众服务器列表" - -#: win32/HubListsDlg.cpp:43 win32/PublicHubsFrame.cpp:164 -msgid "Configured Public Hub Lists" -msgstr "设定的公众服务器列表" - -#: win32/WindowsPage.cpp:66 -msgid "Confirm application exit" -msgstr "确认关闭程序" - -#: win32/WindowsPage.cpp:32 -#, fuzzy -msgid "Confirm dialog options" -msgstr "窗口选项" - -#: win32/WindowsPage.cpp:67 -msgid "Confirm favorite hub removal" -msgstr "移除收藏的站点时需要确认" - -#: win32/WindowsPage.cpp:68 -msgid "Confirm item removal in download queue" -msgstr "在下载队列中移动项目时需要确认" - -#: win32/HubFrame.cpp:497 -msgid "Connected" -msgstr "已连接" - -#: win32/TransferView.cpp:642 win32/TransferView.cpp:649 -#, fuzzy -msgid "Connecting" -msgstr "连接方式" - -#: win32/TransferView.cpp:283 -#, fuzzy -msgid "Connecting (forced)" -msgstr "已连接" - -#: win32/HubFrame.cpp:823 -#, fuzzy, boost-format -msgid "Connecting to %1%..." -msgstr "连接方式" - -#: win32/SearchFrame.cpp:38 win32/HubFrame.cpp:41 -msgid "Connection" -msgstr "连接方式" - -#: win32/SettingsDialog.cpp:58 -msgid "Connection settings" -msgstr "连接设置" - -#: win32/TransferView.cpp:83 win32/TransferView.cpp:89 -#, fuzzy -msgid "Connections" -msgstr "连接方式" - -#: win32/HubFrame.cpp:1174 win32/PublicHubsFrame.cpp:450 -#, fuzzy -msgid "Copy &address to clipboard" -msgstr "复制magnet链接" - -#: win32/TransferView.cpp:197 win32/HubFrame.cpp:1152 -#, fuzzy -msgid "Copy &nick to clipboard" -msgstr "复制magnet链接" - -#: win32/WaitingUsersFrame.cpp:81 -#, fuzzy -msgid "Copy Filename" -msgstr "文件名" - -#: win32/WinUtil.cpp:373 -msgid "Copy magnet link to clipboard" -msgstr "复制magnet链接" - -#: win32/SpyFrame.cpp:35 -msgid "Count" -msgstr "统计" - -#: win32/PublicHubsFrame.cpp:53 -msgid "Country" -msgstr "国家" - -#: win32/CommandDlg.cpp:63 -msgid "Create / Modify Command" -msgstr "创建和修改用户命令 (Create / Modify User Command)" - -#: win32/HashProgressDlg.cpp:40 -msgid "Creating file index..." -msgstr "正在建立文件索引..." - -#: win32/MainWindow.cpp:567 -#, boost-format -msgid "D: %1%" -msgstr "" - -#: win32/MainWindow.cpp:569 -#, boost-format -msgid "D: %1%/s (%2%)" -msgstr "" - -#: win32/WinUtil.cpp:830 -msgid "DC++" -msgstr "DC++" - -#: win32/MainWindow.cpp:247 -msgid "DC++ Homepage" -msgstr "DC++ 主页" - -#: win32/MainWindow.cpp:252 -msgid "DC++ discussion forum" -msgstr "DC++ 论坛" - -#: win32/AppearancePage.cpp:86 win32/AppearancePage.cpp:113 -msgid "Default" -msgstr "" - -#: win32/AppearancePage.cpp:32 -msgid "Default away message" -msgstr "默认的离开信息 (Default away message)" - -#: win32/DownloadPage.cpp:31 -msgid "Default download directory" -msgstr "默认下载位置 (Default download directory)" - -#: win32/GeneralPage.cpp:31 win32/FavHubsFrame.cpp:33 win32/HubFrame.cpp:39 -#: win32/PublicHubsFrame.cpp:50 win32/UsersFrame.cpp:33 -#: win32/UsersFrame.cpp:143 -msgid "Description" -msgstr "描述" - -#: win32/ADLSearchFrame.cpp:34 -msgid "Destination Directory" -msgstr "归类目录名" - -#: win32/NetworkPage.cpp:30 win32/NetworkPage.cpp:31 -#, fuzzy -msgid "Direct connection" -msgstr "连接方式" - -#: win32/DownloadPage.cpp:30 -msgid "Directories" -msgstr "目录 (Directories)" - -#: win32/UploadPage.cpp:64 win32/FavoriteDirsPage.cpp:49 -#: win32/SearchFrame.cpp:189 win32/SearchFrame.cpp:530 win32/LogPage.cpp:32 -#: win32/ADLSProperties.cpp:63 -msgid "Directory" -msgstr "目录" - -#: win32/FavoriteDirsPage.cpp:126 win32/FavoriteDirsPage.cpp:159 -msgid "Directory or directory name already exists" -msgstr "已经有这个目录或者目录名了" - -#: win32/MagnetDlg.cpp:62 -msgid "Do nothing" -msgstr "什么也不做" - -#: win32/SearchFrame.cpp:185 -msgid "Document" -msgstr "文件" - -#: win32/NetworkPage.cpp:35 -msgid "Don't allow hub/UPnP to override" -msgstr "" - -#: win32/AdvancedPage.cpp:47 -#, fuzzy -msgid "Don't automatically disconnect favorite users who leave the hub" -msgstr "自动断开离线用户(当站点关闭/你离开的时候不断开)" - -#: win32/AdvancedPage.cpp:36 -msgid "Don't delete file lists when exiting" -msgstr "关闭时不删除文件列表" - -#: win32/QueuePage.cpp:75 -msgid "Don't download files already in share" -msgstr "不下载共享目录里已经有的文件" - -#: win32/QueuePage.cpp:76 -#, fuzzy -msgid "Don't download files already in the queue" -msgstr "不下载共享目录里已经有的文件" - -#: win32/HubFrame.cpp:392 -msgid "Don't remove /password before your password" -msgstr "勿删除你的密码前的“/passwaord ”" - -#: win32/QueuePage.cpp:71 -msgid "Don't remove the source when autodropping, only disconnect" -msgstr "" - -#: win32/AdvancedPage.cpp:40 -msgid "Don't send the away message to bots" -msgstr "不对站点机器人发送离线消息" - -#: win32/MainWindow.cpp:255 -msgid "Donate (paypal)" -msgstr "捐赠 €€€/$$$ (paypal)" - -#: win32/Appearance2Page.cpp:34 -msgid "Donate €€€:s! (ok, dirty dollars are fine as well =) (see help menu)" -msgstr "" - -#: win32/TransferView.cpp:58 -msgid "Done" -msgstr "完成" - -#: win32/DirectoryListingFrame.cpp:358 -#, fuzzy -msgid "Download &to..." -msgstr "下载到..." - -#: win32/ADLSProperties.cpp:88 -msgid "Download Matches" -msgstr "下载匹配的" - -#: win32/QueueFrame.cpp:57 win32/TabsPage.cpp:41 win32/WindowsPage.cpp:39 -#: win32/MainWindow.cpp:288 -msgid "Download Queue" -msgstr "下载队列" - -#: win32/PublicHubsFrame.cpp:322 -#, fuzzy, boost-format -msgid "Download failed: %1%" -msgstr "已下载" - -#: win32/WinUtil.cpp:831 -msgid "Download files from the Direct Connect network" -msgstr "从DC网络上下载文件" - -#: win32/SearchFrame.cpp:764 -msgid "Download to..." -msgstr "下载到..." - -#: win32/SearchFrame.cpp:744 -msgid "Download whole directory" -msgstr "下载整个目录" - -#: win32/SearchFrame.cpp:794 -msgid "Download whole directory to..." -msgstr "下载整个目录到..." - -#: win32/QueueFrame.cpp:39 -msgid "Downloaded" -msgstr "已下载" - -#: win32/TransferView.cpp:731 -#, fuzzy, boost-format -msgid "Downloading %1%" -msgstr "下载中..." - -#: win32/TransferView.cpp:631 -#, boost-format -msgid "Downloading from %1% user" -msgid_plural "Downloading from %1% users" -msgstr[0] "" -msgstr[1] "" - -#: win32/DirectoryListingFrame.cpp:695 -#, fuzzy -msgid "Downloading list..." -msgstr "下载中..." - -#: win32/PublicHubsFrame.cpp:188 win32/PublicHubsFrame.cpp:459 -msgid "Downloading public hub list..." -msgstr "下载服务器列表中..." - -#: win32/PublicHubsFrame.cpp:319 -#, fuzzy, boost-format -msgid "Downloading public hub list... (%1%)" -msgstr "下载服务器列表中..." - -#: win32/AboutDlg.cpp:63 -msgid "Downloading..." -msgstr "下载中..." - -#: win32/SettingsDialog.cpp:59 win32/MainWindow.cpp:248 -#: win32/TransferView.cpp:92 win32/TransferView.cpp:94 -#: win32/Appearance2Page.cpp:40 -msgid "Downloads" -msgstr "下载" - -#: win32/SettingsDialog.cpp:60 -#, fuzzy -msgid "Downloads\\Favorites" -msgstr "下载匹配的" - -#: win32/SettingsDialog.cpp:61 -#, fuzzy -msgid "Downloads\\Queue" -msgstr "下载队列" - -#: win32/QueuePage.cpp:38 -msgid "Drop sources below" -msgstr "" - -#: win32/MainWindow.cpp:204 -msgid "E&xit" -msgstr "" - -#: win32/GeneralPage.cpp:30 win32/HubFrame.cpp:43 -msgid "E-Mail" -msgstr "电子邮件" - -#: win32/HubListsDlg.cpp:149 -msgid "Edit the hublist" -msgstr "" - -#: win32/AdvancedPage.cpp:39 -msgid "Enable automatic SFV checking" -msgstr "自动做 SFV 检测" - -#: win32/AdvancedPage.cpp:42 -msgid "Enable safe and compressed transfers" -msgstr "使用安全、压缩传输" - -#: win32/ADLSProperties.cpp:84 -msgid "Enabled" -msgstr "启用" - -#: win32/ADLSearchFrame.cpp:32 -msgid "Enabled / Search String" -msgstr "是否生效/关键字" - -#: win32/DirectoryListingFrame.cpp:797 -msgid "Enter search string" -msgstr "输入搜索关键字" - -#: win32/WinUtil.cpp:738 -msgid "Error creating adc registry key" -msgstr "" - -#: win32/WinUtil.cpp:699 -msgid "Error creating dchub registry key" -msgstr "" - -#: win32/WinUtil.cpp:798 win32/WinUtil.cpp:811 -msgid "Error creating magnet registry key" -msgstr "" - -#: win32/QueueFrame.cpp:44 -msgid "Errors" -msgstr "错误" - -#: win32/QueueFrame.cpp:43 win32/DirectoryListingFrame.cpp:42 -#: win32/SearchFrame.cpp:40 -msgid "Exact size" -msgstr "准确大小" - -#: win32/SearchFrame.cpp:186 -msgid "Executable" -msgstr "可执行文件" - -#: win32/MainWindow.cpp:1003 -msgid "Exit" -msgstr "" - -#: win32/NetworkPage.cpp:38 -msgid "External / WAN IP" -msgstr "" - -#: win32/PublicHubsFrame.cpp:168 -#, fuzzy -msgid "F&ilter" -msgstr "文件" - -#: win32/MainWindow.cpp:646 win32/MainWindow.cpp:647 -msgid "Failed to create port mappings. Please set up your NAT yourself." -msgstr "端口映射失败,请手动设置" - -#: win32/MainWindow.cpp:665 win32/MainWindow.cpp:666 -msgid "Failed to get external IP via UPnP. Please set it yourself." -msgstr "无法取得外部IP,UPnP失败,请手动设置." - -#: win32/MainWindow.cpp:679 win32/MainWindow.cpp:687 -msgid "Failed to remove port mappings" -msgstr "无法移除端口映射" - -#: win32/MainWindow.cpp:212 -#, fuzzy -msgid "Favorite &Users\tCtrl+U" -msgstr "我的好友" - -#: win32/FavHubProperties.cpp:47 -msgid "Favorite Hub Properties" -msgstr "收藏的站点的选项 Favorite Hub Properties" - -#: win32/WindowsPage.cpp:47 win32/MainWindow.cpp:285 win32/FavHubsFrame.cpp:41 -msgid "Favorite Hubs" -msgstr "站点收藏夹" - -#: win32/WindowsPage.cpp:38 win32/MainWindow.cpp:286 win32/UsersFrame.cpp:38 -msgid "Favorite Users" -msgstr "我的好友" - -#: win32/FavoriteDirsPage.cpp:32 -msgid "Favorite download directories" -msgstr "收藏的 \"下载目录\"" - -#: win32/HubFrame.cpp:955 -msgid "Favorite hub added" -msgstr "已加入站点收藏夹" - -#: win32/HubFrame.cpp:965 -#, fuzzy -msgid "Favorite hub removed" -msgstr "已加入站点收藏夹" - -#: win32/FavoriteDirsPage.cpp:48 win32/FavoriteDirsPage.cpp:120 -#: win32/FavoriteDirsPage.cpp:150 -msgid "Favorite name" -msgstr "收藏的目录名" - -#: win32/PrivateFrame.cpp:303 -msgid "Favorite user added" -msgstr "已加入好友列表" - -#: win32/DirectoryListingFrame.cpp:40 win32/SearchFrame.cpp:32 -msgid "File" -msgstr "文件" - -#: win32/QueueFrame.cpp:473 -msgid "File not available" -msgstr "文件不存在" - -#: win32/SearchFrame.cpp:122 -msgid "File type" -msgstr "文件类型" - -#: win32/CommandDlg.cpp:99 -msgid "Filelist Menu" -msgstr "文件列表菜单" - -#: win32/QueueFrame.cpp:36 win32/TransferView.cpp:53 win32/LogPage.cpp:35 -#: win32/ADLSProperties.cpp:62 -msgid "Filename" -msgstr "文件名" - -#: win32/MagnetDlg.cpp:48 -msgid "Filename:" -msgstr "文件名:" - -#: win32/QueueFrame.cpp:287 win32/DirectoryListingFrame.cpp:636 -#: win32/DirectoryListingFrame.cpp:652 -#, boost-format -msgid "Files: %1%" -msgstr "" - -#: win32/AppearancePage.cpp:47 -msgid "Filter kick messages" -msgstr "" - -#: win32/DirectoryListingFrame.cpp:160 win32/DirectoryListingFrame.cpp:182 -msgid "Find" -msgstr "寻找" - -#: win32/TabsPage.cpp:42 win32/WindowsPage.cpp:40 win32/MainWindow.cpp:215 -#: win32/MainWindow.cpp:289 win32/FinishedDLFrame.cpp:25 -msgid "Finished Downloads" -msgstr "已下载文件" - -#: win32/TabsPage.cpp:44 win32/WindowsPage.cpp:42 win32/MainWindow.cpp:217 -#: win32/MainWindow.cpp:291 win32/FinishedULFrame.cpp:25 -msgid "Finished Uploads" -msgstr "已完成的上传文件" - -#: win32/NetworkPage.cpp:34 -msgid "Firewall (passive, last resort)" -msgstr "" - -#: win32/NetworkPage.cpp:32 -msgid "Firewall with UPnP" -msgstr "" - -#: win32/NetworkPage.cpp:33 -msgid "Firewall with manual port forwarding" -msgstr "" - -#: win32/MainWindow.cpp:191 -msgid "Follow last redirec&t\tCtrl+T" -msgstr "" - -#: win32/MainWindow.cpp:283 -msgid "Follow last redirect" -msgstr "" - -#: win32/LogPage.cpp:34 -msgid "Format" -msgstr "格式(Format)" - -#: win32/MainWindow.cpp:250 -msgid "Frequently asked questions" -msgstr "常见问题" - -#: win32/ADLSProperties.cpp:64 -msgid "Full Path" -msgstr "完整路径" - -#: win32/QueueFrame.cpp:479 -msgid "Full tree does not match TTH root" -msgstr "已下载的“树”不匹配于 TTH root" - -#: win32/MainWindow.cpp:249 -msgid "GeoIP database update" -msgstr "" - -#: win32/SearchFrame.cpp:174 win32/ADLSProperties.cpp:77 -msgid "GiB" -msgstr "GiB" - -#: win32/WaitingUsersFrame.cpp:83 win32/PrivateFrame.cpp:382 -msgid "Grant &extra slot" -msgstr "" - -#: win32/AppearancePage.cpp:56 -msgid "Guess user country from IP" -msgstr "取得用户国家名" - -#: win32/DownloadPage.cpp:42 -msgid "HTTP Proxy (for hublist only)" -msgstr "HTTP 代理 (仅用于服务器列表)" - -#: win32/MainWindow.cpp:242 -msgid "Help &Contents\tF1" -msgstr "" - -#: win32/MainWindow.cpp:251 -msgid "Help forum" -msgstr "论坛求助" - -#: win32/QueueFrame.cpp:454 win32/QueueFrame.cpp:1000 -msgid "High" -msgstr "高" - -#: win32/QueuePage.cpp:31 -msgid "High prio max size" -msgstr "高优先级的大小" - -#: win32/QueueFrame.cpp:455 win32/QueueFrame.cpp:1001 -msgid "Highest" -msgstr "最高" - -#: win32/QueuePage.cpp:29 -msgid "Highest prio max size" -msgstr "最高优先级文件大小" - -#: win32/SpyFrame.cpp:162 -#, boost-format -msgid "Hit Ratio: %1%" -msgstr "" - -#: win32/SpyFrame.cpp:160 -#, boost-format -msgid "Hits: %1%" -msgstr "" - -#: win32/TabsPage.cpp:37 win32/SearchFrame.cpp:39 win32/UCPage.cpp:55 -msgid "Hub" -msgstr "服务器" - -#: win32/UsersFrame.cpp:31 -msgid "Hub (last seen in, if offline)" -msgstr "" - -#: win32/CommandDlg.cpp:90 -msgid "Hub Menu" -msgstr "站点菜单" - -#: win32/FavHubProperties.cpp:119 -msgid "Hub address cannot be empty" -msgstr "" - -#: win32/FavHubsFrame.cpp:168 win32/HubFrame.cpp:957 -msgid "Hub already exists as a favorite" -msgstr "" - -#: win32/PublicHubsFrame.cpp:316 -#, boost-format -msgid "Hub list downloaded... (%1%)" -msgstr "" - -#: win32/PublicHubsFrame.cpp:316 -msgid "Hub list loaded from cache..." -msgstr "" - -#: win32/HubListsDlg.cpp:149 -#, fuzzy -msgid "Hublist" -msgstr "站点数" - -#: win32/SearchFrame.cpp:128 -msgid "Hubs" -msgstr "站点数" - -#: win32/PublicHubsFrame.cpp:271 -#, fuzzy, boost-format -msgid "Hubs: %1%" -msgstr "站点数" - -#: win32/SearchFrame.cpp:41 win32/TransferView.cpp:49 win32/HubFrame.cpp:42 -msgid "IP" -msgstr "IP" - -#: win32/HubFrame.cpp:337 -#, boost-format -msgid "IP: %1%, Port: %2%/%3%/%4%" -msgstr "" - -#: win32/TransferView.cpp:537 win32/TransferView.cpp:838 -msgid "Idle" -msgstr "" - -#: win32/SpyFrame.cpp:66 -msgid "Ignore TTH searches" -msgstr "忽略TTH的搜索" - -#: win32/WindowsPage.cpp:59 -#, fuzzy -msgid "Ignore private messages from bots" -msgstr "弹出私聊窗口交谈" - -#: win32/WindowsPage.cpp:58 -#, fuzzy -msgid "Ignore private messages from the hub" -msgstr "弹出私聊窗口交谈" - -#: win32/HubFrame.cpp:539 win32/HubFrame.cpp:547 -#, boost-format -msgid "Ignored message: %1%" -msgstr "" - -#: win32/NetworkPage.cpp:47 -msgid "Incoming connection settings (see Help/FAQ if unsure)" -msgstr "" - -#: win32/MainWindow.cpp:226 -msgid "Indexing progress" -msgstr "Hash进度指示" - -#: win32/MainWindow.cpp:705 -msgid "Invalid file list name" -msgstr "" - -#: win32/WinUtil.cpp:260 -msgid "Invalid number of slots" -msgstr "通道数目无效" - -#: win32/QueueFrame.cpp:283 -#, boost-format -msgid "Items: %1%" -msgstr "" - -#: win32/HubFrame.cpp:330 -msgid "Join/part of favorite users showing off" -msgstr "关闭好友 进/出 消息" - -#: win32/HubFrame.cpp:328 -msgid "Join/part of favorite users showing on" -msgstr "显示好友 进/出 消息" - -#: win32/HubFrame.cpp:323 -msgid "Join/part showing off" -msgstr "不显示 进入/退出 信息" - -#: win32/HubFrame.cpp:321 -msgid "Join/part showing on" -msgstr "显示 进入/退出 信息" - -#: win32/AdvancedPage.cpp:33 -msgid "Keep duplicate files in your file list" -msgstr "在你的文件列表中包含重复文件(重复部分不计入你的共享大小)" - -#: win32/QueuePage.cpp:30 win32/QueuePage.cpp:32 win32/QueuePage.cpp:34 -#: win32/QueuePage.cpp:36 win32/QueuePage.cpp:48 win32/Advanced3Page.cpp:30 -#: win32/Advanced3Page.cpp:36 win32/SearchFrame.cpp:172 -#: win32/ADLSProperties.cpp:75 -msgid "KiB" -msgstr "KiB" - -#: win32/UploadPage.cpp:40 -msgid "KiB/s" -msgstr "KiB/s" - -#: win32/AppearancePage.cpp:34 -msgid "Language file" -msgstr "语言文件 (Language file)" - -#: win32/DownloadPage.cpp:35 -msgid "Limits" -msgstr "限制" - -#: win32/GeneralPage.cpp:32 -#, fuzzy -msgid "Line speed (upload)" -msgstr "已完成的上传文件" - -#: win32/SplashWindow.cpp:77 -#, boost-format -msgid "Loading DC++, please wait... (%1%)" -msgstr "" - -#: win32/LogPage.cpp:47 -msgid "Log downloads" -msgstr "记录下载情况 (Log downloads)" - -#: win32/LogPage.cpp:51 -msgid "Log filelist transfers" -msgstr "记录文件列表传输情况" - -#: win32/LogPage.cpp:45 -msgid "Log main chat" -msgstr "记录公屏内容 (Log main chat)" - -#: win32/LogPage.cpp:46 -msgid "Log private chat" -msgstr "记录私聊内容 (Log private chat)" - -#: win32/LogPage.cpp:50 -msgid "Log status messages" -msgstr "记录状态消息日志" - -#: win32/LogPage.cpp:49 -msgid "Log system messages" -msgstr "记录系统消息日志" - -#: win32/LogPage.cpp:48 -msgid "Log uploads" -msgstr "记录上传情况 (Log uploads)" - -#: win32/LogPage.cpp:31 -msgid "Logging" -msgstr "日志记录 (Logging)" - -#: win32/NetworkPage.cpp:44 -msgid "Login" -msgstr "用户名" - -#: win32/WinUtil.cpp:372 -msgid "Lookup TTH at Bitzi.com" -msgstr "到Bitzi.com查找TTH" - -#: win32/QueueFrame.cpp:452 win32/QueueFrame.cpp:998 -msgid "Low" -msgstr "低" - -#: win32/QueuePage.cpp:35 -msgid "Low prio max size" -msgstr "低优先级的大小" - -#: win32/QueueFrame.cpp:451 win32/QueueFrame.cpp:997 -msgid "Lowest" -msgstr "最低" - -#: win32/MagnetDlg.cpp:44 win32/WinUtil.cpp:1036 -msgid "MAGNET Link detected" -msgstr "检测到MAGNET链接" - -#: win32/WinUtil.cpp:983 -#, fuzzy, boost-format -msgid "MAGNET Link detected: %1%" -msgstr "检测到MAGNET链接" - -#: win32/Appearance2Page.cpp:38 -msgid "Make an annoying sound every time a private message is received" -msgstr "私人信息到达时发出提示声音" - -#: win32/Appearance2Page.cpp:39 -msgid "Make an annoying sound when a private message window is opened" -msgstr "当私聊窗口打开的时候发出提示声音" - -#: win32/MainWindow.cpp:197 -msgid "Match downloaded lists" -msgstr "" - -#: win32/DirectoryListingFrame.cpp:168 win32/DirectoryListingFrame.cpp:181 -msgid "Match queue" -msgstr "队列匹配" - -#: win32/DirectoryListingFrame.cpp:260 -#, boost-format -msgid "Matched %1% file" -msgid_plural "Matched %1% files" -msgstr[0] "" -msgstr[1] "" - -#: win32/PublicHubsFrame.cpp:57 -msgid "Max Hubs" -msgstr "最大站点数" - -#: win32/ADLSearchFrame.cpp:36 -#, fuzzy -msgid "Max Size" -msgstr "文件大小" - -#: win32/PublicHubsFrame.cpp:58 -msgid "Max Users" -msgstr "最大用户数" - -#: win32/Advanced3Page.cpp:38 -#, fuzzy -msgid "Max filelist size" -msgstr "小文件大小" - -#: win32/Advanced3Page.cpp:31 -msgid "Max hash speed" -msgstr "hash的最大速度" - -#: win32/QueuePage.cpp:44 -msgid "Max inactivity" -msgstr "" - -#: win32/DownloadPage.cpp:36 -msgid "Maximum simultaneous downloads (0 = infinite)" -msgstr "同一文件最大同时下载数 (0 = 无限)" - -#: win32/Advanced3Page.cpp:39 win32/SearchFrame.cpp:173 -#: win32/ADLSProperties.cpp:76 -#, fuzzy -msgid "MiB" -msgstr "GiB" - -#: win32/Advanced3Page.cpp:32 -#, fuzzy -msgid "MiB/s" -msgstr "KiB/s" - -#: win32/GeneralPage.cpp:33 -#, fuzzy -msgid "MiBits/s" -msgstr "KiB/s" - -#: win32/PublicHubsFrame.cpp:55 -msgid "Min Share" -msgstr "最少共享量" - -#: win32/ADLSearchFrame.cpp:35 -#, fuzzy -msgid "Min Size" -msgstr "最少共享量" - -#: win32/PublicHubsFrame.cpp:56 -msgid "Min Slots" -msgstr "最少通道数" - -#: win32/QueuePage.cpp:42 -#, fuzzy -msgid "Min elapsed" -msgstr "最少通道数" - -#: win32/QueuePage.cpp:47 -#, fuzzy -msgid "Min filesize" -msgstr "小文件大小" - -#: win32/Advanced3Page.cpp:42 -#, fuzzy -msgid "Min segment size" -msgstr "小文件大小" - -#: win32/QueuePage.cpp:46 -#, fuzzy -msgid "Min sources online" -msgstr "等待中 (目标用户在线)" - -#: win32/Advanced3Page.cpp:35 -msgid "Mini slot size" -msgstr "小文件大小" - -#: win32/AppearancePage.cpp:48 -msgid "Minimize to tray" -msgstr "最小化到系统托盘" - -#: win32/HubListsDlg.cpp:71 win32/FavHubsFrame.cpp:92 -#: win32/FavHubsFrame.cpp:283 win32/ADLSearchFrame.cpp:83 win32/UCPage.cpp:32 -msgid "Move &Down" -msgstr "" - -#: win32/HubListsDlg.cpp:67 win32/FavHubsFrame.cpp:87 -#: win32/FavHubsFrame.cpp:282 win32/ADLSearchFrame.cpp:78 win32/UCPage.cpp:31 -msgid "Move &Up" -msgstr "" - -#: win32/UCPage.cpp:53 win32/PublicHubsFrame.cpp:49 -msgid "Name" -msgstr "名称" - -#: win32/UploadPage.cpp:191 win32/UploadPage.cpp:235 -msgid "Name under which the others see the directory" -msgstr "目录别名(可以给你的共享目录取个其它名字)" - -#: win32/WindowsPage.cpp:44 win32/MainWindow.cpp:225 win32/StatsFrame.cpp:27 -msgid "Network Statistics" -msgstr "网络数据统计" - -#: win32/UploadPage.cpp:200 -msgid "New virtual name matches old name, skipping..." -msgstr "新的虚拟目录名匹配了旧名,跳过。。。" - -#: win32/DirectoryListingFrame.cpp:164 win32/DirectoryListingFrame.cpp:183 -msgid "Next" -msgstr "下一个" - -#: win32/GeneralPage.cpp:29 win32/FavHubsFrame.cpp:34 win32/HubFrame.cpp:37 -msgid "Nick" -msgstr "昵称" - -#: win32/QueueFrame.cpp:488 -msgid "No errors" -msgstr "无错误" - -#: win32/DirectoryListingFrame.cpp:860 -msgid "No matches" -msgstr "找不到匹配的文件" - -#: win32/DownloadPage.cpp:37 -msgid "No new downloads if speed exceeds (KiB/s, 0 = disable)" -msgstr "速度超过此值时不开始新的下载任务 (kB/s, 0 =禁用)" - -#: win32/QueueFrame.cpp:415 -msgid "No users" -msgstr "没有用户" - -#: win32/QueueFrame.cpp:427 -msgid "No users to download from" -msgstr "无法下载,找不到用户共享该文件" - -#: win32/QueueFrame.cpp:453 win32/QueueFrame.cpp:999 win32/SearchFrame.cpp:155 -msgid "Normal" -msgstr "普通" - -#: win32/QueuePage.cpp:33 -msgid "Normal prio max size" -msgstr "标准优先级文件大小" - -#: win32/UploadPage.cpp:42 -msgid "Note; Files appear in the share only after they've been hashed!" -msgstr "注意; 新文件仅在被hash结束后才会出现在共享列表里!" - -#: win32/DownloadPage.cpp:38 -#, fuzzy, c-format -msgid "Note; because of changing download speeds, this is not 100% accurate..." -msgstr "注意; 由于下载速度不断变化, 因此这不是 100% 准确..." - -#: win32/Appearance2Page.cpp:35 win32/AppearancePage.cpp:35 -msgid "Note; most of these options require that you restart DC++" -msgstr "注意: 大部分选项要求重启DC++" - -#: win32/WindowsPage.cpp:45 win32/NotepadFrame.cpp:27 win32/MainWindow.cpp:299 -msgid "Notepad" -msgstr "记事本" - -#: win32/Appearance2Page.cpp:29 -msgid "Notification sound" -msgstr "" - -#: win32/WinUtil.cpp:333 -msgid "Offline" -msgstr "离线" - -#: win32/UsersFrame.cpp:108 win32/UsersFrame.cpp:123 -msgid "Online" -msgstr "在线" - -#: win32/AppearancePage.cpp:52 -msgid "Only show joins / parts for favorite users" -msgstr "只显示好友的 进/出 消息" - -#: win32/SearchFrame.cpp:194 -msgid "Only users with free slots" -msgstr "只显示有空闲通道的用户" - -#: win32/SearchFrame.cpp:216 -msgid "Only where I'm op" -msgstr "仅在我是管理员的地方" - -#: win32/MainWindow.cpp:199 win32/MainWindow.cpp:1004 -msgid "Open downloads directory" -msgstr "打开下载目录" - -#: win32/MainWindow.cpp:297 -#, fuzzy -msgid "Open file list..." -msgstr "打开自己的文件列表" - -#: win32/MainWindow.cpp:195 -msgid "Open file list...\tCtrl+L" -msgstr "" - -#: win32/WindowsPage.cpp:55 -msgid "Open new file list windows in the background" -msgstr "在后台打开新的文件列表窗口(下载文件列表时)" - -#: win32/WindowsPage.cpp:56 -msgid "Open new private message windows in the background" -msgstr "在后台打开新的私聊窗口" - -#: win32/WindowsPage.cpp:57 -msgid "Open new window when using /join" -msgstr "使用/join命令的时候打开新窗口进行连接" - -#: win32/MainWindow.cpp:196 -msgid "Open own list" -msgstr "打开自己的文件列表" - -#: win32/WindowsPage.cpp:53 -#, fuzzy -msgid "Open private messages from bots in their own window" -msgstr "弹出私聊窗口交谈" - -#: win32/WindowsPage.cpp:54 -#, fuzzy -msgid "Open private messages from the hub in their own window" -msgstr "弹出私聊窗口交谈" - -#: win32/WindowsPage.cpp:52 -msgid "Open private messages in their own window" -msgstr "弹出私聊窗口交谈" - -#: win32/AppearancePage.cpp:31 -msgid "Options" -msgstr "选项" - -#: win32/QueuePage.cpp:49 -#, fuzzy -msgid "Other queue options" -msgstr "搜索选项" - -#: win32/NetworkPage.cpp:48 -#, fuzzy -msgid "Outgoing connection settings" -msgstr "连接设置" - -#: win32/CommandDlg.cpp:86 -msgid "PM" -msgstr "私聊信息(PM)" - -#: win32/Advanced3Page.cpp:33 -msgid "PM history" -msgstr "私聊历史" - -#: win32/QueueFrame.cpp:475 -msgid "Passive user" -msgstr "被动模式用户" - -#: win32/NetworkPage.cpp:45 win32/FavHubsFrame.cpp:35 -msgid "Password" -msgstr "密码" - -#: win32/QueueFrame.cpp:42 win32/SearchFrame.cpp:36 win32/TransferView.cpp:54 -msgid "Path" -msgstr "路径" - -#: win32/QueueFrame.cpp:450 win32/QueueFrame.cpp:996 -msgid "Paused" -msgstr "暂停" - -#: win32/GeneralPage.cpp:28 -msgid "Personal Information" -msgstr "个人信息" - -#: win32/SettingsDialog.cpp:57 -msgid "Personal information" -msgstr "个人信息" - -#: win32/SearchFrame.cpp:187 -msgid "Picture" -msgstr "图片" - -#: win32/FavHubsFrame.cpp:320 win32/PublicHubsFrame.cpp:497 -msgid "Please enter a nickname in the settings dialog!" -msgstr "请在设置里输入昵称!" - -#: win32/HubFrame.cpp:525 -msgid "Please enter a password" -msgstr "请输入一个密码" - -#: win32/WindowsPage.cpp:61 -msgid "Popup box to input password for hubs" -msgstr "" - -#: win32/NetworkPage.cpp:43 -msgid "Port" -msgstr "端口" - -#: win32/NetworkPage.cpp:37 -#, fuzzy -msgid "Ports" -msgstr "端口" - -#: win32/HubFrame.cpp:852 -#, boost-format -msgid "Press the follow redirect button to connect to %1%" -msgstr "" - -#: win32/QueueFrame.cpp:40 -msgid "Priority" -msgstr "优先级" - -#: win32/TabsPage.cpp:38 -msgid "Private message" -msgstr "" - -#: win32/HubFrame.cpp:543 win32/HubFrame.cpp:551 win32/HubFrame.cpp:557 -#, boost-format -msgid "Private message from %1%: %2%" -msgstr "" - -#: win32/WindowsPage.cpp:46 win32/MainWindow.cpp:281 -#: win32/PublicHubsFrame.cpp:93 -msgid "Public Hubs" -msgstr "服务器列表" - -#: win32/DownloadPage.cpp:39 -msgid "Public Hubs list" -msgstr "公众服务器列表 (Public Hubs list)" - -#: win32/DownloadPage.cpp:40 -msgid "Public Hubs list URL" -msgstr "公众服务器列表地址 (Public Hubs list URL)" - -#: win32/SearchFrame.cpp:240 -msgid "Purge" -msgstr "清除" - -#: win32/TransferView.cpp:47 -msgid "Queued" -msgstr "" - -#: win32/MainWindow.cpp:358 -msgid "Quick Connect" -msgstr "快速连接" - -#: win32/PublicHubsFrame.cpp:60 -msgid "Rating" -msgstr "Rating" - -#: win32/AboutDlg.cpp:61 -#, c-format, boost-format -msgid "Ratio (up/down): %1$0.2f" -msgstr "" - -#: win32/CommandDlg.cpp:78 -msgid "Raw" -msgstr "Raw命令" - -#: win32/QueueFrame.cpp:1020 -msgid "Re-add source" -msgstr "重新载入资源" - -#: win32/SearchFrame.cpp:1024 -msgid "Ready to search..." -msgstr "准备搜索..." - -#: win32/MainWindow.cpp:473 -msgid "Really exit?" -msgstr "确定要退出?" - -#: win32/QueueFrame.cpp:692 win32/QueueFrame.cpp:697 -#: win32/FavHubsFrame.cpp:232 -msgid "Really remove?" -msgstr "确定要删除吗?" - -#: win32/MainWindow.cpp:282 -#, fuzzy -msgid "Reconnect" -msgstr "已连接" - -#: win32/HubFrame.cpp:845 win32/HubFrame.cpp:1366 -msgid "Redirect request received to a hub that's already connected" -msgstr "被重定向到一个已经连接的站点" - -#: win32/MainWindow.cpp:198 -msgid "Refresh file list\tCtrl+E" -msgstr "" - -#: win32/AdvancedPage.cpp:34 -msgid "Register with Windows to handle dchub:// and adc:// URL links" -msgstr "启动时注册 dchub:// 和 adc:// 链接" - -#: win32... [truncated message content] |
From: <arn...@us...> - 2008-03-12 20:53:28
|
Revision: 1035 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1035&view=rev Author: arnetheduck Date: 2008-03-12 13:53:16 -0700 (Wed, 12 Mar 2008) Log Message: ----------- Fix bad c-format heurestic Modified Paths: -------------- dcplusplus/trunk/win32/DownloadPage.cpp Modified: dcplusplus/trunk/win32/DownloadPage.cpp =================================================================== --- dcplusplus/trunk/win32/DownloadPage.cpp 2008-03-12 20:07:18 UTC (rev 1034) +++ dcplusplus/trunk/win32/DownloadPage.cpp 2008-03-12 20:53:16 UTC (rev 1035) @@ -35,7 +35,7 @@ { IDC_SETTINGS_DOWNLOAD_LIMITS, N_("Limits") }, { IDC_SETTINGS_DOWNLOADS_MAX, N_("Maximum simultaneous downloads (0 = infinite)") }, { IDC_SETTINGS_DOWNLOADS_SPEED_PAUSE, N_("No new downloads if speed exceeds (KiB/s, 0 = disable)") }, - { IDC_SETTINGS_SPEEDS_NOT_ACCURATE, N_("Note; because of changing download speeds, this is not 100% accurate...") }, +/*xgettext:no-c-format*/{ IDC_SETTINGS_SPEEDS_NOT_ACCURATE, N_("Note; because of changing download speeds, this is not 100% accurate...") }, { IDC_SETTINGS_PUBLIC_HUB_LIST, N_("Public Hubs list") }, { IDC_SETTINGS_PUBLIC_HUB_LIST_URL, N_("Public Hubs list URL") }, { IDC_SETTINGS_LIST_CONFIG, N_("Configure Public Hub Lists") }, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-12 20:07:31
|
Revision: 1034 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1034&view=rev Author: arnetheduck Date: 2008-03-12 13:07:18 -0700 (Wed, 12 Mar 2008) Log Message: ----------- typo fix Modified Paths: -------------- dcplusplus/trunk/SConstruct Modified: dcplusplus/trunk/SConstruct =================================================================== --- dcplusplus/trunk/SConstruct 2008-03-09 13:59:38 UTC (rev 1033) +++ dcplusplus/trunk/SConstruct 2008-03-12 20:07:18 UTC (rev 1034) @@ -43,7 +43,7 @@ } gcc_link_flags = { - 'common' : ['-ggdb', '-Wl,--no-undefined', '-time', '-mthread'], + 'common' : ['-g', '-Wl,--no-undefined', '-time', '-mthreads'], 'debug' : [], 'release' : ['-mwindows'] } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <zou...@us...> - 2008-03-10 05:59:19
|
Revision: 1033 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1033&view=rev Author: zouzou123gen Date: 2008-03-09 06:59:38 -0700 (Sun, 09 Mar 2008) Log Message: ----------- 2 more translatable strings Modified Paths: -------------- dcplusplus/trunk/dcpp/BufferedSocket.cpp dcplusplus/trunk/win32/CommandDlg.cpp dcplusplus/trunk/win32/CommandDlg.h Modified: dcplusplus/trunk/dcpp/BufferedSocket.cpp =================================================================== --- dcplusplus/trunk/dcpp/BufferedSocket.cpp 2008-03-08 09:44:38 UTC (rev 1032) +++ dcplusplus/trunk/dcpp/BufferedSocket.cpp 2008-03-09 13:59:38 UTC (rev 1033) @@ -145,7 +145,7 @@ return; } else if(left == 0) { // This socket has been closed... - throw SocketException(("Connection closed")); + throw SocketException(_("Connection closed")); } string::size_type pos = 0; // always uncompressed data Modified: dcplusplus/trunk/win32/CommandDlg.cpp =================================================================== --- dcplusplus/trunk/win32/CommandDlg.cpp 2008-03-08 09:44:38 UTC (rev 1032) +++ dcplusplus/trunk/win32/CommandDlg.cpp 2008-03-09 13:59:38 UTC (rev 1033) @@ -52,7 +52,7 @@ { onInitDialog(std::tr1::bind(&CommandDlg::handleInitDialog, this)); onFocus(std::tr1::bind(&CommandDlg::handleFocus, this)); - onRaw(std::tr1::bind(&CommandDlg::handleHelp, this, _1, _2), SmartWin::Message(WM_HELP)); + onRaw(std::tr1::bind(&CommandDlg::handleHelp, this), SmartWin::Message(WM_HELP)); } CommandDlg::~CommandDlg() { @@ -200,7 +200,7 @@ void CommandDlg::handleOKClicked() { name = nameBox->getText(); if((type != 0) && (name.empty() || commandBox->getText().empty())) { - createMessageBox().show(_T("Name and command must not be empty"), _T(APPNAME) _T(" ") _T(VERSIONSTRING), WidgetMessageBox::BOX_OK, WidgetMessageBox::BOX_ICONEXCLAMATION); + createMessageBox().show(T_("Name and command must not be empty"), _T(APPNAME) _T(" ") _T(VERSIONSTRING), WidgetMessageBox::BOX_OK, WidgetMessageBox::BOX_ICONEXCLAMATION); return; } @@ -274,7 +274,7 @@ } } -LRESULT CommandDlg::handleHelp(WPARAM wParam, LPARAM lParam) { +LRESULT CommandDlg::handleHelp() { HtmlHelp(handle(), WinUtil::getHelpFile().c_str(), HH_HELP_CONTEXT, IDD_UCPAGE); return 0; } Modified: dcplusplus/trunk/win32/CommandDlg.h =================================================================== --- dcplusplus/trunk/win32/CommandDlg.h 2008-03-08 09:44:38 UTC (rev 1032) +++ dcplusplus/trunk/win32/CommandDlg.h 2008-03-09 13:59:38 UTC (rev 1033) @@ -36,8 +36,6 @@ tstring getCommand() { return command; } tstring getHub() { return hub; } - LRESULT handleHelp(WPARAM wParam, LPARAM lParam); - private: WidgetRadioButtonPtr separator; WidgetRadioButtonPtr raw; @@ -63,8 +61,8 @@ bool handleInitDialog(); void handleFocus(); + LRESULT handleHelp(); void handleTypeChanged(); - void handleOKClicked(); void handleHelpClicked(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-08 09:44:51
|
Revision: 1032 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1032&view=rev Author: arnetheduck Date: 2008-03-08 01:44:38 -0800 (Sat, 08 Mar 2008) Log Message: ----------- fix thread exception handling issue Modified Paths: -------------- dcplusplus/trunk/SConstruct Modified: dcplusplus/trunk/SConstruct =================================================================== --- dcplusplus/trunk/SConstruct 2008-03-07 23:13:00 UTC (rev 1031) +++ dcplusplus/trunk/SConstruct 2008-03-08 09:44:38 UTC (rev 1032) @@ -43,7 +43,7 @@ } gcc_link_flags = { - 'common' : ['-ggdb', '-Wl,--no-undefined', '-time'], + 'common' : ['-ggdb', '-Wl,--no-undefined', '-time', '-mthread'], 'debug' : [], 'release' : ['-mwindows'] } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-07 23:13:06
|
Revision: 1031 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1031&view=rev Author: arnetheduck Date: 2008-03-07 15:13:00 -0800 (Fri, 07 Mar 2008) Log Message: ----------- init order Modified Paths: -------------- dcplusplus/trunk/dcpp/BufferedSocket.cpp Modified: dcplusplus/trunk/dcpp/BufferedSocket.cpp =================================================================== --- dcplusplus/trunk/dcpp/BufferedSocket.cpp 2008-03-07 23:01:59 UTC (rev 1030) +++ dcplusplus/trunk/dcpp/BufferedSocket.cpp 2008-03-07 23:13:00 UTC (rev 1031) @@ -35,8 +35,8 @@ #define POLL_TIMEOUT 250 BufferedSocket::BufferedSocket(char aSeparator) throw(ThreadException) : -separator(aSeparator), mode(MODE_LINE), dataBytes(0), rollback(0), disconnecting(false), -state(STARTING) +separator(aSeparator), mode(MODE_LINE), dataBytes(0), rollback(0), state(STARTING), +disconnecting(false) { start(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-07 23:02:07
|
Revision: 1030 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1030&view=rev Author: arnetheduck Date: 2008-03-07 15:01:59 -0800 (Fri, 07 Mar 2008) Log Message: ----------- Clean up socket thread handling, hopefully fixing network crash Modified Paths: -------------- dcplusplus/trunk/dcpp/AdcHub.cpp dcplusplus/trunk/dcpp/AdcHub.h dcplusplus/trunk/dcpp/BufferedSocket.cpp dcplusplus/trunk/dcpp/BufferedSocket.h dcplusplus/trunk/dcpp/Client.cpp dcplusplus/trunk/dcpp/Client.h dcplusplus/trunk/dcpp/ClientManager.cpp dcplusplus/trunk/dcpp/ClientManager.h dcplusplus/trunk/dcpp/NmdcHub.cpp dcplusplus/trunk/dcpp/NmdcHub.h dcplusplus/trunk/dcpp/Speaker.h dcplusplus/trunk/dcpp/Thread.h dcplusplus/trunk/dcpp/stdinc.h dcplusplus/trunk/win32/AspectStatus.h dcplusplus/trunk/win32/DirectoryListingFrame.cpp dcplusplus/trunk/win32/TypedTreeView.h dcplusplus/trunk/win32/UsersFrame.cpp dcplusplus/trunk/win32/WinUtil.cpp Modified: dcplusplus/trunk/dcpp/AdcHub.cpp =================================================================== --- dcplusplus/trunk/dcpp/AdcHub.cpp 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/AdcHub.cpp 2008-03-07 23:01:59 UTC (rev 1030) @@ -204,7 +204,7 @@ if(!baseOk) { fire(ClientListener::StatusMessage(), this, _("Failed to negotiate base protocol")); - socket->disconnect(false); + disconnect(false); return; } else if(!tigrOk) { oldPassword = true; @@ -441,6 +441,7 @@ udp.writeTo(ip, port, command); } catch(const SocketException& e) { dcdebug("AdcHub::sendUDP: write failed: %s\n", e.getError().c_str()); + udp.close(); } } Modified: dcplusplus/trunk/dcpp/AdcHub.h =================================================================== --- dcplusplus/trunk/dcpp/AdcHub.h 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/AdcHub.h 2008-03-07 23:01:59 UTC (rev 1030) @@ -21,8 +21,7 @@ #include "Client.h" #include "AdcCommand.h" -#include "TimerManager.h" -#include "User.h" +#include "Socket.h" namespace dcpp { Modified: dcplusplus/trunk/dcpp/BufferedSocket.cpp =================================================================== --- dcplusplus/trunk/dcpp/BufferedSocket.cpp 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/BufferedSocket.cpp 2008-03-07 23:01:59 UTC (rev 1030) @@ -34,18 +34,18 @@ // Polling is used for tasks...should be fixed... #define POLL_TIMEOUT 250 -BufferedSocket::BufferedSocket(char aSeparator) throw() : -separator(aSeparator), mode(MODE_LINE), filterIn(NULL), -dataBytes(0), rollback(0), failed(false), sock(0), disconnecting(false) +BufferedSocket::BufferedSocket(char aSeparator) throw(ThreadException) : +separator(aSeparator), mode(MODE_LINE), dataBytes(0), rollback(0), disconnecting(false), +state(STARTING) { + start(); + Thread::safeInc(sockets); } volatile long BufferedSocket::sockets = 0; BufferedSocket::~BufferedSocket() throw() { - delete sock; - delete filterIn; Thread::safeDec(sockets); } @@ -55,89 +55,66 @@ return; } - if (mode == MODE_ZPIPE) { - // should not happen! - if (filterIn) { - delete filterIn; - filterIn = NULL; - } - } - - mode = aMode; switch (aMode) { case MODE_LINE: rollback = aRollback; break; case MODE_ZPIPE: - filterIn = new UnZFilter; + filterIn = std::auto_ptr<UnZFilter>(new UnZFilter); break; case MODE_DATA: break; } + mode = aMode; } -void BufferedSocket::accept(const Socket& srv, bool secure, bool allowUntrusted) throw(SocketException, ThreadException) { - dcassert(!sock); - try { - dcdebug("BufferedSocket::accept() %p\n", (void*)this); - sock = secure ? CryptoManager::getInstance()->getServerSocket(allowUntrusted) : new Socket; +void BufferedSocket::setSocket(std::auto_ptr<Socket> s) { + dcassert(!sock.get()); + if(SETTING(SOCKET_IN_BUFFER) > 0) + s->setSocketOpt(SO_RCVBUF, SETTING(SOCKET_IN_BUFFER)); + if(SETTING(SOCKET_OUT_BUFFER) > 0) + s->setSocketOpt(SO_SNDBUF, SETTING(SOCKET_OUT_BUFFER)); + s->setBlocking(false); - sock->accept(srv); - if(SETTING(SOCKET_IN_BUFFER) > 0) - sock->setSocketOpt(SO_RCVBUF, SETTING(SOCKET_IN_BUFFER)); - if(SETTING(SOCKET_OUT_BUFFER) > 0) - sock->setSocketOpt(SO_SNDBUF, SETTING(SOCKET_OUT_BUFFER)); - sock->setBlocking(false); + inbuf.resize(s->getSocketOptInt(SO_RCVBUF)); + + sock = s; +} - inbuf.resize(sock->getSocketOptInt(SO_RCVBUF)); +void BufferedSocket::accept(const Socket& srv, bool secure, bool allowUntrusted) throw(SocketException) { + dcdebug("BufferedSocket::accept() %p\n", (void*)this); + + std::auto_ptr<Socket> s(secure ? CryptoManager::getInstance()->getServerSocket(allowUntrusted) : new Socket); - // This lock prevents the shutdown task from being added and executed before we're done initializing the socket - Lock l(cs); - start(); - addTask(ACCEPTED, 0); - } catch(...) { - delete sock; - sock = 0; - throw; - } - + s->accept(srv); + + setSocket(s); + + Lock l(cs); + addTask(ACCEPTED, 0); } -void BufferedSocket::connect(const string& aAddress, uint16_t aPort, bool secure, bool allowUntrusted, bool proxy) throw(SocketException, ThreadException) { - dcassert(!sock); +void BufferedSocket::connect(const string& aAddress, uint16_t aPort, bool secure, bool allowUntrusted, bool proxy) throw(SocketException) { + dcdebug("BufferedSocket::connect() %p\n", (void*)this); + std::auto_ptr<Socket> s(secure ? CryptoManager::getInstance()->getClientSocket(allowUntrusted) : new Socket); - try { - dcdebug("BufferedSocket::connect() %p\n", (void*)this); - sock = secure ? CryptoManager::getInstance()->getClientSocket(allowUntrusted) : new Socket; - - sock->create(); - sock->bind(0, SETTING(BIND_ADDRESS)); - if(SETTING(SOCKET_IN_BUFFER) >= 1024) - sock->setSocketOpt(SO_RCVBUF, SETTING(SOCKET_IN_BUFFER)); - if(SETTING(SOCKET_OUT_BUFFER) >= 1024) - sock->setSocketOpt(SO_SNDBUF, SETTING(SOCKET_OUT_BUFFER)); - sock->setBlocking(false); - - inbuf.resize(sock->getSocketOptInt(SO_RCVBUF)); - - Lock l(cs); - start(); - addTask(CONNECT, new ConnectInfo(aAddress, aPort, proxy && (SETTING(OUTGOING_CONNECTIONS) == SettingsManager::OUTGOING_SOCKS5))); - } catch(...) { - delete sock; - sock = 0; - throw; - } - + s->create(); + s->bind(0, SETTING(BIND_ADDRESS)); + + setSocket(s); + + Lock l(cs); + addTask(CONNECT, new ConnectInfo(aAddress, aPort, proxy && (SETTING(OUTGOING_CONNECTIONS) == SettingsManager::OUTGOING_SOCKS5))); } #define CONNECT_TIMEOUT 30000 void BufferedSocket::threadConnect(const string& aAddr, uint16_t aPort, bool proxy) throw(SocketException) { + dcassert(state == STARTING); + dcdebug("threadConnect %s:%d\n", aAddr.c_str(), (int)aPort); - dcassert(sock); - if(!sock) - return; fire(BufferedSocketListener::Connecting()); + + state = RUNNING; uint64_t startTime = GET_TICK(); if(proxy) { @@ -159,9 +136,9 @@ } void BufferedSocket::threadRead() throw(SocketException) { - dcassert(sock); - if(!sock) + if(state != RUNNING) return; + int left = sock->read(&inbuf[0], (int)inbuf.size()); if(left == -1) { // EWOULDBLOCK, no data received... @@ -177,8 +154,7 @@ while (left > 0) { switch (mode) { - case MODE_ZPIPE: - if(filterIn) { + case MODE_ZPIPE: { const int BUF_SIZE = 1024; // Special to autodetect nmdc connections... string::size_type pos = 0; @@ -263,9 +239,11 @@ } void BufferedSocket::threadSendFile(InputStream* file) throw(Exception) { - dcassert(sock); - if(!sock || disconnecting) + if(state != RUNNING) return; + + if(disconnecting) + return; dcassert(file != NULL); size_t sockSize = (size_t)sock->getSocketOptInt(SO_SNDBUF); size_t bufSize = max(sockSize, (size_t)64*1024); @@ -347,8 +325,7 @@ } void BufferedSocket::write(const char* aBuf, size_t aLen) throw() { - dcassert(sock); - if(!sock) + if(!sock.get()) return; Lock l(cs); if(writeBuf.empty()) @@ -358,9 +335,9 @@ } void BufferedSocket::threadSendData() { - dcassert(sock); - if(!sock) + if(state != RUNNING) return; + { Lock l(cs); if(writeBuf.empty()) @@ -394,59 +371,46 @@ } bool BufferedSocket::checkEvents() { - while(isConnected() ? taskSem.wait(0) : taskSem.wait()) { - pair<Tasks, TaskData*> p; + while(state == RUNNING ? taskSem.wait(0) : taskSem.wait()) { + pair<Tasks, std::tr1::shared_ptr<TaskData> > p; { Lock l(cs); dcassert(tasks.size() > 0); p = tasks.front(); tasks.erase(tasks.begin()); } - if(failed && p.first != SHUTDOWN) { - dcdebug("BufferedSocket: New command when already failed: %d\n", p.first); - fail(_("Disconnected")); - delete p.second; - continue; + + if(p.first == SHUTDOWN) { + return false; + } else if(p.first == UPDATED) { + fire(BufferedSocketListener::Updated()); } - - try { - switch(p.first) { - case SEND_DATA: - threadSendData(); break; - case SEND_FILE: - threadSendFile(((SendFileInfo*)p.second)->stream); break; - case CONNECT: - { - ConnectInfo* ci = (ConnectInfo*)p.second; - threadConnect(ci->addr, ci->port, ci->proxy); - break; - } - case DISCONNECT: - if(isConnected()) - fail(_("Disconnected")); - break; - case SHUTDOWN: - return false; - case ACCEPTED: - break; - case UPDATED: - fire(BufferedSocketListener::Updated()); - break; + + if(state == STARTING) { + if(p.first == CONNECT) { + ConnectInfo* ci = static_cast<ConnectInfo*>(p.second.get()); + threadConnect(ci->addr, ci->port, ci->proxy); + } else if(p.first == ACCEPTED) { + state = RUNNING; + } else { + dcdebug("%d unexpected in STARTING state", p.first); } - } catch(...) { - delete p.second; - throw; + } else if(state == RUNNING) { + if(p.first == SEND_DATA) { + threadSendData(); + } else if(p.first == SEND_FILE) { + threadSendFile(static_cast<SendFileInfo*>(p.second.get())->stream); break; + } else if(p.first == DISCONNECT) { + fail(_("Disconnected")); + } else { + dcdebug("%d unexpected in RUNNING state", p.first); + } } - delete p.second; } return true; } void BufferedSocket::checkSocket() { - dcassert(sock); - if(!sock) - return; - int waitFor = sock->wait(POLL_TIMEOUT, Socket::WAIT_READ); if(waitFor & Socket::WAIT_READ) { @@ -462,9 +426,12 @@ dcdebug("BufferedSocket::run() start %p\n", (void*)this); while(true) { try { - if(!checkEvents()) + if(!checkEvents()) { break; - checkSocket(); + } + if(state == RUNNING) { + checkSocket(); + } } catch(const Exception& e) { fail(e.getError()); } @@ -475,24 +442,23 @@ } void BufferedSocket::fail(const string& aError) { - if(sock) { - sock->disconnect(); - } - if(!failed) { - failed = true; + sock->disconnect(); + + if(state == RUNNING) { + state = FAILED; fire(BufferedSocketListener::Failed(), aError); } } void BufferedSocket::shutdown() { - if(sock) { - Lock l(cs); - disconnecting = true; - addTask(SHUTDOWN, 0); - } else { - // Socket thread not running yet, disconnect... - delete this; - } + Lock l(cs); + disconnecting = true; + addTask(SHUTDOWN, 0); } +void BufferedSocket::addTask(Tasks task, TaskData* data) { + dcassert(task == SHUTDOWN || sock.get()); + tasks.push_back(make_pair(task, data)); taskSem.signal(); +} + } // namespace dcpp Modified: dcplusplus/trunk/dcpp/BufferedSocket.h =================================================================== --- dcplusplus/trunk/dcpp/BufferedSocket.h 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/BufferedSocket.h 2008-03-07 23:01:59 UTC (rev 1030) @@ -29,8 +29,7 @@ namespace dcpp { -class BufferedSocket : public Speaker<BufferedSocketListener>, public Thread -{ +class BufferedSocket : public Speaker<BufferedSocketListener>, private Thread { public: enum Modes { MODE_LINE, @@ -43,7 +42,7 @@ * @param sep Line separator * @return An unconnected socket */ - static BufferedSocket* getSocket(char sep) throw() { + static BufferedSocket* getSocket(char sep) throw(ThreadException) { return new BufferedSocket(sep); } @@ -57,8 +56,8 @@ Thread::sleep(100); } - void accept(const Socket& srv, bool secure, bool allowUntrusted) throw(SocketException, ThreadException); - void connect(const string& aAddress, uint16_t aPort, bool secure, bool allowUntrusted, bool proxy) throw(SocketException, ThreadException); + void accept(const Socket& srv, bool secure, bool allowUntrusted) throw(SocketException); + void connect(const string& aAddress, uint16_t aPort, bool secure, bool allowUntrusted, bool proxy) throw(SocketException); /** Sets data mode for aBytes bytes. Must be called within onLine. */ void setDataMode(int64_t aBytes = -1) { mode = MODE_DATA; dataBytes = aBytes; } @@ -70,12 +69,12 @@ void setLineMode(size_t aRollback) { setMode (MODE_LINE, aRollback);} void setMode(Modes mode, size_t aRollback = 0); Modes getMode() const { return mode; } - const string& getIp() const { return sock ? sock->getIp() : Util::emptyString; } - bool isConnected() const { return sock && sock->isConnected(); } + const string& getIp() const { return sock->getIp(); } + bool isConnected() const { return sock->isConnected(); } - bool isSecure() const { return sock && sock->isSecure(); } - bool isTrusted() const { return sock && sock->isTrusted(); } - std::string getCipherName() const { return sock ? sock->getCipherName() : Util::emptyString; } + bool isSecure() const { return sock->isSecure(); } + bool isTrusted() const { return sock->isTrusted(); } + std::string getCipherName() const { return sock->getCipherName(); } void write(const string& aData) { write(aData.data(), aData.length()); } void write(const char* aBuf, size_t aLen) throw(); @@ -87,7 +86,7 @@ void disconnect(bool graceless = false) throw() { Lock l(cs); if(graceless) disconnecting = true; addTask(DISCONNECT, 0); } - string getLocalIp() const { return sock ? sock->getLocalIp() : Util::getLocalIp(); } + string getLocalIp() const { return sock->getLocalIp(); } GETSET(char, separator, Separator) private: @@ -100,6 +99,12 @@ ACCEPTED, UPDATED }; + + enum State { + STARTING, // Waiting for CONNECT/ACCEPTED/SHUTDOWN + RUNNING, + FAILED + }; struct TaskData { virtual ~TaskData() { } @@ -115,30 +120,26 @@ InputStream* stream; }; - BufferedSocket(char aSeparator) throw(); + BufferedSocket(char aSeparator) throw(ThreadException); - // Dummy... - BufferedSocket(const BufferedSocket&); - BufferedSocket& operator=(const BufferedSocket&); - virtual ~BufferedSocket() throw(); CriticalSection cs; Semaphore taskSem; - vector<pair<Tasks, TaskData*> > tasks; + deque<pair<Tasks, std::tr1::shared_ptr<TaskData> > > tasks; Modes mode; - UnZFilter *filterIn; + std::auto_ptr<UnZFilter> filterIn; int64_t dataBytes; size_t rollback; - bool failed; string line; ByteVector inbuf; ByteVector writeBuf; ByteVector sendBuf; - Socket* sock; + std::auto_ptr<Socket> sock; + State state; bool disconnecting; virtual int run(); @@ -155,8 +156,9 @@ bool checkEvents(); void checkSocket(); + void setSocket(std::auto_ptr<Socket> s); void shutdown(); - void addTask(Tasks task, TaskData* data) { tasks.push_back(make_pair(task, data)); taskSem.signal(); } + void addTask(Tasks task, TaskData* data); }; } // namespace dcpp Modified: dcplusplus/trunk/dcpp/Client.cpp =================================================================== --- dcplusplus/trunk/dcpp/Client.cpp 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/Client.cpp 2008-03-07 23:01:59 UTC (rev 1030) @@ -34,7 +34,7 @@ Client::Client(const string& hubURL, char separator_, bool secure_) : myIdentity(ClientManager::getInstance()->getMe(), 0), reconnDelay(120), lastActivity(GET_TICK()), registered(false), autoReconnect(false), - encoding(Text::systemCharset), state(STATE_DISCONNECTED), socket(0), + encoding(Text::systemCharset), state(STATE_DISCONNECTED), sock(0), hubUrl(hubURL), port(0), separator(separator_), secure(secure_), countType(COUNT_UNCOUNTED) { @@ -45,7 +45,7 @@ } Client::~Client() throw() { - dcassert(!socket); + dcassert(!sock); // In case we were deleted before we Failed FavoriteManager::getInstance()->removeUserCommand(getHubUrl()); @@ -60,10 +60,9 @@ } void Client::shutdown() { - - if(socket) { - BufferedSocket::putSocket(socket); - socket = 0; + if(sock) { + BufferedSocket::putSocket(sock); + sock = 0; } } @@ -90,8 +89,8 @@ } void Client::connect() { - if(socket) - BufferedSocket::putSocket(socket); + if(sock) + BufferedSocket::putSocket(sock); setAutoReconnect(true); setReconnDelay(120 + Util::rand(0, 60)); @@ -101,13 +100,13 @@ setHubIdentity(Identity()); try { - socket = BufferedSocket::getSocket(separator); - socket->addListener(this); - socket->connect(address, port, secure, BOOLSETTING(ALLOW_UNTRUSTED_HUBS), true); + sock = BufferedSocket::getSocket(separator); + sock->addListener(this); + sock->connect(address, port, secure, BOOLSETTING(ALLOW_UNTRUSTED_HUBS), true); } catch(const Exception& e) { - if(socket) { - BufferedSocket::putSocket(socket); - socket = 0; + if(sock) { + BufferedSocket::putSocket(sock); + sock = 0; } fire(ClientListener::Failed(), this, e.getError()); } @@ -115,9 +114,18 @@ state = STATE_CONNECTING; } +void Client::send(const char* aMessage, size_t aLen) { + dcassert(sock); + if(!sock) + return; + updateActivity(); + sock->write(aMessage, aLen); +} + void Client::on(Connected) throw() { updateActivity(); - ip = socket->getIp(); + ip = sock->getIp(); + localIp = sock->getLocalIp(); fire(ClientListener::Connected(), this); state = STATE_PROTOCOL; } @@ -125,13 +133,13 @@ void Client::on(Failed, const string& aLine) throw() { state = STATE_DISCONNECTED; FavoriteManager::getInstance()->removeUserCommand(getHubUrl()); - socket->removeListener(this); + sock->removeListener(this); fire(ClientListener::Failed(), this, aLine); } void Client::disconnect(bool graceLess) { - if(socket) - socket->disconnect(graceLess); + if(sock) + sock->disconnect(graceLess); } void Client::updateCounts(bool aRemove) { @@ -169,14 +177,12 @@ if(!SETTING(EXTERNAL_IP).empty()) { return Socket::resolve(SETTING(EXTERNAL_IP)); } + + if(localIp.empty()) { + return Util::getLocalIp(); + } - string lip; - if(socket) - lip = socket->getLocalIp(); - - if(lip.empty()) - return Util::getLocalIp(); - return lip; + return localIp; } void Client::on(Line, const string& /*aLine*/) throw() { Modified: dcplusplus/trunk/dcpp/Client.h =================================================================== --- dcplusplus/trunk/dcpp/Client.h 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/Client.h 2008-03-07 23:01:59 UTC (rev 1030) @@ -16,12 +16,14 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#if !defined(CLIENT_H) -#define CLIENT_H +#ifndef DCPLUSPLUS_DCPP_CLIENT_H +#define DCPLUSPLUS_DCPP_CLIENT_H +#include "forward.h" + #include "User.h" -#include "BufferedSocket.h" -#include "SettingsManager.h" +#include "Speaker.h" +#include "BufferedSocketListener.h" #include "TimerManager.h" #include "ClientListener.h" @@ -52,7 +54,7 @@ virtual string escape(string const& str) const { return str; } - bool isConnected() const { return socket && socket->isConnected(); } + bool isConnected() const { return state != STATE_DISCONNECTED; } bool isOp() const { return getMyIdentity().isOp(); } uint16_t getPort() const { return port; } @@ -80,13 +82,7 @@ void shutdown(); void send(const string& aMessage) { send(aMessage.c_str(), aMessage.length()); } - void send(const char* aMessage, size_t aLen) { - dcassert(socket); - if(!socket) - return; - updateActivity(); - socket->write(aMessage, aLen); - } + void send(const char* aMessage, size_t aLen); string getMyNick() const { return getMyIdentity().getNick(); } string getHubName() const { return getHubIdentity().getNick().empty() ? getHubUrl() : getHubIdentity().getNick(); } @@ -129,7 +125,7 @@ STATE_DISCONNECTED, ///< Nothing in particular } state; - BufferedSocket* socket; + BufferedSocket* sock; static Counts counts; Counts lastCounts; @@ -165,6 +161,7 @@ string hubUrl; string address; string ip; + string localIp; uint16_t port; char separator; bool secure; Modified: dcplusplus/trunk/dcpp/ClientManager.cpp =================================================================== --- dcplusplus/trunk/dcpp/ClientManager.cpp 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/ClientManager.cpp 2008-03-07 23:01:59 UTC (rev 1030) @@ -55,8 +55,6 @@ } void ClientManager::putClient(Client* aClient) { - aClient->shutdown(); - fire(ClientManagerListener::ClientDisconnected(), aClient); aClient->removeListeners(); @@ -64,6 +62,7 @@ Lock l(cs); clients.remove(aClient); } + aClient->shutdown(); delete aClient; } Modified: dcplusplus/trunk/dcpp/ClientManager.h =================================================================== --- dcplusplus/trunk/dcpp/ClientManager.h 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/ClientManager.h 2008-03-07 23:01:59 UTC (rev 1030) @@ -25,6 +25,7 @@ #include "Singleton.h" #include "SettingsManager.h" #include "User.h" +#include "Socket.h" #include "ClientManagerListener.h" Modified: dcplusplus/trunk/dcpp/NmdcHub.cpp =================================================================== --- dcplusplus/trunk/dcpp/NmdcHub.cpp 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/NmdcHub.cpp 2008-03-07 23:01:59 UTC (rev 1030) @@ -578,12 +578,12 @@ fire(ClientListener::UserUpdated(), this, u); } } else if(cmd == "$ForceMove") { - socket->disconnect(false); + disconnect(false); fire(ClientListener::Redirect(), this, param); } else if(cmd == "$HubIsFull") { fire(ClientListener::HubFull(), this); } else if(cmd == "$ValidateDenide") { // Mind the spelling... - socket->disconnect(false); + disconnect(false); fire(ClientListener::NickTaken(), this); } else if(cmd == "$UserIP") { if(!param.empty()) { @@ -729,7 +729,7 @@ } else if(cmd == "$BadPass") { setPassword(Util::emptyString); } else if(cmd == "$ZOn") { - socket->setMode(BufferedSocket::MODE_ZPIPE); + sock->setMode(BufferedSocket::MODE_ZPIPE); } else { dcassert(cmd[0] == '$'); dcdebug("NmdcHub::onLine Unknown command %s\n", aLine.c_str()); Modified: dcplusplus/trunk/dcpp/NmdcHub.h =================================================================== --- dcplusplus/trunk/dcpp/NmdcHub.h 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/NmdcHub.h 2008-03-07 23:01:59 UTC (rev 1030) @@ -16,13 +16,13 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#if !defined(NMDC_HUB_H) -#define NMDC_HUB_H +#ifndef DCPLUSPLUS_DCPP_NMDC_HUB_H +#define DCPLUSPLUS_DCPP_NMDC_HUB_H #include "TimerManager.h" #include "SettingsManager.h" -#include "User.h" +#include "forward.h" #include "CriticalSection.h" #include "Text.h" #include "Client.h" Modified: dcplusplus/trunk/dcpp/Speaker.h =================================================================== --- dcplusplus/trunk/dcpp/Speaker.h 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/Speaker.h 2008-03-07 23:01:59 UTC (rev 1030) @@ -16,8 +16,8 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#if !defined(SPEAKER_H) -#define SPEAKER_H +#ifndef DCPLUSPLUS_DCPP_SPEAKER_H +#define DCPLUSPLUS_DCPP_SPEAKER_H #include "CriticalSection.h" Modified: dcplusplus/trunk/dcpp/Thread.h =================================================================== --- dcplusplus/trunk/dcpp/Thread.h 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/Thread.h 2008-03-07 23:01:59 UTC (rev 1030) @@ -16,8 +16,8 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#if !defined(THREAD_H) -#define THREAD_H +#ifndef DCPLUSPLUS_DCPP_THREAD_H +#define DCPLUSPLUS_DCPP_THREAD_H #ifndef _WIN32 #include <pthread.h> @@ -31,7 +31,7 @@ STANDARD_EXCEPTION(ThreadException); -class Thread +class Thread : private boost::noncopyable { public: #ifdef _WIN32 @@ -124,10 +124,6 @@ protected: virtual int run() = 0; -private: - Thread(const Thread&); - Thread& operator=(const Thread&); - #ifdef _WIN32 HANDLE threadHandle; DWORD threadId; Modified: dcplusplus/trunk/dcpp/stdinc.h =================================================================== --- dcplusplus/trunk/dcpp/stdinc.h 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/dcpp/stdinc.h 2008-03-07 23:01:59 UTC (rev 1030) @@ -121,6 +121,7 @@ #include <boost/format.hpp> #include <boost/scoped_array.hpp> +#include <boost/noncopyable.hpp> #ifdef _STLPORT_VERSION Modified: dcplusplus/trunk/win32/AspectStatus.h =================================================================== --- dcplusplus/trunk/win32/AspectStatus.h 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/win32/AspectStatus.h 2008-03-07 23:01:59 UTC (rev 1030) @@ -81,10 +81,10 @@ } void mapWidget(int s, SmartWin::Widget* widget) { - RECT sr; - ::SendMessage(status->handle(), SB_GETRECT, s, reinterpret_cast<LPARAM>(&sr)); - ::MapWindowPoints(status->handle(), static_cast<WidgetType*>(this)->handle(), (POINT*)&sr, 2); - ::MoveWindow(widget->handle(), sr.left, sr.top, sr.right - sr.left, sr.bottom - sr.top, TRUE); + POINT p[2]; + ::SendMessage(status->handle(), SB_GETRECT, s, reinterpret_cast<LPARAM>(p)); + ::MapWindowPoints(status->handle(), static_cast<WidgetType*>(this)->handle(), (POINT*)p, 2); + ::MoveWindow(widget->handle(), p[0].x, p[0].y, p[1].x - p[0].x, p[1].y - p[0].y, TRUE); } WidgetStatusBarSectionsPtr status; Modified: dcplusplus/trunk/win32/DirectoryListingFrame.cpp =================================================================== --- dcplusplus/trunk/win32/DirectoryListingFrame.cpp 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/win32/DirectoryListingFrame.cpp 2008-03-07 23:01:59 UTC (rev 1030) @@ -762,7 +762,7 @@ changeDir(dir); // Check file names in list pane - for(int i=0; i<files->size(); i++) { + for(size_t i = 0; i < files->size(); i++) { ItemInfo* ii = files->getData(i); if(ii->type == ItemInfo::FILE) { if(str.match(ii->file->getName())) { Modified: dcplusplus/trunk/win32/TypedTreeView.h =================================================================== --- dcplusplus/trunk/win32/TypedTreeView.h 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/win32/TypedTreeView.h 2008-03-07 23:01:59 UTC (rev 1030) @@ -76,7 +76,7 @@ ContentType* content = reinterpret_cast<ContentType*>(nm->item.lParam); const tstring& text = content->getText(); _tcsncpy(nm->item.pszText, text.data(), std::min(text.size(), (size_t)nm->item.cchTextMax)); - if(text.size() < nm->item.cchTextMax) { + if(text.size() < static_cast<size_t>(nm->item.cchTextMax)) { nm->item.pszText[text.size()] = 0; } } Modified: dcplusplus/trunk/win32/UsersFrame.cpp =================================================================== --- dcplusplus/trunk/win32/UsersFrame.cpp 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/win32/UsersFrame.cpp 2008-03-07 23:01:59 UTC (rev 1030) @@ -117,7 +117,7 @@ } void UsersFrame::updateUser(const UserPtr& aUser) { - for(int i = 0; i < users->size(); ++i) { + for(size_t i = 0; i < users->size(); ++i) { UserInfo *ui = users->getData(i); if(ui->user == aUser) { ui->columns[COLUMN_SEEN] = aUser->isOnline() ? T_("Online") : Text::toT(Util::formatTime("%Y-%m-%d %H:%M", FavoriteManager::getInstance()->getLastSeen(aUser))); @@ -127,7 +127,7 @@ } void UsersFrame::removeUser(const FavoriteUser& aUser) { - for(int i = 0; i < users->size(); ++i) { + for(size_t i = 0; i < users->size(); ++i) { UserInfo *ui = users->getData(i); if(ui->user == aUser.getUser()) { users->erase(i); Modified: dcplusplus/trunk/win32/WinUtil.cpp =================================================================== --- dcplusplus/trunk/win32/WinUtil.cpp 2008-03-07 00:20:14 UTC (rev 1029) +++ dcplusplus/trunk/win32/WinUtil.cpp 2008-03-07 23:01:59 UTC (rev 1030) @@ -120,7 +120,7 @@ } // Const so that noone else will change them after they've been initialized - SmartWin::WidgetButton::Seed& xbutton = const_cast<SmartWin::WidgetButton::Seed&>(Seeds::button); + //SmartWin::WidgetButton::Seed& xbutton = const_cast<SmartWin::WidgetButton::Seed&>(Seeds::button); SmartWin::WidgetComboBox::Seed& xcomboBoxEdit = const_cast<SmartWin::WidgetComboBox::Seed&>(Seeds::comboBoxEdit); SmartWin::WidgetComboBox::Seed& xcomboBoxStatic = const_cast<SmartWin::WidgetComboBox::Seed&>(Seeds::comboBoxStatic); SmartWin::WidgetListView::Seed& xlistView = const_cast<SmartWin::WidgetListView::Seed&>(Seeds::listView); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <zou...@us...> - 2008-03-07 00:20:21
|
Revision: 1029 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1029&view=rev Author: zouzou123gen Date: 2008-03-06 16:20:14 -0800 (Thu, 06 Mar 2008) Log Message: ----------- fix DL queue crash, don't sub-class scrollbar menus Modified Paths: -------------- dcplusplus/trunk/changelog.txt dcplusplus/trunk/win32/QueueFrame.cpp dcplusplus/trunk/win32/QueueFrame.h dcplusplus/trunk/win32/WidgetTextBox.cpp Modified: dcplusplus/trunk/changelog.txt =================================================================== --- dcplusplus/trunk/changelog.txt 2008-03-06 19:43:56 UTC (rev 1028) +++ dcplusplus/trunk/changelog.txt 2008-03-07 00:20:14 UTC (rev 1029) @@ -42,6 +42,7 @@ * [L#194696] Fixed small memory leak * Some unix compile fixes (thanks pavel andreev and yakov suraev) * [L#199192] [NMDC] Fixed crash on empty private message +* [L#198416] Fixed crash when closing the download queue (poy) -- 0.704 2007-12-14 -- * Hub lists added to utilize Coral's distributed network (ullner) Modified: dcplusplus/trunk/win32/QueueFrame.cpp =================================================================== --- dcplusplus/trunk/win32/QueueFrame.cpp 2008-03-06 19:43:56 UTC (rev 1028) +++ dcplusplus/trunk/win32/QueueFrame.cpp 2008-03-07 00:20:14 UTC (rev 1029) @@ -70,17 +70,20 @@ { dirs = SmartWin::WidgetCreator<WidgetDirs>::create(this, WinUtil::Seeds::treeView); addWidget(dirs); + paned->setFirst(dirs); + dirs->setColor(WinUtil::textColor, WinUtil::bgColor); dirs->setNormalImageList(WinUtil::fileImages); + dirs->onSelectionChanged(std::tr1::bind(&QueueFrame::updateFiles, this)); dirs->onKeyDown(std::tr1::bind(&QueueFrame::handleKeyDownDirs, this, _1)); dirs->onContextMenu(std::tr1::bind(&QueueFrame::handleDirsContextMenu, this, _1)); - paned->setFirst(dirs); } { files = SmartWin::WidgetCreator<WidgetFiles>::create(this, WinUtil::Seeds::listView); - addWidget(files); + addWidget(files, true); + paned->setSecond(files); files->setSmallImageList(WinUtil::fileImages); files->createColumns(WinUtil::getStrings(columnNames)); @@ -92,8 +95,6 @@ files->onKeyDown(std::tr1::bind(&QueueFrame::handleKeyDownFiles, this, _1)); files->onSelectionChanged(std::tr1::bind(&QueueFrame::updateStatus, this)); files->onContextMenu(std::tr1::bind(&QueueFrame::handleFilesContextMenu, this, _1)); - - paned->setSecond(files); } { @@ -111,7 +112,7 @@ QueueManager::getInstance()->unlockQueue(); QueueManager::getInstance()->addListener(this); - onSpeaker(std::tr1::bind(&QueueFrame::handleSpeaker, this, _1, _2)); + onSpeaker(std::tr1::bind(&QueueFrame::handleSpeaker, this)); updateStatus(); layout(); @@ -121,7 +122,7 @@ } -HRESULT QueueFrame::handleSpeaker(WPARAM, LPARAM) { +LRESULT QueueFrame::handleSpeaker() { TaskQueue::List t; tasks.get(t); Modified: dcplusplus/trunk/win32/QueueFrame.h =================================================================== --- dcplusplus/trunk/win32/QueueFrame.h 2008-03-06 19:43:56 UTC (rev 1028) +++ dcplusplus/trunk/win32/QueueFrame.h 2008-03-07 00:20:14 UTC (rev 1029) @@ -27,12 +27,10 @@ #include <dcpp/FastAlloc.h> #include <dcpp/QueueManagerListener.h> #include <dcpp/QueueItem.h> -#include <dcpp/ClientListener.h> #include "resource.h" -class QueueFrame : - public StaticFrame<QueueFrame>, - private ClientListener, +class QueueFrame : + public StaticFrame<QueueFrame>, private QueueManagerListener { public: @@ -277,12 +275,12 @@ bool addUsers(const WidgetMenuPtr& menu, unsigned int startId, void (QueueFrame::*handler)(const UserPtr&), const QueueItem::SourceList& sources, bool offline); void layout(); - HRESULT handleSpeaker(WPARAM wParam, LPARAM lParam); + bool preClosing(); void postClosing(); void handleShowTreeClicked(); - + LRESULT handleSpeaker(); void handleMove(); void handleRemove(); void handlePriority(unsigned id); Modified: dcplusplus/trunk/win32/WidgetTextBox.cpp =================================================================== --- dcplusplus/trunk/win32/WidgetTextBox.cpp 2008-03-06 19:43:56 UTC (rev 1028) +++ dcplusplus/trunk/win32/WidgetTextBox.cpp 2008-03-07 00:20:14 UTC (rev 1029) @@ -25,6 +25,12 @@ WidgetTextBox::WidgetTextBox( SmartWin::Widget * parent ) : BaseType(parent), menuOpened(false) { this->onLeftMouseDblClick(std::tr1::bind(&WidgetTextBox::handleLeftDblClick, this, _1)); + /* + * unlike usual controls, the edit control doesn't send WM_INITMENUPOPUP when its standard + * menu is being opened. however, we can catch WM_ENTERIDLE and sub-class the menu then. + * + * method described by Jeff Partch in http://groups.google.com/group/microsoft.public.vc.mfc/msg/5e07dc60be3d3baa + */ this->onRaw(std::tr1::bind(&WidgetTextBox::handleEnterIdle, this, _1, _2), SmartWin::Message(WM_ENTERIDLE)); this->onRaw(std::tr1::bind(&WidgetTextBox::handleMenuSelect, this, _1, _2), SmartWin::Message(WM_MENUSELECT)); } @@ -35,8 +41,27 @@ LRESULT WidgetTextBox::handleEnterIdle(WPARAM wParam, LPARAM lParam) { if(wParam == MSGF_MENU && !menuOpened) { - menu = SmartWin::WidgetCreator<SmartWin::WidgetMenu>::attach(this, reinterpret_cast<HMENU>(::SendMessage(reinterpret_cast<HWND>(lParam), MN_GETHMENU, 0, 0)), WinUtil::Seeds::menu); - menuOpened = true; + GUITHREADINFO gti = { sizeof(gti) }; + if(::GetGUIThreadInfo(NULL, >i) && (gti.flags & GUI_POPUPMENUMODE) && (gti.hwndMenuOwner == handle())) { + HMENU hMenu = reinterpret_cast<HMENU>(::SendMessage(reinterpret_cast<HWND>(lParam), MN_GETHMENU, 0, 0)); + if(!hMenu) + return 0; + + menuOpened = true; + + { + // make sure we're not sub-classing the scrollbar context menu... + DWORD messagePos = ::GetMessagePos(); + POINT pt = { GET_X_LPARAM(messagePos), GET_Y_LPARAM(messagePos) }; + SCROLLBARINFO sbi = { sizeof(sbi) }; + if(::GetScrollBarInfo(handle(), OBJID_HSCROLL, &sbi) && ::PtInRect(&sbi.rcScrollBar, pt)) + return 0; + if(::GetScrollBarInfo(handle(), OBJID_VSCROLL, &sbi) && ::PtInRect(&sbi.rcScrollBar, pt)) + return 0; + } + + menu = SmartWin::WidgetCreator<SmartWin::WidgetMenu>::attach(this, hMenu, WinUtil::Seeds::menu); + } } return 0; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-06 19:50:11
|
Revision: 1028 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1028&view=rev Author: arnetheduck Date: 2008-03-06 11:43:56 -0800 (Thu, 06 Mar 2008) Log Message: ----------- fix ctrl-p/public hubs Modified Paths: -------------- dcplusplus/trunk/win32/DCPlusPlus.rc Modified: dcplusplus/trunk/win32/DCPlusPlus.rc =================================================================== --- dcplusplus/trunk/win32/DCPlusPlus.rc 2008-03-06 18:13:47 UTC (rev 1027) +++ dcplusplus/trunk/win32/DCPlusPlus.rc 2008-03-06 19:43:56 UTC (rev 1028) @@ -883,7 +883,7 @@ "F", IDC_FAVORITE_HUBS, VIRTKEY, CONTROL, NOINVERT "L", IDC_OPEN_FILE_LIST, VIRTKEY, CONTROL, NOINVERT "N", IDC_NOTEPAD, VIRTKEY, CONTROL, NOINVERT - "P", IDC_CONNECT, VIRTKEY, CONTROL, NOINVERT + "P", IDC_PUBLIC_HUBS, VIRTKEY, CONTROL, NOINVERT "Q", IDC_QUICK_CONNECT, VIRTKEY, CONTROL, NOINVERT "R", IDC_RECONNECT, VIRTKEY, CONTROL, NOINVERT "S", IDC_SEARCH, VIRTKEY, CONTROL, NOINVERT This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-06 18:14:10
|
Revision: 1027 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1027&view=rev Author: arnetheduck Date: 2008-03-06 10:13:47 -0800 (Thu, 06 Mar 2008) Log Message: ----------- Fix empty pm crash Modified Paths: -------------- dcplusplus/trunk/changelog.txt dcplusplus/trunk/dcpp/NmdcHub.cpp Modified: dcplusplus/trunk/changelog.txt =================================================================== --- dcplusplus/trunk/changelog.txt 2008-03-05 21:23:05 UTC (rev 1026) +++ dcplusplus/trunk/changelog.txt 2008-03-06 18:13:47 UTC (rev 1027) @@ -41,6 +41,7 @@ * [L#195209] Fixed Ctrl+F that opens favorite hubs (poy) * [L#194696] Fixed small memory leak * Some unix compile fixes (thanks pavel andreev and yakov suraev) +* [L#199192] [NMDC] Fixed crash on empty private message -- 0.704 2007-12-14 -- * Hub lists added to utilize Coral's distributed network (ullner) Modified: dcplusplus/trunk/dcpp/NmdcHub.cpp =================================================================== --- dcplusplus/trunk/dcpp/NmdcHub.cpp 2008-03-05 21:23:05 UTC (rev 1026) +++ dcplusplus/trunk/dcpp/NmdcHub.cpp 2008-03-06 18:13:47 UTC (rev 1027) @@ -690,10 +690,14 @@ if(fromNick.empty()) return; + if(param.size() < j + 2) { + return; + } + string msg = param.substr(j + 2); + OnlineUser* replyTo = findUser(rtNick); OnlineUser* from = findUser(fromNick); - string msg = param.substr(j + 2); if(replyTo == NULL || from == NULL) { if(replyTo == 0) { // Assume it's from the hub This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-05 21:23:09
|
Revision: 1026 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1026&view=rev Author: arnetheduck Date: 2008-03-05 13:23:05 -0800 (Wed, 05 Mar 2008) Log Message: ----------- Patches Modified Paths: -------------- dcplusplus/trunk/changelog.txt dcplusplus/trunk/dcpp/File.cpp dcplusplus/trunk/dcpp/Util.cpp dcplusplus/trunk/win32/AboutDlg.cpp Modified: dcplusplus/trunk/changelog.txt =================================================================== --- dcplusplus/trunk/changelog.txt 2008-03-04 23:26:14 UTC (rev 1025) +++ dcplusplus/trunk/changelog.txt 2008-03-05 21:23:05 UTC (rev 1026) @@ -40,8 +40,8 @@ * [L#195209] Fixed tabbing in hub windows (poy) * [L#195209] Fixed Ctrl+F that opens favorite hubs (poy) * [L#194696] Fixed small memory leak +* Some unix compile fixes (thanks pavel andreev and yakov suraev) - -- 0.704 2007-12-14 -- * Hub lists added to utilize Coral's distributed network (ullner) * Use system header arrows on common controls 6+ (thanks poy) Modified: dcplusplus/trunk/dcpp/File.cpp =================================================================== --- dcplusplus/trunk/dcpp/File.cpp 2008-03-04 23:26:14 UTC (rev 1025) +++ dcplusplus/trunk/dcpp/File.cpp 2008-03-05 21:23:05 UTC (rev 1026) @@ -225,7 +225,7 @@ throw FileException("Invalid file type"); } - h = open(fileName.c_str(), m, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH); + h = open(filename.c_str(), m, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH); if(h == -1) throw FileException("Could not open file"); } @@ -350,7 +350,7 @@ // This doesn't assume all bytes are written in one write call, it is a bit safer void File::copyFile(const string& source, const string& target) throw(FileException) { const size_t BUF_SIZE = 64 * 1024; - boost::scoped_array<char> buffer(BUF_SIZE); + boost::scoped_array<char> buffer(new char[BUF_SIZE]); size_t count = BUF_SIZE; File src(source, File::READ, 0); File dst(target, File::WRITE, File::CREATE | File::TRUNCATE); Modified: dcplusplus/trunk/dcpp/Util.cpp =================================================================== --- dcplusplus/trunk/dcpp/Util.cpp 2008-03-04 23:26:14 UTC (rev 1025) +++ dcplusplus/trunk/dcpp/Util.cpp 2008-03-05 21:23:05 UTC (rev 1026) @@ -379,7 +379,7 @@ #else char buf[128]; snprintf(buf, sizeof(buf), _("%'lld B"), (long long int)aBytes); - return string(buf) + return string(buf); #endif } @@ -714,14 +714,17 @@ #else // will this give wide representations for %a and %A? // surely win32 can't have a leg up on linux/unixen in this area. - Todd - AutoArray<char> buf(bufsize); + string buf(bufsize, 0); - while(!strftime(buf, bufsize-1, msg.c_str(), loc)) { + buf.resize(strftime(&buf[0], bufsize-1, msg.c_str(), loc)); + + while(buf.empty()) { bufsize+=64; - buf = new char[bufsize]; + buf.resize(bufsize); + buf.resize(strftime(&buf[0], bufsize-1, msg.c_str(), loc)); } - return Text::toUtf8(string(buf)); + return Text::toUtf8(buf); #endif } return Util::emptyString; Modified: dcplusplus/trunk/win32/AboutDlg.cpp =================================================================== --- dcplusplus/trunk/win32/AboutDlg.cpp 2008-03-04 23:26:14 UTC (rev 1025) +++ dcplusplus/trunk/win32/AboutDlg.cpp 2008-03-05 21:23:05 UTC (rev 1026) @@ -41,7 +41,7 @@ "bsod, sulan, jonathan stone, tim burton, izzzo, guitarm, paka, nils maier, jens oknelid, yoji, " "krzysztof tyszecki, poison, mikejj, pur, bigmuscle, martin, jove, bart vullings, " "steven sheehy, tobias nygren, poy, dorian, stephan hohe, mafa_45, mikael eman, james ross," -"stanislav maslovski, david grundberg. " +"stanislav maslovski, david grundberg, pavel andreev, yakov suraev. " "Keep it coming!"; AboutDlg::AboutDlg(SmartWin::Widget* parent) : WidgetFactory<SmartWin::WidgetModalDialog>(parent) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <zou...@us...> - 2008-03-04 23:27:16
|
Revision: 1025 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1025&view=rev Author: zouzou123gen Date: 2008-03-04 15:26:14 -0800 (Tue, 04 Mar 2008) Log Message: ----------- fix problems when tabs were added/removed during tab drag&drop Modified Paths: -------------- dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetTabView.h dcplusplus/trunk/smartwin/source/widgets/WidgetTabView.cpp Modified: dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetTabView.h =================================================================== --- dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetTabView.h 2008-03-04 23:19:17 UTC (rev 1024) +++ dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetTabView.h 2008-03-04 23:26:14 UTC (rev 1025) @@ -97,7 +97,7 @@ Rectangle clientSize; std::vector<IconPtr> icons; int active; - int dragging; + WidgetChildWindow* dragging; SmartUtil::tstring tipText; int findTab(WidgetChildWindow* w); Modified: dcplusplus/trunk/smartwin/source/widgets/WidgetTabView.cpp =================================================================== --- dcplusplus/trunk/smartwin/source/widgets/WidgetTabView.cpp 2008-03-04 23:19:17 UTC (rev 1024) +++ dcplusplus/trunk/smartwin/source/widgets/WidgetTabView.cpp 2008-03-04 23:26:14 UTC (rev 1025) @@ -19,7 +19,7 @@ toggleActive(false), inTab(false), active(-1), - dragging(-1) + dragging(0) { } void WidgetTabView::create(const Seed & cs) { @@ -81,6 +81,9 @@ viewOrder.remove(w); + if(w == dragging) + dragging = 0; + int i = findTab(w); if(i != -1) { delete getTabInfo(i); @@ -291,12 +294,12 @@ } void WidgetTabView::handleLeftMouseDown(const MouseEventResult& mouseEventResult) { - int i = tab->hitTest(mouseEventResult.pos); - if(i != -1) { + TabInfo* ti = getTabInfo(tab->hitTest(mouseEventResult.pos)); + if(ti) { if(mouseEventResult.isShiftPressed) - getTabInfo(i)->w->close(); + ti->w->close(); else { - dragging = i; + dragging = ti->w; ::SetCapture(tab->handle()); } } @@ -305,7 +308,13 @@ void WidgetTabView::handleLeftMouseUp(const MouseEventResult& mouseEventResult) { ::ReleaseCapture(); - if(dragging != -1) { + if(dragging) { + int dragPos = findTab(dragging); + dragging = 0; + + if(dragPos == -1) + return; + int dropPos = tab->hitTest(mouseEventResult.pos); if(dropPos == -1) { @@ -313,30 +322,27 @@ dropPos = tab->size() - 1; } - if(dropPos == dragging) { + if(dropPos == dragPos) { // the tab hasn't moved; handle the click if(dropPos == active) { if(toggleActive) next(); } else setActive(dropPos); - dragging = -1; return; } // save some information about the tab before we erase it - TabInfo* ti = getTabInfo(dragging); - int image = tab->getImage(dragging); + TabInfo* ti = getTabInfo(dragPos); + int image = tab->getImage(dragPos); - tab->erase(dragging); + tab->erase(dragPos); tab->addPage(formatTitle(ti->w->getText()), dropPos, reinterpret_cast<LPARAM>(ti), image); active = tab->getSelectedIndex(); layout(); - - dragging = -1; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-04 23:19:36
|
Revision: 1024 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1024&view=rev Author: arnetheduck Date: 2008-03-04 15:19:17 -0800 (Tue, 04 Mar 2008) Log Message: ----------- language updates, memory fixes Modified Paths: -------------- dcplusplus/trunk/SConstruct dcplusplus/trunk/dcpp/BufferedSocket.cpp dcplusplus/trunk/dcpp/CryptoManager.cpp dcplusplus/trunk/dcpp/Pointer.h dcplusplus/trunk/dcpp/po/de.po dcplusplus/trunk/dcpp/po/fr.po dcplusplus/trunk/dcpp/po/hu.po dcplusplus/trunk/dcpp/po/id.po dcplusplus/trunk/dcpp/po/it.po dcplusplus/trunk/dcpp/po/km.po dcplusplus/trunk/dcpp/po/ko.po dcplusplus/trunk/dcpp/po/pl.po dcplusplus/trunk/dcpp/po/pt.po dcplusplus/trunk/dcpp/po/ro.po dcplusplus/trunk/dcpp/po/sl.po dcplusplus/trunk/dcpp/po/sq.po dcplusplus/trunk/dcpp/po/sv.po dcplusplus/trunk/win32/MainWindow.cpp dcplusplus/trunk/win32/po/fr.po dcplusplus/trunk/win32/po/id.po dcplusplus/trunk/win32/po/it.po dcplusplus/trunk/win32/po/km.po dcplusplus/trunk/win32/po/ko.po dcplusplus/trunk/win32/po/pl.po dcplusplus/trunk/win32/po/pt.po dcplusplus/trunk/win32/po/ro.po dcplusplus/trunk/win32/po/sl.po dcplusplus/trunk/win32/po/sq.po Added Paths: ----------- dcplusplus/trunk/dcpp/po/ar.po dcplusplus/trunk/dcpp/po/bg.po dcplusplus/trunk/dcpp/po/bs.po dcplusplus/trunk/dcpp/po/ca.po dcplusplus/trunk/dcpp/po/cs.po dcplusplus/trunk/dcpp/po/da.po dcplusplus/trunk/dcpp/po/el.po dcplusplus/trunk/dcpp/po/en_GB.po dcplusplus/trunk/dcpp/po/es.po dcplusplus/trunk/dcpp/po/fi.po dcplusplus/trunk/dcpp/po/gl.po dcplusplus/trunk/dcpp/po/he.po dcplusplus/trunk/dcpp/po/hr.po dcplusplus/trunk/dcpp/po/is.po dcplusplus/trunk/dcpp/po/ja.po dcplusplus/trunk/dcpp/po/lt.po dcplusplus/trunk/dcpp/po/lv.po dcplusplus/trunk/dcpp/po/mk.po dcplusplus/trunk/dcpp/po/ms.po dcplusplus/trunk/dcpp/po/nb.po dcplusplus/trunk/dcpp/po/nl.po dcplusplus/trunk/dcpp/po/pt_BR.po dcplusplus/trunk/dcpp/po/ru.po dcplusplus/trunk/dcpp/po/tr.po dcplusplus/trunk/dcpp/po/uk.po dcplusplus/trunk/dcpp/po/zh.po dcplusplus/trunk/dcpp/po/zh_TW.po dcplusplus/trunk/win32/po/ar.po dcplusplus/trunk/win32/po/bg.po dcplusplus/trunk/win32/po/bs.po dcplusplus/trunk/win32/po/ca.po dcplusplus/trunk/win32/po/cs.po dcplusplus/trunk/win32/po/da.po dcplusplus/trunk/win32/po/de.po dcplusplus/trunk/win32/po/el.po dcplusplus/trunk/win32/po/en_GB.po dcplusplus/trunk/win32/po/es.po dcplusplus/trunk/win32/po/fi.po dcplusplus/trunk/win32/po/gl.po dcplusplus/trunk/win32/po/he.po dcplusplus/trunk/win32/po/hr.po dcplusplus/trunk/win32/po/hu.po dcplusplus/trunk/win32/po/is.po dcplusplus/trunk/win32/po/ja.po dcplusplus/trunk/win32/po/lt.po dcplusplus/trunk/win32/po/lv.po dcplusplus/trunk/win32/po/mk.po dcplusplus/trunk/win32/po/nb.po dcplusplus/trunk/win32/po/nl.po dcplusplus/trunk/win32/po/pt_BR.po dcplusplus/trunk/win32/po/ru.po dcplusplus/trunk/win32/po/sv.po dcplusplus/trunk/win32/po/tr.po dcplusplus/trunk/win32/po/uk.po dcplusplus/trunk/win32/po/zh.po dcplusplus/trunk/win32/po/zh_TW.po Modified: dcplusplus/trunk/SConstruct =================================================================== --- dcplusplus/trunk/SConstruct 2008-03-02 20:31:51 UTC (rev 1023) +++ dcplusplus/trunk/SConstruct 2008-03-04 23:19:17 UTC (rev 1024) @@ -17,7 +17,7 @@ ) gcc_flags = { - 'common': ['-ggdb', '-Wall', '-Wextra', '-pipe', '-Wno-unused-parameter', '-Wno-missing-field-initializers', '-fexceptions', '-mthreads'], + 'common': ['-g', '-Wall', '-Wextra', '-pipe', '-Wno-unused-parameter', '-Wno-missing-field-initializers', '-fexceptions', '-mthreads'], 'debug': [], 'release' : ['-O2', '-mwindows'] } Modified: dcplusplus/trunk/dcpp/BufferedSocket.cpp =================================================================== --- dcplusplus/trunk/dcpp/BufferedSocket.cpp 2008-03-02 20:31:51 UTC (rev 1023) +++ dcplusplus/trunk/dcpp/BufferedSocket.cpp 2008-03-04 23:19:17 UTC (rev 1024) @@ -170,7 +170,6 @@ // This socket has been closed... throw SocketException(("Connection closed")); } - size_t used; string::size_type pos = 0; // always uncompressed data string l; @@ -179,20 +178,19 @@ while (left > 0) { switch (mode) { case MODE_ZPIPE: - if (filterIn != NULL){ - const int BufSize = 1024; + if(filterIn) { + const int BUF_SIZE = 1024; // Special to autodetect nmdc connections... string::size_type pos = 0; - boost::scoped_array<uint8_t> buffer (new uint8_t[BufSize]); - size_t in; + boost::scoped_array<char> buffer(new char[BUF_SIZE]); l = line; // decompress all input data and store in l. while (left) { - in = BufSize; - used = left; - bool ret = (*filterIn) ((void *)(&inbuf[0] + total - left), used, &buffer[0], in); + size_t in = BUF_SIZE; + size_t used = left; + bool ret = (*filterIn) (&inbuf[0] + total - left, used, &buffer[0], in); left -= used; - l.append ((const char *)&buffer[0], in); + l.append (&buffer[0], in); // if the stream ends before the data runs out, keep remainder of data in inbuf if (!ret) { bufpos = total-left; @@ -203,7 +201,7 @@ // process all lines while ((pos = l.find(separator)) != string::npos) { fire(BufferedSocketListener::Line(), l.substr(0, pos)); - l.erase (0, pos + 1 /* seperator char */); + l.erase (0, pos + 1 /* separator char */); } // store remainder line = l; Modified: dcplusplus/trunk/dcpp/CryptoManager.cpp =================================================================== --- dcplusplus/trunk/dcpp/CryptoManager.cpp 2008-03-02 20:31:51 UTC (rev 1023) +++ dcplusplus/trunk/dcpp/CryptoManager.cpp 2008-03-04 23:19:17 UTC (rev 1024) @@ -155,8 +155,6 @@ int days = 10; int keylength = 2048; - const char* err = NULL; - #define CHECK(n) if(!(n)) { throw CryptoException(#n); } // Generate key pair @@ -350,7 +348,7 @@ bs.avail_in = sz; bs.avail_out = bufsize; - bs.next_in = (char*)(const_cast<uint8_t*>(is)); + bs.next_in = reinterpret_cast<char*>(const_cast<uint8_t*>(is)); bs.next_out = &buf[0]; int err; Modified: dcplusplus/trunk/dcpp/Pointer.h =================================================================== --- dcplusplus/trunk/dcpp/Pointer.h 2008-03-02 20:31:51 UTC (rev 1023) +++ dcplusplus/trunk/dcpp/Pointer.h 2008-03-04 23:19:17 UTC (rev 1024) @@ -35,8 +35,7 @@ void dec() throw() { dcassert(ref>0); - if ( (Thread::safeDec(ref)) == 0 ) { - //dcdebug("Smart Object at 0x%08x deleted\n", this); + if ( Thread::safeDec(ref) == 0 ) { delete this; } } Added: dcplusplus/trunk/dcpp/po/ar.po =================================================================== --- dcplusplus/trunk/dcpp/po/ar.po (rev 0) +++ dcplusplus/trunk/dcpp/po/ar.po 2008-03-04 23:19:17 UTC (rev 1024) @@ -0,0 +1,419 @@ +# Arabic translations for the DC++ package. +# Copyright (C) 2008 The translators +# This file is distributed under the same license as the DC++ package. +# <jma...@us...>, 2008. +# +msgid "" +msgstr "" +"Project-Id-Version: dcpp\n" +"Report-Msgid-Bugs-To: dcp...@li...\n" +"POT-Creation-Date: 2008-03-04 23:00+0100\n" +"Last-Translator: <jma...@us...>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: plurals=2; plural=(n != 1);\n" + +#: dcpp/Util.cpp:381 +#, c-format, boost-format +msgid "%'lld B" +msgstr "" + +#: dcpp/Util.cpp:343 +#, c-format, boost-format +msgid "%.02f GiB" +msgstr "" + +#: dcpp/Util.cpp:339 +#, c-format, boost-format +msgid "%.02f KiB" +msgstr "" + +#: dcpp/Util.cpp:341 +#, c-format, boost-format +msgid "%.02f MiB" +msgstr "" + +#: dcpp/Util.cpp:347 +#, c-format, boost-format +msgid "%.02f PiB" +msgstr "" + +#: dcpp/Util.cpp:345 +#, c-format, boost-format +msgid "%.02f TiB" +msgstr "" + +#: dcpp/AdcHub.cpp:139 +#, boost-format +msgid "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" +msgstr "" + +#: dcpp/NmdcHub.cpp:281 +#, boost-format +msgid "%1% (Nick unknown)" +msgstr "" + +#: dcpp/HashManager.cpp:767 +#, boost-format +msgid "" +"%1% not shared; calculated CRC32 does not match the one found in SFV file." +msgstr "" + +#: dcpp/QueueManager.cpp:325 +#, boost-format +msgid "%1% renamed to %2%" +msgstr "" + +#: dcpp/AdcHub.cpp:281 +#, boost-format +msgid "%1% was kicked by %2%: %3%" +msgstr "" + +#: dcpp/AdcHub.cpp:284 +#, boost-format +msgid "%1% was kicked: %2%" +msgstr "" + +#: dcpp/DownloadManager.cpp:530 +#, fuzzy, boost-format +msgid "%1%: File not available" +msgstr "الملف غير موجود" + +#: dcpp/Util.cpp:337 +#, c-format, boost-format +msgid "%d B" +msgstr "" + +#: dcpp/Util.cpp:377 +#, c-format, boost-format +msgid "%s B" +msgstr "" + +#: dcpp/QueueManager.cpp:532 +msgid "A file of equal or larger size already exists at the target location" +msgstr "الملف بنفس الحجم أو أكبر موجود حاليا في المكان المقصود" + +#: dcpp/QueueManager.cpp:475 +msgid "A file with a different size already exists in the queue" +msgstr "الملف ذو الحجم المختلف موجود حاليا في الطابور" + +#: dcpp/QueueManager.cpp:478 +msgid "A file with different tth root already exists in the queue" +msgstr "الملف ذو \"تي تي إتش\" مختلف موجود حاليا في الطابور" + +#: dcpp/QueueManager.cpp:442 +msgid "A file with the same hash already exists in your share" +msgstr "ملف بنفس الهاتش موجود حاليا" + +#: dcpp/ConnectionManager.cpp:176 +msgid "All download slots taken" +msgstr "كل وصلات التحميل مأخوذة" + +#: dcpp/DownloadManager.cpp:376 +msgid "CRC32 inconsistency (SFV-Check)" +msgstr "CRC32 تضارب (SFV-فحص)" + +#: dcpp/DownloadManager.cpp:374 +#, fuzzy, boost-format +msgid "CRC32 inconsistency (SFV-Check) (File: %1%)" +msgstr "CRC32 تضارب (SFV-فحص)" + +#: dcpp/ConnectionManager.cpp:376 +msgid "Certificate not trusted, unable to connect" +msgstr "" + +#: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 +#: dcpp/BufferedSocket.cpp:154 +msgid "Connection timeout" +msgstr "لا يمكن التوصيل" + +#: dcpp/DownloadManager.cpp:232 +#, boost-format +msgid "Could not open target file: %1%" +msgstr "" + +#: dcpp/ShareManager.cpp:418 +msgid "Directory already shared" +msgstr "المجلد مستخدم حاليا " + +#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +msgid "Disconnected" +msgstr "انفصل" + +#: dcpp/UploadManager.cpp:450 +#, boost-format +msgid "Disconnected user leaving the hub: %1%" +msgstr "" + +#: dcpp/DCPlusPlus.cpp:103 +msgid "Download Queue" +msgstr "طابور التحميل" + +#: dcpp/ShareManager.cpp:741 +#, boost-format +msgid "" +"Duplicate file will not be shared: %1%%2% (Size: %3% B) Dupe matched " +"against: %4%%5%" +msgstr "" + +#: dcpp/QueueManager.cpp:545 dcpp/QueueManager.cpp:549 +#, boost-format +msgid "Duplicate source: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:456 +#, boost-format +msgid "Error creating hash data file: %1%" +msgstr "" + +#: dcpp/ZUtils.cpp:33 dcpp/ZUtils.cpp:54 dcpp/ZUtils.cpp:76 dcpp/ZUtils.cpp:86 +#: dcpp/BZUtils.cpp:31 dcpp/BZUtils.cpp:52 dcpp/BZUtils.cpp:60 +msgid "Error during compression" +msgstr "خطا خلال عملية الفك" + +#: dcpp/ZUtils.cpp:100 dcpp/ZUtils.cpp:123 dcpp/BZUtils.cpp:72 +#: dcpp/BZUtils.cpp:94 dcpp/BZUtils.cpp:97 dcpp/CryptoManager.cpp:342 +#: dcpp/CryptoManager.cpp:361 dcpp/CryptoManager.cpp:375 +msgid "Error during decompression" +msgstr "خطأ خلال عملية الفك" + +#: dcpp/HashManager.cpp:772 +#, boost-format +msgid "Error hashing %1%: %2%" +msgstr "" + +#: dcpp/HashManager.cpp:118 dcpp/HashManager.cpp:333 +#, boost-format +msgid "Error saving hash data: %1%" +msgstr "" + +#: dcpp/CryptoManager.cpp:226 dcpp/CryptoManager.cpp:230 +#: dcpp/CryptoManager.cpp:235 dcpp/CryptoManager.cpp:239 +msgid "Failed to load certificate file" +msgstr "" + +#: dcpp/CryptoManager.cpp:244 dcpp/CryptoManager.cpp:248 +#: dcpp/CryptoManager.cpp:253 dcpp/CryptoManager.cpp:257 +msgid "Failed to load private key" +msgstr "" + +#: dcpp/AdcHub.cpp:206 +msgid "Failed to negotiate base protocol" +msgstr "" + +#: dcpp/Socket.cpp:408 +msgid "" +"Failed to set up the socks server for UDP relay (check socks address and " +"port)" +msgstr "(افحص عنوان السوكس و البورت) UDP فشل في عمل سوكس سيرفر لحدوث تبادل في " + +#: dcpp/ShareManager.cpp:776 +#, fuzzy, boost-format +msgid "File list refresh failed: %1%" +msgstr "تجديد قائمة الملفات انتهت" + +#: dcpp/ShareManager.cpp:820 +msgid "File list refresh finished" +msgstr "تجديد قائمة الملفات انتهت" + +#: dcpp/ShareManager.cpp:756 +msgid "" +"File list refresh in progress, please wait for it to finish before trying to " +"refresh again" +msgstr "" + +#: dcpp/ShareManager.cpp:798 +msgid "File list refresh initiated" +msgstr "تجديد قائمة الملفات بدأت" + +#: dcpp/DirectoryListing.cpp:102 +msgid "File not available" +msgstr "الملف غير موجود" + +#: dcpp/HashManager.cpp:89 +#, boost-format +msgid "Finished hashing: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:87 +#, boost-format +msgid "Finished hashing: %1% (%2%/s)" +msgstr "" + +#: dcpp/DownloadManager.cpp:308 +msgid "Full tree does not match TTH root" +msgstr "السلسلة المحملة لا تتوافق مع \"تي تي إتش\" الرئيسي" + +#: dcpp/CryptoManager.cpp:219 +msgid "Generated new TLS certificate" +msgstr "" + +#: dcpp/DCPlusPlus.cpp:97 +msgid "Hash database" +msgstr "تحديث قاعدة البيانات" + +#: dcpp/HashManager.cpp:677 +msgid "Hash database rebuilt" +msgstr "تحديث قائمة البيانات انتهت" + +#: dcpp/HashManager.cpp:73 dcpp/HashManager.cpp:277 +#, boost-format +msgid "Hashing failed: %1%" +msgstr "" + +#: dcpp/AdcHub.cpp:212 +msgid "" +"Hub probably uses an old version of ADC, please encourage the owner to " +"upgrade" +msgstr "" + +#: dcpp/DownloadManager.cpp:220 +msgid "Invalid size" +msgstr "" + +#: dcpp/QueueManager.cpp:515 dcpp/QueueManager.cpp:523 +msgid "" +"Invalid target file (missing directory, check default download directory " +"setting)" +msgstr "الملف المراد خاطيء - مجلد مفقود ، تفقد خواص المجلد للتحميل" + +#: dcpp/FavoriteManager.cpp:438 +msgid "Kick user(s)" +msgstr "فصل المستخدم " + +#: dcpp/ConnectionManager.cpp:230 +#, boost-format +msgid "Listening socket failed (you need to restart %1%): %2%" +msgstr "" + +#: dcpp/BufferedSocket.cpp:261 +msgid "Maximum command length exceeded" +msgstr "" + +#: dcpp/DownloadManager.cpp:280 +msgid "More data was sent than was expected" +msgstr "معلومات أكثر قد أرسلت ، على غير المتوقع" + +#: dcpp/ShareManager.cpp:403 +msgid "No directory specified" +msgstr "لم يتم تحديد مجلد معين" + +#: dcpp/DownloadManager.cpp:419 +msgid "No slots available" +msgstr "لا توجد وصلة خالية" + +#: dcpp/AdcHub.cpp:576 +#, boost-format +msgid "Not listening for connections - please restart %1%" +msgstr "" + +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 +#: dcpp/SearchManager.cpp:331 +msgid "Offline" +msgstr "غير متصل" + +#: dcpp/FavoriteManager.cpp:442 +msgid "Redirect user(s)" +msgstr "تحويل المستخدمين" + +#: dcpp/ShareManager.cpp:421 +msgid "Remove all subdirectories before adding this one" +msgstr "حذف كل المجلدات الثانوية قبل إضافة هذا" + +#: dcpp/DownloadManager.cpp:225 +#, fuzzy +msgid "Response does not match request" +msgstr "السلسلة المحملة لا تتوافق مع \"تي تي إتش\" الرئيسي" + +#: dcpp/DCPlusPlus.cpp:100 +msgid "Shared Files" +msgstr "الملفات المساهم فيها" + +#: dcpp/Socket.cpp:269 dcpp/Socket.cpp:273 +msgid "Socks server authentication failed (bad login / password?)" +msgstr "(نظام التعريف بالهوية للسوكس فشلت (أسم غير صحيح / كلمة السر" + +#: dcpp/CryptoManager.cpp:221 +#, boost-format +msgid "TLS disabled, failed to generate certificate: %1%" +msgstr "" + +#: dcpp/CryptoManager.cpp:211 +msgid "TLS disabled, no certificate file set" +msgstr "" + +#: dcpp/QueueManager.cpp:510 dcpp/QueueManager.cpp:519 +msgid "Target filename too long" +msgstr "الملف المقصود كبير جدا" + +#: dcpp/QueueManager.cpp:798 +msgid "Target removed" +msgstr "" + +#: dcpp/Socket.cpp:255 +msgid "The socks server doesn't support login / password authentication" +msgstr "هذا السوكس لا يدعم التعريف بالهوية لأسم / و كلمة السر" + +#: dcpp/Socket.cpp:162 dcpp/Socket.cpp:173 dcpp/Socket.cpp:206 +#: dcpp/Socket.cpp:210 dcpp/Socket.cpp:237 dcpp/Socket.cpp:252 +msgid "The socks server failed establish a connection" +msgstr "لقد فشل السوكس في عمل الإتصال" + +#: dcpp/Socket.cpp:241 +msgid "The socks server requires authentication" +msgstr "هذا السوكس يحتاج إلى العريف بالهوية" + +#: dcpp/ShareManager.cpp:407 +msgid "The temporary download directory cannot be shared" +msgstr "المجلد الموقت للتحميل لا يمكن استخدامه" + +#: dcpp/QueueManager.cpp:465 +msgid "This file is already queued" +msgstr "" + +#: dcpp/Thread.cpp:34 dcpp/Thread.cpp:42 +msgid "Unable to create thread" +msgstr "عدم القدرة على خلق الوصلة" + +#: dcpp/QueueManager.cpp:995 +#, boost-format +msgid "Unable to open filelist: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:131 +#, fuzzy +msgid "Unable to read hash data file" +msgstr "عدم القدرة على خلق الوصلة" + +#: dcpp/QueueManager.cpp:327 +#, fuzzy, boost-format +msgid "Unable to rename %1%: %2%" +msgstr "عدم القدرة على خلق الوصلة" + +#: dcpp/UploadManager.cpp:149 +#, boost-format +msgid "Unable to send file %1%: %2%" +msgstr "" + +#: dcpp/Socket.cpp:54 +#, c-format, boost-format +msgid "Unknown error: 0x%1$x" +msgstr "" + +#: dcpp/ShareManager.cpp:426 dcpp/ShareManager.cpp:468 +msgid "Virtual directory name already exists" +msgstr "اسم مجلد وهمي موجود حاليا" + +#: dcpp/QueueManager.cpp:412 dcpp/QueueManager.cpp:436 +msgid "You're trying to download from yourself!" +msgstr "!أنت تحاول التحميل من عند نفسك" + +#: dcpp/SettingsManager.cpp:156 +msgid "downloaded from" +msgstr "" + +#: dcpp/SettingsManager.cpp:157 +msgid "uploaded to" +msgstr "" Added: dcplusplus/trunk/dcpp/po/bg.po =================================================================== --- dcplusplus/trunk/dcpp/po/bg.po (rev 0) +++ dcplusplus/trunk/dcpp/po/bg.po 2008-03-04 23:19:17 UTC (rev 1024) @@ -0,0 +1,425 @@ +# Bulgarian translations for the DC++ package. +# Copyright (C) 2008 The translators +# This file is distributed under the same license as the DC++ package. +# <gre...@us...>, 2008. +# +msgid "" +msgstr "" +"Project-Id-Version: dcpp\n" +"Report-Msgid-Bugs-To: dcp...@li...\n" +"POT-Creation-Date: 2008-03-04 23:00+0100\n" +"Last-Translator: <gre...@us...>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: plurals=2; plural=(n != 1);\n" + +#: dcpp/Util.cpp:381 +#, c-format, boost-format +msgid "%'lld B" +msgstr "" + +#: dcpp/Util.cpp:343 +#, c-format, boost-format +msgid "%.02f GiB" +msgstr "" + +#: dcpp/Util.cpp:339 +#, c-format, boost-format +msgid "%.02f KiB" +msgstr "" + +#: dcpp/Util.cpp:341 +#, c-format, boost-format +msgid "%.02f MiB" +msgstr "" + +#: dcpp/Util.cpp:347 +#, c-format, boost-format +msgid "%.02f PiB" +msgstr "" + +#: dcpp/Util.cpp:345 +#, c-format, boost-format +msgid "%.02f TiB" +msgstr "" + +#: dcpp/AdcHub.cpp:139 +#, boost-format +msgid "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" +msgstr "" + +#: dcpp/NmdcHub.cpp:281 +#, boost-format +msgid "%1% (Nick unknown)" +msgstr "" + +#: dcpp/HashManager.cpp:767 +#, boost-format +msgid "" +"%1% not shared; calculated CRC32 does not match the one found in SFV file." +msgstr "" + +#: dcpp/QueueManager.cpp:325 +#, boost-format +msgid "%1% renamed to %2%" +msgstr "" + +#: dcpp/AdcHub.cpp:281 +#, boost-format +msgid "%1% was kicked by %2%: %3%" +msgstr "" + +#: dcpp/AdcHub.cpp:284 +#, boost-format +msgid "%1% was kicked: %2%" +msgstr "" + +#: dcpp/DownloadManager.cpp:530 +#, fuzzy, boost-format +msgid "%1%: File not available" +msgstr "Файлът не е достъпен." + +#: dcpp/Util.cpp:337 +#, c-format, boost-format +msgid "%d B" +msgstr "" + +#: dcpp/Util.cpp:377 +#, c-format, boost-format +msgid "%s B" +msgstr "" + +#: dcpp/QueueManager.cpp:532 +msgid "A file of equal or larger size already exists at the target location" +msgstr "" +"Файл със същата или по-голяма големина вече съществува в мястото - цел!" + +#: dcpp/QueueManager.cpp:475 +msgid "A file with a different size already exists in the queue" +msgstr "Файл с различна големина вече съществува в опашката." + +#: dcpp/QueueManager.cpp:478 +msgid "A file with different tth root already exists in the queue" +msgstr "Файл с различен TTH root вече съществува в опашката." + +#: dcpp/QueueManager.cpp:442 +msgid "A file with the same hash already exists in your share" +msgstr "Файл със същия хеш вече съществува в споделеното от вас." + +#: dcpp/ConnectionManager.cpp:176 +msgid "All download slots taken" +msgstr "Всички даунлоад-места са заети!" + +#: dcpp/DownloadManager.cpp:376 +msgid "CRC32 inconsistency (SFV-Check)" +msgstr "CRC32 грешка (SFV-Проверка)" + +#: dcpp/DownloadManager.cpp:374 +#, fuzzy, boost-format +msgid "CRC32 inconsistency (SFV-Check) (File: %1%)" +msgstr "CRC32 грешка (SFV-Проверка)" + +#: dcpp/ConnectionManager.cpp:376 +msgid "Certificate not trusted, unable to connect" +msgstr "" + +#: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 +#: dcpp/BufferedSocket.cpp:154 +msgid "Connection timeout" +msgstr "Времето за свързване изтече!" + +#: dcpp/DownloadManager.cpp:232 +#, boost-format +msgid "Could not open target file: %1%" +msgstr "" + +#: dcpp/ShareManager.cpp:418 +msgid "Directory already shared" +msgstr "Папката вече е споделена!" + +#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +msgid "Disconnected" +msgstr "Изключен/Прекъснат" + +#: dcpp/UploadManager.cpp:450 +#, boost-format +msgid "Disconnected user leaving the hub: %1%" +msgstr "" + +#: dcpp/DCPlusPlus.cpp:103 +msgid "Download Queue" +msgstr "Опашка за сваляните файлове" + +#: dcpp/ShareManager.cpp:741 +#, boost-format +msgid "" +"Duplicate file will not be shared: %1%%2% (Size: %3% B) Dupe matched " +"against: %4%%5%" +msgstr "" + +#: dcpp/QueueManager.cpp:545 dcpp/QueueManager.cpp:549 +#, boost-format +msgid "Duplicate source: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:456 +#, fuzzy, boost-format +msgid "Error creating hash data file: %1%" +msgstr "Грешка при разчитането на файла с хешовете!" + +#: dcpp/ZUtils.cpp:33 dcpp/ZUtils.cpp:54 dcpp/ZUtils.cpp:76 dcpp/ZUtils.cpp:86 +#: dcpp/BZUtils.cpp:31 dcpp/BZUtils.cpp:52 dcpp/BZUtils.cpp:60 +msgid "Error during compression" +msgstr "Грешка при компресирането." + +#: dcpp/ZUtils.cpp:100 dcpp/ZUtils.cpp:123 dcpp/BZUtils.cpp:72 +#: dcpp/BZUtils.cpp:94 dcpp/BZUtils.cpp:97 dcpp/CryptoManager.cpp:342 +#: dcpp/CryptoManager.cpp:361 dcpp/CryptoManager.cpp:375 +msgid "Error during decompression" +msgstr "Грешка при декомпресия" + +#: dcpp/HashManager.cpp:772 +#, boost-format +msgid "Error hashing %1%: %2%" +msgstr "" + +#: dcpp/HashManager.cpp:118 dcpp/HashManager.cpp:333 +#, boost-format +msgid "Error saving hash data: %1%" +msgstr "" + +#: dcpp/CryptoManager.cpp:226 dcpp/CryptoManager.cpp:230 +#: dcpp/CryptoManager.cpp:235 dcpp/CryptoManager.cpp:239 +msgid "Failed to load certificate file" +msgstr "" + +#: dcpp/CryptoManager.cpp:244 dcpp/CryptoManager.cpp:248 +#: dcpp/CryptoManager.cpp:253 dcpp/CryptoManager.cpp:257 +msgid "Failed to load private key" +msgstr "" + +#: dcpp/AdcHub.cpp:206 +msgid "Failed to negotiate base protocol" +msgstr "" + +#: dcpp/Socket.cpp:408 +msgid "" +"Failed to set up the socks server for UDP relay (check socks address and " +"port)" +msgstr "" +"Грешка при настройването на Socks сървъра за UDP relay (Провери адреса и " +"порта на сървъра!)" + +#: dcpp/ShareManager.cpp:776 +#, fuzzy, boost-format +msgid "File list refresh failed: %1%" +msgstr "Опресняването на листата с файлове завърши." + +#: dcpp/ShareManager.cpp:820 +msgid "File list refresh finished" +msgstr "Опресняването на листата с файлове завърши." + +#: dcpp/ShareManager.cpp:756 +msgid "" +"File list refresh in progress, please wait for it to finish before trying to " +"refresh again" +msgstr "" +"В момента тече опресняване на листата с файловете, моля изчакайте преди да " +"изискате ново опресняване." + +#: dcpp/ShareManager.cpp:798 +msgid "File list refresh initiated" +msgstr "Започва опресняване на листата с файлове." + +#: dcpp/DirectoryListing.cpp:102 +msgid "File not available" +msgstr "Файлът не е достъпен." + +#: dcpp/HashManager.cpp:89 +#, boost-format +msgid "Finished hashing: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:87 +#, boost-format +msgid "Finished hashing: %1% (%2%/s)" +msgstr "" + +#: dcpp/DownloadManager.cpp:308 +msgid "Full tree does not match TTH root" +msgstr "Файловото дърво не съвпада с този TTH псевдоним" + +#: dcpp/CryptoManager.cpp:219 +msgid "Generated new TLS certificate" +msgstr "" + +#: dcpp/DCPlusPlus.cpp:97 +msgid "Hash database" +msgstr "База-Данни от хешове" + +#: dcpp/HashManager.cpp:677 +msgid "Hash database rebuilt" +msgstr "Базата-Данни с хешовете построена наново." + +#: dcpp/HashManager.cpp:73 dcpp/HashManager.cpp:277 +#, boost-format +msgid "Hashing failed: %1%" +msgstr "" + +#: dcpp/AdcHub.cpp:212 +msgid "" +"Hub probably uses an old version of ADC, please encourage the owner to " +"upgrade" +msgstr "" + +#: dcpp/DownloadManager.cpp:220 +msgid "Invalid size" +msgstr "" + +#: dcpp/QueueManager.cpp:515 dcpp/QueueManager.cpp:523 +msgid "" +"Invalid target file (missing directory, check default download directory " +"setting)" +msgstr "" +"Невалиден файл-цел (липсваща папка, провери папката за сваляния по " +"подразбиране)" + +#: dcpp/FavoriteManager.cpp:438 +msgid "Kick user(s)" +msgstr "Изхвърли потребител(и)" + +#: dcpp/ConnectionManager.cpp:230 +#, boost-format +msgid "Listening socket failed (you need to restart %1%): %2%" +msgstr "" + +#: dcpp/BufferedSocket.cpp:261 +msgid "Maximum command length exceeded" +msgstr "" + +#: dcpp/DownloadManager.cpp:280 +msgid "More data was sent than was expected" +msgstr "Повечето данни бяха изпратени, отколкото се очакваше" + +#: dcpp/ShareManager.cpp:403 +msgid "No directory specified" +msgstr "Не е определена папка" + +#: dcpp/DownloadManager.cpp:419 +msgid "No slots available" +msgstr "Няма слотове на разположение" + +#: dcpp/AdcHub.cpp:576 +#, boost-format +msgid "Not listening for connections - please restart %1%" +msgstr "" + +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 +#: dcpp/SearchManager.cpp:331 +msgid "Offline" +msgstr "Офлайн" + +#: dcpp/FavoriteManager.cpp:442 +msgid "Redirect user(s)" +msgstr "Пренасочи потребител(и)" + +#: dcpp/ShareManager.cpp:421 +msgid "Remove all subdirectories before adding this one" +msgstr "Премахни всички подпапки преди да добавиш тази" + +#: dcpp/DownloadManager.cpp:225 +#, fuzzy +msgid "Response does not match request" +msgstr "Файловото дърво не съвпада с този TTH псевдоним" + +#: dcpp/DCPlusPlus.cpp:100 +msgid "Shared Files" +msgstr "Споделени файлове" + +#: dcpp/Socket.cpp:269 dcpp/Socket.cpp:273 +msgid "Socks server authentication failed (bad login / password?)" +msgstr "Грешка при свързването със Socks сървъра. (грешни име/парола?)" + +#: dcpp/CryptoManager.cpp:221 +#, boost-format +msgid "TLS disabled, failed to generate certificate: %1%" +msgstr "" + +#: dcpp/CryptoManager.cpp:211 +msgid "TLS disabled, no certificate file set" +msgstr "" + +#: dcpp/QueueManager.cpp:510 dcpp/QueueManager.cpp:519 +msgid "Target filename too long" +msgstr "Прекалено дълго име на файла-цел" + +#: dcpp/QueueManager.cpp:798 +msgid "Target removed" +msgstr "" + +#: dcpp/Socket.cpp:255 +msgid "The socks server doesn't support login / password authentication" +msgstr "Socks сървъра не поддържа автентикация с име и парола." + +#: dcpp/Socket.cpp:162 dcpp/Socket.cpp:173 dcpp/Socket.cpp:206 +#: dcpp/Socket.cpp:210 dcpp/Socket.cpp:237 dcpp/Socket.cpp:252 +msgid "The socks server failed establish a connection" +msgstr "Socks сървъра не можа да установи връзка." + +#: dcpp/Socket.cpp:241 +msgid "The socks server requires authentication" +msgstr "Socks сървъра изисква автентикация (име и парола)." + +#: dcpp/ShareManager.cpp:407 +msgid "The temporary download directory cannot be shared" +msgstr "Временната директория не може да бъде споделяна!" + +#: dcpp/QueueManager.cpp:465 +msgid "This file is already queued" +msgstr "" + +#: dcpp/Thread.cpp:34 dcpp/Thread.cpp:42 +msgid "Unable to create thread" +msgstr "Грешка при thread-създаването" + +#: dcpp/QueueManager.cpp:995 +#, boost-format +msgid "Unable to open filelist: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:131 +msgid "Unable to read hash data file" +msgstr "Грешка при разчитането на файла с хешовете!" + +#: dcpp/QueueManager.cpp:327 +#, fuzzy, boost-format +msgid "Unable to rename %1%: %2%" +msgstr "Грешка при thread-създаването" + +#: dcpp/UploadManager.cpp:149 +#, boost-format +msgid "Unable to send file %1%: %2%" +msgstr "" + +#: dcpp/Socket.cpp:54 +#, c-format, boost-format +msgid "Unknown error: 0x%1$x" +msgstr "" + +#: dcpp/ShareManager.cpp:426 dcpp/ShareManager.cpp:468 +msgid "Virtual directory name already exists" +msgstr "Съществува такова име на вирт. папка" + +#: dcpp/QueueManager.cpp:412 dcpp/QueueManager.cpp:436 +msgid "You're trying to download from yourself!" +msgstr "Пробваш се да сваляш от самия себе си файлове!" + +#: dcpp/SettingsManager.cpp:156 +msgid "downloaded from" +msgstr "" + +#: dcpp/SettingsManager.cpp:157 +msgid "uploaded to" +msgstr "" Added: dcplusplus/trunk/dcpp/po/bs.po =================================================================== --- dcplusplus/trunk/dcpp/po/bs.po (rev 0) +++ dcplusplus/trunk/dcpp/po/bs.po 2008-03-04 23:19:17 UTC (rev 1024) @@ -0,0 +1,423 @@ +# Bosnian translations for the DC++ package. +# Copyright (C) 2008 The translators +# This file is distributed under the same license as the DC++ package. +# <mi...@us...>, 2008. +# +msgid "" +msgstr "" +"Project-Id-Version: dcpp\n" +"Report-Msgid-Bugs-To: dcp...@li...\n" +"POT-Creation-Date: 2008-03-04 23:00+0100\n" +"Last-Translator: <mi...@us...>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: plurals=2; plural=(n != 1);\n" + +#: dcpp/Util.cpp:381 +#, c-format, boost-format +msgid "%'lld B" +msgstr "" + +#: dcpp/Util.cpp:343 +#, c-format, boost-format +msgid "%.02f GiB" +msgstr "" + +#: dcpp/Util.cpp:339 +#, c-format, boost-format +msgid "%.02f KiB" +msgstr "" + +#: dcpp/Util.cpp:341 +#, c-format, boost-format +msgid "%.02f MiB" +msgstr "" + +#: dcpp/Util.cpp:347 +#, c-format, boost-format +msgid "%.02f PiB" +msgstr "" + +#: dcpp/Util.cpp:345 +#, c-format, boost-format +msgid "%.02f TiB" +msgstr "" + +#: dcpp/AdcHub.cpp:139 +#, boost-format +msgid "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" +msgstr "" + +#: dcpp/NmdcHub.cpp:281 +#, boost-format +msgid "%1% (Nick unknown)" +msgstr "" + +#: dcpp/HashManager.cpp:767 +#, boost-format +msgid "" +"%1% not shared; calculated CRC32 does not match the one found in SFV file." +msgstr "" + +#: dcpp/QueueManager.cpp:325 +#, boost-format +msgid "%1% renamed to %2%" +msgstr "" + +#: dcpp/AdcHub.cpp:281 +#, boost-format +msgid "%1% was kicked by %2%: %3%" +msgstr "" + +#: dcpp/AdcHub.cpp:284 +#, boost-format +msgid "%1% was kicked: %2%" +msgstr "" + +#: dcpp/DownloadManager.cpp:530 +#, fuzzy, boost-format +msgid "%1%: File not available" +msgstr "Fajl nije dostupan" + +#: dcpp/Util.cpp:337 +#, c-format, boost-format +msgid "%d B" +msgstr "" + +#: dcpp/Util.cpp:377 +#, c-format, boost-format +msgid "%s B" +msgstr "" + +#: dcpp/QueueManager.cpp:532 +msgid "A file of equal or larger size already exists at the target location" +msgstr "Isti ili veci fajl vec postoji na ciljanoj lokaciji" + +#: dcpp/QueueManager.cpp:475 +msgid "A file with a different size already exists in the queue" +msgstr "Fajl sa drugacijom velicinom vec postoji u listi cekanja" + +#: dcpp/QueueManager.cpp:478 +msgid "A file with different tth root already exists in the queue" +msgstr "Fajl sa drugacijom TTH kodom vec postoji u listi cekanja" + +#: dcpp/QueueManager.cpp:442 +msgid "A file with the same hash already exists in your share" +msgstr "Vec postoji fajl kod tebe sa istim TTH kljucem" + +#: dcpp/ConnectionManager.cpp:176 +msgid "All download slots taken" +msgstr "Svi Slotovi za Download su zauzeti" + +#: dcpp/DownloadManager.cpp:376 +msgid "CRC32 inconsistency (SFV-Check)" +msgstr "CRC32 Neskladnost (SFV-Provjera)" + +#: dcpp/DownloadManager.cpp:374 +#, fuzzy, boost-format +msgid "CRC32 inconsistency (SFV-Check) (File: %1%)" +msgstr "CRC32 Neskladnost (SFV-Provjera)" + +#: dcpp/ConnectionManager.cpp:376 +msgid "Certificate not trusted, unable to connect" +msgstr "" + +#: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 +#: dcpp/BufferedSocket.cpp:154 +msgid "Connection timeout" +msgstr "Vrijeme za vezu isteklo" + +#: dcpp/DownloadManager.cpp:232 +#, boost-format +msgid "Could not open target file: %1%" +msgstr "" + +#: dcpp/ShareManager.cpp:418 +msgid "Directory already shared" +msgstr "Sadrzaj se vec dijeli" + +#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +msgid "Disconnected" +msgstr "Iskljucen" + +#: dcpp/UploadManager.cpp:450 +#, boost-format +msgid "Disconnected user leaving the hub: %1%" +msgstr "" + +#: dcpp/DCPlusPlus.cpp:103 +msgid "Download Queue" +msgstr "Lista za Download" + +#: dcpp/ShareManager.cpp:741 +#, boost-format +msgid "" +"Duplicate file will not be shared: %1%%2% (Size: %3% B) Dupe matched " +"against: %4%%5%" +msgstr "" + +#: dcpp/QueueManager.cpp:545 dcpp/QueueManager.cpp:549 +#, boost-format +msgid "Duplicate source: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:456 +#, boost-format +msgid "Error creating hash data file: %1%" +msgstr "" + +#: dcpp/ZUtils.cpp:33 dcpp/ZUtils.cpp:54 dcpp/ZUtils.cpp:76 dcpp/ZUtils.cpp:86 +#: dcpp/BZUtils.cpp:31 dcpp/BZUtils.cpp:52 dcpp/BZUtils.cpp:60 +msgid "Error during compression" +msgstr "Greska pri kompresiji" + +#: dcpp/ZUtils.cpp:100 dcpp/ZUtils.cpp:123 dcpp/BZUtils.cpp:72 +#: dcpp/BZUtils.cpp:94 dcpp/BZUtils.cpp:97 dcpp/CryptoManager.cpp:342 +#: dcpp/CryptoManager.cpp:361 dcpp/CryptoManager.cpp:375 +msgid "Error during decompression" +msgstr "Greska pri Dekompresiji" + +#: dcpp/HashManager.cpp:772 +#, boost-format +msgid "Error hashing %1%: %2%" +msgstr "" + +#: dcpp/HashManager.cpp:118 dcpp/HashManager.cpp:333 +#, boost-format +msgid "Error saving hash data: %1%" +msgstr "" + +#: dcpp/CryptoManager.cpp:226 dcpp/CryptoManager.cpp:230 +#: dcpp/CryptoManager.cpp:235 dcpp/CryptoManager.cpp:239 +msgid "Failed to load certificate file" +msgstr "" + +#: dcpp/CryptoManager.cpp:244 dcpp/CryptoManager.cpp:248 +#: dcpp/CryptoManager.cpp:253 dcpp/CryptoManager.cpp:257 +msgid "Failed to load private key" +msgstr "" + +#: dcpp/AdcHub.cpp:206 +msgid "Failed to negotiate base protocol" +msgstr "" + +#: dcpp/Socket.cpp:408 +msgid "" +"Failed to set up the socks server for UDP relay (check socks address and " +"port)" +msgstr "" +"Socks Server nemoze UDP Relay namjestiti (provjerite Adresu i Port Servera)" + +#: dcpp/ShareManager.cpp:776 +#, fuzzy, boost-format +msgid "File list refresh failed: %1%" +msgstr "Zavrseno obnavljanje fajlliste" + +#: dcpp/ShareManager.cpp:820 +msgid "File list refresh finished" +msgstr "Zavrseno obnavljanje fajlliste" + +#: dcpp/ShareManager.cpp:756 +msgid "" +"File list refresh in progress, please wait for it to finish before trying to " +"refresh again" +msgstr "" + +#: dcpp/ShareManager.cpp:798 +msgid "File list refresh initiated" +msgstr "Poceto obnavljanje fajlliste" + +#: dcpp/DirectoryListing.cpp:102 +msgid "File not available" +msgstr "Fajl nije dostupan" + +#: dcpp/HashManager.cpp:89 +#, boost-format +msgid "Finished hashing: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:87 +#, boost-format +msgid "Finished hashing: %1% (%2%/s)" +msgstr "" + +#: dcpp/DownloadManager.cpp:308 +msgid "Full tree does not match TTH root" +msgstr "Ucitano se ne slaze s TTH kodom" + +#: dcpp/CryptoManager.cpp:219 +msgid "Generated new TLS certificate" +msgstr "" + +#: dcpp/DCPlusPlus.cpp:97 +msgid "Hash database" +msgstr "Indeks fajova" + +#: dcpp/HashManager.cpp:677 +msgid "Hash database rebuilt" +msgstr "Obnovi indeks fajlova" + +#: dcpp/HashManager.cpp:73 dcpp/HashManager.cpp:277 +#, boost-format +msgid "Hashing failed: %1%" +msgstr "" + +#: dcpp/AdcHub.cpp:212 +msgid "" +"Hub probably uses an old version of ADC, please encourage the owner to " +"upgrade" +msgstr "" + +#: dcpp/DownloadManager.cpp:220 +msgid "Invalid size" +msgstr "" + +#: dcpp/QueueManager.cpp:515 dcpp/QueueManager.cpp:523 +msgid "" +"Invalid target file (missing directory, check default download directory " +"setting)" +msgstr "" +"Nevazeci trazeni fajl (Datoteka Nedostaje, provjerite u podesavanju " +"Standardnu Download datoteku)" + +#: dcpp/FavoriteManager.cpp:438 +msgid "Kick user(s)" +msgstr "Izbaciti korisnika" + +#: dcpp/ConnectionManager.cpp:230 +#, boost-format +msgid "Listening socket failed (you need to restart %1%): %2%" +msgstr "" + +#: dcpp/BufferedSocket.cpp:261 +msgid "Maximum command length exceeded" +msgstr "" + +#: dcpp/DownloadManager.cpp:280 +msgid "More data was sent than was expected" +msgstr "Vise podataka je poslato nego sto se zahtijevalo" + +#: dcpp/ShareManager.cpp:403 +msgid "No directory specified" +msgstr "Nije naveden direktorijum" + +#: dcpp/DownloadManager.cpp:419 +msgid "No slots available" +msgstr "Nema slobodnih slotova" + +#: dcpp/AdcHub.cpp:576 +#, boost-format +msgid "Not listening for connections - please restart %1%" +msgstr "" + +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 +#: dcpp/SearchManager.cpp:331 +msgid "Offline" +msgstr "Iskljucen" + +#: dcpp/FavoriteManager.cpp:442 +msgid "Redirect user(s)" +msgstr "Preusmeravanje korisnika" + +#: dcpp/ShareManager.cpp:421 +msgid "Remove all subdirectories before adding this one" +msgstr "Skloniti sve poddirektorijume prije dodavanja ovog" + +#: dcpp/DownloadManager.cpp:225 +#, fuzzy +msgid "Response does not match request" +msgstr "Ucitano se ne slaze s TTH kodom" + +#: dcpp/DCPlusPlus.cpp:100 +msgid "Shared Files" +msgstr "Dijeljeni fajlovi" + +#: dcpp/Socket.cpp:269 dcpp/Socket.cpp:273 +msgid "Socks server authentication failed (bad login / password?)" +msgstr "" +"Socks Server Autorizacija nije uspjela (lose korisnicko ime / lozinka?)" + +#: dcpp/CryptoManager.cpp:221 +#, boost-format +msgid "TLS disabled, failed to generate certificate: %1%" +msgstr "" + +#: dcpp/CryptoManager.cpp:211 +msgid "TLS disabled, no certificate file set" +msgstr "" + +#: dcpp/QueueManager.cpp:510 dcpp/QueueManager.cpp:519 +msgid "Target filename too long" +msgstr "Trazeno ime je predugo" + +#: dcpp/QueueManager.cpp:798 +msgid "Target removed" +msgstr "" + +#: dcpp/Socket.cpp:255 +msgid "The socks server doesn't support login / password authentication" +msgstr "Socks Server Autorizacija nije podrzana / lozinka autenticna" + +#: dcpp/Socket.cpp:162 dcpp/Socket.cpp:173 dcpp/Socket.cpp:206 +#: dcpp/Socket.cpp:210 dcpp/Socket.cpp:237 dcpp/Socket.cpp:252 +msgid "The socks server failed establish a connection" +msgstr "Socks Server nemoze uspostaviti vezu" + +#: dcpp/Socket.cpp:241 +msgid "The socks server requires authentication" +msgstr "Socks Server potrazuje Autorizaciju" + +#: dcpp/ShareManager.cpp:407 +msgid "The temporary download directory cannot be shared" +msgstr "Temporary Download Direktorij se nemoze otvoriti" + +#: dcpp/QueueManager.cpp:465 +msgid "This file is already queued" +msgstr "" + +#: dcpp/Thread.cpp:34 dcpp/Thread.cpp:42 +msgid "Unable to create thread" +msgstr "Nemoguce napraviti thread" + +#: dcpp/QueueManager.cpp:995 +#, boost-format +msgid "Unable to open filelist: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:131 +#, fuzzy +msgid "Unable to read hash data file" +msgstr "Nemoguce napraviti thread" + +#: dcpp/QueueManager.cpp:327 +#, fuzzy, boost-format +msgid "Unable to rename %1%: %2%" +msgstr "Nemoguce napraviti thread" + +#: dcpp/UploadManager.cpp:149 +#, boost-format +msgid "Unable to send file %1%: %2%" +msgstr "" + +#: dcpp/Socket.cpp:54 +#, c-format, boost-format +msgid "Unknown error: 0x%1$x" +msgstr "" + +#: dcpp/ShareManager.cpp:426 dcpp/ShareManager.cpp:468 +msgid "Virtual directory name already exists" +msgstr "Virtualna mapa s tim imenom vec postoji" + +#: dcpp/QueueManager.cpp:412 dcpp/QueueManager.cpp:436 +msgid "You're trying to download from yourself!" +msgstr "Pokusavas da skines od sebe!" + +#: dcpp/SettingsManager.cpp:156 +msgid "downloaded from" +msgstr "" + +#: dcpp/SettingsManager.cpp:157 +msgid "uploaded to" +msgstr "" Added: dcplusplus/trunk/dcpp/po/ca.po =================================================================== --- dcplusplus/trunk/dcpp/po/ca.po (rev 0) +++ dcplusplus/trunk/dcpp/po/ca.po 2008-03-04 23:19:17 UTC (rev 1024) @@ -0,0 +1,425 @@ +# Catalan translations for the DC++ package. +# Copyright (C) 2008 The translators +# This file is distributed under the same license as the DC++ package. +# <su...@us...>, 2008. +# +msgid "" +msgstr "" +"Project-Id-Version: dcpp\n" +"Report-Msgid-Bugs-To: dcp...@li...\n" +"POT-Creation-Date: 2008-03-04 23:00+0100\n" +"Last-Translator: <su...@us...>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: plurals=2; plural=(n != 1);\n" + +#: dcpp/Util.cpp:381 +#, c-format, boost-format +msgid "%'lld B" +msgstr "" + +#: dcpp/Util.cpp:343 +#, c-format, boost-format +msgid "%.02f GiB" +msgstr "" + +#: dcpp/Util.cpp:339 +#, c-format, boost-format +msgid "%.02f KiB" +msgstr "" + +#: dcpp/Util.cpp:341 +#, c-format, boost-format +msgid "%.02f MiB" +msgstr "" + +#: dcpp/Util.cpp:347 +#, c-format, boost-format +msgid "%.02f PiB" +msgstr "" + +#: dcpp/Util.cpp:345 +#, c-format, boost-format +msgid "%.02f TiB" +msgstr "" + +#: dcpp/AdcHub.cpp:139 +#, boost-format +msgid "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" +msgstr "" + +#: dcpp/NmdcHub.cpp:281 +#, boost-format +msgid "%1% (Nick unknown)" +msgstr "" + +#: dcpp/HashManager.cpp:767 +#, boost-format +msgid "" +"%1% not shared; calculated CRC32 does not match the one found in SFV file." +msgstr "" + +#: dcpp/QueueManager.cpp:325 +#, boost-format +msgid "%1% renamed to %2%" +msgstr "" + +#: dcpp/AdcHub.cpp:281 +#, boost-format +msgid "%1% was kicked by %2%: %3%" +msgstr "" + +#: dcpp/AdcHub.cpp:284 +#, boost-format +msgid "%1% was kicked: %2%" +msgstr "" + +#: dcpp/DownloadManager.cpp:530 +#, fuzzy, boost-format +msgid "%1%: File not available" +msgstr "Fitxer no disponible" + +#: dcpp/Util.cpp:337 +#, c-format, boost-format +msgid "%d B" +msgstr "" + +#: dcpp/Util.cpp:377 +#, c-format, boost-format +msgid "%s B" +msgstr "" + +#: dcpp/QueueManager.cpp:532 +msgid "A file of equal or larger size already exists at the target location" +msgstr "Un fitxer igual o més gran ja existeix al destí" + +#: dcpp/QueueManager.cpp:475 +msgid "A file with a different size already exists in the queue" +msgstr "Un fitxer amb una mida diferent, ja existeix en la llista de tasques" + +#: dcpp/QueueManager.cpp:478 +msgid "A file with different tth root already exists in the queue" +msgstr "Un fitxer amb un tth diferente ja existeix a la cua" + +#: dcpp/QueueManager.cpp:442 +msgid "A file with the same hash already exists in your share" +msgstr "" +"Un fitxer amb el mateix hash ja existeix entre els teus fitxers compartits" + +#: dcpp/ConnectionManager.cpp:176 +msgid "All download slots taken" +msgstr "No hi han slots de descàrrega lliures" + +#: dcpp/DownloadManager.cpp:376 +msgid "CRC32 inconsistency (SFV-Check)" +msgstr "Inconsistencia CRC32 (Comprov-SFV)" + +#: dcpp/DownloadManager.cpp:374 +#, fuzzy, boost-format +msgid "CRC32 inconsistency (SFV-Check) (File: %1%)" +msgstr "Inconsistencia CRC32 (Comprov-SFV)" + +#: dcpp/ConnectionManager.cpp:376 +msgid "Certificate not trusted, unable to connect" +msgstr "" + +#: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 +#: dcpp/BufferedSocket.cpp:154 +msgid "Connection timeout" +msgstr "S'ha esgotat el temps per la conexió" + +#: dcpp/DownloadManager.cpp:232 +#, boost-format +msgid "Could not open target file: %1%" +msgstr "" + +#: dcpp/ShareManager.cpp:418 +msgid "Directory already shared" +msgstr "Aquest directori ja està compartit" + +#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +msgid "Disconnected" +msgstr "Desconectat" + +#: dcpp/UploadManager.cpp:450 +#, boost-format +msgid "Disconnected user leaving the hub: %1%" +msgstr "" + +#: dcpp/DCPlusPlus.cpp:103 +msgid "Download Queue" +msgstr "Cua de descàrrega" + +#: dcpp/ShareManager.cpp:741 +#, boost-format +msgid "" +"Duplicate file will not be shared: %1%%2% (Size: %3% B) Dupe matched " +"against: %4%%5%" +msgstr "" + +#: dcpp/QueueManager.cpp:545 dcpp/QueueManager.cpp:549 +#, boost-format +msgid "Duplicate source: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:456 +#, boost-format +msgid "Error creating hash data file: %1%" +msgstr "" + +#: dcpp/ZUtils.cpp:33 dcpp/ZUtils.cpp:54 dcpp/ZUtils.cpp:76 dcpp/ZUtils.cpp:86 +#: dcpp/BZUtils.cpp:31 dcpp/BZUtils.cpp:52 dcpp/BZUtils.cpp:60 +msgid "Error during compression" +msgstr "Error durant la compressió" + +#: dcpp/ZUtils.cpp:100 dcpp/ZUtils.cpp:123 dcpp/BZUtils.cpp:72 +#: dcpp/BZUtils.cpp:94 dcpp/BZUtils.cpp:97 dcpp/CryptoManager.cpp:342 +#: dcpp/CryptoManager.cpp:361 dcpp/CryptoManager.cpp:375 +msgid "Error during decompression" +msgstr "Error durant la descompressió" + +#: dcpp/HashManager.cpp:772 +#, boost-format +msgid "Error hashing %1%: %2%" +msgstr "" + +#: dcpp/HashManager.cpp:118 dcpp/HashManager.cpp:333 +#, boost-format +msgid "Error saving hash data: %1%" +msgstr "" + +#: dcpp/CryptoManager.cpp:226 dcpp/CryptoManager.cpp:230 +#: dcpp/CryptoManager.cpp:235 dcpp/CryptoManager.cpp:239 +msgid "Failed to load certificate file" +msgstr "" + +#: dcpp/CryptoManager.cpp:244 dcpp/CryptoManager.cpp:248 +#: dcpp/CryptoManager.cpp:253 dcpp/CryptoManager.cpp:257 +msgid "Failed to load private key" +msgstr "" + +#: dcpp/AdcHub.cpp:206 +msgid "Failed to negotiate base protocol" +msgstr "" + +#: dcpp/Socket.cpp:408 +msgid "" +"Failed to set up the socks server for UDP relay (check socks address and " +"port)" +msgstr "" +"Error al configurar el servidor socks per relay UDP (verifica adreça socks i " +"port)" + +#: dcpp/ShareManager.cpp:776 +#, fuzzy, boost-format +msgid "File list refresh failed: %1%" +msgstr "S'ha acabt la actualització de la llista de fitxers" + +#: dcpp/ShareManager.cpp:820 +msgid "File list refresh finished" +msgstr "S'ha acabt la actualització de la llista de fitxers" + +#: dcpp/ShareManager.cpp:756 +msgid "" +"File list refresh in progress, please wait for it to finish before trying to " +"refresh again" +msgstr "" + +#: dcpp/ShareManager.cpp:798 +msgid "File list refresh initiated" +msgstr "S'ha iniciat la actualizació de la llista de fitxers" + +#: dcpp/DirectoryListing.cpp:102 +msgid "File not available" +msgstr "Fitxer no disponible" + +#: dcpp/HashManager.cpp:89 +#, boost-format +msgid "Finished hashing: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:87 +#, boost-format +msgid "Finished hashing: %1% (%2%/s)" +msgstr "" + +#: dcpp/DownloadManager.cpp:308 +msgid "Full tree does not match TTH root" +msgstr "L'arbre descarregat no coincideix amb l'arrel TTH" + +#: dcpp/CryptoManager.cpp:219 +msgid "Generated new TLS certificate" +msgstr "" + +#: dcpp/DCPlusPlus.cpp:97 +msgid "Hash database" +msgstr "Hashejar bas de dades" + +#: dcpp/HashManager.cpp:677 +msgid "Hash database rebuilt" +msgstr "Reconstruir el Hash de la base de dades" + +#: dcpp/HashManager.cpp:73 dcpp/HashManager.cpp:277 +#, boost-format +msgid "Hashing failed: %1%" +msgstr "" + +#: dcpp/AdcHub.cpp:212 +msgid "" +"Hub probably uses an old version of ADC, please encourage the owner to " +"upgrade" +msgstr "" + +#: dcpp/DownloadManager.cpp:220 +msgid "Invalid size" +msgstr "" + +#: dcpp/QueueManager.cpp:515 dcpp/QueueManager.cpp:523 +msgid "" +"Invalid target file (missing directory, check default download directory " +"setting)" +msgstr "" +"Archiu de destí invàlid (directori ausent, comprova el directori de " +"descarregues per defecte)" + +#: dcpp/FavoriteManager.cpp:438 +msgid "Kick user(s)" +msgstr "Fer fora usuari(s)" + +#: dcpp/ConnectionManager.cpp:230 +#, boost-format +msgid "Listening socket failed (you need to restart %1%): %2%" +msgstr "" + +#: dcpp/BufferedSocket.cpp:261 +msgid "Maximum command length exceeded" +msgstr "" + +#: dcpp/DownloadManager.cpp:280 +msgid "More data was sent than was expected" +msgstr "S'ha enviado més dades que les esperades" + +#: dcpp/ShareManager.cpp:403 +msgid "No directory specified" +msgstr "Directori no especificat" + +#: dcpp/DownloadManager.cpp:419 +msgid "No slots available" +msgstr "No queden slots disponibles" + +#: dcpp/AdcHub.cpp:576 +#, boost-format +msgid "Not listening for connections - please restart %1%" +msgstr "" + +#: dcpp/Transfer.cpp:63 dcpp/Transfer.cpp:67 dcpp/ClientManager.cpp:115 +#: dcpp/SearchManager.cpp:267 dcpp/SearchManager.cpp:329 +#: dcpp/SearchManager.cpp:331 +msgid "Offline" +msgstr "Desconectat" + +#: dcpp/FavoriteManager.cpp:442 +msgid "Redirect user(s)" +msgstr "Redireccionar usuari(s)" + +#: dcpp/ShareManager.cpp:421 +msgid "Remove all subdirectories before adding this one" +msgstr "Eliminar tots els subdirectoris avans d'agregar aquest" + +#: dcpp/DownloadManager.cpp:225 +#, fuzzy +msgid "Response does not match request" +msgstr "L'arbre descarregat no coincideix amb l'arrel TTH" + +#: dcpp/DCPlusPlus.cpp:100 +msgid "Shared Files" +msgstr "fitxers compartits" + +#: dcpp/Socket.cpp:269 dcpp/Socket.cpp:273 +msgid "Socks server authentication failed (bad login / password?)" +msgstr "" +"El servidor socks d'autentificació ha fallat (usuari / contrasenya erronis?)" + +#: dcpp/CryptoManager.cpp:221 +#, boost-format +msgid "TLS disabled, failed to generate certificate: %1%" +msgstr "" + +#: dcpp/CryptoManager.cpp:211 +msgid "TLS disabled, no certificate file set" +msgstr "" + +#: dcpp/QueueManager.cpp:510 dcpp/QueueManager.cpp:519 +msgid "Target filename too long" +msgstr "El nom del fitxer de destí es massa llarg" + +#: dcpp/QueueManager.cpp:798 +msgid "Target removed" +msgstr "" + +#: dcpp/Socket.cpp:255 +msgid "The socks server doesn't support login / password authentication" +msgstr "El servidor socks no suporta autentificació d'usuari / contrasenya" + +#: dcpp/Socket.cpp:162 dcpp/Socket.cpp:173 dcpp/Socket.cpp:206 +#: dcpp/Socket.cpp:210 dcpp/Socket.cpp:237 dcpp/Socket.cpp:252 +msgid "The socks server failed establish a connection" +msgstr "El servidor socks ha fallat a l'establir la conenxió" + +#: dcpp/Socket.cpp:241 +msgid "The socks server requires authentication" +msgstr "el servidor socks nescessita autentificació" + +#: dcpp/ShareManager.cpp:407 +msgid "The temporary download directory cannot be shared" +msgstr "El directorio de descàrregues temporals no es pot compartir" + +#: dcpp/QueueManager.cpp:465 +msgid "This file is already queued" +msgstr "" + +#: dcpp/Thread.cpp:34 dcpp/Thread.cpp:42 +msgid "Unable to create thread" +msgstr "No es pot crear la tasca" + +#: dcpp/QueueManager.cpp:995 +#, boost-format +msgid "Unable to open filelist: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:131 +#, fuzzy +msgid "Unable to read hash data file" +msgstr "No es pot crear la tasca" + +#: dcpp/QueueManager.cpp:327 +#, fuzzy, boost-format +msgid "Unable to rename %1%: %2%" +msgstr "No es pot crear la tasca" + +#: dcpp/UploadManager.cpp:149 +#, boost-format +msgid "Unable to send file %1%: %2%" +msgstr "" + +#: dcpp/Socket.cpp:54 +#, c-format, boost-format +msgid "Unknown error: 0x%1$x" +msgstr "" + +#: dcpp/ShareManager.cpp:426 dcpp/ShareManager.cpp:468 +msgid "Virtual directory name already exists" +msgstr "El nom de la carpeta virtual ja existeix" + +#: dcpp/QueueManager.cpp:412 dcpp/QueueManager.cpp:436 +msgid "You're trying to download from yourself!" +msgstr "Estás intentant descarregar de tu mateix!" + +#: dcpp/SettingsManager.cpp:156 +msgid "downloaded from" +msgstr "" + +#: dcpp/SettingsManager.cpp:157 +msgid "uploaded to" +msgstr "" Added: dcplusplus/trunk/dcpp/po/cs.po =================================================================== --- dcplusplus/trunk/dcpp/po/cs.po (rev 0) +++ dcplusplus/trunk/dcpp/po/cs.po 2008-03-04 23:19:17 UTC (rev 1024) @@ -0,0 +1,427 @@ +# Czech translation for dcplusplus +# Copyright (c) 2008 Rosetta Contributors and Canonical Ltd 2008 +# This file is distributed under the same license as the dcplusplus package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2008. +# +msgid "" +msgstr "" +"Project-Id-Version: dcplusplus\n" +"Report-Msgid-Bugs-To: dcp...@li...\n" +"POT-Creation-Date: 2008-03-04 23:00+0100\n" +"PO-Revision-Date: 2008-02-08 19:17+0000\n" +"Last-Translator: marek.tomass <mar...@gm...>\n" +"Language-Team: Czech <cs...@li...>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2008-03-04 21:52+0000\n" +"X-Generator: Launchpad (build Unknown)\n" + +#: dcpp/Util.cpp:381 +#, c-format, boost-format +msgid "%'lld B" +msgstr "" + +#: dcpp/Util.cpp:343 +#, c-format, boost-format +msgid "%.02f GiB" +msgstr "" + +#: dcpp/Util.cpp:339 +#, c-format, boost-format +msgid "%.02f KiB" +msgstr "" + +#: dcpp/Util.cpp:341 +#, c-format, boost-format +msgid "%.02f MiB" +msgstr "" + +#: dcpp/Util.cpp:347 +#, c-format, boost-format +msgid "%.02f PiB" +msgstr "" + +#: dcpp/Util.cpp:345 +#, c-format, boost-format +msgid "%.02f TiB" +msgstr "" + +#: dcpp/AdcHub.cpp:139 +#, boost-format +msgid "%1% (%2%) has same CID {%3%} as %4% (%5%), ignoring" +msgstr "" + +#: dcpp/NmdcHub.cpp:281 +#, boost-format +msgid "%1% (Nick unknown)" +msgstr "%1% (Nick neznámý)" + +#: dcpp/HashManager.cpp:767 +#, boost-format +msgid "" +"%1% not shared; calculated CRC32 does not match the one found in SFV file." +msgstr "" + +#: dcpp/QueueManager.cpp:325 +#, boost-format +msgid "%1% renamed to %2%" +msgstr "%1% přejmenovat na %2%" + +#: dcpp/AdcHub.cpp:281 +#, boost-format +msgid "%1% was kicked by %2%: %3%" +msgstr "" + +#: dcpp/AdcHub.cpp:284 +#, boost-format +msgid "%1% was kicked: %2%" +msgstr "" + +#: dcpp/DownloadManager.cpp:530 +#, boost-format +msgid "%1%: File not available" +msgstr "%1%: Soubor není dostupný" + +#: dcpp/Util.cpp:337 +#, c-format, boost-format +msgid "%d B" +msgstr "" +"Copy text \t\r\n" +"%d B" + +#: dcpp/Util.cpp:377 +#, c-format, boost-format +msgid "%s B" +msgstr "%s B" + +#: dcpp/QueueManager.cpp:532 +msgid "A file of equal or larger size already exists at the target location" +msgstr "" +"Soubor se stejnou nebo vetsi velikosti je uz na miste kam chcete stahovat" + +#: dcpp/QueueManager.cpp:475 +msgid "A file with a different size already exists in the queue" +msgstr "Stejny soubor z jinou velkosti je uz ve fronte" + +#: dcpp/QueueManager.cpp:478 +msgid "A file with different tth root already exists in the queue" +msgstr "Stejny soubor s jinym tth indexom (tth root) je uz ve fronte" + +#: dcpp/QueueManager.cpp:442 +msgid "A file with the same hash already exists in your share" +msgstr "Soubor se stejnym hashem uz sdilite" + +#: dcpp/ConnectionManager.cpp:176 +msgid "All download slots taken" +msgstr "Vsechny upload sloty obsazene" + +#: dcpp/DownloadManager.cpp:376 +msgid "CRC32 inconsistency (SFV-Check)" +msgstr "CRC32 nesuhlasi (SFV kontrola)" + +#: dcpp/DownloadManager.cpp:374 +#, boost-format +msgid "CRC32 inconsistency (SFV-Check) (File: %1%)" +msgstr "" + +#: dcpp/ConnectionManager.cpp:376 +msgid "Certificate not trusted, unable to connect" +msgstr "" + +#: dcpp/Socket.cpp:154 dcpp/ConnectionManager.cpp:182 +#: dcpp/BufferedSocket.cpp:154 +msgid "Connection timeout" +msgstr "Cas pro pripojeni vyprsel" + +#: dcpp/DownloadManager.cpp:232 +#, boost-format +msgid "Could not open target file: %1%" +msgstr "" + +#: dcpp/ShareManager.cpp:418 +msgid "Directory already shared" +msgstr "Slozka je uz sdilena" + +#: dcpp/BufferedSocket.cpp:407 dcpp/BufferedSocket.cpp:426 +msgid "Disconnected" +msgstr "Odpojeny" + +#: dcpp/UploadManager.cpp:450 +#, boost-format +msgid "Disconnected user leaving the hub: %1%" +msgstr "" + +#: dcpp/DCPlusPlus.cpp:103 +msgid "Download Queue" +msgstr "Fronta souboru k stahnuti" + +#: dcpp/ShareManager.cpp:741 +#, boost-format +msgid "" +"Duplicate file will not be shared: %1%%2% (Size: %3% B) Dupe matched " +"against: %4%%5%" +msgstr "" + +#: dcpp/QueueManager.cpp:545 dcpp/QueueManager.cpp:549 +#, boost-format +msgid "Duplicate source: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:456 +#, boost-format +msgid "Error creating hash data file: %1%" +msgstr "" + +#: dcpp/ZUtils.cpp:33 dcpp/ZUtils.cpp:54 dcpp/ZUtils.cpp:76 dcpp/ZUtils.cpp:86 +#: dcpp/BZUtils.cpp:31 dcpp/BZUtils.cpp:52 dcpp/BZUtils.cpp:60 +msgid "Error during compression" +msgstr "Chyba pocesu komprese" + +#: dcpp/ZUtils.cpp:100 dcpp/ZUtils.cpp:123 dcpp/BZUtils.cpp:72 +#: dcpp/BZUtils.cpp:94 dcpp/BZUtils.cpp:97 dcpp/CryptoManager.cpp:342 +#: dcpp/CryptoManager.cpp:361 dcpp/CryptoManager.cpp:375 +msgid "Error during decompression" +msgstr "Chyba v prubehu dekomprese" + +#: dcpp/HashManager.cpp:772 +#, boost-format +msgid "Error hashing %1%: %2%" +msgstr "" + +#: dcpp/HashManager.cpp:118 dcpp/HashManager.cpp:333 +#, boost-format +msgid "Error saving hash data: %1%" +msgstr "" + +#: dcpp/CryptoManager.cpp:226 dcpp/CryptoManager.cpp:230 +#: dcpp/CryptoManager.cpp:235 dcpp/CryptoManager.cpp:239 +msgid "Failed to load certificate file" +msgstr "" + +#: dcpp/CryptoManager.cpp:244 dcpp/CryptoManager.cpp:248 +#: dcpp/CryptoManager.cpp:253 dcpp/CryptoManager.cpp:257 +msgid "Failed to load private key" +msgstr "" + +#: dcpp/AdcHub.cpp:206 +msgid "Failed to negotiate base protocol" +msgstr "" + +#: dcpp/Socket.cpp:408 +msgid "" +"Failed to set up the socks server for UDP relay (check socks address and " +"port)" +msgstr "" +"Nespravne nastaveni Socket Serveru pro zaisteni UDP (otevrte adresu Socket " +"Serveru a port)" + +#: dcpp/ShareManager.cpp:776 +#, boost-format +msgid "File list refresh failed: %1%" +msgstr "" + +#: dcpp/ShareManager.cpp:820 +msgid "File list refresh finished" +msgstr "Dokonceni obnoveni seznamu souboru" + +#: dcpp/ShareManager.cpp:756 +msgid "" +"File list refresh in progress, please wait for it to finish before trying to " +"refresh again" +msgstr "Cekejte prosim, az sa dokonci obnova seznamu souboru " + +#: dcpp/ShareManager.cpp:798 +msgid "File list refresh initiated" +msgstr "Zahajeni obnoveni seznamu souboru" + +#: dcpp/DirectoryListing.cpp:102 +msgid "File not available" +msgstr "Soubor je nedostupny" + +#: dcpp/HashManager.cpp:89 +#, boost-format +msgid "Finished hashing: %1%" +msgstr "" + +#: dcpp/HashManager.cpp:87 +#, boost-format +msgid "Finished hashing: %1% (%2%/s)" +msgstr "" + +#: dcpp/DownloadManager.cpp:308 +msgid "Full tree does not match TTH root" +msgstr "Stahnuty strom neodpoveda porovnavanemu TTH zakladu (TTH root)" + +#: dcpp/CryptoManager.cpp:219 +msgid "Generated new TLS certificate" +msgstr "" + +#: dcpp/DCPlusPlus.cpp:97 +msgid "Hash database" +msgstr "Hash databaze" + +#: dcpp/HashManager.cpp:677 +msgid "Hash database rebuilt" +msgstr "Hash databaze obnoveny" + +#: dcpp/HashManager.cpp:73 dcpp/HashManager.cpp:277 +#, boost-format +msgid "Hashing failed: %1%" +msgstr "" + +#: dcpp/AdcHub.cpp:212 +msgid "" +"Hub probably uses an old version of ADC, please encourage the owner to " +"upgrade" +msgstr "" + +#: dcpp/DownloadManager.cpp:220 +msgid "Invalid size" +msgstr "" + +#: dcpp/QueueManager.cpp:515 dcpp/QueueManager.cpp:523 +msgid "" +"Invalid target file (missing directory, check default download directory " +"setting)" +msgstr "" +"Chybny cilovy soubor (chyba adresar, skontrolujte nastaveni adresare pro " +"stahnute soubory)" + +#: dcpp/FavoriteManager.cpp:438 +msgid "Kick user(s)" +msgstr "Vyhodit uzivatele" + +#: dcpp/ConnectionManager.cpp:230 +#, boost-format +msgid "Listening socket failed (you need to restart %1%): %2%" +msgstr "" + +#: dcpp/BufferedSocket.cpp:261 +msgid "Maximum command length exceeded" +msgstr "" + +#: dcpp/DownloadManager.cpp:280 +msgid "More data was sent than was expected" +msgstr "Bylo odoslane vic dat nez bylo ocekavane" + +#: dcpp/ShareManager.cpp:403 +msgid "No directory specified" +msgstr "Nebyla zvolena slozka" + ... [truncated message content] |
From: <zou...@us...> - 2008-03-02 20:33:22
|
Revision: 1023 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1023&view=rev Author: zouzou123gen Date: 2008-03-02 12:31:51 -0800 (Sun, 02 Mar 2008) Log Message: ----------- fancy menus for every text box Modified Paths: -------------- dcplusplus/trunk/smartwin/include/smartwin/GCCHeaders.h dcplusplus/trunk/smartwin/include/smartwin/WidgetCreator.h dcplusplus/trunk/smartwin/include/smartwin/WidgetFactoryPlatformSmartWinDesktop.h dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetComboBox.h dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetMenu.h dcplusplus/trunk/smartwin/source/widgets/WidgetComboBox.cpp dcplusplus/trunk/smartwin/source/widgets/WidgetMenu.cpp dcplusplus/trunk/win32/AboutDlg.cpp dcplusplus/trunk/win32/AboutDlg.h dcplusplus/trunk/win32/Advanced3Page.cpp dcplusplus/trunk/win32/Appearance2Page.cpp dcplusplus/trunk/win32/AppearancePage.cpp dcplusplus/trunk/win32/CertificatesPage.cpp dcplusplus/trunk/win32/CertificatesPage.h dcplusplus/trunk/win32/CommandDlg.cpp dcplusplus/trunk/win32/CommandDlg.h dcplusplus/trunk/win32/DCPlusPlus.rc dcplusplus/trunk/win32/DownloadPage.cpp dcplusplus/trunk/win32/FavHubProperties.cpp dcplusplus/trunk/win32/FavHubProperties.h dcplusplus/trunk/win32/GeneralPage.cpp dcplusplus/trunk/win32/LineDlg.cpp dcplusplus/trunk/win32/LineDlg.h dcplusplus/trunk/win32/LogPage.cpp dcplusplus/trunk/win32/LogPage.h dcplusplus/trunk/win32/MDIChildFrame.h dcplusplus/trunk/win32/MagnetDlg.cpp dcplusplus/trunk/win32/MagnetDlg.h dcplusplus/trunk/win32/MainWindow.cpp dcplusplus/trunk/win32/NetworkPage.cpp dcplusplus/trunk/win32/PropPage.cpp dcplusplus/trunk/win32/PropPage.h dcplusplus/trunk/win32/QueuePage.cpp dcplusplus/trunk/win32/TransferView.h dcplusplus/trunk/win32/UploadPage.cpp dcplusplus/trunk/win32/WidgetFactory.h dcplusplus/trunk/win32/WidgetTextBox.h Added Paths: ----------- dcplusplus/trunk/win32/WidgetComboBox.cpp dcplusplus/trunk/win32/WidgetComboBox.h dcplusplus/trunk/win32/WidgetTextBox.cpp Modified: dcplusplus/trunk/smartwin/include/smartwin/GCCHeaders.h =================================================================== --- dcplusplus/trunk/smartwin/include/smartwin/GCCHeaders.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/smartwin/include/smartwin/GCCHeaders.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -81,6 +81,9 @@ #define COLOR_MENUBAR 30 #define ODS_HOTLIGHT 0x0040 #define ODS_INACTIVE 0x0080 + #ifndef MN_GETHMENU + #define MN_GETHMENU 0x01E1 + #endif #if(_WIN32_WINNT >= 0x0500) #ifndef ODS_NOACCEL #define ODS_NOACCEL 0x0100 Modified: dcplusplus/trunk/smartwin/include/smartwin/WidgetCreator.h =================================================================== --- dcplusplus/trunk/smartwin/include/smartwin/WidgetCreator.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/smartwin/include/smartwin/WidgetCreator.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -94,6 +94,12 @@ return retVal; } + static typename WidgetType::ObjectType attach( Widget * parent, HMENU hMenu, const typename WidgetType::Seed & cs ) + { + typename WidgetType::ObjectType retVal(new WidgetType( parent )); + retVal->attach( hMenu, cs ); + return retVal; + } }; // end namespace SmartWin Modified: dcplusplus/trunk/smartwin/include/smartwin/WidgetFactoryPlatformSmartWinDesktop.h =================================================================== --- dcplusplus/trunk/smartwin/include/smartwin/WidgetFactoryPlatformSmartWinDesktop.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/smartwin/include/smartwin/WidgetFactoryPlatformSmartWinDesktop.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -123,6 +123,11 @@ return WidgetCreator< WidgetMenu >::create( this, cs ); } + WidgetMenuPtr attachMenu(HMENU hMenu, const typename WidgetMenu::Seed& cs = WidgetMenu::Seed()) + { + return WidgetCreator< WidgetMenu >::attach( this, cs, hMenu ); + } + /// Creates a Tool Bar and returns a pointer to it. /** DON'T delete the returned pointer!!! */ Modified: dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetComboBox.h =================================================================== --- dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetComboBox.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetComboBox.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -39,7 +39,6 @@ #include "../aspects/AspectPainting.h" #include "../aspects/AspectSelection.h" #include "../aspects/AspectText.h" -#include "WidgetTextBox.h" namespace SmartWin { @@ -154,9 +153,6 @@ static bool isValidSelectionChanged( LPARAM lPar ) { return true; } - - typedef WidgetTextBox::ObjectType WidgetTextBoxPtr; - WidgetTextBoxPtr getTextBox(); protected: /// Constructor Taking pointer to parent @@ -166,9 +162,6 @@ // WidgetFactory class which is friend virtual ~WidgetComboBox() {} - -private: - WidgetTextBoxPtr textBox; }; /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -266,7 +259,7 @@ } inline WidgetComboBox::WidgetComboBox( Widget * parent ) - : ControlType( parent ), textBox(0) + : ControlType( parent ) { } Modified: dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetMenu.h =================================================================== --- dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetMenu.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetMenu.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -206,9 +206,10 @@ */ void create(const Seed& cs); - /// Attaches the menu to the parent window - void attach(); + void attach(HMENU hMenu, const Seed& cs); + void setMenu(); + /// Appends a popup to the menu /** Everything you "append" to a menu is added sequentially to the menu <br> * This specific "append" function appends a "popup" menu which is a menu @@ -321,7 +322,7 @@ void removeAllItems(); /// Return the number of items in the menu - int getCount(); + int getCount() const; /// Displays and handles a menu which can appear anywhere in the window. /** Typically called by a Right Mouse click. If both the x and the y coordinate @@ -502,6 +503,8 @@ typedef std::map<unsigned, Widget::CallbackType> CallbackMap; CallbackMap callbacks; + void createHelper(const Seed& cs); + void addCommands(); // Returns item index in the menu item list Modified: dcplusplus/trunk/smartwin/source/widgets/WidgetComboBox.cpp =================================================================== --- dcplusplus/trunk/smartwin/source/widgets/WidgetComboBox.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/smartwin/source/widgets/WidgetComboBox.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -1,5 +1,4 @@ #include "../../include/smartwin/widgets/WidgetComboBox.h" -#include "../../include/smartwin/WidgetCreator.h" namespace SmartWin { @@ -19,16 +18,4 @@ sendMessage(CB_SETEXTENDEDUI, TRUE); } -WidgetComboBox::WidgetTextBoxPtr WidgetComboBox::getTextBox() { - if(!textBox) { - LONG_PTR style = ::GetWindowLongPtr(handle(), GWL_STYLE); - if((style & CBS_SIMPLE) == CBS_SIMPLE || (style & CBS_DROPDOWN) == CBS_DROPDOWN) { - HWND wnd = ::FindWindowEx(handle(), NULL, _T("EDIT"), NULL); - if(wnd && wnd != handle()) - textBox = WidgetCreator< WidgetTextBox >::attach(this, wnd); - } - } - return textBox; } - -} Modified: dcplusplus/trunk/smartwin/source/widgets/WidgetMenu.cpp =================================================================== --- dcplusplus/trunk/smartwin/source/widgets/WidgetMenu.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/smartwin/source/widgets/WidgetMenu.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -52,8 +52,7 @@ xAssert(itsParent != NULL, _T("A WidgetMenu must have a parent")); } -void WidgetMenu::create(const Seed& cs) -{ +void WidgetMenu::createHelper(const Seed& cs) { // save settings provided through the Seed ownerDrawn = cs.ownerDrawn; itsColorInfo = cs.colorInfo; @@ -70,8 +69,11 @@ itsParent->setCallback(Message(WM_DRAWITEM), DrawItemDispatcher(std::tr1::bind(&WidgetMenu::handleDrawItem, this, _1, _2))); itsParent->setCallback(Message(WM_MEASUREITEM), MeasureItemDispatcher(std::tr1::bind(&WidgetMenu::handleMeasureItem, this, _1))); } +} - // Create menu +void WidgetMenu::create(const Seed& cs) { + createHelper(cs); + if(cs.popup) itsHandle = ::CreatePopupMenu(); else @@ -83,11 +85,46 @@ } } -void WidgetMenu::attach() -{ +void WidgetMenu::attach(HMENU hMenu, const Seed& cs) { + createHelper(cs); + + itsHandle = hMenu; + + if(ownerDrawn) { + // update all current items to be owner-drawn + // @todo update sub-menus too... + const int count = getCount(); + for(int i = 0; i < count; ++i) { + // init structure for items + MENUITEMINFO info; + memset( & info, 0, sizeof( info ) ); + info.cbSize = sizeof( MENUITEMINFO ); + + // set flags + info.fMask = MIIM_FTYPE | MIIM_DATA; + + if(::GetMenuItemInfo(itsHandle, i, TRUE, &info)) { + info.fMask |= MIIM_DATA; + info.fType |= MFT_OWNERDRAW; + + // create item data wrapper + ItemDataWrapper * wrapper = new ItemDataWrapper( this, i, MenuItemDataPtr( new MenuItemData() ) ); + info.dwItemData = reinterpret_cast< ULONG_PTR >( wrapper ); + + if(::SetMenuItemInfo(itsHandle, i, TRUE, &info)) + itsItemDataRef.push_back( wrapper ); + else + throw xCeption( _T( "SetMenuItemInfo in WidgetMenu::attach fizzled..." ) ); + } else + throw xCeption( _T( "GetMenuItemInfo in WidgetMenu::attach fizzled..." ) ); + } + } +} + +void WidgetMenu::setMenu() { addCommands(); if ( ::SetMenu( itsParent->handle(), itsHandle ) == FALSE ) - throw xCeption( _T( "Couldn't attach menu to the parent window" ) ); + throw xCeption( _T( "SetMenu in WidgetMenu::setMenu fizzled..." ) ); } WidgetMenu::ObjectType WidgetMenu::appendPopup( const SmartUtil::tstring & text, MenuItemDataPtr itemData ) @@ -111,7 +148,7 @@ info.hSubMenu = retVal->handle(); // get position to insert - int position = ::GetMenuItemCount( itsHandle ); + int position = getCount(); ItemDataWrapper * wrapper = NULL; if(ownerDrawn) { @@ -167,7 +204,7 @@ int WidgetMenu::getItemIndex( unsigned int id ) { int index = 0; - const int itemCount = ::GetMenuItemCount( itsHandle ); + const int itemCount = getCount(); for ( index = 0; index < itemCount; ++index ) if ( ::GetMenuItemID( itsHandle, index ) == id ) // exit the loop if found @@ -190,7 +227,7 @@ WidgetMenu::~WidgetMenu() { // Destroy this menu - ::DestroyMenu( this->handle() ); + ::DestroyMenu( handle() ); std::for_each( itsItemDataRef.begin(), itsItemDataRef.end(), destroyItemDataWrapper ); } @@ -205,7 +242,7 @@ void WidgetMenu::setTitleFont( FontPtr font ) { itsTitleFont = font; - setTitle( itsTitle, this->drawSidebar ); // Easy for now, should be refactored... + setTitle( itsTitle, drawSidebar ); // Easy for now, should be refactored... } void WidgetMenu::clearTitle( bool clearSidebar /* = false */) @@ -222,12 +259,12 @@ void WidgetMenu::checkItem( unsigned id, bool value ) { - ::CheckMenuItem( this->handle(), id, value ? MF_CHECKED : MF_UNCHECKED ); + ::CheckMenuItem( handle(), id, value ? MF_CHECKED : MF_UNCHECKED ); } void WidgetMenu::setItemEnabled( unsigned id, bool byPosition, bool value ) { - if ( ::EnableMenuItem( this->handle(), id, (byPosition ? MF_BYPOSITION : MF_BYCOMMAND) | (value ? MF_ENABLED : MF_GRAYED) ) == - 1 ) + if ( ::EnableMenuItem( handle(), id, (byPosition ? MF_BYPOSITION : MF_BYCOMMAND) | (value ? MF_ENABLED : MF_GRAYED) ) == - 1 ) { xCeption x( _T( "Couldn't enable/disable the menu item, item doesn't exist" ) ); throw x; @@ -236,7 +273,7 @@ UINT WidgetMenu::getMenuState( UINT id, bool byPosition ) { - return ::GetMenuState(this->handle(), id, byPosition ? MF_BYPOSITION : MF_BYCOMMAND); + return ::GetMenuState(handle(), id, byPosition ? MF_BYPOSITION : MF_BYCOMMAND); } bool WidgetMenu::isSeparator( UINT id, bool byPosition ) @@ -261,7 +298,7 @@ void WidgetMenu::setDefaultItem( UINT id, bool byPosition ) { - ::SetMenuDefaultItem(this->handle(), id, byPosition); + ::SetMenuDefaultItem(handle(), id, byPosition); } SmartUtil::tstring WidgetMenu::getText( unsigned id, bool byPosition ) @@ -841,7 +878,7 @@ itemInfo.fType = MFT_SEPARATOR; // get position to insert - int position = ::GetMenuItemCount( itsHandle ); + int position = getCount(); ItemDataWrapper * wrapper = NULL; if(ownerDrawn) { @@ -863,7 +900,7 @@ HMENU popup = ::GetSubMenu( itsHandle, itemIndex ); // try to remove item - if ( ::RemoveMenu( itsHandle, itemIndex, MF_BYPOSITION ) == TRUE ) + if ( ::RemoveMenu( itsHandle, itemIndex, MF_BYPOSITION ) ) { size_t i = 0; @@ -906,13 +943,13 @@ void WidgetMenu::removeAllItems() { //must be backwards, since bigger indexes change on remove - for( int i = this->getCount() - 1; i >= 0; i-- ) + for( int i = getCount() - 1; i >= 0; i-- ) { - this->removeItem( i ); + removeItem( i ); } } -int WidgetMenu::getCount() +int WidgetMenu::getCount() const { int count = ::GetMenuItemCount( itsHandle ); if( count == -1 ) @@ -942,7 +979,7 @@ // set position to insert bool itemExists = index != - 1; - index = itemExists ? index : ::GetMenuItemCount( itsHandle ); + index = itemExists ? index : getCount(); ItemDataWrapper * wrapper = NULL; if(ownerDrawn) { @@ -954,8 +991,8 @@ info.dwItemData = reinterpret_cast< ULONG_PTR >( wrapper ); } - if ( ( !itemExists && ::InsertMenuItem( itsHandle, id, FALSE, & info ) == TRUE ) || - ( itemExists && ::SetMenuItemInfo( itsHandle, id, FALSE, & info ) == TRUE ) ) + if ( ( !itemExists && ::InsertMenuItem( itsHandle, id, FALSE, & info ) ) || + ( itemExists && ::SetMenuItemInfo( itsHandle, id, FALSE, & info ) ) ) { if(ownerDrawn) itsItemDataRef.push_back( wrapper ); @@ -991,8 +1028,8 @@ WidgetMenu::ObjectType WidgetMenu::getChild( unsigned position ) { HMENU h = ::GetSubMenu(handle(), position); - for(size_t i = 0; i < this->itsChildren.size(); ++i) { - ObjectType& menu = this->itsChildren[i]; + for(size_t i = 0; i < itsChildren.size(); ++i) { + ObjectType& menu = itsChildren[i]; if(menu->handle() == h) { return menu; } Modified: dcplusplus/trunk/win32/AboutDlg.cpp =================================================================== --- dcplusplus/trunk/win32/AboutDlg.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/AboutDlg.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -44,7 +44,7 @@ "stanislav maslovski, david grundberg. " "Keep it coming!"; -AboutDlg::AboutDlg(SmartWin::Widget* parent) : SmartWin::WidgetFactory<SmartWin::WidgetModalDialog>(parent) { +AboutDlg::AboutDlg(SmartWin::Widget* parent) : WidgetFactory<SmartWin::WidgetModalDialog>(parent) { onInitDialog(std::tr1::bind(&AboutDlg::handleInitDialog, this)); onSpeaker(std::tr1::bind(&AboutDlg::handleSpeaker, this, _1, _2)); } @@ -54,8 +54,8 @@ bool AboutDlg::handleInitDialog() { setItemText(IDC_VERSION, Text::toT("DC++ " VERSIONSTRING "\n(c) Copyright 2001-2008 Jacek Sieka\nEx-codeveloper: Per Lind\303\251n\nGraphics: Martin Skogevall et al.\nDC++ is licenced under GPL\nhttp://dcplusplus.sourceforge.net/")); - setItemText(IDC_TTH, WinUtil::tth); - setItemText(IDC_THANKS, Text::toT(thanks)); + attachTextBox(IDC_TTH)->setText(WinUtil::tth); + attachTextBox(IDC_THANKS)->setText(Text::toT(thanks)); setItemText(IDC_TOTALS, str(TF_("Upload: %1%, Download: %2%") % Text::toT(Util::formatBytes(SETTING(TOTAL_UPLOAD))) % Text::toT(Util::formatBytes(SETTING(TOTAL_DOWNLOAD))))); if(SETTING(TOTAL_DOWNLOAD) > 0) { setItemText(IDC_RATIO, str(TF_("Ratio (up/down): %1$0.2f") % (((double)SETTING(TOTAL_UPLOAD)) / ((double)SETTING(TOTAL_DOWNLOAD))))); Modified: dcplusplus/trunk/win32/AboutDlg.h =================================================================== --- dcplusplus/trunk/win32/AboutDlg.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/AboutDlg.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -21,10 +21,11 @@ #include <dcpp/HttpConnection.h> #include "resource.h" +#include "WidgetFactory.h" #include "AspectSpeaker.h" class AboutDlg : - public SmartWin::WidgetFactory<SmartWin::WidgetModalDialog>, + public WidgetFactory<SmartWin::WidgetModalDialog>, public AspectSpeaker<AboutDlg>, private HttpConnectionListener { Modified: dcplusplus/trunk/win32/Advanced3Page.cpp =================================================================== --- dcplusplus/trunk/win32/Advanced3Page.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/Advanced3Page.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -68,6 +68,21 @@ WidgetSpinnerPtr spinner = attachSpinner(IDC_SEARCH_HISTORY_SPIN); spinner->setRange(0, 100); + + attachTextBox(IDC_ROLLBACK); + attachTextBox(IDC_MAX_HASH_SPEED); + attachTextBox(IDC_SHOW_LAST_LINES_LOG); + attachTextBox(IDC_SET_MINISLOT_SIZE); + attachTextBox(IDC_MAX_FILELIST_SIZE); + attachTextBox(IDC_PRIVATE_ID); + attachTextBox(IDC_AUTO_REFRESH_TIME); + attachTextBox(IDC_BUFFERSIZE); + attachTextBox(IDC_AUTO_SEARCH_LIMIT); + attachTextBox(IDC_SEARCH_HISTORY); + attachTextBox(IDC_BIND_ADDRESS); + attachTextBox(IDC_SOCKET_IN_BUFFER); + attachTextBox(IDC_SOCKET_OUT_BUFFER); + attachTextBox(IDC_MIN_SEGMENT_SIZE); } Advanced3Page::~Advanced3Page() { Modified: dcplusplus/trunk/win32/Appearance2Page.cpp =================================================================== --- dcplusplus/trunk/win32/Appearance2Page.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/Appearance2Page.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -81,6 +81,8 @@ button = attachButton(IDC_BROWSE); button->onClicked(std::tr1::bind(&Appearance2Page::handleBrowseClicked, this)); + + attachTextBox(IDC_BEEPFILE); } Appearance2Page::~Appearance2Page() { Modified: dcplusplus/trunk/win32/AppearancePage.cpp =================================================================== --- dcplusplus/trunk/win32/AppearancePage.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/AppearancePage.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -96,6 +96,9 @@ } languages->setSelectedIndex(selected); + + attachTextBox(IDC_DEFAULT_AWAY_MESSAGE); + attachTextBox(IDC_TIME_STAMPS_FORMAT); } AppearancePage::~AppearancePage() { Modified: dcplusplus/trunk/win32/CertificatesPage.cpp =================================================================== --- dcplusplus/trunk/win32/CertificatesPage.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/CertificatesPage.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -50,10 +50,13 @@ PropPage::translate(handle(), texts); PropPage::read(handle(), items, listItems, ::GetDlgItem(handle(), IDC_TLS_OPTIONS)); + privateKeyFile = attachTextBox(IDC_TLS_PRIVATE_KEY_FILE); attachButton(IDC_BROWSE_PRIVATE_KEY)->onClicked(std::tr1::bind(&CertificatesPage::handleBrowsePrivateKeyClicked, this)); + certificateFile = attachTextBox(IDC_TLS_CERTIFICATE_FILE); attachButton(IDC_BROWSE_CERTIFICATE)->onClicked(std::tr1::bind(&CertificatesPage::handleBrowseCertificateClicked, this)); + trustedCertificatesPath = attachTextBox(IDC_TLS_TRUSTED_CERTIFICATES_PATH); attachButton(IDC_BROWSE_TRUSTED_PATH)->onClicked(std::tr1::bind(&CertificatesPage::handleBrowseTrustedPathClicked, this)); attachButton(IDC_GENERATE_CERTS)->onClicked(std::tr1::bind(&CertificatesPage::handleGenerateCertsClicked, this)); @@ -67,21 +70,21 @@ } void CertificatesPage::handleBrowsePrivateKeyClicked() { - tstring target = Text::toT(SETTING(TLS_PRIVATE_KEY_FILE)); + tstring target = privateKeyFile->getText(); if(WinUtil::browseFile(target, handle(), false, target)) - ::SetDlgItemText(handle(), IDC_TLS_PRIVATE_KEY_FILE, &target[0]); + privateKeyFile->setText(target); } void CertificatesPage::handleBrowseCertificateClicked() { - tstring target = Text::toT(SETTING(TLS_CERTIFICATE_FILE)); + tstring target = certificateFile->getText(); if(WinUtil::browseFile(target, handle(), false, target)) - ::SetDlgItemText(handle(), IDC_TLS_CERTIFICATE_FILE, &target[0]); + certificateFile->setText(target); } void CertificatesPage::handleBrowseTrustedPathClicked() { - tstring target = Text::toT(SETTING(TLS_TRUSTED_CERTIFICATES_PATH)); + tstring target = trustedCertificatesPath->getText(); if(WinUtil::browseDirectory(target, handle())) - ::SetDlgItemText(handle(), IDC_TLS_TRUSTED_CERTIFICATES_PATH, &target[0]); + trustedCertificatesPath->setText(target); } void CertificatesPage::handleGenerateCertsClicked() { Modified: dcplusplus/trunk/win32/CertificatesPage.h =================================================================== --- dcplusplus/trunk/win32/CertificatesPage.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/CertificatesPage.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -35,6 +35,10 @@ static TextItem texts[]; static ListItem listItems[]; + WidgetTextBoxPtr privateKeyFile; + WidgetTextBoxPtr certificateFile; + WidgetTextBoxPtr trustedCertificatesPath; + void handleBrowsePrivateKeyClicked(); void handleBrowseCertificateClicked(); void handleBrowseTrustedPathClicked(); Modified: dcplusplus/trunk/win32/CommandDlg.cpp =================================================================== --- dcplusplus/trunk/win32/CommandDlg.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/CommandDlg.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -28,7 +28,7 @@ #include "WinUtil.h" CommandDlg::CommandDlg(SmartWin::Widget* parent, int type_, int ctx_, const tstring& name_, const tstring& command_, const tstring& hub_) : - SmartWin::WidgetFactory<SmartWin::WidgetModalDialog>(parent), + WidgetFactory<SmartWin::WidgetModalDialog>(parent), separator(0), raw(0), chat(0), Modified: dcplusplus/trunk/win32/CommandDlg.h =================================================================== --- dcplusplus/trunk/win32/CommandDlg.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/CommandDlg.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -20,8 +20,9 @@ #define DCPLUSPLUS_WIN32_COMMAND_DLG_H #include <dcpp/Util.h> +#include "WidgetFactory.h" -class CommandDlg : public SmartWin::WidgetFactory<SmartWin::WidgetModalDialog> +class CommandDlg : public WidgetFactory<SmartWin::WidgetModalDialog> { public: CommandDlg(SmartWin::Widget* parent, int type_ = 0, int ctx_ = 0, const tstring& name_ = Util::emptyStringT, const tstring& command_ = Util::emptyStringT, const tstring& hub_ = Util::emptyStringT); Modified: dcplusplus/trunk/win32/DCPlusPlus.rc =================================================================== --- dcplusplus/trunk/win32/DCPlusPlus.rc 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/DCPlusPlus.rc 2008-03-02 20:31:51 UTC (rev 1023) @@ -471,6 +471,8 @@ EDITTEXT IDC_PORT_TCP,230,28,29,14,ES_AUTOHSCROLL | ES_NUMBER LTEXT "UDP",IDC_SETTINGS_PORT_UDP,209,48,16,8 EDITTEXT IDC_PORT_UDP,230,45,30,14,ES_AUTOHSCROLL | ES_NUMBER + LTEXT "TLS",IDC_SETTINGS_PORT_TLS,209,64,21,8 + EDITTEXT IDC_PORT_TLS,230,61,30,14,ES_AUTOHSCROLL | ES_NUMBER LTEXT "External / WAN IP",IDC_SETTINGS_IP,59,59,68,8,NOT WS_GROUP EDITTEXT IDC_EXTERNAL_IP,59,69,99,14,ES_AUTOHSCROLL CONTROL "Don't allow hub/UPnP to override",IDC_OVERRIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,59,86,150,10 @@ -487,8 +489,6 @@ EDITTEXT IDC_SOCKS_PASSWORD,153,190,71,14,ES_AUTOHSCROLL CONTROL "Use SOCKS5 server to resolve hostnames",IDC_SOCKS_RESOLVE, "Button",BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,59,207,165,10 - LTEXT "TLS",IDC_SETTINGS_PORT_TLS,209,64,21,8 - EDITTEXT IDC_PORT_TLS,230,61,30,14,ES_AUTOHSCROLL | ES_NUMBER END IDD_WINDOWSPAGE DIALOGEX 100, 0, 275, 225 Modified: dcplusplus/trunk/win32/DownloadPage.cpp =================================================================== --- dcplusplus/trunk/win32/DownloadPage.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/DownloadPage.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -69,6 +69,12 @@ spinner = attachSpinner(IDC_SPEEDSPIN); spinner->setRange(0, 10000); + + attachTextBox(IDC_DOWNLOADDIR); + attachTextBox(IDC_TEMP_DOWNLOAD_DIRECTORY); + attachTextBox(IDC_DOWNLOADS); + attachTextBox(IDC_MAXSPEED); + attachTextBox(IDC_PROXY); } DownloadPage::~DownloadPage() { Modified: dcplusplus/trunk/win32/FavHubProperties.cpp =================================================================== --- dcplusplus/trunk/win32/FavHubProperties.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/FavHubProperties.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -26,7 +26,7 @@ #include <dcpp/version.h> FavHubProperties::FavHubProperties(SmartWin::Widget* parent, FavoriteHubEntry *_entry) : - SmartWin::WidgetFactory<SmartWin::WidgetModalDialog>(parent), + WidgetFactory<SmartWin::WidgetModalDialog>(parent), name(0), address(0), description(0), Modified: dcplusplus/trunk/win32/FavHubProperties.h =================================================================== --- dcplusplus/trunk/win32/FavHubProperties.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/FavHubProperties.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -22,7 +22,7 @@ #include <dcpp/forward.h> #include "WidgetFactory.h" -class FavHubProperties : public SmartWin::WidgetFactory<SmartWin::WidgetModalDialog> +class FavHubProperties : public WidgetFactory<SmartWin::WidgetModalDialog> { public: FavHubProperties(SmartWin::Widget* parent, FavoriteHubEntry *_entry); Modified: dcplusplus/trunk/win32/GeneralPage.cpp =================================================================== --- dcplusplus/trunk/win32/GeneralPage.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/GeneralPage.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -64,6 +64,8 @@ nick->setTextLimit(35); nick->onTextChanged(std::tr1::bind(&GeneralPage::handleNickTextChanged, this)); + attachTextBox(IDC_EMAIL); + attachTextBox(IDC_DESCRIPTION)->setTextLimit(35); } Modified: dcplusplus/trunk/win32/LineDlg.cpp =================================================================== --- dcplusplus/trunk/win32/LineDlg.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/LineDlg.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -21,7 +21,7 @@ #include "LineDlg.h" LineDlg::LineDlg(SmartWin::Widget* parent, const tstring& title_, const tstring& desc_, const tstring& initial_, bool password_) : - SmartWin::WidgetFactory<SmartWin::WidgetModalDialog>(parent), + WidgetFactory<SmartWin::WidgetModalDialog>(parent), title(title_), desc(desc_), initial(initial_), Modified: dcplusplus/trunk/win32/LineDlg.h =================================================================== --- dcplusplus/trunk/win32/LineDlg.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/LineDlg.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -22,8 +22,9 @@ #include "resource.h" #include <dcpp/Util.h> +#include "WidgetFactory.h" -class LineDlg : public SmartWin::WidgetFactory<SmartWin::WidgetModalDialog> +class LineDlg : public WidgetFactory<SmartWin::WidgetModalDialog> { public: LineDlg(SmartWin::Widget* parent, const tstring& title_, const tstring& desc_, const tstring& initial_ = Util::emptyStringT, bool password_ = false); Modified: dcplusplus/trunk/win32/LogPage.cpp =================================================================== --- dcplusplus/trunk/win32/LogPage.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/LogPage.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -65,22 +65,26 @@ options.push_back(pair); } - ::EnableWindow(::GetDlgItem(handle(), IDC_LOG_FORMAT), false); - ::EnableWindow(::GetDlgItem(handle(), IDC_LOG_FILE), false); + attachTextBox(IDC_LOG_DIRECTORY); - oldSelection = -1; - attachButton(IDC_BROWSE_LOG)->onClicked(std::tr1::bind(&LogPage::handleBrowseClicked, this)); - WidgetListViewPtr dataGrid = attachList(IDC_LOG_OPTIONS); - dataGrid->onRaw(std::tr1::bind(&LogPage::handleItemChanged, this, dataGrid, _1, _2), SmartWin::Message(WM_NOTIFY, LVN_ITEMCHANGED)); + dataGrid = attachList(IDC_LOG_OPTIONS); + dataGrid->onRaw(std::tr1::bind(&LogPage::handleItemChanged, this), SmartWin::Message(WM_NOTIFY, LVN_ITEMCHANGED)); + + logFormat = attachTextBox(IDC_LOG_FORMAT); + logFormat->setEnabled(false); + + logFile = attachTextBox(IDC_LOG_FILE); + logFile->setEnabled(false); + + oldSelection = -1; } LogPage::~LogPage() { } -void LogPage::write() -{ +void LogPage::write() { PropPage::write(handle(), items, listItems, ::GetDlgItem(handle(), IDC_LOG_OPTIONS)); const string& s = SETTING(LOG_DIRECTORY); @@ -115,27 +119,27 @@ } } -HRESULT LogPage::handleItemChanged(WidgetListViewPtr dataGrid, WPARAM wParam, LPARAM lParam) { +LRESULT LogPage::handleItemChanged() { getValues(); int sel = dataGrid->getSelectedIndex(); if(sel >= 0 && sel < LogManager::LAST) { - BOOL checkState = dataGrid->isChecked(sel) ? TRUE : FALSE; - ::EnableWindow(::GetDlgItem(handle(), IDC_LOG_FORMAT), checkState); - ::EnableWindow(::GetDlgItem(handle(), IDC_LOG_FILE), checkState); + bool checkState = dataGrid->isChecked(sel); + logFormat->setEnabled(checkState); + logFile->setEnabled(checkState); - ::SetDlgItemText(handle(), IDC_LOG_FILE, options[sel].first.c_str()); - ::SetDlgItemText(handle(), IDC_LOG_FORMAT, options[sel].second.c_str()); + logFile->setText(options[sel].first); + logFormat->setText(options[sel].second); //save the old selection so we know where to save the values oldSelection = sel; } else { - ::EnableWindow(::GetDlgItem(handle(), IDC_LOG_FORMAT), FALSE); - ::EnableWindow(::GetDlgItem(handle(), IDC_LOG_FILE), FALSE); + logFormat->setEnabled(false); + logFile->setEnabled(false); - ::SetDlgItemText(handle(), IDC_LOG_FILE, _T("")); - ::SetDlgItemText(handle(), IDC_LOG_FORMAT, _T("")); + logFile->setText(Util::emptyStringT); + logFormat->setText(Util::emptyStringT); } return 0; @@ -143,11 +147,7 @@ void LogPage::getValues() { if(oldSelection >= 0) { - TCHAR buf[512]; - - if(::GetDlgItemText(handle(), IDC_LOG_FILE, buf, 512) > 0) - options[oldSelection].first = buf; - if(::GetDlgItemText(handle(), IDC_LOG_FORMAT, buf, 512) > 0) - options[oldSelection].second = buf; + options[oldSelection].first = logFile->getText(); + options[oldSelection].second = logFormat->getText(); } } Modified: dcplusplus/trunk/win32/LogPage.h =================================================================== --- dcplusplus/trunk/win32/LogPage.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/LogPage.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -36,6 +36,10 @@ static TextItem texts[]; static ListItem listItems[]; + WidgetListViewPtr dataGrid; + WidgetTextBoxPtr logFormat; + WidgetTextBoxPtr logFile; + int oldSelection; //store all log options here so we can discard them @@ -44,9 +48,8 @@ TStringPairList options; void handleBrowseClicked(); + LRESULT handleItemChanged(); - HRESULT handleItemChanged(WidgetListViewPtr dataGrid, WPARAM wParam, LPARAM lParam); - void getValues(); }; Modified: dcplusplus/trunk/win32/MDIChildFrame.h =================================================================== --- dcplusplus/trunk/win32/MDIChildFrame.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/MDIChildFrame.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -127,9 +127,9 @@ bool reallyClose; - void addDlgCodeMessage(SmartWin::WidgetComboBox* widget) { + void addDlgCodeMessage(WidgetComboBox* widget) { widget->onRaw(std::tr1::bind(&ThisType::handleGetDlgCode, this, _1), SmartWin::Message(WM_GETDLGCODE)); - SmartWin::WidgetTextBox* text = widget->getTextBox(); + WidgetTextBox* text = widget->getTextBox(); if(text) text->onRaw(std::tr1::bind(&ThisType::handleGetDlgCode, this, _1), SmartWin::Message(WM_GETDLGCODE)); } @@ -139,9 +139,9 @@ widget->onRaw(std::tr1::bind(&ThisType::handleGetDlgCode, this, _1), SmartWin::Message(WM_GETDLGCODE)); } - void addColor(SmartWin::WidgetComboBox* widget) { + void addColor(WidgetComboBox* widget) { widget->onBackgroundColor(std::tr1::bind(&ThisType::handleBackgroundColor, this, _1)); - SmartWin::WidgetTextBox* text = widget->getTextBox(); + WidgetTextBox* text = widget->getTextBox(); if(text) text->onBackgroundColor(std::tr1::bind(&ThisType::handleBackgroundColor, this, _1)); } Modified: dcplusplus/trunk/win32/MagnetDlg.cpp =================================================================== --- dcplusplus/trunk/win32/MagnetDlg.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/MagnetDlg.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -25,7 +25,7 @@ #include "WinUtil.h" MagnetDlg::MagnetDlg(SmartWin::Widget* parent, const tstring& aHash, const tstring& aFileName) : - SmartWin::WidgetFactory<SmartWin::WidgetModalDialog>(parent), + WidgetFactory<SmartWin::WidgetModalDialog>(parent), //queue(0), search(0), doNothing(0), @@ -44,8 +44,8 @@ setText(T_("MAGNET Link detected")); ::SetDlgItemText(handle(), IDC_MAGNET_TEXT, CT_("DC++ has detected a MAGNET link with a file hash that can be searched for on the Direct Connect network. What would you like to do?")); ::SetDlgItemText(handle(), IDC_MAGNET_HASH, CT_("File Hash:")); - ::SetDlgItemText(handle(), IDC_MAGNET_DISP_HASH, mHash.c_str()); - ::SetDlgItemText(handle(), IDC_MAGNET_NAME, CT_("Filename:")); + attachTextBox(IDC_MAGNET_DISP_HASH)->setText(mHash.c_str()); + attachTextBox(IDC_MAGNET_NAME)->setText(T_("Filename:")); ::SetDlgItemText(handle(), IDC_MAGNET_DISP_NAME, mFileName.c_str()); //queue = attachRadioButton(IDC_MAGNET_1_QUEUE); Modified: dcplusplus/trunk/win32/MagnetDlg.h =================================================================== --- dcplusplus/trunk/win32/MagnetDlg.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/MagnetDlg.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -25,7 +25,9 @@ // and can take filename, size, etc. values from there. // - GargoyleMT -class MagnetDlg : public SmartWin::WidgetFactory<SmartWin::WidgetModalDialog> +#include "WidgetFactory.h" + +class MagnetDlg : public WidgetFactory<SmartWin::WidgetModalDialog> { public: MagnetDlg(SmartWin::Widget* parent, const tstring& aHash, const tstring& aFileName); Modified: dcplusplus/trunk/win32/MainWindow.cpp =================================================================== --- dcplusplus/trunk/win32/MainWindow.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/MainWindow.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -254,7 +254,7 @@ help->appendItem(IDC_HELP_DONATE, T_("Donate (paypal)"), std::tr1::bind(&MainWindow::handleLink, this, _1)); } - mainMenu->attach(); + mainMenu->setMenu(); } void MainWindow::initToolbar() { Modified: dcplusplus/trunk/win32/NetworkPage.cpp =================================================================== --- dcplusplus/trunk/win32/NetworkPage.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/NetworkPage.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -100,12 +100,17 @@ RADIO_ATTACH(IDC_SOCKS5); #undef RADIO_ATTACH -#define TEXTBOX_ATTACH(id) attachTextBox(id)->setTextLimit(250) - TEXTBOX_ATTACH(IDC_SOCKS_SERVER); - TEXTBOX_ATTACH(IDC_SOCKS_PORT); - TEXTBOX_ATTACH(IDC_SOCKS_USER); - TEXTBOX_ATTACH(IDC_SOCKS_PASSWORD); -#undef TEXTBOX_ATTACH +#define TEXTBOX_LIMIT(id) attachTextBox(id)->setTextLimit(250) + TEXTBOX_LIMIT(IDC_SOCKS_SERVER); + TEXTBOX_LIMIT(IDC_SOCKS_PORT); + TEXTBOX_LIMIT(IDC_SOCKS_USER); + TEXTBOX_LIMIT(IDC_SOCKS_PASSWORD); +#undef TEXTBOX_LIMIT + + attachTextBox(IDC_PORT_TCP); + attachTextBox(IDC_PORT_UDP); + attachTextBox(IDC_PORT_TLS); + attachTextBox(IDC_EXTERNAL_IP); } NetworkPage::~NetworkPage() { Modified: dcplusplus/trunk/win32/PropPage.cpp =================================================================== --- dcplusplus/trunk/win32/PropPage.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/PropPage.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -23,8 +23,8 @@ #include "PropPage.h" #include <dcpp/SettingsManager.h> +#include "WinUtil.h" - PropPage::PropPage(SmartWin::Widget* parent) : WidgetFactory<SmartWin::WidgetDialog>(parent) { onRaw(std::tr1::bind(&PropPage::handleHelp, this, _1, _2), SmartWin::Message(WM_HELP)); } Modified: dcplusplus/trunk/win32/PropPage.h =================================================================== --- dcplusplus/trunk/win32/PropPage.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/PropPage.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -22,7 +22,6 @@ #define SETTINGS_BUF_LEN 1024 #include "WidgetFactory.h" -#include "resource.h" class PropPage : public WidgetFactory<SmartWin::WidgetDialog> { Modified: dcplusplus/trunk/win32/QueuePage.cpp =================================================================== --- dcplusplus/trunk/win32/QueuePage.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/QueuePage.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -84,6 +84,17 @@ PropPage::translate(handle(), texts); PropPage::read(handle(), items, 0, 0); PropPage::read(handle(), items, optionItems, ::GetDlgItem(handle(), IDC_OTHER_QUEUE_OPTIONS)); + + attachTextBox(IDC_PRIO_HIGHEST_SIZE); + attachTextBox(IDC_PRIO_NORMAL_SIZE); + attachTextBox(IDC_PRIO_HIGH_SIZE); + attachTextBox(IDC_PRIO_LOW_SIZE); + attachTextBox(IDC_AUTODROP_SPEED); + attachTextBox(IDC_AUTODROP_ELAPSED); + attachTextBox(IDC_AUTODROP_MINSOURCES); + attachTextBox(IDC_AUTODROP_INTERVAL); + attachTextBox(IDC_AUTODROP_INACTIVITY); + attachTextBox(IDC_AUTODROP_FILESIZE); } QueuePage::~QueuePage() { Modified: dcplusplus/trunk/win32/TransferView.h =================================================================== --- dcplusplus/trunk/win32/TransferView.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/TransferView.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -25,6 +25,7 @@ #include <dcpp/QueueManagerListener.h> #include <dcpp/TaskQueue.h> #include <dcpp/forward.h> +#include <dcpp/MerkleTree.h> #include <dcpp/Util.h> #include "AspectSpeaker.h" Modified: dcplusplus/trunk/win32/UploadPage.cpp =================================================================== --- dcplusplus/trunk/win32/UploadPage.cpp 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/UploadPage.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -103,6 +103,9 @@ spinner = attachSpinner(IDC_MIN_UPLOAD_SPIN); spinner->setRange(0, UD_MAXVAL); + + attachTextBox(IDC_MIN_UPLOAD_SPEED); + attachTextBox(IDC_SLOTS); } UploadPage::~UploadPage() { Added: dcplusplus/trunk/win32/WidgetComboBox.cpp =================================================================== --- dcplusplus/trunk/win32/WidgetComboBox.cpp (rev 0) +++ dcplusplus/trunk/win32/WidgetComboBox.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -0,0 +1,36 @@ +/* + * Copyright (C) 2001-2008 Jacek Sieka, arnetheduck on gmail point com + * + * This program 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. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#include "stdafx.h" + +#include "WidgetComboBox.h" + +WidgetComboBox::WidgetComboBox( SmartWin::Widget * parent ) : BaseType(parent), textBox(0) { +} + +WidgetComboBox::WidgetTextBoxPtr WidgetComboBox::getTextBox() { + if(!textBox) { + LONG_PTR style = ::GetWindowLongPtr(handle(), GWL_STYLE); + if((style & CBS_SIMPLE) == CBS_SIMPLE || (style & CBS_DROPDOWN) == CBS_DROPDOWN) { + HWND wnd = ::FindWindowEx(handle(), NULL, _T("EDIT"), NULL); + if(wnd && wnd != handle()) + textBox = SmartWin::WidgetCreator< WidgetTextBox >::attach(this, wnd); + } + } + return textBox; +} Added: dcplusplus/trunk/win32/WidgetComboBox.h =================================================================== --- dcplusplus/trunk/win32/WidgetComboBox.h (rev 0) +++ dcplusplus/trunk/win32/WidgetComboBox.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -0,0 +1,41 @@ +/* + * Copyright (C) 2001-2008 Jacek Sieka, arnetheduck on gmail point com + * + * This program 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. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#ifndef DCPLUSPLUS_WIN32_WIDGETCOMBOBOX_H_ +#define DCPLUSPLUS_WIN32_WIDGETCOMBOBOX_H_ + +#include "WidgetTextBox.h" + +class WidgetComboBox : public SmartWin::WidgetComboBox { +private: + typedef SmartWin::WidgetComboBox BaseType; +public: + typedef WidgetComboBox ThisType; + + typedef ThisType* ObjectType; + + explicit WidgetComboBox( SmartWin::Widget * parent ); + + typedef WidgetTextBox::ObjectType WidgetTextBoxPtr; + WidgetTextBoxPtr getTextBox(); + +private: + WidgetTextBoxPtr textBox; +}; + +#endif /*WIDGETCOMBOBOX_H_*/ Modified: dcplusplus/trunk/win32/WidgetFactory.h =================================================================== --- dcplusplus/trunk/win32/WidgetFactory.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/WidgetFactory.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -20,6 +20,7 @@ #define DCPLUSPLUS_WIN32_WIDGETFACTORY2_H_ #include "WidgetTextBox.h" +#include "WidgetComboBox.h" #include "WidgetPaned.h" /** @@ -44,6 +45,20 @@ return SmartWin::WidgetCreator< WidgetTextBox >::attach( this, id ); } + /// ComboBox class type. + typedef ::WidgetComboBox WidgetComboBox; + + /// ComboBox object type. + typedef typename WidgetComboBox::ObjectType WidgetComboBoxPtr; + + WidgetComboBoxPtr createComboBox( const WidgetComboBox::Seed & cs = WidgetComboBox::Seed() ) { + return SmartWin::WidgetCreator< WidgetComboBox >::create( this, cs ); + } + + WidgetComboBoxPtr attachComboBox( unsigned id ) { + return SmartWin::WidgetCreator< WidgetComboBox >::attach( this, id ); + } + /// VPaned class type. typedef WidgetPaned< false > WidgetVPaned; Added: dcplusplus/trunk/win32/WidgetTextBox.cpp =================================================================== --- dcplusplus/trunk/win32/WidgetTextBox.cpp (rev 0) +++ dcplusplus/trunk/win32/WidgetTextBox.cpp 2008-03-02 20:31:51 UTC (rev 1023) @@ -0,0 +1,48 @@ +/* + * Copyright (C) 2001-2008 Jacek Sieka, arnetheduck on gmail point com + * + * This program 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. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#include "stdafx.h" + +#include "WidgetTextBox.h" + +#include "WinUtil.h" + +WidgetTextBox::WidgetTextBox( SmartWin::Widget * parent ) : BaseType(parent), menuOpened(false) { + this->onLeftMouseDblClick(std::tr1::bind(&WidgetTextBox::handleLeftDblClick, this, _1)); + + this->onRaw(std::tr1::bind(&WidgetTextBox::handleEnterIdle, this, _1, _2), SmartWin::Message(WM_ENTERIDLE)); + this->onRaw(std::tr1::bind(&WidgetTextBox::handleMenuSelect, this, _1, _2), SmartWin::Message(WM_MENUSELECT)); +} + +void WidgetTextBox::handleLeftDblClick(const SmartWin::MouseEventResult& ev) { + WinUtil::parseDBLClick(textUnderCursor(ev.pos)); +} + +LRESULT WidgetTextBox::handleEnterIdle(WPARAM wParam, LPARAM lParam) { + if(wParam == MSGF_MENU && !menuOpened) { + menu = SmartWin::WidgetCreator<SmartWin::WidgetMenu>::attach(this, reinterpret_cast<HMENU>(::SendMessage(reinterpret_cast<HWND>(lParam), MN_GETHMENU, 0, 0)), WinUtil::Seeds::menu); + menuOpened = true; + } + return 0; +} + +LRESULT WidgetTextBox::handleMenuSelect(WPARAM wParam, LPARAM lParam) { + if((HIWORD(wParam) == 0xFFFF) && (lParam == 0)) + menuOpened = false; + return 0; +} Modified: dcplusplus/trunk/win32/WidgetTextBox.h =================================================================== --- dcplusplus/trunk/win32/WidgetTextBox.h 2008-03-01 23:16:58 UTC (rev 1022) +++ dcplusplus/trunk/win32/WidgetTextBox.h 2008-03-02 20:31:51 UTC (rev 1023) @@ -19,9 +19,7 @@ #ifndef DCPLUSPLUS_WIN32_WIDGETTEXTBOX_H_ #define DCPLUSPLUS_WIN32_WIDGETTEXTBOX_H_ -#include "WinUtil.h" - -/** Our own flavour of text boxes that handle double clicks */ +/** Our own flavour of text boxes that handle double clicks and have fancy menus */ class WidgetTextBox : public SmartWin::WidgetTextBox { private: typedef SmartWin::WidgetTextBox BaseType; @@ -30,14 +28,16 @@ typedef ThisType* ObjectType; - explicit WidgetTextBox( SmartWin::Widget * parent ) : BaseType(parent) { - this->onLeftMouseDblClick(std::tr1::bind(&WidgetTextBox::handleLeftDblClick, this, _1)); - } + explicit WidgetTextBox( SmartWin::Widget * parent ); private: - void handleLeftDblClick(const SmartWin::MouseEventResult& ev) { - WinUtil::parseDBLClick(textUnderCursor(ev.pos)); - } + void handleLeftDblClick(const SmartWin::MouseEventResult& ev); + + LRESULT handleEnterIdle(WPARAM wParam, LPARAM lParam); + LRESULT handleMenuSelect(WPARAM wParam, LPARAM lParam); + + SmartWin::WidgetMenu::ObjectType menu; + bool menuOpened; }; #endif /*WIDGETTEXTBOX_H_*/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-01 23:17:01
|
Revision: 1022 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1022&view=rev Author: arnetheduck Date: 2008-03-01 15:16:58 -0800 (Sat, 01 Mar 2008) Log Message: ----------- boostify some mem handling Modified Paths: -------------- dcplusplus/trunk/dcpp/AdcHub.cpp dcplusplus/trunk/dcpp/BufferedSocket.cpp dcplusplus/trunk/dcpp/CryptoManager.cpp dcplusplus/trunk/dcpp/DirectoryListing.cpp dcplusplus/trunk/dcpp/DownloadManager.cpp dcplusplus/trunk/dcpp/File.cpp dcplusplus/trunk/dcpp/FilteredFile.h dcplusplus/trunk/dcpp/HashManager.cpp dcplusplus/trunk/dcpp/NmdcHub.cpp dcplusplus/trunk/dcpp/SearchManager.cpp dcplusplus/trunk/dcpp/ShareManager.cpp dcplusplus/trunk/dcpp/Streams.h dcplusplus/trunk/dcpp/Util.cpp dcplusplus/trunk/dcpp/Util.h dcplusplus/trunk/dcpp/stdinc.h dcplusplus/trunk/win32/PropPage.cpp dcplusplus/trunk/win32/WinUtil.cpp Modified: dcplusplus/trunk/dcpp/AdcHub.cpp =================================================================== --- dcplusplus/trunk/dcpp/AdcHub.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/AdcHub.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -643,15 +643,15 @@ return; if(!salt.empty()) { size_t saltBytes = salt.size() * 5 / 8; - AutoArray<uint8_t> buf(saltBytes); - Encoder::fromBase32(salt.c_str(), buf, saltBytes); + boost::scoped_array<uint8_t> buf(new uint8_t[saltBytes]); + Encoder::fromBase32(salt.c_str(), &buf[0], saltBytes); TigerHash th; if(oldPassword) { CID cid = getMyIdentity().getUser()->getCID(); th.update(cid.data(), CID::SIZE); } th.update(pwd.data(), pwd.length()); - th.update(buf, saltBytes); + th.update(&buf[0], saltBytes); send(AdcCommand(AdcCommand::CMD_PAS, AdcCommand::TYPE_HUB).addParam(Encoder::toBase32(th.finalize(), TigerHash::BYTES))); salt.clear(); } Modified: dcplusplus/trunk/dcpp/BufferedSocket.cpp =================================================================== --- dcplusplus/trunk/dcpp/BufferedSocket.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/BufferedSocket.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -183,7 +183,7 @@ const int BufSize = 1024; // Special to autodetect nmdc connections... string::size_type pos = 0; - AutoArray<uint8_t> buffer (BufSize); + boost::scoped_array<uint8_t> buffer (new uint8_t[BufSize]); size_t in; l = line; // decompress all input data and store in l. Modified: dcplusplus/trunk/dcpp/CryptoManager.cpp =================================================================== --- dcplusplus/trunk/dcpp/CryptoManager.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/CryptoManager.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -346,12 +346,12 @@ // We assume that the files aren't compressed more than 2:1...if they are it'll work anyway, // but we'll have to do multiple passes... size_t bufsize = 2*sz; - AutoArray<char> buf(bufsize); + boost::scoped_array<char> buf(new char[bufsize]); bs.avail_in = sz; bs.avail_out = bufsize; bs.next_in = (char*)(const_cast<uint8_t*>(is)); - bs.next_out = buf; + bs.next_out = &buf[0]; int err; @@ -362,13 +362,13 @@ BZ2_bzDecompressEnd(&bs); throw CryptoException(_("Error during decompression")); } - os.append(buf, bufsize-bs.avail_out); + os.append(&buf[0], bufsize-bs.avail_out); bs.avail_out = bufsize; - bs.next_out = buf; + bs.next_out = &buf[0]; } if(err == BZ_STREAM_END) - os.append(buf, bufsize-bs.avail_out); + os.append(&buf[0], bufsize-bs.avail_out); BZ2_bzDecompressEnd(&bs); @@ -379,7 +379,7 @@ } string CryptoManager::keySubst(const uint8_t* aKey, size_t len, size_t n) { - AutoArray<uint8_t> temp(len + n * 10); + boost::scoped_array<uint8_t> temp(new uint8_t[len + n * 10]); size_t j=0; @@ -400,14 +400,14 @@ temp[j++] = aKey[i]; } } - return string((char*)(uint8_t*)temp, j); + return string((const char*)&temp[0], j); } string CryptoManager::makeKey(const string& aLock) { if(aLock.size() < 3) return Util::emptyString; - AutoArray<uint8_t> temp(aLock.length()); + boost::scoped_array<uint8_t> temp(new uint8_t[aLock.length()]); uint8_t v1; size_t extra=0; @@ -431,7 +431,7 @@ extra++; } - return keySubst(temp, aLock.length(), extra); + return keySubst(&temp[0], aLock.length(), extra); } } // namespace dcpp Modified: dcplusplus/trunk/dcpp/DirectoryListing.cpp =================================================================== --- dcplusplus/trunk/dcpp/DirectoryListing.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/DirectoryListing.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -83,13 +83,13 @@ dcpp::File ff(name, dcpp::File::READ, dcpp::File::OPEN); FilteredInputStream<UnBZFilter, false> f(&ff); const size_t BUF_SIZE = 64*1024; - AutoArray<char> buf(BUF_SIZE); + boost::scoped_array<char> buf(new char[BUF_SIZE]); size_t len; size_t bytesRead = 0; for(;;) { size_t n = BUF_SIZE; - len = f.read(buf, n); - txt.append(buf, len); + len = f.read(&buf[0], n); + txt.append(&buf[0], len); bytesRead += len; if(SETTING(MAX_FILELIST_SIZE) && bytesRead > (size_t)SETTING(MAX_FILELIST_SIZE)*1024*1024) break; Modified: dcplusplus/trunk/dcpp/DownloadManager.cpp =================================================================== --- dcplusplus/trunk/dcpp/DownloadManager.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/DownloadManager.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -350,9 +350,9 @@ CalcInputStream<CRC32Filter, false> f(&ff); const size_t BUF_SIZE = 1024*1024; - AutoArray<uint8_t> b(BUF_SIZE); + boost::scoped_array<uint8_t> b(new uint8_t[BUF_SIZE]); size_t n = BUF_SIZE; - while(f.read((uint8_t*)b, n) > 0) + while(f.read(&b[0], n) > 0) ; // Keep on looping... return f.getFilter().getValue(); Modified: dcplusplus/trunk/dcpp/File.cpp =================================================================== --- dcplusplus/trunk/dcpp/File.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/File.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -350,13 +350,13 @@ // This doesn't assume all bytes are written in one write call, it is a bit safer void File::copyFile(const string& source, const string& target) throw(FileException) { const size_t BUF_SIZE = 64 * 1024; - AutoArray<char> buffer(BUF_SIZE); + boost::scoped_array<char> buffer(BUF_SIZE); size_t count = BUF_SIZE; File src(source, File::READ, 0); File dst(target, File::WRITE, File::CREATE | File::TRUNCATE); - while(src.read((char*)buffer, count) > 0) { - char* p = (char*)buffer; + while(src.read(&buffer[0], count) > 0) { + char* p = &buffer[0]; while(count > 0) { size_t ret = dst.write(p, count); p += ret; Modified: dcplusplus/trunk/dcpp/FilteredFile.h =================================================================== --- dcplusplus/trunk/dcpp/FilteredFile.h 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/FilteredFile.h 2008-03-01 23:16:58 UTC (rev 1022) @@ -95,7 +95,7 @@ public: using OutputStream::write; - FilteredOutputStream(OutputStream* aFile) : f(aFile), buf(BUF_SIZE), flushed(false) { } + FilteredOutputStream(OutputStream* aFile) : f(aFile), buf(new uint8_t[BUF_SIZE]), flushed(false) { } ~FilteredOutputStream() throw() { if(manage) delete f; } size_t flush() throw(Exception) { @@ -108,9 +108,9 @@ for(;;) { size_t n = BUF_SIZE; size_t zero = 0; - bool more = filter(NULL, zero, buf, n); + bool more = filter(NULL, zero, &buf[0], n); - written += f->write(buf, n); + written += f->write(&buf[0], n); if(!more) break; @@ -128,11 +128,11 @@ size_t n = BUF_SIZE; size_t m = len; - bool more = filter(wb, m, buf, n); + bool more = filter(wb, m, &buf[0], n); wb += m; len -= m; - written += f->write(buf, n); + written += f->write(&buf[0], n); if(!more) { if(len > 0) { @@ -151,14 +151,14 @@ OutputStream* f; Filter filter; - AutoArray<uint8_t> buf; + boost::scoped_array<uint8_t> buf; bool flushed; }; template<class Filter, bool managed> class FilteredInputStream : public InputStream { public: - FilteredInputStream(InputStream* aFile) : f(aFile), buf(BUF_SIZE), pos(0), valid(0), more(true) { } + FilteredInputStream(InputStream* aFile) : f(aFile), buf(new uint8_t[BUF_SIZE]), pos(0), valid(0), more(true) { } virtual ~FilteredInputStream() throw() { if(managed) delete f; } /** @@ -177,13 +177,13 @@ size_t curRead = BUF_SIZE; if(valid == 0) { dcassert(pos == 0); - valid = f->read(buf, curRead); + valid = f->read(&buf[0], curRead); totalRead += curRead; } size_t n = len - totalProduced; size_t m = valid - pos; - more = filter(buf + pos, m, rb, n); + more = filter(&buf[pos], m, rb, n); pos += m; if(pos == valid) { valid = pos = 0; @@ -200,7 +200,7 @@ InputStream* f; Filter filter; - AutoArray<uint8_t> buf; + boost::scoped_array<uint8_t> buf; size_t pos; size_t valid; bool more; Modified: dcplusplus/trunk/dcpp/HashManager.cpp =================================================================== --- dcplusplus/trunk/dcpp/HashManager.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/HashManager.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -153,9 +153,9 @@ try { f.setPos(ti.getIndex()); size_t datalen = TigerTree::calcBlocks(ti.getSize(), ti.getBlockSize()) * TTHValue::BYTES; - AutoArray<uint8_t> buf(datalen); - f.read((uint8_t*)buf, datalen); - tt = TigerTree(ti.getSize(), ti.getBlockSize(), buf); + boost::scoped_array<uint8_t> buf(new uint8_t[datalen]); + f.read(&buf[0], datalen); + tt = TigerTree(ti.getSize(), ti.getBlockSize(), &buf[0]); if(!(tt.getRoot() == root)) return false; } catch(const Exception&) { Modified: dcplusplus/trunk/dcpp/NmdcHub.cpp =================================================================== --- dcplusplus/trunk/dcpp/NmdcHub.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/NmdcHub.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -807,7 +807,6 @@ void NmdcHub::search(int aSizeType, int64_t aSize, int aFileType, const string& aString, const string&) { checkstate(); - AutoArray<char> buf((char*)NULL); char c1 = (aSizeType == SearchManager::SIZE_DONTCARE) ? 'F' : 'T'; char c2 = (aSizeType == SearchManager::SIZE_ATLEAST) ? 'F' : 'T'; string tmp = ((aFileType == SearchManager::TYPE_TTH) ? "TTH:" + aString : fromUtf8(escape(aString))); @@ -815,19 +814,19 @@ while((i = tmp.find(' ')) != string::npos) { tmp[i] = '$'; } - int chars = 0; size_t BUF_SIZE; + string tmp2; if(ClientManager::getInstance()->isActive()) { string x = getLocalIp(); BUF_SIZE = x.length() + aString.length() + 64; - buf = new char[BUF_SIZE]; - chars = snprintf(buf, BUF_SIZE, "$Search %s:%d %c?%c?%s?%d?%s|", x.c_str(), (int)SearchManager::getInstance()->getPort(), c1, c2, Util::toString(aSize).c_str(), aFileType+1, tmp.c_str()); + tmp2.resize(BUF_SIZE); + tmp2.resize(snprintf(&tmp2[0], tmp2.size(), "$Search %s:%d %c?%c?%s?%d?%s|", x.c_str(), (int)SearchManager::getInstance()->getPort(), c1, c2, Util::toString(aSize).c_str(), aFileType+1, tmp.c_str())); } else { BUF_SIZE = getMyNick().length() + aString.length() + 64; - buf = new char[BUF_SIZE]; - chars = snprintf(buf, BUF_SIZE, "$Search Hub:%s %c?%c?%s?%d?%s|", fromUtf8(getMyNick()).c_str(), c1, c2, Util::toString(aSize).c_str(), aFileType+1, tmp.c_str()); + tmp2.resize(BUF_SIZE); + tmp2.resize(snprintf(&tmp2[0], tmp2.size(), "$Search Hub:%s %c?%c?%s?%d?%s|", fromUtf8(getMyNick()).c_str(), c1, c2, Util::toString(aSize).c_str(), aFileType+1, tmp.c_str())); } - send(buf, chars); + send(tmp2); } string NmdcHub::validateMessage(string tmp, bool reverse) { Modified: dcplusplus/trunk/dcpp/SearchManager.cpp =================================================================== --- dcplusplus/trunk/dcpp/SearchManager.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/SearchManager.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -145,15 +145,15 @@ #define BUFSIZE 8192 int SearchManager::run() { - AutoArray<uint8_t> buf(BUFSIZE); + boost::scoped_array<uint8_t> buf(new uint8_t[BUFSIZE]); int len; while(true) { string remoteAddr; try { - while( (len = socket->read((uint8_t*)buf, BUFSIZE, remoteAddr)) != 0) { - onData(buf, len, remoteAddr); + while( (len = socket->read(&buf[0], BUFSIZE, remoteAddr)) != 0) { + onData(&buf[0], len, remoteAddr); } } catch(const SocketException& e) { dcdebug("SearchManager::run Error: %s\n", e.getError().c_str()); Modified: dcplusplus/trunk/dcpp/ShareManager.cpp =================================================================== --- dcplusplus/trunk/dcpp/ShareManager.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/ShareManager.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -363,12 +363,12 @@ dcpp::File ff(Util::getConfigPath() + "files.xml.bz2", dcpp::File::READ, dcpp::File::OPEN); FilteredInputStream<UnBZFilter, false> f(&ff); const size_t BUF_SIZE = 64*1024; - AutoArray<char> buf(BUF_SIZE); + boost::scoped_array<char> buf(new char[BUF_SIZE]); size_t len; for(;;) { size_t n = BUF_SIZE; - len = f.read(buf, n); - txt.append(buf, len); + len = f.read(&buf[0], n); + txt.append(&buf[0], len); if(len < BUF_SIZE) break; } Modified: dcplusplus/trunk/dcpp/Streams.h =================================================================== --- dcplusplus/trunk/dcpp/Streams.h 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/Streams.h 2008-03-01 23:16:58 UTC (rev 1022) @@ -127,7 +127,7 @@ public: using OutputStream::write; - BufferedOutputStream(OutputStream* aStream, size_t aBufSize = SETTING(BUFFER_SIZE) * 1024) : s(aStream), pos(0), bufSize(aBufSize), buf(aBufSize) { } + BufferedOutputStream(OutputStream* aStream, size_t aBufSize = SETTING(BUFFER_SIZE) * 1024) : s(aStream), pos(0), buf(aBufSize) { } virtual ~BufferedOutputStream() throw() { try { // We must do this in order not to lose bytes when a download @@ -140,7 +140,7 @@ virtual size_t flush() throw(Exception) { if(pos > 0) - s->write(buf, pos); + s->write(&buf[0], pos); pos = 0; s->flush(); return 0; @@ -149,18 +149,19 @@ virtual size_t write(const void* wbuf, size_t len) throw(Exception) { uint8_t* b = (uint8_t*)wbuf; size_t l2 = len; + size_t bufSize = buf.size(); while(len > 0) { if(pos == 0 && len >= bufSize) { s->write(b, len); break; } else { size_t n = min(bufSize - pos, len); - memcpy(buf + pos, b, n); + memcpy(&buf[pos], b, n); b += n; pos += n; len -= n; if(pos == bufSize) { - s->write(buf, bufSize); + s->write(&buf[0], bufSize); pos = 0; } } @@ -170,8 +171,7 @@ private: OutputStream* s; size_t pos; - size_t bufSize; - AutoArray<uint8_t> buf; + ByteVector buf; }; class StringOutputStream : public OutputStream { Modified: dcplusplus/trunk/dcpp/Util.cpp =================================================================== --- dcplusplus/trunk/dcpp/Util.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/Util.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -669,17 +669,18 @@ tmp[1] = tmp[2] = tmp[3] = 0; StringMap sm; - AutoArray<char> buf(1024); + static const size_t BUF_SIZE = 1024; + boost::scoped_array<char> buf(new char[BUF_SIZE]); for(size_t i = 0; i < strlen(codes); ++i) { tmp[1] = codes[i]; tmp[2] = 0; - strftime(buf, 1024-1, tmp, t); - sm[tmp] = buf; + strftime(&buf[0], BUF_SIZE-1, tmp, t); + sm[tmp] = &buf[0]; tmp[1] = '#'; tmp[2] = codes[i]; - strftime(buf, 1024-1, tmp, t); - sm[tmp] = buf; + strftime(&buf[0], BUF_SIZE-1, tmp, t); + sm[tmp] = &buf[0]; } for(StringMapIter i = sm.begin(); i != sm.end(); ++i) { @@ -701,13 +702,15 @@ return Util::emptyString; } #if _WIN32 - AutoArray<TCHAR> buf(bufsize); + tstring buf(bufsize, 0); - if(!_tcsftime(buf, bufsize-1, Text::toT(msg).c_str(), loc)) { + buf.resize(_tcsftime(&buf[0], buf.size()-1, Text::toT(msg).c_str(), loc)); + + if(buf.empty()) { return fixedftime(msg, loc); } - return Text::fromT(tstring(buf)); + return Text::fromT(buf); #else // will this give wide representations for %a and %A? // surely win32 can't have a leg up on linux/unixen in this area. - Todd Modified: dcplusplus/trunk/dcpp/Util.h =================================================================== --- dcplusplus/trunk/dcpp/Util.h 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/Util.h 2008-03-01 23:16:58 UTC (rev 1022) @@ -87,22 +87,6 @@ template<typename T1> inline int compare(const T1& v1, const T1& v2) { return (v1 < v2) ? -1 : ((v1 == v2) ? 0 : 1); } -template<typename T> -class AutoArray { - typedef T* TPtr; -public: - explicit AutoArray(TPtr t) : p(t) { } - explicit AutoArray(size_t size) : p(new T[size]) { } - ~AutoArray() { delete[] p; } - operator TPtr() { return p; } - AutoArray& operator=(TPtr t) { delete[] p; p = t; return *this; } -private: - AutoArray(const AutoArray&); - AutoArray& operator=(const AutoArray&); - - TPtr p; -}; - class Util { public: Modified: dcplusplus/trunk/dcpp/stdinc.h =================================================================== --- dcplusplus/trunk/dcpp/stdinc.h 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/dcpp/stdinc.h 2008-03-01 23:16:58 UTC (rev 1022) @@ -120,6 +120,7 @@ #include <libintl.h> #include <boost/format.hpp> +#include <boost/scoped_array.hpp> #ifdef _STLPORT_VERSION Modified: dcplusplus/trunk/win32/PropPage.cpp =================================================================== --- dcplusplus/trunk/win32/PropPage.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/win32/PropPage.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -92,22 +92,24 @@ SettingsManager* settings = SettingsManager::getInstance(); - AutoArray<TCHAR> buf(SETTINGS_BUF_LEN); + tstring buf; for(Item const* i = items; i->type != T_END; i++) { switch(i->type) { case T_STR: { - ::GetDlgItemText(page, i->itemID, buf, SETTINGS_BUF_LEN); - settings->set((SettingsManager::StrSetting)i->setting, Text::fromT(tstring(buf))); + buf.resize(SETTINGS_BUF_LEN); + buf.resize(::GetDlgItemText(page, i->itemID, &buf[0], buf.size())); + settings->set((SettingsManager::StrSetting)i->setting, Text::fromT(buf)); break; } case T_INT: { - ::GetDlgItemText(page, i->itemID, buf, SETTINGS_BUF_LEN); - settings->set((SettingsManager::IntSetting)i->setting, Text::fromT(tstring(buf))); + buf.resize(SETTINGS_BUF_LEN); + buf.resize(::GetDlgItemText(page, i->itemID, &buf[0], buf.size())); + settings->set((SettingsManager::IntSetting)i->setting, Text::fromT(buf)); break; } case T_BOOL: @@ -120,7 +122,7 @@ } } - if(listItems != NULL) { + if(listItems) { int i; for(i = 0; listItems[i].setting != 0; i++) { settings->set(SettingsManager::IntSetting(listItems[i].setting), ListView_GetCheckState(list, i) > 0); Modified: dcplusplus/trunk/win32/WinUtil.cpp =================================================================== --- dcplusplus/trunk/win32/WinUtil.cpp 2008-03-01 22:39:24 UTC (rev 1021) +++ dcplusplus/trunk/win32/WinUtil.cpp 2008-03-01 23:16:58 UTC (rev 1022) @@ -904,9 +904,9 @@ STARTUPINFO si = { sizeof(si), 0 }; PROCESS_INFORMATION pi = { 0 }; - AutoArray<TCHAR> buf(cmdLine.length() + 1); - _tcscpy(buf, cmdLine.c_str()); - if(::CreateProcess(cmd.c_str(), buf, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi)) { + boost::scoped_ptr<TCHAR> buf(new TCHAR[cmdLine.length() + 1]); + _tcscpy(&buf[0], cmdLine.c_str()); + if(::CreateProcess(cmd.c_str(), &buf[0], NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi)) { ::CloseHandle(pi.hThread); ::CloseHandle(pi.hProcess); return; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-01 22:39:32
|
Revision: 1021 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1021&view=rev Author: arnetheduck Date: 2008-03-01 14:39:24 -0800 (Sat, 01 Mar 2008) Log Message: ----------- Simplify memory handling Modified Paths: -------------- dcplusplus/trunk/smartwin/source/widgets/WidgetListView.cpp Modified: dcplusplus/trunk/smartwin/source/widgets/WidgetListView.cpp =================================================================== --- dcplusplus/trunk/smartwin/source/widgets/WidgetListView.cpp 2008-03-01 22:00:01 UTC (rev 1020) +++ dcplusplus/trunk/smartwin/source/widgets/WidgetListView.cpp 2008-03-01 22:39:24 UTC (rev 1021) @@ -4,6 +4,8 @@ #include "../../include/smartwin/LibraryLoader.h" +#include <boost/scoped_array.hpp> + namespace SmartWin { bool WidgetListView::ComCtl6 = false; @@ -408,28 +410,19 @@ logicalColumn = - 1; HWND hHeader = reinterpret_cast< HWND >( ::SendMessage( hWnd, LVM_GETHEADER, 0, 0 ) ); int noItems = ::SendMessage( hHeader, HDM_GETITEMCOUNT, 0, 0 ); - int * myArrayOfCols = new int[noItems]; // TODO: Use boost::scoped_array or something... + boost::scoped_array<int> myArrayOfCols(new int[noItems]); int xOffset = 0; - try + ::SendMessage( hHeader, HDM_GETORDERARRAY, static_cast< WPARAM >( noItems ), reinterpret_cast< LPARAM >( myArrayOfCols.get() ) ); + for ( int idx = 0; idx < noItems; ++idx ) { - ::SendMessage( hHeader, HDM_GETORDERARRAY, static_cast< WPARAM >( noItems ), reinterpret_cast< LPARAM >( myArrayOfCols ) ); - for ( int idx = 0; idx < noItems; ++idx ) + if ( myArrayOfCols[idx] == column ) { - if ( myArrayOfCols[idx] == column ) - { - logicalColumn = idx; - break; - } - else - xOffset += ListView_GetColumnWidth( hWnd, myArrayOfCols[idx] ); + logicalColumn = idx; + break; } - delete [] myArrayOfCols; + else + xOffset += ListView_GetColumnWidth( hWnd, myArrayOfCols[idx] ); } - catch ( ... ) - { - delete [] myArrayOfCols; - throw; - } return xOffset; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-03-01 22:00:50
|
Revision: 1020 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1020&view=rev Author: arnetheduck Date: 2008-03-01 14:00:01 -0800 (Sat, 01 Mar 2008) Log Message: ----------- auto-coral all urls, mem leak fix Modified Paths: -------------- dcplusplus/trunk/changelog.txt dcplusplus/trunk/dcpp/BufferedSocket.cpp dcplusplus/trunk/dcpp/CryptoManager.cpp dcplusplus/trunk/dcpp/FavoriteManager.h dcplusplus/trunk/dcpp/HttpConnection.cpp dcplusplus/trunk/dcpp/SettingsManager.cpp dcplusplus/trunk/dcpp/SettingsManager.h dcplusplus/trunk/win32/AboutDlg.cpp dcplusplus/trunk/win32/AdvancedPage.cpp dcplusplus/trunk/win32/MainWindow.cpp Modified: dcplusplus/trunk/changelog.txt =================================================================== --- dcplusplus/trunk/changelog.txt 2008-02-29 22:58:00 UTC (rev 1019) +++ dcplusplus/trunk/changelog.txt 2008-03-01 22:00:01 UTC (rev 1020) @@ -39,7 +39,9 @@ * Fixed clicking on active tab (poy) * [L#195209] Fixed tabbing in hub windows (poy) * [L#195209] Fixed Ctrl+F that opens favorite hubs (poy) +* [L#194696] Fixed small memory leak + -- 0.704 2007-12-14 -- * Hub lists added to utilize Coral's distributed network (ullner) * Use system header arrows on common controls 6+ (thanks poy) Modified: dcplusplus/trunk/dcpp/BufferedSocket.cpp =================================================================== --- dcplusplus/trunk/dcpp/BufferedSocket.cpp 2008-02-29 22:58:00 UTC (rev 1019) +++ dcplusplus/trunk/dcpp/BufferedSocket.cpp 2008-03-01 22:00:01 UTC (rev 1020) @@ -411,30 +411,34 @@ continue; } - switch(p.first) { - case SEND_DATA: - threadSendData(); break; - case SEND_FILE: - threadSendFile(((SendFileInfo*)p.second)->stream); break; - case CONNECT: - { - ConnectInfo* ci = (ConnectInfo*)p.second; - threadConnect(ci->addr, ci->port, ci->proxy); + try { + switch(p.first) { + case SEND_DATA: + threadSendData(); break; + case SEND_FILE: + threadSendFile(((SendFileInfo*)p.second)->stream); break; + case CONNECT: + { + ConnectInfo* ci = (ConnectInfo*)p.second; + threadConnect(ci->addr, ci->port, ci->proxy); + break; + } + case DISCONNECT: + if(isConnected()) + fail(_("Disconnected")); break; - } - case DISCONNECT: - if(isConnected()) - fail(_("Disconnected")); - break; - case SHUTDOWN: - return false; - case ACCEPTED: - break; - case UPDATED: - fire(BufferedSocketListener::Updated()); - break; + case SHUTDOWN: + return false; + case ACCEPTED: + break; + case UPDATED: + fire(BufferedSocketListener::Updated()); + break; + } + } catch(...) { + delete p.second; + throw; } - delete p.second; } return true; Modified: dcplusplus/trunk/dcpp/CryptoManager.cpp =================================================================== --- dcplusplus/trunk/dcpp/CryptoManager.cpp 2008-02-29 22:58:00 UTC (rev 1019) +++ dcplusplus/trunk/dcpp/CryptoManager.cpp 2008-03-01 22:00:01 UTC (rev 1020) @@ -149,7 +149,7 @@ ssl::X509 x509ss(X509_new()); if(!bn || !rsa || !pkey || !nm || !x509ss) { - throw new CryptoException("Error creating objects for cert generation"); + throw CryptoException("Error creating objects for cert generation"); } int days = 10; Modified: dcplusplus/trunk/dcpp/FavoriteManager.h =================================================================== --- dcplusplus/trunk/dcpp/FavoriteManager.h 2008-02-29 22:58:00 UTC (rev 1019) +++ dcplusplus/trunk/dcpp/FavoriteManager.h 2008-03-01 22:00:01 UTC (rev 1020) @@ -122,6 +122,7 @@ int lastServer; HubTypes listType; string downloadBuf; + bool coral; ///< Currently downloading from a coraled list /** Used during loading to prevent saving. */ bool dontSave; Modified: dcplusplus/trunk/dcpp/HttpConnection.cpp =================================================================== --- dcplusplus/trunk/dcpp/HttpConnection.cpp 2008-02-29 22:58:00 UTC (rev 1019) +++ dcplusplus/trunk/dcpp/HttpConnection.cpp 2008-03-01 22:00:01 UTC (rev 1020) @@ -26,6 +26,8 @@ namespace dcpp { +static const std::string CORAL_SUFFIX = ".nyud.net"; + /** * Downloads a file and returns it as a string * @todo Report exceptions @@ -61,6 +63,12 @@ Util::decodeUrl(SETTING(HTTP_PROXY), server, port, file); file = currentUrl; } + + if(SETTING(CORAL)) { + if(server.length() > CORAL_SUFFIX.length() && server.compare(server.length() - CORAL_SUFFIX.length(), CORAL_SUFFIX.length(), CORAL_SUFFIX) != 0) { + server += CORAL_SUFFIX; + } + } if(port == 0) port = 80; Modified: dcplusplus/trunk/dcpp/SettingsManager.cpp =================================================================== --- dcplusplus/trunk/dcpp/SettingsManager.cpp 2008-02-29 22:58:00 UTC (rev 1019) +++ dcplusplus/trunk/dcpp/SettingsManager.cpp 2008-03-01 22:00:01 UTC (rev 1020) @@ -77,7 +77,7 @@ "UseTLS", "AutoSearchLimit", "AltSortOrder", "AutoKickNoFavs", "PromptPassword", "SpyFrameIgnoreTthSearches", "DontDlAlreadyQueued", "MaxCommandLength", "AllowUntrustedHubs", "AllowUntrustedClients", "TLSPort", "FastHash", "SortFavUsersFirst", "ShowShellMenu", "MinSegmentSize", "FollowLinks", - "SendBloom", "OwnerDrawnMenus", + "SendBloom", "OwnerDrawnMenus", "Coral", "SENTRY", // Int64 "TotalUpload", "TotalDownload", @@ -136,7 +136,7 @@ setDefault(IGNORE_BOT_PMS, false); setDefault(LIST_DUPES, true); setDefault(BUFFER_SIZE, 64); - setDefault(HUBLIST_SERVERS, "http://hublist.hubtracker.com.nyud.net/hublist.xml.bz2;http://dchublist.com.nyud.net/hublist.xml.bz2;http://adchublist.com.nyud.net/hublist.xml.bz2;http://www.hublist.org.nyud.net/PublicHubList.xml.bz2;http://dclist.eu.nyud.net/hublist.xml.bz2;http://download.hublist.cz.nyud.net/hublist.xml.bz2;http://hublist.awenet.info.nyud.net/PublicHubList.xml.bz2"); + setDefault(HUBLIST_SERVERS, "http://hublist.hubtracker.com/hublist.xml.bz2;http://dchublist.com/hublist.xml.bz2;http://adchublist.com/hublist.xml.bz2;http://www.hublist.org/PublicHubList.xml.bz2;http://dclist.eu/hublist.xml.bz2;http://download.hublist.cz/hublist.xml.bz2;http://hublist.awenet.info/PublicHubList.xml.bz2"); setDefault(DOWNLOAD_SLOTS, 3); setDefault(MAX_DOWNLOAD_SPEED, 0); setDefault(LOG_DIRECTORY, Util::getConfigPath() + "Logs" PATH_SEPARATOR_STR); @@ -274,7 +274,8 @@ setDefault(FOLLOW_LINKS, false); setDefault(SEND_BLOOM, true); setDefault(OWNER_DRAWN_MENUS, true); - + setDefault(CORAL, true); + #ifdef _WIN32 setDefault(MAIN_WINDOW_STATE, SW_SHOWNORMAL); setDefault(MAIN_WINDOW_SIZE_X, CW_USEDEFAULT); Modified: dcplusplus/trunk/dcpp/SettingsManager.h =================================================================== --- dcplusplus/trunk/dcpp/SettingsManager.h 2008-02-29 22:58:00 UTC (rev 1019) +++ dcplusplus/trunk/dcpp/SettingsManager.h 2008-03-01 22:00:01 UTC (rev 1020) @@ -90,7 +90,7 @@ USE_TLS, AUTO_SEARCH_LIMIT, ALT_SORT_ORDER, AUTO_KICK_NO_FAVS, PROMPT_PASSWORD, SPY_FRAME_IGNORE_TTH_SEARCHES, DONT_DL_ALREADY_QUEUED, MAX_COMMAND_LENGTH, ALLOW_UNTRUSTED_HUBS, ALLOW_UNTRUSTED_CLIENTS, TLS_PORT, FAST_HASH, SORT_FAVUSERS_FIRST, SHOW_SHELL_MENU, MIN_SEGMENT_SIZE, FOLLOW_LINKS, - SEND_BLOOM, OWNER_DRAWN_MENUS, + SEND_BLOOM, OWNER_DRAWN_MENUS, CORAL, INT_LAST }; enum Int64Setting { INT64_FIRST = INT_LAST + 1, Modified: dcplusplus/trunk/win32/AboutDlg.cpp =================================================================== --- dcplusplus/trunk/win32/AboutDlg.cpp 2008-02-29 22:58:00 UTC (rev 1019) +++ dcplusplus/trunk/win32/AboutDlg.cpp 2008-03-01 22:00:01 UTC (rev 1020) @@ -67,7 +67,7 @@ centerWindow(); c.addListener(this); - c.downloadFile("http://dcplusplus.sourceforge.net.nyud.net/version.xml"); + c.downloadFile("http://dcplusplus.sourceforge.net/version.xml"); return false; } Modified: dcplusplus/trunk/win32/AdvancedPage.cpp =================================================================== --- dcplusplus/trunk/win32/AdvancedPage.cpp 2008-02-29 22:58:00 UTC (rev 1019) +++ dcplusplus/trunk/win32/AdvancedPage.cpp 2008-03-01 22:00:01 UTC (rev 1020) @@ -47,6 +47,7 @@ { SettingsManager::AUTO_KICK_NO_FAVS, N_("Don't automatically disconnect favorite users who leave the hub") }, { SettingsManager::SHOW_SHELL_MENU, N_("Show shell menu where possible") }, { SettingsManager::OWNER_DRAWN_MENUS, N_("Use extended menus with icons and titles") }, + { SettingsManager::CORAL, N_("Use Coral network when downloading hub lists (improves reliability)") }, { 0, 0 } }; Modified: dcplusplus/trunk/win32/MainWindow.cpp =================================================================== --- dcplusplus/trunk/win32/MainWindow.cpp 2008-02-29 22:58:00 UTC (rev 1019) +++ dcplusplus/trunk/win32/MainWindow.cpp 2008-03-01 22:00:01 UTC (rev 1020) @@ -106,7 +106,7 @@ c = new HttpConnection; c->addListener(this); - c->downloadFile("http://dcplusplus.sourceforge.net.nyud.net/version.xml"); + c->downloadFile("http://dcplusplus.sourceforge.net/version.xml"); File::ensureDirectory(SETTING(LOG_DIRECTORY)); startSocket(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <zou...@us...> - 2008-02-29 22:58:02
|
Revision: 1019 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1019&view=rev Author: zouzou123gen Date: 2008-02-29 14:58:00 -0800 (Fri, 29 Feb 2008) Log Message: ----------- Fixed Ctrl+F that opens favorite hubs Modified Paths: -------------- dcplusplus/trunk/changelog.txt dcplusplus/trunk/win32/DCPlusPlus.rc dcplusplus/trunk/win32/resource.h Modified: dcplusplus/trunk/changelog.txt =================================================================== --- dcplusplus/trunk/changelog.txt 2008-02-29 18:12:34 UTC (rev 1018) +++ dcplusplus/trunk/changelog.txt 2008-02-29 22:58:00 UTC (rev 1019) @@ -37,7 +37,8 @@ * Don't always show the tray icon after killing and re-opening explorer.exe (poy) * Updated links (thanks pietry) * Fixed clicking on active tab (poy) -* Fixed tabbing in hub windows (poy) +* [L#195209] Fixed tabbing in hub windows (poy) +* [L#195209] Fixed Ctrl+F that opens favorite hubs (poy) -- 0.704 2007-12-14 -- * Hub lists added to utilize Coral's distributed network (ullner) Modified: dcplusplus/trunk/win32/DCPlusPlus.rc =================================================================== --- dcplusplus/trunk/win32/DCPlusPlus.rc 2008-02-29 18:12:34 UTC (rev 1018) +++ dcplusplus/trunk/win32/DCPlusPlus.rc 2008-02-29 22:58:00 UTC (rev 1019) @@ -880,7 +880,7 @@ "3", IDC_VIEW_TRANSFER_VIEW, VIRTKEY, CONTROL, NOINVERT "D", IDC_QUEUE, VIRTKEY, CONTROL, NOINVERT "E", IDC_REFRESH_FILE_LIST, VIRTKEY, CONTROL, NOINVERT - "F", IDC_FAVORITES, VIRTKEY, CONTROL, NOINVERT + "F", IDC_FAVORITE_HUBS, VIRTKEY, CONTROL, NOINVERT "L", IDC_OPEN_FILE_LIST, VIRTKEY, CONTROL, NOINVERT "N", IDC_NOTEPAD, VIRTKEY, CONTROL, NOINVERT "P", IDC_CONNECT, VIRTKEY, CONTROL, NOINVERT Modified: dcplusplus/trunk/win32/resource.h =================================================================== --- dcplusplus/trunk/win32/resource.h 2008-02-29 18:12:34 UTC (rev 1018) +++ dcplusplus/trunk/win32/resource.h 2008-02-29 22:58:00 UTC (rev 1019) @@ -81,7 +81,6 @@ #define IDC_VIEW_TOOLBAR 1007 #define IDC_VIEW_TRANSFER_VIEW 1008 #define IDC_PUBLIC_HUBS 1009 -#define IDC_FAVORITE_HUBS 1010 #define IDC_GETLIST 1011 #define IDC_COPY_FILENAME 1012 #define IDC_GRANTSLOT 1013 @@ -206,7 +205,7 @@ #define IDC_EMAIL 2047 #define IDC_EXTERNAL_IP 2048 #define IDC_FAVORITE_DIRECTORIES 2049 -#define IDC_FAVORITES 2050 +#define IDC_FAVORITE_HUBS 2050 #define IDC_FAVUSERS 2051 #define IDC_FH_ADDRESS 2052 #define IDC_FH_HUB 2053 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <zou...@us...> - 2008-02-29 18:58:48
|
Revision: 1018 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1018&view=rev Author: zouzou123gen Date: 2008-02-29 10:12:34 -0800 (Fri, 29 Feb 2008) Log Message: ----------- Fixed tabbing in hub windows Modified Paths: -------------- dcplusplus/trunk/changelog.txt dcplusplus/trunk/win32/HubFrame.cpp Modified: dcplusplus/trunk/changelog.txt =================================================================== --- dcplusplus/trunk/changelog.txt 2008-02-21 20:56:33 UTC (rev 1017) +++ dcplusplus/trunk/changelog.txt 2008-02-29 18:12:34 UTC (rev 1018) @@ -37,6 +37,7 @@ * Don't always show the tray icon after killing and re-opening explorer.exe (poy) * Updated links (thanks pietry) * Fixed clicking on active tab (poy) +* Fixed tabbing in hub windows (poy) -- 0.704 2007-12-14 -- * Hub lists added to utilize Coral's distributed network (ullner) Modified: dcplusplus/trunk/win32/HubFrame.cpp =================================================================== --- dcplusplus/trunk/win32/HubFrame.cpp 2008-02-21 20:56:33 UTC (rev 1017) +++ dcplusplus/trunk/win32/HubFrame.cpp 2008-02-29 18:12:34 UTC (rev 1018) @@ -100,19 +100,9 @@ message->onKeyDown(std::tr1::bind(&HubFrame::handleMessageKeyDown, this, _1)); message->onChar(std::tr1::bind(&HubFrame::handleMessageChar, this, _1)); } - + { WidgetTextBox::Seed cs = WinUtil::Seeds::textBox; - cs.style = WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_VSCROLL | ES_MULTILINE | ES_NOHIDESEL | ES_READONLY; - chat = createTextBox(cs); - chat->setTextLimit(0); - addWidget(chat); - paned->setFirst(chat); - chat->onContextMenu(std::tr1::bind(&HubFrame::handleChatContextMenu, this, _1)); - } - - { - WidgetTextBox::Seed cs = WinUtil::Seeds::textBox; cs.style = WS_CHILD | WS_VISIBLE | WS_TABSTOP | ES_AUTOHSCROLL; filter = createTextBox(cs); addWidget(filter); @@ -130,8 +120,18 @@ filterType->setSelectedIndex(COLUMN_LAST); filterType->onSelectionChanged(std::tr1::bind(&HubFrame::updateUserList, this, (UserInfo*)0)); } - + { + WidgetTextBox::Seed cs = WinUtil::Seeds::textBox; + cs.style = WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_VSCROLL | ES_MULTILINE | ES_NOHIDESEL | ES_READONLY; + chat = createTextBox(cs); + chat->setTextLimit(0); + addWidget(chat); + paned->setFirst(chat); + chat->onContextMenu(std::tr1::bind(&HubFrame::handleChatContextMenu, this, _1)); + } + + { users = SmartWin::WidgetCreator<WidgetUsers>::create(this, WinUtil::Seeds::listView); addWidget(users); paned->setSecond(users); @@ -151,6 +151,7 @@ { WidgetCheckBox::Seed cs(_T("+/-")); + cs.style &= ~WS_TABSTOP; showUsers = createCheckBox(cs); showUsers->setChecked(BOOLSETTING(GET_USER_INFO)); } @@ -681,7 +682,7 @@ bool HubFrame::handleMessageChar(int c) { switch(c) { - case VK_TAB: + case VK_TAB: return true; break; case VK_RETURN: { if(!(isShiftPressed() || isControlPressed() || isAltPressed())) { return true; @@ -1292,7 +1293,8 @@ bool HubFrame::tab() { if(message->length() == 0) { - return false; + ::SetFocus(::GetNextDlgTabItem(handle(), message->handle(), isShiftPressed())); + return true; } HWND focus = GetFocus(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arn...@us...> - 2008-02-21 20:57:11
|
Revision: 1017 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1017&view=rev Author: arnetheduck Date: 2008-02-21 12:56:33 -0800 (Thu, 21 Feb 2008) Log Message: ----------- Fix download ticking Modified Paths: -------------- dcplusplus/trunk/win32/DirectoryListingFrame.h dcplusplus/trunk/win32/PublicHubsFrame.cpp dcplusplus/trunk/win32/TransferView.cpp dcplusplus/trunk/win32/TransferView.h Modified: dcplusplus/trunk/win32/DirectoryListingFrame.h =================================================================== --- dcplusplus/trunk/win32/DirectoryListingFrame.h 2008-02-18 20:19:27 UTC (rev 1016) +++ dcplusplus/trunk/win32/DirectoryListingFrame.h 2008-02-21 20:56:33 UTC (rev 1017) @@ -99,8 +99,8 @@ } ItemInfo(DirectoryListing::Directory* d) : type(DIRECTORY), dir(d) { columns[COLUMN_FILENAME] = Text::toT(d->getName()); - columns[COLUMN_EXACTSIZE] = Text::toT(Util::formatExactSize(d->getTotalSize())); - columns[COLUMN_SIZE] = Text::toT(Util::formatBytes(d->getTotalSize())); + columns[COLUMN_EXACTSIZE] = d->getComplete() ? Text::toT(Util::formatExactSize(d->getTotalSize())) : _T("?"); + columns[COLUMN_SIZE] = d->getComplete() ? Text::toT(Util::formatBytes(d->getTotalSize())) : _T("?"); } const tstring& getText() const { Modified: dcplusplus/trunk/win32/PublicHubsFrame.cpp =================================================================== --- dcplusplus/trunk/win32/PublicHubsFrame.cpp 2008-02-18 20:19:27 UTC (rev 1016) +++ dcplusplus/trunk/win32/PublicHubsFrame.cpp 2008-02-21 20:56:33 UTC (rev 1017) @@ -456,7 +456,7 @@ } void PublicHubsFrame::handleRefresh() { - setStatus(STATUS_STATUS, CT_("Downloading public hub list...")); + setStatus(STATUS_STATUS, T_("Downloading public hub list...")); FavoriteManager::getInstance()->refresh(true); updateDropDown(); } Modified: dcplusplus/trunk/win32/TransferView.cpp =================================================================== --- dcplusplus/trunk/win32/TransferView.cpp 2008-02-18 20:19:27 UTC (rev 1016) +++ dcplusplus/trunk/win32/TransferView.cpp 2008-02-21 20:56:33 UTC (rev 1017) @@ -734,8 +734,8 @@ speak(CONNECTIONS_UPDATE, ui); } -void TransferView::onTransferTick(Transfer* t) { - UpdateInfo* ui = new UpdateInfo(t->getUser(), true); +void TransferView::onTransferTick(Transfer* t, bool isDownload) { + UpdateInfo* ui = new UpdateInfo(t->getUser(), isDownload); ui->setTransfered(t->getPos(), t->getActual()); ui->setSpeed(t->getAverageSpeed()); ui->setChunk(t->getPos(), t->getSize()); @@ -744,7 +744,7 @@ void TransferView::on(DownloadManagerListener::Tick, const DownloadList& dl) throw() { for(DownloadList::const_iterator i = dl.begin(); i != dl.end(); ++i) { - onTransferTick(*i); + onTransferTick(*i, true); } std::vector<TickInfo*> dis; @@ -815,24 +815,24 @@ void TransferView::on(UploadManagerListener::Tick, const UploadList& ul) throw() { for(UploadList::const_iterator i = ul.begin(); i != ul.end(); ++i) { - onTransferTick(*i); + onTransferTick(*i, false); } speak(); } void TransferView::on(DownloadManagerListener::Complete, Download* d) throw() { - onTransferComplete(d, false); + onTransferComplete(d, true); speak(DOWNLOADS_REMOVE_USER, new TickInfo(d->getPath())); } void TransferView::on(UploadManagerListener::Complete, Upload* aUpload) throw() { - onTransferComplete(aUpload, true); + onTransferComplete(aUpload, false); } -void TransferView::onTransferComplete(Transfer* aTransfer, bool isUpload) { - UpdateInfo* ui = new UpdateInfo(aTransfer->getUser(), !isUpload); +void TransferView::onTransferComplete(Transfer* aTransfer, bool isDownload) { + UpdateInfo* ui = new UpdateInfo(aTransfer->getUser(), isDownload); ui->setStatus(ConnectionInfo::STATUS_WAITING); ui->setStatusString(T_("Idle")); Modified: dcplusplus/trunk/win32/TransferView.h =================================================================== --- dcplusplus/trunk/win32/TransferView.h 2008-02-18 20:19:27 UTC (rev 1016) +++ dcplusplus/trunk/win32/TransferView.h 2008-02-21 20:56:33 UTC (rev 1017) @@ -291,8 +291,8 @@ virtual void on(QueueManagerListener::Removed, QueueItem*) throw(); - void onTransferTick(Transfer* aTransfer); - void onTransferComplete(Transfer* aTransfer, bool isUpload); + void onTransferTick(Transfer* aTransfer, bool isDownload); + void onTransferComplete(Transfer* aTransfer, bool isDownload); void starting(UpdateInfo* ui, Transfer* t); #ifdef PORT_ME This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <zou...@us...> - 2008-02-18 20:19:31
|
Revision: 1016 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1016&view=rev Author: zouzou123gen Date: 2008-02-18 12:19:27 -0800 (Mon, 18 Feb 2008) Log Message: ----------- Fixed clicking on active tab Modified Paths: -------------- dcplusplus/trunk/changelog.txt dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetTabView.h dcplusplus/trunk/smartwin/source/widgets/WidgetTabView.cpp dcplusplus/trunk/win32/MainWindow.cpp Modified: dcplusplus/trunk/changelog.txt =================================================================== --- dcplusplus/trunk/changelog.txt 2008-02-17 23:43:00 UTC (rev 1015) +++ dcplusplus/trunk/changelog.txt 2008-02-18 20:19:27 UTC (rev 1016) @@ -36,6 +36,7 @@ * Fixed a few hardcoded dc++'s (thanks steven sheehy) * Don't always show the tray icon after killing and re-opening explorer.exe (poy) * Updated links (thanks pietry) +* Fixed clicking on active tab (poy) -- 0.704 2007-12-14 -- * Hub lists added to utilize Coral's distributed network (ullner) Modified: dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetTabView.h =================================================================== --- dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetTabView.h 2008-02-17 23:43:00 UTC (rev 1015) +++ dcplusplus/trunk/smartwin/include/smartwin/widgets/WidgetTabView.h 2008-02-18 20:19:27 UTC (rev 1016) @@ -31,6 +31,8 @@ public: /// Fills with default parameters Seed(); + + bool toggleActive; }; void add(WidgetChildWindow* w, const IconPtr& icon); @@ -85,6 +87,8 @@ std::tr1::function<void (const SmartUtil::tstring&)> titleChangedFunction; + bool toggleActive; + bool inTab; typedef std::list<WidgetChildWindow*> WindowList; Modified: dcplusplus/trunk/smartwin/source/widgets/WidgetTabView.cpp =================================================================== --- dcplusplus/trunk/smartwin/source/widgets/WidgetTabView.cpp 2008-02-17 23:43:00 UTC (rev 1015) +++ dcplusplus/trunk/smartwin/source/widgets/WidgetTabView.cpp 2008-02-18 20:19:27 UTC (rev 1016) @@ -7,7 +7,8 @@ WindowClass WidgetTabView::windowClass(_T("WidgetTabView"), &WidgetTabView::wndProc, NULL, ( HBRUSH )( COLOR_WINDOW + 1 )); WidgetTabView::Seed::Seed() : - Widget::Seed(windowClass.getClassName(), WS_CHILD | WS_CLIPCHILDREN | WS_VISIBLE) + Widget::Seed(windowClass.getClassName(), WS_CHILD | WS_CLIPCHILDREN | WS_VISIBLE), + toggleActive(false) { } @@ -15,6 +16,7 @@ PolicyType(w), tab(0), tip(0), + toggleActive(false), inTab(false), active(-1), dragging(-1) @@ -22,6 +24,7 @@ void WidgetTabView::create(const Seed & cs) { PolicyType::create(cs); + toggleActive = cs.toggleActive; WidgetTabSheet::Seed tcs; tcs.style = WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS | WS_VISIBLE | @@ -311,8 +314,12 @@ } if(dropPos == dragging) { - // the tab hasn't moved; select it - setActive(dropPos); + // the tab hasn't moved; handle the click + if(dropPos == active) { + if(toggleActive) + next(); + } else + setActive(dropPos); dragging = -1; return; } Modified: dcplusplus/trunk/win32/MainWindow.cpp =================================================================== --- dcplusplus/trunk/win32/MainWindow.cpp 2008-02-17 23:43:00 UTC (rev 1015) +++ dcplusplus/trunk/win32/MainWindow.cpp 2008-02-18 20:19:27 UTC (rev 1016) @@ -309,6 +309,7 @@ void MainWindow::initTabs() { WidgetTabView::Seed cs; cs.style = WS_CHILD | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_VISIBLE; + cs.toggleActive = BOOLSETTING(TOGGLE_ACTIVE_WINDOW); tabs = createTabView(cs); tabs->onTitleChanged(std::tr1::bind(&MainWindow::handleTabsTitleChanged, this, _1)); paned->setFirst(tabs); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |