X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInset.cpp;h=0cfb10cdd3e074dd2057529624b56f83a2b2a4e6;hb=c3a8b3a566e9e90f9ade72acbc723232d721d0b1;hp=a3f93bd88ea62dafdde48eabc35d6ce73e8a12a7;hpb=e158e07c29a2066ac408d1b0038382623180da9c;p=lyx.git diff --git a/src/insets/Inset.cpp b/src/insets/Inset.cpp index a3f93bd88e..0cfb10cdd3 100644 --- a/src/insets/Inset.cpp +++ b/src/insets/Inset.cpp @@ -19,42 +19,41 @@ #include "Buffer.h" #include "BufferParams.h" #include "BufferView.h" -#include "Color.h" #include "CoordCache.h" #include "Cursor.h" -#include "debug.h" #include "Dimension.h" #include "DispatchResult.h" #include "FuncRequest.h" #include "FuncStatus.h" -#include "gettext.h" #include "Text.h" #include "TextClass.h" #include "MetricsInfo.h" #include "MetricsInfo.h" #include "frontends/Painter.h" +#include "frontends/Application.h" #include "support/convert.h" - -#include +#include "support/debug.h" +#include "support/gettext.h" #include -#include +using namespace std; namespace lyx { +extern bool quitting; + class InsetName { public: - InsetName(std::string const & n, InsetCode c) - : name(n), code(c) {} - std::string name; + InsetName(string const & n, InsetCode c) : name(n), code(c) {} + string name; InsetCode code; }; -typedef std::map TranslatorMap; +typedef map TranslatorMap; static TranslatorMap const build_translator() @@ -104,14 +103,14 @@ static TranslatorMap const build_translator() InsetName("listings", LISTINGS_CODE), InsetName("info", INFO_CODE), InsetName("collapsable", COLLAPSABLE_CODE), - InsetName("pagebreak", PAGEBREAK_CODE), + InsetName("newpage", NEWPAGE_CODE), }; - std::size_t const insetnames_size = + size_t const insetnames_size = sizeof(insetnames) / sizeof(insetnames[0]); - std::map data; - for (std::size_t i = 0; i != insetnames_size; ++i) { + map data; + for (size_t i = 0; i != insetnames_size; ++i) { InsetName const & var = insetnames[i]; data[var.name] = var.code; } @@ -120,8 +119,22 @@ static TranslatorMap const build_translator() } -Inset::Inset() -{} +docstring Inset::name() const +{ + return from_ascii("unknown"); +} + + +docstring Inset::toolTip(BufferView const &, int, int) const +{ + return docstring(); +} + + +docstring Inset::contextMenu(BufferView const &, int, int) const +{ + return docstring(); +} Dimension const Inset::dimension(BufferView const & bv) const @@ -130,7 +143,7 @@ Dimension const Inset::dimension(BufferView const & bv) const } -InsetCode insetCode(std::string const & name) +InsetCode insetCode(string const & name) { static TranslatorMap const translator = build_translator(); @@ -139,7 +152,7 @@ InsetCode insetCode(std::string const & name) } -std::string insetName(InsetCode c) +string insetName(InsetCode c) { static TranslatorMap const translator = build_translator(); @@ -149,7 +162,7 @@ std::string insetName(InsetCode c) if (it->second == c) return it->first; } - return std::string(); + return string(); } @@ -200,18 +213,15 @@ bool Inset::getStatus(Cursor &, FuncRequest const & cmd, } -void Inset::edit(Cursor &, bool) +void Inset::edit(Cursor &, bool, EntryDirection) { - LYXERR(Debug::INSETS) << BOOST_CURRENT_FUNCTION - << ": edit left/right" << std::endl; + LYXERR(Debug::INSETS, "edit left/right"); } Inset * Inset::editXY(Cursor &, int x, int y) { - LYXERR(Debug::INSETS) << BOOST_CURRENT_FUNCTION - << ": x=" << x << " y= " << y - << std::endl; + LYXERR(Debug::INSETS, "x: " << x << " y: " << y); return this; } @@ -219,11 +229,9 @@ Inset * Inset::editXY(Cursor &, int x, int y) Inset::idx_type Inset::index(row_type row, col_type col) const { if (row != 0) - lyxerr << BOOST_CURRENT_FUNCTION - << ": illegal row: " << row << std::endl; + LYXERR0("illegal row: " << row); if (col != 0) - lyxerr << BOOST_CURRENT_FUNCTION - << ": illegal col: " << col << std::endl; + LYXERR0("illegal col: " << col); return 0; } @@ -274,7 +282,7 @@ docstring const Inset::editMessage() const void Inset::cursorPos(BufferView const & /*bv*/, CursorSlice const &, bool, int & x, int & y) const { - lyxerr << "Inset::cursorPos called directly" << std::endl; + LYXERR0("Inset::cursorPos called directly"); x = 100; y = 100; } @@ -297,8 +305,8 @@ void Inset::metricsMarkers2(Dimension & dim, int framesize) const void Inset::drawMarkers(PainterInfo & pi, int x, int y) const { - Color::color pen_color = mouseHovered() || editing(pi.base.bv)? - Color::mathframe : Color::mathcorners; + ColorCode pen_color = mouseHovered() || editing(pi.base.bv)? + Color_mathframe : Color_mathcorners; Dimension const dim = dimension(*pi.base.bv); @@ -314,8 +322,8 @@ void Inset::drawMarkers(PainterInfo & pi, int x, int y) const void Inset::drawMarkers2(PainterInfo & pi, int x, int y) const { - Color::color pen_color = mouseHovered() || editing(pi.base.bv)? - Color::mathframe : Color::mathcorners; + ColorCode pen_color = mouseHovered() || editing(pi.base.bv)? + Color_mathframe : Color_mathcorners; drawMarkers(pi, x, y); Dimension const dim = dimension(*pi.base.bv); @@ -329,7 +337,7 @@ void Inset::drawMarkers2(PainterInfo & pi, int x, int y) const } -bool Inset::editing(BufferView * bv) const +bool Inset::editing(BufferView const * bv) const { return bv->cursor().isInside(this); } @@ -366,15 +374,15 @@ void Inset::dump() const } -Color_color Inset::backgroundColor() const +ColorCode Inset::backgroundColor() const { - return Color::background; + return Color_background; } void Inset::setPosCache(PainterInfo const & pi, int x, int y) const { - //lyxerr << "Inset:: position cache to " << x << " " << y << std::endl; + //LYXERR("Inset: set position cache to " << x << " " << y); pi.base.bv->coordCache().insets().add(this, x, y); } @@ -384,4 +392,12 @@ void Inset::setDimCache(MetricsInfo const & mi, Dimension const & dim) const mi.base.bv->coordCache().insets().add(this, dim); } + +Buffer const * Inset::updateFrontend() const +{ + if (quitting) + return 0; + return theApp()->updateInset(this); +} + } // namespace lyx