Руcификация своими руками

Xakep, номер #044, стр. 044-028-5


Еще тебе понадобится Фотошоп или другой мощный редактор графики, HEX редактор, программа для просмотра графики, типа ACDSee, переводчик для перевода больших кусков текста.

Практика

Переходим к самому главному - редактированию меню и диалогов. Возвращаемся к открытому в Restorator-е блокноту. Раскрываем там раздел меню и видим ресурс под названием «1». Если его выделить, то в окне просмотра будет большая колонка очень знакомого текста. Если поднапрячь мозги и воображение, то можно сообразить, что это содержимое всех меню блокнота, за исключением контекстного. Переключаемся в режим редактирования (Viewer -> Edit Mode), это проще сделать нажатием на кнопку, обозначенную как «ab|». Теперь в колонку добавятся скрытые ранее символы, и ее можно будет редактировать. Выглядеть это будет так:

1 MENU

{

POPUP "&Файл"

{

MENUITEM "&Создать\tCtrl+N", 1

MENUITEM "&Открыть...\tCtrl+O", 2

MENUITEM "&Сохранить\tCtrl+S", 3

MENUITEM "Сохранить &Как...", 4

MENUITEM SEPARATOR

MENUITEM "Параметры страницы...", 5

MENUITEM "&Печать...\tCtrl+P", 6

MENUITEM SEPARATOR

MENUITEM "В&ыход", 7

}

POPUP "&Правка"

{

Теперь небольшое пояснение, что же это такое. Специально для тех, кто в жизни не видел листинг кода.

{ и } - Этими значками отмечается начало и конец меню.

& - Так отмечается подчеркнутая буква. Если при активном меню нажать с клавиатуры ту букву, которая подчеркнута в команде меню, эта команда исполнится. Знак ставится перед нужной буквой. Выбирать надо самые подходящие буквы. Повторять буквы нельзя, иначе фича не сработает - будет вызываться первая команда.

MENUITEM - название типа объекта. Иногда, в диалогах, имеет смысл поменять, чтобы все вместилось.

"чего-нибудь" - Изменять нужно именно то, что в скобках. Везде.

, 4 - Номер команды.

\tCtrl+N - Сочетание кнопок клавиатуры, вызывающее эту команду. Иногда все это прописано в отдельном разделе Accelerators.

Меню обычно самая простая часть программы. Там очень удобно все изменять. Во-первых - сразу виден результат. Во-вторых - нет ограничений по длине. Конечно, можно сделать команду из 96 символов, из-за которой все меню расползется на пол-экрана. Так что одно из основных правил - «краткость - сестра таланта». А в-третьих, не надо думать, что значит данная команда в данном контексте.

Диалоги. Это самая интересная и сложная часть. В блокноте наибольшим количеством признаков полноценного диалога обладает ресурс номер 12. Вот он какой:

12 DIALOG 0, 0, 356, 196

STYLE DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_DLGFRAME

CAPTION "Параметры страницы"

FONT 8, "MS Shell Dlg"

{

GROUPBOX "Бумага", 1073, 8, 8, 224, 56, WS_GROUP

LTEXT "Ра&змер:", 1089, 16, 24, 34, 8

COMBOBOX 1137, 51, 23, 173, 160, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP

LTEXT "Пода&ча:", 1090, 16, 45, 34, 8

COMBOBOX 1138, 51, 42, 173, 160, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP

Назад на стр. 044-028-4  Содержание  Вперед на стр. 044-028-6