Открыто
04.05.2021, 11:19
Разработать программу, которая позволяет манипулировать горячими клавишами. Горячая клавиша - клавиша или сочетание клавиш на клавиатуре, которому сопоставлено некоторое действие, команда.
Текстовый файл (или несколько), содержащий набор горячих клавиш и назначенных им команд. Пример:
Ctrl+Alt+Del = reset
Ctrl+C = copy
Ctrl+Ins = copy
Ctrl+V = paste
Shift+Ins = paste
Ctrl+X = cut
Shift+Del = cut
F1 = help
Клавиша рассматривается как отдельная строка. Сочетания Shift+Ctrl+L и Ctrl+Shift+L система должна воспринимать как эквивалентные горячие клавиши. Названия команд заданы как строки.
Разработать модуль, позволяющий манипулировать горячими клавишами. Модуль должен поддерживать следующую функциональность:
Варианты:
1) Даны два файла с наборами горячих клавиш и назначенных им команд. Загрузить файлы, распечатать, объединить, распечатать список конфликтов, объединенный результат записать в третий файл.
Пример вывода программы:
file1:
copy Ctrl+C, Ctrl+Ins,
paste Ctrl+V, Shift+Ins,
reset Ctrl+Alt+Del,
file2:
move Ctrl+M, F6,
copy Ctrl+C, F5,
search Ctrl+V, F7,
conflicts: 1
Ctrl+V
file3 = file1.merge(file2):
copy Ctrl+C, Ctrl+Ins, F5,
paste Ctrl+V, Shift+Ins,
reset Ctrl+Alt+Del,
move Ctrl+M, F6,
search F7,
2) Дан файл с набором горячих клавиш и назначенных им команд, а так же файл со списком горячих клавиш и команд которые нужно удалить. Загрузить оба файла, удалить горячие клавиши и команды, сохранить результат в третий файл.
Пример вывода программы:
file1:
copy Ctrl+C, Ctrl+Ins, F5,
paste Ctrl+V, Shift+Ins,
reset Ctrl+Alt+Del,
move Ctrl+M, F6,
search F7,
remove items:
Ctrl+Alt+Del
Ctrl+Ins
move
file2:
copy Ctrl+C, F5,
paste Ctrl+V, Shift+Ins,
search F7,