mirror of
https://github.com/reactos/reactos.git
synced 2025-05-28 13:38:19 +00:00
[RAPPS] Showing info from Languages sectin
- Created dummies & added new string resources - lang/uk-UA.rc: translated all strings - crichedit.h: safe text add svn path=/branches/GSoC_2017/rapps/; revision=75334
This commit is contained in:
parent
e01bd5a80f
commit
5db3c35fc8
5 changed files with 84 additions and 19 deletions
|
@ -111,6 +111,16 @@ HasNativeLanguage(PAPPLICATION_INFO Info)
|
|||
//TODO: make the actual check
|
||||
return TRUE;
|
||||
}
|
||||
BOOL
|
||||
HasEnglishLanguage(PAPPLICATION_INFO Info)
|
||||
{
|
||||
if (!Info)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
//TODO: make the actual check
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
LICENSE_TYPE
|
||||
ParserGetLicenseType(const ATL::CStringW& szFileName)
|
||||
|
@ -145,12 +155,15 @@ InsertVersionInfo_RichEdit(PAPPLICATION_INFO Info)
|
|||
InsertTextAfterLoaded_RichEdit(IDS_AINFO_VERSION, szVersion, CFE_BOLD, 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
InsertLoadedTextNewl_RichEdit(IDS_STATUS_INSTALLED, CFE_ITALIC);
|
||||
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
InsertLoadedTextNewl_RichEdit(IDS_STATUS_NOTINSTALLED, CFE_ITALIC);
|
||||
|
||||
}
|
||||
|
||||
InsertTextAfterLoaded_RichEdit(IDS_AINFO_AVAILABLEVERSION, Info->szVersion, CFE_BOLD, 0);
|
||||
}
|
||||
|
||||
|
@ -185,6 +198,38 @@ InsertLicenseInfo_RichEdit(PAPPLICATION_INFO Info)
|
|||
|
||||
}
|
||||
|
||||
VOID
|
||||
InsertLanguageInfo_RichEdit(PAPPLICATION_INFO Info)
|
||||
{
|
||||
const INT nTranslations = Info->Languages.GetSize();
|
||||
ATL::CStringW szLangInfo;
|
||||
ATL::CStringW szLoadedTextAvailability;
|
||||
ATL::CStringW szLoadedAInfoText;
|
||||
szLoadedAInfoText.LoadStringW(IDS_AINFO_LANGUAGES);
|
||||
|
||||
if(HasNativeLanguage(Info))
|
||||
{
|
||||
szLoadedTextAvailability.LoadStringW(IDS_LANGUAGE_AVAILABLE_TRANSLATION);
|
||||
}
|
||||
else if (HasEnglishLanguage(Info))
|
||||
{
|
||||
szLoadedTextAvailability.LoadStringW(IDS_LANGUAGE_ENGLISH_TRANSLATION);
|
||||
}
|
||||
else
|
||||
{
|
||||
szLoadedTextAvailability.LoadStringW(IDS_LANGUAGE_NO_TRANSLATION);
|
||||
}
|
||||
|
||||
if (nTranslations > 1)
|
||||
{
|
||||
szLangInfo.Format(L" (+%d more)", nTranslations - 1);
|
||||
}
|
||||
|
||||
InsertRichEditText(szLoadedAInfoText, CFE_BOLD);
|
||||
InsertRichEditText(szLoadedTextAvailability, NULL);
|
||||
InsertRichEditText(szLangInfo, CFE_ITALIC);
|
||||
}
|
||||
|
||||
BOOL
|
||||
ShowAvailableAppInfo(INT Index)
|
||||
{
|
||||
|
@ -194,6 +239,7 @@ ShowAvailableAppInfo(INT Index)
|
|||
NewRichEditText(Info->szName, CFE_BOLD);
|
||||
InsertVersionInfo_RichEdit(Info);
|
||||
InsertLicenseInfo_RichEdit(Info);
|
||||
InsertLanguageInfo_RichEdit(Info);
|
||||
|
||||
InsertTextAfterLoaded_RichEdit(IDS_AINFO_SIZE, Info->szSize, CFE_BOLD, 0);
|
||||
InsertTextAfterLoaded_RichEdit(IDS_AINFO_URLSITE, Info->szUrlSite, CFE_BOLD, CFE_LINK);
|
||||
|
|
|
@ -9,14 +9,17 @@ class CRichEdit :
|
|||
SETTEXTEX SetText;
|
||||
LONG Len = GetTextLen();
|
||||
|
||||
/* Insert new text */
|
||||
SetText.flags = ST_SELECTION;
|
||||
SetText.codepage = 1200;
|
||||
if (InsertedTextLen)
|
||||
{
|
||||
/* Insert new text */
|
||||
SetText.flags = ST_SELECTION;
|
||||
SetText.codepage = 1200;
|
||||
|
||||
SendMessageW(EM_SETTEXTEX, (WPARAM) &SetText, (LPARAM) lpszText);
|
||||
SendMessageW(EM_SETTEXTEX, (WPARAM) &SetText, (LPARAM) lpszText);
|
||||
|
||||
SetRangeFormatting(Len, Len + InsertedTextLen,
|
||||
(dwEffects == CFM_LINK) ? (PathIsURLW(lpszText) ? dwEffects : 0) : dwEffects);
|
||||
SetRangeFormatting(Len, Len + InsertedTextLen,
|
||||
(dwEffects == CFM_LINK) ? (PathIsURLW(lpszText) ? dwEffects : 0) : dwEffects);
|
||||
}
|
||||
}
|
||||
|
||||
public:
|
||||
|
|
|
@ -158,6 +158,7 @@ BEGIN
|
|||
IDS_AINFO_URLSITE "\nHome Page: "
|
||||
IDS_AINFO_LICENSE "\nLicense: "
|
||||
IDS_AINFO_URLDOWNLOAD "\nDownload: "
|
||||
IDS_AINFO_LANGUAGES "\nLanguages: "
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
|
@ -224,3 +225,11 @@ BEGIN
|
|||
IDS_LICENSE_FREEWARE "Freeware"
|
||||
IDS_LICENSE_TRIAL "Trial/Demo"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_LANGUAGE_AVAILABLE_TRANSLATION "In your language"
|
||||
IDS_LANGUAGE_NO_TRANSLATION "In your language"
|
||||
IDS_LANGUAGE_NOT_AVAILABLE "No translations"
|
||||
IDS_LANGUAGE_ENGLISH_TRANSLATION "In English"
|
||||
END
|
||||
|
|
|
@ -26,7 +26,7 @@ BEGIN
|
|||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Оновити\tF5", ID_REFRESH
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Update Da&tabase\tCtrl+F5", ID_RESETDB
|
||||
MENUITEM "Оновити список &програм\tCtrl+F5", ID_RESETDB
|
||||
END
|
||||
POPUP "&Довідка"
|
||||
BEGIN
|
||||
|
@ -56,7 +56,7 @@ BEGIN
|
|||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Оновити\tF5", ID_REFRESH
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Update Da&tabase\tCtrl+F5", ID_RESETDB
|
||||
MENUITEM "Оновити список &програм\tCtrl+F5", ID_RESETDB
|
||||
END
|
||||
END
|
||||
|
||||
|
@ -79,7 +79,7 @@ BEGIN
|
|||
CONTROL "Direct (No proxy)", IDC_NO_PROXY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 15, 145, 210, 10
|
||||
CONTROL "Proxy", IDC_USE_PROXY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 15, 160, 74, 10
|
||||
EDITTEXT IDC_PROXY_SERVER, 90, 160, 147, 12, ES_AUTOHSCROLL | WS_DISABLED
|
||||
LTEXT "No proxy for", -1, 27, 175, 64, 10
|
||||
LTEXT "Виключення", -1, 27, 175, 64, 10
|
||||
EDITTEXT IDC_NO_PROXY_FOR, 90, 175, 147, 12, ES_AUTOHSCROLL | WS_DISABLED
|
||||
PUSHBUTTON "Стандартно", IDC_DEFAULT_SETTINGS, 8, 195, 60, 14
|
||||
PUSHBUTTON "OK", IDOK, 116, 195, 60, 14
|
||||
|
@ -125,7 +125,7 @@ BEGIN
|
|||
IDS_TOOLTIP_MODIFY "Змінити"
|
||||
IDS_TOOLTIP_SETTINGS "Налаштування"
|
||||
IDS_TOOLTIP_REFRESH "Оновити"
|
||||
IDS_TOOLTIP_UPDATE_DB "Update Database"
|
||||
IDS_TOOLTIP_UPDATE_DB "Оновити список програм"
|
||||
IDS_TOOLTIP_EXIT "Вихід"
|
||||
END
|
||||
|
||||
|
@ -206,14 +206,14 @@ BEGIN
|
|||
IDS_CHOOSE_FOLDER_ERROR "Ви вказали неіснуючу теку!"
|
||||
IDS_APP_REG_REMOVE "Ви дійсно хочете видалити дані про встановлену програму з реєстру?"
|
||||
IDS_INFORMATION "Інформація"
|
||||
IDS_UNABLE_TO_DOWNLOAD "Unable to download the package! Address not found!"
|
||||
IDS_UNABLE_TO_DOWNLOAD2 "Unable to download the package! Check Internet Connection!"
|
||||
IDS_UNABLE_TO_DOWNLOAD "Неможливо завантажити додаток! Адресу не знайдено!"
|
||||
IDS_UNABLE_TO_DOWNLOAD2 "Неможливо завантажити додаток! Перевірте підключення до мережі Інтернет!"
|
||||
IDS_UNABLE_TO_REMOVE "Не вдалося видалити дані про програму з реєстру!"
|
||||
IDS_CERT_DOES_NOT_MATCH "SSL certificate verification failed."
|
||||
IDS_INTEG_CHECK_TITLE "Verifying package integrity..."
|
||||
IDS_INTEG_CHECK_FAIL "The package did not pass the integrity check, it may have been corrupted or tampered with during downloading. Running the software is not recommended."
|
||||
IDS_INTERRUPTED_DOWNLOAD "The download was interrupted. Check connection to Internet."
|
||||
IDS_UNABLE_TO_WRITE "Unable to write to disk. Disk may be at capacity."
|
||||
IDS_CERT_DOES_NOT_MATCH "Помилка перевіки сертифікату SSL."
|
||||
IDS_INTEG_CHECK_TITLE "Перевірка цілістності додатку..."
|
||||
IDS_INTEG_CHECK_FAIL "Додаток не пройшов перевірку цілістності, його молги пошкодити чи замінити. Запуск додатку не рекомендується."
|
||||
IDS_INTERRUPTED_DOWNLOAD "Завантаження перервано. Перевірте підключення до мережі Інтернет."
|
||||
IDS_UNABLE_TO_WRITE "Записк на диск неможливий. Можливо, на диску недостатньо містця."
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
|
|
|
@ -145,6 +145,7 @@
|
|||
#define IDS_AINFO_LICENSE 354
|
||||
#define IDS_AINFO_URLDOWNLOAD 355
|
||||
#define IDS_AINFO_AVAILABLEVERSION 356
|
||||
#define IDS_AINFO_LANGUAGES 357
|
||||
|
||||
|
||||
/* Names of categories */
|
||||
|
@ -177,6 +178,12 @@
|
|||
#define IDS_LICENSE_FREEWARE 901
|
||||
#define IDS_LICENSE_TRIAL 902
|
||||
|
||||
/* Language related strings */
|
||||
#define IDS_LANGUAGE_AVAILABLE_TRANSLATION 910
|
||||
#define IDS_LANGUAGE_NO_TRANSLATION 911
|
||||
#define IDS_LANGUAGE_NOT_AVAILABLE 912
|
||||
#define IDS_LANGUAGE_ENGLISH_TRANSLATION 913
|
||||
|
||||
/* Accelerators */
|
||||
#define HOTKEYS 715
|
||||
|
||||
|
|
Loading…
Reference in a new issue