Example #1
0
	void InputManager::run() {
		InputEvent* inputEvent;

		while (running && eventBuffer != NULL) {
			eventBuffer->waitEvent();
			if (!running) {
				break;
			}

			inputEvent = eventBuffer->getNextEvent();
			while (inputEvent != NULL) {
				if (inputEvent->isPressedType() &&
						((getCurrentTimeMillis() - timeStamp) > 150)) {

					timeStamp = getCurrentTimeMillis();
					if (!dispatchEvent(inputEvent)) {
						delete inputEvent;
						inputEvent = eventBuffer->getNextEvent();
						continue;
					}
				}

				dispatchProceduralEvent(inputEvent);
				delete inputEvent;
				inputEvent = eventBuffer->getNextEvent();
			}
		}
	}