X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetbase.C;h=29d5448f96ffbc88e8ea3e83aa342e2528f643d4;hb=e28331ed63062dea10d0a21b9ec12034b4b17b9a;hp=fb9a1b5fb7affa4199387929bae2309765ad3a84;hpb=de6418f37765fe452f135f96dee6d49897bff215;p=lyx.git diff --git a/src/insets/insetbase.C b/src/insets/insetbase.C index fb9a1b5fb7..29d5448f96 100644 --- a/src/insets/insetbase.C +++ b/src/insets/insetbase.C @@ -63,6 +63,7 @@ static TranslatorMap const build_translator() InsetName("accent", InsetBase::ACCENT_CODE), InsetName("math", InsetBase::MATH_CODE), InsetName("index", InsetBase::INDEX_CODE), + InsetName("nomenclature", InsetBase::NOMENCL_CODE), InsetName("include", InsetBase::INCLUDE_CODE), InsetName("graphics", InsetBase::GRAPHICS_CODE), InsetName("bibitem", InsetBase::BIBITEM_CODE), @@ -81,6 +82,7 @@ static TranslatorMap const build_translator() InsetName("cite", InsetBase::CITE_CODE), InsetName("float_list", InsetBase::FLOAT_LIST_CODE), InsetName("index_print", InsetBase::INDEX_PRINT_CODE), + InsetName("nomencl_print", InsetBase::NOMENCL_PRINT_CODE), InsetName("optarg", InsetBase::OPTARG_CODE), InsetName("environment", InsetBase::ENVIRONMENT_CODE), InsetName("hfill", InsetBase::HFILL_CODE), @@ -125,7 +127,7 @@ InsetBase::Code InsetBase::translate(std::string const & name) void InsetBase::dispatch(LCursor & cur, FuncRequest & cmd) { - cur.needsUpdate(); + cur.updateFlags(Update::Force | Update::FitCursor); cur.dispatched(); doDispatch(cur, cmd); } @@ -281,29 +283,31 @@ void InsetBase::metricsMarkers2(Dimension & dim, int framesize) const void InsetBase::drawMarkers(PainterInfo & pi, int x, int y) const { - if (!editing(pi.base.bv)) - return; + LColor::color pen_color = editing(pi.base.bv)? + LColor::mathframe : LColor::background; + int const t = x + width() - 1; int const d = y + descent(); - pi.pain.line(x, d - 3, x, d, LColor::mathframe); - pi.pain.line(t, d - 3, t, d, LColor::mathframe); - pi.pain.line(x, d, x + 3, d, LColor::mathframe); - pi.pain.line(t - 3, d, t, d, LColor::mathframe); + pi.pain.line(x, d - 3, x, d, pen_color); + pi.pain.line(t, d - 3, t, d, pen_color); + pi.pain.line(x, d, x + 3, d, pen_color); + pi.pain.line(t - 3, d, t, d, pen_color); setPosCache(pi, x, y); } void InsetBase::drawMarkers2(PainterInfo & pi, int x, int y) const { - if (!editing(pi.base.bv)) - return; + LColor::color pen_color = editing(pi.base.bv)? + LColor::mathframe : LColor::background; + drawMarkers(pi, x, y); int const t = x + width() - 1; int const a = y - ascent(); - pi.pain.line(x, a + 3, x, a, LColor::mathframe); - pi.pain.line(t, a + 3, t, a, LColor::mathframe); - pi.pain.line(x, a, x + 3, a, LColor::mathframe); - pi.pain.line(t - 3, a, t, a, LColor::mathframe); + pi.pain.line(x, a + 3, x, a, pen_color); + pi.pain.line(t, a + 3, t, a, pen_color); + pi.pain.line(x, a, x + 3, a, pen_color); + pi.pain.line(t - 3, a, t, a, pen_color); setPosCache(pi, x, y); } @@ -314,19 +318,19 @@ bool InsetBase::editing(BufferView * bv) const } -int InsetBase::xo(BufferView & bv) const +int InsetBase::xo(BufferView const & bv) const { return bv.coordCache().getInsets().x(this); } -int InsetBase::yo(BufferView & bv) const +int InsetBase::yo(BufferView const & bv) const { return bv.coordCache().getInsets().y(this); } -bool InsetBase::covers(BufferView & bv, int x, int y) const +bool InsetBase::covers(BufferView const & bv, int x, int y) const { //lyxerr << "InsetBase::covers, x: " << x << " y: " << y // << " xo: " << xo(bv) << " yo: " << yo()