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
Доклады
О ReactOS • ARWINSS • ЧеЗа
Информация Новости Выпуски новостей • Переводы блогов • Новости проекта • Видео • ReactOS на Хабре • USB от Вадима Галянта
Разработка Руководство по программированию • Отсутствующая функциональность • Ветви разработки • Компоненты системы • ReactOS и Wine • План работ • Roadmap ядра by Vgal • Разработчики • Совместимость с dll Windows • Наиболее значимые изменения за год • Используемые проекты • Google Summer of Code • Известные проблемы
Порты AMD64 • ARM • Xbox • PowerPC
Компоненты Файловые системы • Режим совместимости • Отчеты об ошибках • Печать • USB • Ядро
Загрузчик Восстановление MBR • Загрузка из GRUB • Параметры загрузки
Прочее ARWINSS • Приложения в ReactOS • Оформление ReactOS • Координаторы • "Пасхальные яйца" • Монетизация
Другое Типы ядер • FreeWin95
Помощь
RAM-диск ReactOS по PXE • с жесткого диска
Разработка Стиль написания кода • Стандарты RC-файлов • Работа с документацией • Венгерская нотация • GNU Indent • [ Subversion : ветви • слияние • использование TortoiseSVN ] • Основы перевода • Отправка патчей
Репорты Отладка в VirtualBox • Отладка на экран • Добавление программы в менеджер приложений • Отправка отчетов
Отладка Com0com • GDB • Kdbg • Rossym.gdb • Roswin.gdb • WinDBG • Руководство по WinDBG • Включение трассировки ядра • Коды DPRINT • Удалённый отладчик ReactOS
Сборка CMake • RBuild • Файлы RBuild • Автоматическое копирование файлов • Сборка MINGW-w64 • Сборка модулей • Среда сборки
Тестирование VirtualBox • VMware • QEMU • Hyper-V • Необходимый объём диска • Перенос файлов на виртуальный диск • Установка ReactOS • Установка драйверов
Сеть Общие папки • Samba • NFS
Игры Установка DirectPlay
Обновление ReactOS • Загрузочная флешка • Чем можно помочь проекту • Создание нового пользователя • Звук и сеть в VirtualBox • Съемка и публикация видео • IRC-канал • Сторонние компоненты • FAQ • ReactOS как рабочая станция • ReactOS и UEFI
Обзоры Оболочка • NTVDM • WOW • Community Edition • История сайта • ReactOS Server • Криптография • ПО времен XP