X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffuncrequest.C;h=75d9cbaab8efc217ad021543d40b12c8df066c24;hb=b99a5acc7f18c3f885856fa962c0f0a63a0ca5ad;hp=18b010d8b4d683f0922c5f6d5103879c4af22d15;hpb=37f920ba16022555bdc43fab6dbfb1f13c459876;p=lyx.git diff --git a/src/funcrequest.C b/src/funcrequest.C index 18b010d8b4..75d9cbaab8 100644 --- a/src/funcrequest.C +++ b/src/funcrequest.C @@ -6,7 +6,14 @@ * \author André Pönitz */ +#include + #include "funcrequest.h" +#include "BufferView.h" +#include "lyxfunc.h" // only for setMessage() +#include "frontends/LyXView.h" +#include "debug.h" + FuncRequest::FuncRequest() : view_(0), action(LFUN_UNKNOWN_ACTION) @@ -23,6 +30,12 @@ FuncRequest::FuncRequest(kb_action act, string const & arg) {} +FuncRequest::FuncRequest + (kb_action act, int ax, int ay, mouse_button::state button) + : view_(0), action(act), argument(), x(ax), y(ay), button_(button) +{} + + FuncRequest::FuncRequest(BufferView * view, kb_action act) : view_(view), action(act) {} @@ -34,8 +47,20 @@ FuncRequest::FuncRequest(BufferView * view, kb_action act, string const & arg) FuncRequest::FuncRequest - (BufferView * view, kb_action act, int ax, int ay, int aextra) - : view_(view), action(act), argument(), x(ax), y(ay), extra(aextra) + (BufferView * view, kb_action act, int ax, int ay, mouse_button::state but) + : view_(view), action(act), argument(), x(ax), y(ay), button_(but) +{} + + +FuncRequest::FuncRequest(FuncRequest const & cmd, string const & arg) + : view_(cmd.view_), action(cmd.action), argument(arg), + x(cmd.x), y(cmd.y), button_(cmd.button_) +{} + + +FuncRequest::FuncRequest(FuncRequest const & cmd, BufferView * view) + : view_(view), action(cmd.action), argument(cmd.argument), + x(cmd.x), y(cmd.y), button_(cmd.button_) {} @@ -49,3 +74,27 @@ void FuncRequest::setView(BufferView * view) { view_ = view; } + + +mouse_button::state FuncRequest::button() const +{ + return button_; +} + + +void FuncRequest::message(string const & msg) const +{ + if (view_) + view_->owner()->getLyXFunc().setMessage(msg); + else + lyxerr << "Dropping message '" << msg << "'\n"; +} + + +void FuncRequest::errorMessage(string const & msg) const +{ + if (view_) + view_->owner()->getLyXFunc().setErrorMessage(msg); + else + lyxerr << "Dropping error message '" << msg << "'\n"; +}