Minor misspellings fixes
[clinton/Virtual-Jaguar-Rx.git] / src / gui / keybindingstab.cpp
CommitLineData
0203b5fd
JPM
1//\r
2// keybindingstab.cpp: Key Bindings tab on the settings dialog\r
3//\r
4// Part of the Virtual Jaguar Project\r
5//\r
6// JPM = Jean-Paul Mari <djipi.mari@gmail.com>\r
7//\r
8// WHO WHEN WHAT\r
9// --- ---------- ------------------------------------------------------------\r
10// JPM 09/10/2017 Created this file\r
11\r
12#include "keybindingstab.h"\r
13#include "settings.h"\r
14\r
15\r
16//\r
17KeyBindings KeyBindingsTable[KB_END] = {\r
57f40036
JPM
18 { KB_TYPEGENERAL, "KB_Quit", "Quit", "Quit key binding", "Ctrl+Q", NULL, NULL },\r
19 { KB_TYPEGENERAL, "KB_PickFile", "Pick file", "Pick file key binding", "Ctrl+I", NULL, NULL },\r
20 { KB_TYPEGENERAL, "KB_Configure", "Configure", "Configure key binding", "Ctrl+C", NULL, NULL },\r
21 { KB_TYPEGENERAL, "KB_EmuStatus", "Emulator Status", "Emulator status key binding", "Ctrl+S", NULL, NULL },\r
22 { KB_TYPEGENERAL, "KB_Pause", "Pause", "Pause key binding", "Esc", NULL, NULL },\r
23 { KB_TYPEGENERAL, "KB_FrameAdvance", "Frame Advance", "Frame advance key binding", "F7", NULL, NULL },\r
24 { KB_TYPEGENERAL, "KB_FullScreen", "Full Screen", "Full screen key binding", "F9", NULL, NULL },\r
25 { KB_TYPEGENERAL, "KB_Screenshot", "Screenshot", "Screenshot key binding", "F8", NULL, NULL },\r
26 { KB_TYPEDEBUGGER, "KB_Restart", "Restart", "Restart key binding", "Ctrl+Shift+F5", NULL, NULL },\r
27 { KB_TYPEDEBUGGER, "KB_StepInto", "Step Into", "Step into key binding", "F11", NULL, NULL },\r
28 { KB_TYPEDEBUGGER, "KB_StepOver", "Step Over", "Step over key binding", "F10", NULL, NULL }\r
0203b5fd
JPM
29 };\r
30\r
31\r
32//\r
33#define NBKEYBINDINGS sizeof(KeyBindingsTable)/sizeof(KeyBindings)\r
34\r
35\r
36// \r
37KeyBindingsTab::KeyBindingsTab(QWidget * parent/*= 0*/): QWidget(parent)\r
38{\r
39 size_t i;\r
40\r
41 QVBoxLayout *layout1 = new QVBoxLayout;\r
42 QVBoxLayout *layout2 = new QVBoxLayout;\r
43\r
44 // Initialisation for each layout line\r
45 for (i = 0; i < NBKEYBINDINGS; i++)\r
46 {\r
47 // Prepare the keybinding line\r
48 layout1->addWidget(KeyBindingsTable[i].KBLabel = new QLabel(KeyBindingsTable[i].KBNameLabel));\r
49 layout2->addWidget(KeyBindingsTable[i].KBLineEdit = new QLineEdit(""));\r
50 KeyBindingsTable[i].KBLineEdit->setMaxLength(30);\r
51 KeyBindingsTable[i].KBLineEdit->setPlaceholderText(KeyBindingsTable[i].KBPlaceholderText);\r
52\r
53 // Check if keybinding can be editable\r
54 if (KeyBindingsTable[i].KBType != KB_TYPEGENERAL)\r
55 {\r
56 if (vjs.hardwareTypeAlpine && (KeyBindingsTable[i].KBType & KB_TYPEALPINE))\r
57 {\r
58 }\r
0d612b97
JPM
59 else\r
60 {\r
61 if (vjs.softTypeDebugger && (KeyBindingsTable[i].KBType & KB_TYPEDEBUGGER))\r
62 {\r
63 }\r
64 else\r
65 {\r
0203b5fd 66 KeyBindingsTable[i].KBLabel->hide();\r
0d612b97
JPM
67 KeyBindingsTable[i].KBLineEdit->hide();\r
68 }\r
0203b5fd
JPM
69 }\r
70 }\r
71 }\r
72\r
73 // Layouts setup\r
74 QHBoxLayout *layout3 = new QHBoxLayout;\r
75 layout3->addLayout(layout1);\r
76 layout3->addLayout(layout2);\r
77 QVBoxLayout *layout4 = new QVBoxLayout;\r
78 layout4->addLayout(layout3);\r
79 setLayout(layout4);\r
80}\r
81\r
82\r
83KeyBindingsTab::~KeyBindingsTab()\r
84{\r
85}\r
86\r
87\r
88// Load / Update the tabs dialog from the settings\r
89void KeyBindingsTab::GetSettings(void)\r
90{\r
91 size_t i;\r
92\r
93 for (i = 0; i < NBKEYBINDINGS; i++)\r
94 {\r
95 KeyBindingsTable[i].KBLineEdit->setText(vjs.KBContent[i].KBSettingValue);\r
96 }\r
97}\r
98\r
99\r
100// Save / Update the settings from the tabs dialog\r
101void KeyBindingsTab::SetSettings(void)\r
102{\r
103 size_t i;\r
104\r
105 for (i = 0; i < NBKEYBINDINGS; i++)\r
106 {\r
107 //strcpy(vjs.KBContent[i].KBSettingName, KeyBindingsTable[i].KBNameSetting);\r
108 strcpy(vjs.KBContent[i].KBSettingValue, KeyBindingsTable[i].KBLineEdit->text().toUtf8().data());\r
109 }\r
110}\r
111\r