1/* 2 * Copyright 2014 Freeman Lou <freemanlou2430@yahoo.com> 3 * All rights reserved. Distributed under the terms of the MIT license. 4 */ 5#include "VirtualKeyboardInputDevice.h" 6 7#include <InterfaceDefs.h> 8 9extern "C" BInputServerDevice* 10instantiate_input_device() 11{ 12 return new(std::nothrow) VirtualKeyboardInputDevice(); 13} 14 15 16VirtualKeyboardInputDevice::VirtualKeyboardInputDevice() 17{ 18} 19 20 21VirtualKeyboardInputDevice::~VirtualKeyboardInputDevice() 22{ 23} 24 25 26status_t 27VirtualKeyboardInputDevice::InitCheck() 28{ 29 static input_device_ref keyboard = {(char*) "VirtualKeyboard", 30 B_KEYBOARD_DEVICE, (void*) this}; 31 static input_device_ref* devices[2] = {&keyboard, NULL}; 32 33 RegisterDevices(devices); 34 return B_OK; 35} 36 37 38status_t 39VirtualKeyboardInputDevice::Start(const char* name, void* cookie) 40{ 41 fKeyboardWindow = new VirtualKeyboardWindow(this); 42 fKeyboardWindow->Show(); 43 return B_OK; 44} 45 46 47status_t 48VirtualKeyboardInputDevice::Stop(const char* name, void* cookie) 49{ 50 if (fKeyboardWindow->Lock()) { 51 fKeyboardWindow->Quit(); 52 fKeyboardWindow = NULL; 53 } 54 return B_OK; 55} 56 57 58status_t 59VirtualKeyboardInputDevice::Control(const char* name, void* cookie, 60 uint32 command, BMessage* message) 61{ 62 return B_OK; 63} 64