mirror of
https://github.com/bulletphysics/bullet3
synced 2024-12-13 21:30:09 +00:00
ab8f16961e
Apply clang-format-all.sh using the _clang-format file through all the cpp/.h files. make sure not to apply it to certain serialization structures, since some parser expects the * as part of the name, instead of type. This commit contains no other changes aside from adding and applying clang-format-all.sh
80 lines
1.8 KiB
C++
80 lines
1.8 KiB
C++
/*
|
|
GWEN
|
|
Copyright (c) 2010 Facepunch Studios
|
|
See license in Gwen.h
|
|
*/
|
|
|
|
#pragma once
|
|
#ifndef GWEN_INPUTHANDLER_H
|
|
#define GWEN_INPUTHANDLER_H
|
|
|
|
#include <queue>
|
|
#include "Gwen/Gwen.h"
|
|
|
|
namespace Gwen
|
|
{
|
|
namespace Controls
|
|
{
|
|
class Base;
|
|
}
|
|
|
|
namespace Key
|
|
{
|
|
const unsigned char Invalid = 0;
|
|
const unsigned char Return = 1;
|
|
const unsigned char Backspace = 2;
|
|
const unsigned char Delete = 3;
|
|
const unsigned char Left = 4;
|
|
const unsigned char Right = 5;
|
|
const unsigned char Shift = 6;
|
|
const unsigned char Tab = 7;
|
|
const unsigned char Space = 8;
|
|
const unsigned char Home = 9;
|
|
const unsigned char End = 10;
|
|
const unsigned char Control = 11;
|
|
const unsigned char Up = 12;
|
|
const unsigned char Down = 13;
|
|
const unsigned char Escape = 14;
|
|
const unsigned char Alt = 15;
|
|
|
|
const unsigned char Count = 16;
|
|
} // namespace Key
|
|
|
|
namespace Input
|
|
{
|
|
namespace Message
|
|
{
|
|
enum
|
|
{
|
|
Copy,
|
|
Paste,
|
|
Cut,
|
|
Undo,
|
|
Redo,
|
|
SelectAll
|
|
};
|
|
};
|
|
|
|
// For use in panels
|
|
bool GWEN_EXPORT IsKeyDown(int iKey);
|
|
bool GWEN_EXPORT IsLeftMouseDown();
|
|
bool GWEN_EXPORT IsRightMouseDown();
|
|
Gwen::Point GWEN_EXPORT GetMousePosition();
|
|
|
|
inline bool IsShiftDown() { return IsKeyDown(Gwen::Key::Shift); }
|
|
inline bool IsControlDown() { return IsKeyDown(Gwen::Key::Control); }
|
|
|
|
// Does copy, paste etc
|
|
bool GWEN_EXPORT DoSpecialKeys(Controls::Base* pCanvas, Gwen::UnicodeChar chr);
|
|
bool GWEN_EXPORT HandleAccelerator(Controls::Base* pCanvas, Gwen::UnicodeChar chr);
|
|
|
|
// Send input to canvas for study
|
|
void GWEN_EXPORT OnMouseMoved(Controls::Base* pCanvas, int x, int y, int deltaX, int deltaY);
|
|
bool GWEN_EXPORT OnMouseClicked(Controls::Base* pCanvas, int iButton, bool bDown);
|
|
bool GWEN_EXPORT OnKeyEvent(Controls::Base* pCanvas, int iKey, bool bDown);
|
|
void GWEN_EXPORT OnCanvasThink(Controls::Base* pControl);
|
|
|
|
}; // namespace Input
|
|
} // namespace Gwen
|
|
#endif
|