diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2013-07-28 09:30:45 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2013-07-28 09:30:45 (GMT) |
| commit | 387424e0072d215e9ee40235206e1065745a69d4 (patch) | |
| tree | 4ca530339420dff799ac94e184108ace6d71f185 /src | |
| parent | 8cfead7d5a89e0b1ef5db97d5c4ee85b2526ab37 (diff) | |
| parent | a328fc519e4b2eec15f6a0b81f39bad78bf4f82e (diff) | |
| download | powder-387424e0072d215e9ee40235206e1065745a69d4.zip powder-387424e0072d215e9ee40235206e1065745a69d4.tar.gz | |
Merge branch 'master' of github.com:FacialTurd/The-Powder-Toy
Diffstat (limited to 'src')
| -rw-r--r-- | src/PowderToySDL.cpp | 4 | ||||
| -rw-r--r-- | src/gui/game/GameView.cpp | 18 | ||||
| -rw-r--r-- | src/gui/interface/Keys.h | 15 | ||||
| -rw-r--r-- | src/gui/localbrowser/LocalBrowserView.cpp | 9 | ||||
| -rw-r--r-- | src/gui/localbrowser/LocalBrowserView.h | 1 | ||||
| -rw-r--r-- | src/gui/preview/PreviewView.cpp | 6 | ||||
| -rw-r--r-- | src/gui/search/SearchView.cpp | 9 | ||||
| -rw-r--r-- | src/gui/search/SearchView.h | 1 |
8 files changed, 42 insertions, 21 deletions
diff --git a/src/PowderToySDL.cpp b/src/PowderToySDL.cpp index cacc38d..677426d 100644 --- a/src/PowderToySDL.cpp +++ b/src/PowderToySDL.cpp @@ -394,10 +394,10 @@ void EngineProcess() engine->Exit(); break; case SDL_KEYDOWN: - engine->onKeyPress(event.key.keysym.sym, event.key.keysym.unicode, event.key.keysym.mod&KEY_MOD_LSHIFT, event.key.keysym.mod&KEY_MOD_LCONTROL, event.key.keysym.mod&KEY_MOD_LALT); + engine->onKeyPress(event.key.keysym.sym, event.key.keysym.unicode, event.key.keysym.mod&KEY_MOD_SHIFT, event.key.keysym.mod&KEY_MOD_CONTROL, event.key.keysym.mod&KEY_MOD_ALT); break; case SDL_KEYUP: - engine->onKeyRelease(event.key.keysym.sym, event.key.keysym.unicode, event.key.keysym.mod&KEY_MOD_LSHIFT, event.key.keysym.mod&KEY_MOD_LCONTROL, event.key.keysym.mod&KEY_MOD_LALT); + engine->onKeyRelease(event.key.keysym.sym, event.key.keysym.unicode, event.key.keysym.mod&KEY_MOD_SHIFT, event.key.keysym.mod&KEY_MOD_CONTROL, event.key.keysym.mod&KEY_MOD_ALT); break; case SDL_MOUSEMOTION: engine->onMouseMove(event.motion.x*inputScale, event.motion.y*inputScale); diff --git a/src/gui/game/GameView.cpp b/src/gui/game/GameView.cpp index f1b0450..f7fa6f5 100644 --- a/src/gui/game/GameView.cpp +++ b/src/gui/game/GameView.cpp @@ -1279,11 +1279,13 @@ void GameView::OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool } switch(key) { - case KEY_ALT: + case KEY_LALT: + case KEY_RALT: drawSnap = true; enableAltBehaviour(); break; - case KEY_CTRL: + case KEY_LCTRL: + case KEY_RCTRL: if(!isMouseDown) { if(drawModeReset) @@ -1302,7 +1304,8 @@ void GameView::OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool } enableCtrlBehaviour(); break; - case KEY_SHIFT: + case KEY_LSHIFT: + case KEY_RSHIFT: if(!isMouseDown) { if(drawModeReset) @@ -1500,14 +1503,17 @@ void GameView::OnKeyRelease(int key, Uint16 character, bool shift, bool ctrl, bo drawModeReset = true; switch(key) { - case KEY_ALT: + case KEY_LALT: + case KEY_RALT: drawSnap = false; disableAltBehaviour(); break; - case KEY_CTRL: + case KEY_LCTRL: + case KEY_RCTRL: disableCtrlBehaviour(); break; - case KEY_SHIFT: + case KEY_LSHIFT: + case KEY_RSHIFT: disableShiftBehaviour(); break; case 'z': diff --git a/src/gui/interface/Keys.h b/src/gui/interface/Keys.h index 424dd86..c42a894 100644 --- a/src/gui/interface/Keys.h +++ b/src/gui/interface/Keys.h @@ -14,9 +14,12 @@ #define KEY_ENTER SDLK_KP_ENTER #define KEY_ESCAPE SDLK_ESCAPE -#define KEY_CTRL SDLK_LCTRL -#define KEY_ALT SDLK_LALT -#define KEY_SHIFT SDLK_LSHIFT +#define KEY_LCTRL SDLK_LCTRL +#define KEY_LALT SDLK_LALT +#define KEY_LSHIFT SDLK_LSHIFT +#define KEY_RCTRL SDLK_RCTRL +#define KEY_RALT SDLK_RALT +#define KEY_RSHIFT SDLK_RSHIFT #define KEY_MOD_NONE KMOD_NONE #define KEY_MOD_LSHIFT KMOD_LSHIFT @@ -32,9 +35,9 @@ #define KEY_MOD_MODE KMOD_MODE #define KEY_MOD_RESERVED KMOD_RESERVED -#define KEY_MOD_CONTROL KEY_MOD_RCONTROL | KEY_MOD_LCONTROL -#define KEY_MOD_ALT KEY_MOD_RALT | KEY_MOD_LALT -#define KEY_MOD_SHIFT KEY_MOD_RSHIFT | KEY_MOD_LSHIFT +#define KEY_MOD_CONTROL (KEY_MOD_RCONTROL | KEY_MOD_LCONTROL) +#define KEY_MOD_ALT (KEY_MOD_RALT | KEY_MOD_LALT) +#define KEY_MOD_SHIFT (KEY_MOD_RSHIFT | KEY_MOD_LSHIFT) #define KEY_a SDLK_a #define KEY_d SDLK_d diff --git a/src/gui/localbrowser/LocalBrowserView.cpp b/src/gui/localbrowser/LocalBrowserView.cpp index a25c281..218864c 100644 --- a/src/gui/localbrowser/LocalBrowserView.cpp +++ b/src/gui/localbrowser/LocalBrowserView.cpp @@ -201,13 +201,18 @@ void LocalBrowserView::OnMouseWheel(int x, int y, int d) else c->PrevPage(); } + void LocalBrowserView::OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool alt) { if(key == KEY_ESCAPE) c->Exit(); - if (key == KEY_CTRL) + else if (key == KEY_LCTRL || key == KEY_RCTRL) c->SetMoveToFront(false); - else +} + +void LocalBrowserView::OnKeyRelease(int key, Uint16 character, bool shift, bool ctrl, bool alt) +{ + if (key == KEY_LCTRL || key == KEY_RCTRL) c->SetMoveToFront(true); } diff --git a/src/gui/localbrowser/LocalBrowserView.h b/src/gui/localbrowser/LocalBrowserView.h index 02aca28..85881cf 100644 --- a/src/gui/localbrowser/LocalBrowserView.h +++ b/src/gui/localbrowser/LocalBrowserView.h @@ -31,6 +31,7 @@ public: void NotifySelectedChanged(LocalBrowserModel * sender); virtual void OnMouseWheel(int x, int y, int d); virtual void OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool alt); + virtual void OnKeyRelease(int key, Uint16 character, bool shift, bool ctrl, bool alt); virtual ~LocalBrowserView(); }; diff --git a/src/gui/preview/PreviewView.cpp b/src/gui/preview/PreviewView.cpp index de17531..9d091e1 100644 --- a/src/gui/preview/PreviewView.cpp +++ b/src/gui/preview/PreviewView.cpp @@ -574,10 +574,10 @@ void PreviewView::NotifyCommentsChanged(PreviewModel * sender) tempUsername = new ui::Label(ui::Point(5, currentY+3), ui::Point(Size.X-((XRES/2) + 13), 16), comments->at(i)->authorNameFormatted); tempUsername->Appearance.HorizontalAlign = ui::Appearance::AlignLeft; tempUsername->Appearance.VerticalAlign = ui::Appearance::AlignBottom; - if (sender->GetSave() && sender->GetSave()->GetUserName() == comments->at(i)->authorName) - tempUsername->SetTextColour(ui::Colour(255, 100, 100)); - else if (Client::Ref().GetAuthUser().ID && Client::Ref().GetAuthUser().Username == comments->at(i)->authorName) + if (Client::Ref().GetAuthUser().ID && Client::Ref().GetAuthUser().Username == comments->at(i)->authorName) tempUsername->SetTextColour(ui::Colour(255, 255, 100)); + else if (sender->GetSave() && sender->GetSave()->GetUserName() == comments->at(i)->authorName) + tempUsername->SetTextColour(ui::Colour(255, 100, 100)); currentY += 16; commentComponents.push_back(tempUsername); diff --git a/src/gui/search/SearchView.cpp b/src/gui/search/SearchView.cpp index 662e756..526592a 100644 --- a/src/gui/search/SearchView.cpp +++ b/src/gui/search/SearchView.cpp @@ -714,7 +714,12 @@ void SearchView::OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bo { if (key == KEY_ESCAPE) c->Exit(); - if (ctrl) - c->InstantOpen(ctrl); + else if (key == KEY_LCTRL || key == KEY_RCTRL) + c->InstantOpen(true); } +void SearchView::OnKeyRelease(int key, Uint16 character, bool shift, bool ctrl, bool alt) +{ + if (key == KEY_LCTRL || key == KEY_RCTRL) + c->InstantOpen(false); +} diff --git a/src/gui/search/SearchView.h b/src/gui/search/SearchView.h index 5752a2c..4a68498 100644 --- a/src/gui/search/SearchView.h +++ b/src/gui/search/SearchView.h @@ -68,6 +68,7 @@ public: virtual void OnTick(float dt); virtual void OnMouseWheel(int x, int y, int d); virtual void OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool alt); + virtual void OnKeyRelease(int key, Uint16 character, bool shift, bool ctrl, bool alt); }; |
