diff --git a/code/ryzom/tools/client/ryzom_installer/src/configfile.cpp b/code/ryzom/tools/client/ryzom_installer/src/configfile.cpp index 63980e5fe..1181dd613 100644 --- a/code/ryzom/tools/client/ryzom_installer/src/configfile.cpp +++ b/code/ryzom/tools/client/ryzom_installer/src/configfile.cpp @@ -97,9 +97,11 @@ void CProfile::createShortcuts() const QString icon; #ifdef Q_OS_WIN32 + // under Windows, icon is included in executable icon = executable; #else - // TODO: Linux icon + // icon is in the same directory as client + icon = s.getDirectory() + "/ryzom_client.png"; #endif if (desktopShortcut) @@ -453,6 +455,11 @@ QString CConfigFile::getMenuDirectory() const bool CConfigFile::has64bitsOS() { +#ifdef Q_OS_WIN32 + // 64 bits only supported under Vista and up + if (QSysInfo::windowsVersion() < QSysInfo::WV_VISTA) return false; +#endif + return QSysInfo::currentCpuArchitecture() == "x86_64"; } diff --git a/code/ryzom/tools/client/ryzom_installer/src/installdialog.cpp b/code/ryzom/tools/client/ryzom_installer/src/installdialog.cpp index ff5bfc6c7..baf9516f0 100644 --- a/code/ryzom/tools/client/ryzom_installer/src/installdialog.cpp +++ b/code/ryzom/tools/client/ryzom_installer/src/installdialog.cpp @@ -54,7 +54,6 @@ CInstallDialog::CInstallDialog():QDialog() updateDestinationText(); // check whether OS architecture is 32 or 64 bits - // TODO: 64 bits client only supported under Vista+ if (CConfigFile::has64bitsOS()) { clientArchGroupBox->setVisible(true); diff --git a/code/ryzom/tools/client/ryzom_installer/src/migratedialog.cpp b/code/ryzom/tools/client/ryzom_installer/src/migratedialog.cpp index 50fa92412..b2941744c 100644 --- a/code/ryzom/tools/client/ryzom_installer/src/migratedialog.cpp +++ b/code/ryzom/tools/client/ryzom_installer/src/migratedialog.cpp @@ -51,7 +51,6 @@ CMigrateDialog::CMigrateDialog():QDialog() updateDestinationText(); // check whether OS architecture is 32 or 64 bits - // TODO: 64 bits client only supported under Vista+ if (CConfigFile::has64bitsOS()) { clientArchGroupBox->setVisible(true); diff --git a/code/ryzom/tools/client/ryzom_installer/src/operationdialog.cpp b/code/ryzom/tools/client/ryzom_installer/src/operationdialog.cpp index 80b8c8f29..c24943f7d 100644 --- a/code/ryzom/tools/client/ryzom_installer/src/operationdialog.cpp +++ b/code/ryzom/tools/client/ryzom_installer/src/operationdialog.cpp @@ -718,6 +718,7 @@ void COperationDialog::copyInstaller() QStringList filter; filter << "msvcp100.dll"; filter << "msvcr100.dll"; + filter << "ryzom_installer.png"; CFilesCopier copier(this); copier.setIncludeFilter(filter); @@ -756,9 +757,11 @@ void COperationDialog::copyInstaller() QString icon; #ifdef Q_OS_WIN32 + // under Windows, icon is included in executable icon = executable; #else - // TODO: Linux icon + // icon is in the same directory as installer + icon = config->getInstallationDirectory() + "/ryzom_installer.png"; #endif createLink(shortcut, name, executable, "", icon, "");