diff options
| author | Sebastien Braun | 2010-10-07 22:54:10 +0200 |
|---|---|---|
| committer | Sebastien Braun | 2010-10-07 22:54:10 +0200 |
| commit | e61097b8881bc7e72a5499816cb1199ea274a3ca (patch) | |
| tree | bcfa9f3fe3f43af02845bc21367de395b248600c /src/input/inputEventHandler.cpp | |
| parent | Make behaviour on lookup failures configurable (diff) | |
| download | pvs-e61097b8881bc7e72a5499816cb1199ea274a3ca.tar.gz pvs-e61097b8881bc7e72a5499816cb1199ea274a3ca.tar.xz pvs-e61097b8881bc7e72a5499816cb1199ea274a3ca.zip | |
Rework template meta-magic
- No more implicit dependency on Boost.MPL
- Better documentation for template magic
- Move input handler policies to handler definitions where they belong
- Separate out event descriptions from handlers
Diffstat (limited to 'src/input/inputEventHandler.cpp')
| -rw-r--r-- | src/input/inputEventHandler.cpp | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/src/input/inputEventHandler.cpp b/src/input/inputEventHandler.cpp index c16c358..5298aed 100644 --- a/src/input/inputEventHandler.cpp +++ b/src/input/inputEventHandler.cpp @@ -17,20 +17,17 @@ #include "inputEventHandler.h" #include "pvsCheckPrivileges.h" -bool policy::allowPrivilegedUser(InputEvent const& evt, InputEventContext const* ctx) +InputEventHandlerBase::HandlerStatus InputEventHandlerBase::handle(InputEvent const& evt, InputEventContext const* ctx) { - if(ctx) - return PVSCheckPrivileges::instance()->require(PVSCheckPrivileges::SESSION_UNKNOWN, PVSCheckPrivileges::USER_PRIVILEGED, - ctx); - else - return false; + if(!isApplicable(evt, ctx)) + return HANDLER_NOT_APPLICABLE; + if(!allow(evt, ctx)) + return HANDLER_NOT_ALLOWED; + doHandle(evt, ctx); + return HANDLER_MATCHED; } -bool policy::allowPhysicalSeat(InputEvent const& evt, InputEventContext const* ctx) +bool input_policy::AllowEverybody::allow(InputEventContext const*) { - if(ctx) - return PVSCheckPrivileges::instance()->require(PVSCheckPrivileges::SESSION_LOCAL, PVSCheckPrivileges::USER_UNKNOWN, - ctx); - else - return false; + return true; } |
