Changeset 3156 in orxonox.OLD for orxonox/trunk/gui/orxonox_gui_keys.cc
- Timestamp:
- Dec 11, 2004, 10:45:18 PM (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
orxonox/trunk/gui/orxonox_gui_keys.cc
r3154 r3156 80 80 openButton->connectSignal("button_press_event", pKeyWindow, Window::windowOpen); 81 81 82 inputWindow = new Window("inputWindow"); 83 84 inputButton = new Button ("test"); 85 inputButton->connectSignal ("button_press_event", inputWindow, Window::windowClose); 86 inputWindow->fill (inputButton); 87 inputWindow->connectSignal("destroy", inputWindow, Window::windowClose); 88 inputWindow->connectSignal("delete_event", inputWindow, Window::windowClose); 89 82 90 } 83 91 84 92 Widget* Player::addKey (KEYS key, char* name) 85 93 { 86 pKeyBox[key] = new Box(); 87 pKeyLabel[key] = new Label (name); 88 pKeyButton[key] = new Button(name); 89 pKeyButton[key]->saveable = true; 94 inputKey[key] = new InputKey; 95 inputKey[key]->pKeyBox = new Box(); 96 inputKey[key]->pKeyButton = new Button(name); 97 inputKey[key]->pKeyOLabel = new OptionLabel (name); 98 inputKey[key]->pKeyOLabel->saveable = true; 90 99 91 pKeyButton[key]->connectSignal("key_press_event", pKeyButton[key], key_cb); 92 93 pKeyBox[key]->fill(pKeyLabel[key]); 94 pKeyBox[key]->fill(pKeyButton[key]); 95 return pKeyBox[key]; 100 //inputKey[key]->pKeyButton->connectSignal("key_press_event", inputKey[key]->pKeyButton, key_cb); 101 inputKey[key]->pKeyButton->connectSignal("button_press_event", inputKey[key], inputWindowEvent); 102 103 inputKey[key]->pKeyBox->fill(inputKey[key]->pKeyButton); 104 inputKey[key]->pKeyBox->fill(inputKey[key]->pKeyOLabel); 105 return inputKey[key]->pKeyBox; 96 106 } 97 107 … … 105 115 { 106 116 cout << "setting up Key: "<< key <<endl; 117 } 118 119 Window* Player::inputWindow = NULL; 120 Button* Player::inputButton = NULL; 121 long Player::keySignal = 0; 122 123 gint Player::inputWindowEvent(GtkWidget* w, GdkEventKey* event, void* inputKey) 124 { 125 inputButton->setTitle("teste"); 126 keySignal = inputButton->connectSignal("key_press_event", inputKey, key_cb); 127 inputWindow->open(); 107 128 } 108 129 … … 114 135 \returns Nothing 115 136 */ 116 gint Player::key_cb(GtkWidget* w, GdkEventKey* event, void* widget) 117 { 118 Button* button = static_cast<Button*>(widget); 119 120 switch(event->keyval) { 121 case GDK_Up: 122 printf("Up arrow key!\n"); 123 button->setTitle("up"); 124 break; 125 case GDK_Down: 126 printf("Down arrow key!\n"); 127 button->setTitle("down"); 128 break; 129 case GDK_Left: 130 printf("Left arrow key!\n"); 131 button->setTitle("left"); 132 break; 133 case GDK_Right: 134 printf("Right arrow key!\n"); 135 button->setTitle("right"); 136 break; 137 138 case GDK_space: 139 printf("Space Pressed.\n"); 140 button->setTitle("space"); 141 break; 142 143 case 65293: 144 printf("Enter Pressed\n"); 145 button->setTitle("enter"); 146 break; 147 148 // Special Keys // 149 case GDK_Shift_L: 150 printf("Left Shift!\n"); 151 button->setTitle("l_shift"); 152 break; 153 case GDK_Shift_R: 154 printf("Right Shift!\n"); 155 button->setTitle("r_shift"); 156 break; 157 case GDK_Control_L: 158 printf("Left Control!\n"); 159 button->setTitle("l_ctrl"); 160 break; 161 case GDK_Control_R: 162 printf("Right Control!\n"); 163 button->setTitle("r_ctrl"); 164 break; 165 case GDK_Alt_L: 166 printf("Left Alt!\n"); 167 button->setTitle("l_alt"); 168 break; 169 case GDK_Alt_R: 170 printf("Rigth Alt!\n"); 171 button->setTitle("r_alt"); 172 break; 173 // FXX KEYS // 174 case GDK_F1: 175 printf("F1!\n"); 176 button->setTitle("f1"); 177 break; 178 case GDK_F2: 179 printf("F2!\n"); 180 button->setTitle("f2"); 181 break; 182 case GDK_F3: 183 printf("F3!\n"); 184 button->setTitle("f3"); 185 break; 186 case GDK_F4: 187 printf("F4!\n"); 188 button->setTitle("f4"); 189 break; 190 case GDK_F5: 191 printf("F5!\n"); 192 button->setTitle("f5"); 193 break; 194 case GDK_F6: 195 printf("F6!\n"); 196 button->setTitle("f6"); 197 break; 198 case GDK_F7: 199 printf("F7!\n"); 200 button->setTitle("f7"); 201 break; 202 case GDK_F8: 203 printf("F8!\n"); 204 button->setTitle("f8"); 205 break; 206 case GDK_F9: 207 printf("F9\n"); 208 button->setTitle("f9"); 209 break; 210 case GDK_F10: 211 printf("F10!\n"); 212 button->setTitle("f10"); 213 break; 214 case GDK_F11: 215 printf("F11!\n"); 216 button->setTitle("f11"); 217 break; 218 case GDK_F12: 219 printf("F12!\n"); 220 button->setTitle("f12"); 221 break; 222 223 224 default: 225 char* tmp; 226 sprintf(tmp, "%c", event->keyval); 227 printf ("other key %s \n", tmp); 228 button->setTitle(tmp); 229 break; 230 } 231 } 137 gint Player::key_cb(GtkWidget* w, GdkEventKey* event, void* inputKey) 138 { 139 InputKey* inputkey = (InputKey*) inputKey; 140 char title [20]; 141 142 switch(event->keyval) 143 { 144 case GDK_Up: 145 printf("Up arrow key!\n"); 146 sprintf(title, "%s", "up"); 147 break; 148 case GDK_Down: 149 printf("Down arrow key!\n"); 150 sprintf(title, "%s", "down"); 151 break; 152 case GDK_Left: 153 printf("Left arrow key!\n"); 154 sprintf(title, "%s", "left"); 155 break; 156 case GDK_Right: 157 printf("Right arrow key!\n"); 158 sprintf(title, "%s", "right"); 159 break; 160 161 case GDK_space: 162 printf("Space Pressed.\n"); 163 sprintf(title, "%s", "space"); 164 break; 165 166 /* case GDK_escape: 167 printf("Esc Pressed.\n"); 168 sprintf(title, "%s", "esc"); 169 */ 170 case 65293: 171 printf("Enter Pressed\n"); 172 sprintf(title, "%s", "enter"); 173 break; 174 175 // Special Keys // 176 case GDK_Shift_L: 177 printf("Left Shift!\n"); 178 sprintf(title, "%s", "l_shift"); 179 break; 180 case GDK_Shift_R: 181 printf("Right Shift!\n"); 182 sprintf(title, "%s", "r_shift"); 183 break; 184 case GDK_Control_L: 185 printf("Left Control!\n"); 186 sprintf(title, "%s", "l_ctrl"); 187 break; 188 case GDK_Control_R: 189 printf("Right Control!\n"); 190 sprintf(title, "%s", "r_ctrl"); 191 break; 192 case GDK_Alt_L: 193 printf("Left Alt!\n"); 194 sprintf(title, "%s", "l_alt"); 195 break; 196 case GDK_Alt_R: 197 printf("Rigth Alt!\n"); 198 sprintf(title, "%s", "r_alt"); 199 break; 200 // FXX KEYS // 201 case GDK_F1: 202 printf("F1!\n"); 203 sprintf(title, "%s", "f1"); 204 break; 205 case GDK_F2: 206 printf("F2!\n"); 207 sprintf(title, "%s", "f2"); 208 break; 209 case GDK_F3: 210 printf("F3!\n"); 211 sprintf(title, "%s", "f3"); 212 break; 213 case GDK_F4: 214 printf("F4!\n"); 215 sprintf(title, "%s", "f4"); 216 break; 217 case GDK_F5: 218 printf("F5!\n"); 219 sprintf(title, "%s", "f5"); 220 break; 221 case GDK_F6: 222 printf("F6!\n"); 223 sprintf(title, "%s", "f6"); 224 break; 225 case GDK_F7: 226 printf("F7!\n"); 227 sprintf(title, "%s", "f7"); 228 break; 229 case GDK_F8: 230 printf("F8!\n"); 231 sprintf(title, "%s", "f8"); 232 break; 233 case GDK_F9: 234 printf("F9\n"); 235 sprintf(title, "%s", "f9"); 236 break; 237 case GDK_F10: 238 printf("F10!\n"); 239 sprintf(title, "%s", "f10"); 240 break; 241 case GDK_F11: 242 printf("F11!\n"); 243 sprintf(title, "%s", "f11"); 244 break; 245 case GDK_F12: 246 printf("F12!\n"); 247 sprintf(title, "%s", "f12"); 248 break; 249 250 251 default: 252 char* tmp; 253 sprintf(tmp, "%c", event->keyval); 254 printf ("other key %s \n", tmp); 255 sprintf(title, "%s", tmp); 256 break; 257 } 258 inputkey->pKeyOLabel->setTitle (title); 259 inputButton->disconnectSignal(keySignal); 260 inputWindow->close(); 261 }
Note: See TracChangeset
for help on using the changeset viewer.