RC File Standards

Материал из Русский WINE
Перейти к: навигация, поиск

Стандарты RC-файлов

Данная статья частично является переводом официальной вики.


Чтобы немного стандартизировать файлы ресурсов и поддержать вид Windows 2000+, нам необходимо следовать нескольким следующим правилам:

1. Всегда пользуйтесь шаблоном DIALOGEX а не DIALOG.

2. Установите флаг DS_SHELLFONT в параметре STYLE вашего диалогового окна, не используйте флаги DS_FIXEDSYS и/или DS_SETFONT.

Чередование шрифтов в списке свойств может вызвать визуальное раздражение. Вряд ли вы захотите, чтобы для кнопки "Дополнительно" использовался шрифт MS Sans Serif, а для кнопки "Применить" - Tahoma. Для избежания этой проблемы, менеджер свойств проверяет все страницы свойств. Если все они используют вид "Windows 2000", то и менеджер также использует вид "Windows 2000". Но если хотя бы одна страница не использует вид "Windows 2000", то страница свойств переключается в "классический" вид, а заодно конвертирует все страницы, использующие вид "Windows 2000" к "классическому" виду.

3. Установите шрифт "MS Shell Dlg" шрифтом диалогового окна.

4. Используйте шрифт "MS UI Gothic" в диалоговых окнах приложений на японском языке.

На Windows 9x, оба логических шрифта указывают на пиксельные шрифты для кодовой страницы. MS Shell Dlg обычно указывает на специфичную для кодовой страницы версию MS Sans Serif. MS Shell Dlg 2 указывает на специфичный для кодовой страницы пиксельный шрифт Tahoma. На Windows NT 4.0+ оба логических шрифта указывают на TrueType-шрифты для Unicode. MS Shell Dlg использует Microsoft Sans Serif для Латинских, Греческих, Кириллических, Арабских, Еврейских, и Тайских символов; MS UI Gothic для Японских; Gulim для Корейских; Simsun для Китайских упрощенных; PMinglu для Традиционных Китайских; и т.д. На Windows 2000 и поздних версиях: MS Shell Dlg 2 указывает на шрифт Tahoma, являющийся шрифтом по умолчанию во всей операционной системе. Приложение, которое работает только на этой операционной системе, может использовать в DS_SHELLFONT логический шрифт MS Shell Dlg 2, указывающий на шрифт Tahoma. Тем не менее, приложение, которое также работает на Windows NT 4.0, Windows 95, Windows 98 или Windows Me должно использовать в DS_SHELLFONT логический шрифт MS Shell Dlg, а не MS Shell Dlg 2. Символы, отсутствующие в Tahoma, будут отображены при помощи замены шрифтов. Главным преимуществом Tahoma перед Microsoft Sans Serif является то,что Tahoma имеет встроенный жирный шрифт. Его главный недостаток - на старых операционных системах он может быть не установлен, и может быть заменён менее выразительным шрифтом.
В Windows XP, для традиционного китайского отображается китайское локализованное название "新細明體". (Полная запись FONT 9, "新細明體", FW_NORMAL, FALSE, 136.) То же самое для упрощенного китайского , который использует шрифт "宋体". Тем не менее,один шрифт в виде другого, не может использоваться сейчас, так как мы в не используем локализованное имя шрифта (CORE-9638) и связывание шрифта еще не реализовано в полной мере. Смотрите на CORE-9566

5. Используйте шрифт 8 размера для Латинского, Греческого, Кириллического, Арабского, Еврейского, и Тайского шрифтов.

6. Используйте шрифт 9 размера для Японского шрифта.

7. Не используйте DS_3DLOOK. Он устарел и больше не используется.

8. При работе с языками, написание текста в которых ведётся справа налево (напр. иврит и арабский язык) используйте расширенный стиль WS_EX_LAYOUTRTL.

ReactOS
Search.png
Доклады
О ReactOSARWINSSЧеЗа
Информация Новости Выпуски новостейПереводы блоговНовости проектаВидеоReactOS на ХабреUSB от Вадима Галянта
Разработка Руководство по программированиюОтсутствующая функциональностьВетви разработкиКомпоненты системыReactOS и WineПлан работRoadmap ядра by VgalРазработчикиСовместимость с dll WindowsНаиболее значимые изменения за годИспользуемые проектыGoogle Summer of CodeИзвестные проблемы
Порты AMD64ARMXboxPowerPC
Компоненты Файловые системыРежим совместимостиОтчеты об ошибкахПечатьUSBЯдро
Загрузчик Восстановление MBRЗагрузка из GRUBПараметры загрузки
Прочее ARWINSSПриложения в ReactOSОформление ReactOSКоординаторы"Пасхальные яйца"Монетизация
Другое Типы ядерFreeWin95
Помощь
RAM-диск ReactOS по PXEс жесткого диска
Разработка Стиль написания кодаСтандарты RC-файловРабота с документациейВенгерская нотацияGNU Indent • [ Subversion : ветвислияниеиспользование TortoiseSVN ] • Основы переводаОтправка патчей
Репорты Отладка в VirtualBoxОтладка на экранДобавление программы в менеджер приложенийОтправка отчетов
Отладка Com0comGDBKdbgRossym.gdbRoswin.gdbWinDBGРуководство по WinDBGВключение трассировки ядраКоды DPRINTУдалённый отладчик ReactOS
Сборка CMakeRBuildФайлы RBuildАвтоматическое копирование файловСборка MINGW-w64Сборка модулейСреда сборки
Тестирование VirtualBoxVMwareQEMUHyper-VНеобходимый объём дискаПеренос файлов на виртуальный дискУстановка ReactOSУстановка драйверов
Сеть Общие папкиSambaNFS
Игры Установка DirectPlay
Обновление ReactOSЗагрузочная флешкаЧем можно помочь проектуСоздание нового пользователяЗвук и сеть в VirtualBoxСъемка и публикация видеоIRC-каналСторонние компонентыFAQReactOS как рабочая станцияReactOS и UEFI
Обзоры ОболочкаNTVDMWOWCommunity EditionИстория сайтаReactOS ServerКриптографияПО времен XP