#include <config.h>
-
#include "insetcaption.h"
#include "frontends/Painter.h"
#include "frontends/font_metrics.h"
#include "buffer.h"
#include "FloatList.h"
#include "insets/insetfloat.h"
+#include "insets/insetwrap.h"
#include "debug.h"
#include "gettext.h"
+#include "Lsstream.h"
#include "support/lstrings.h"
-
-#include "BoostFormat.h"
+#include "support/LAssert.h"
+#include "support/BoostFormat.h"
using std::ostream;
using std::endl;
// belongs to.
Inset * i1 = owner();
Inset * i2 = i1 ? i1->owner() : 0;
- string const type = static_cast<InsetFloat *>(i2)->type();
+ string type;
+ if (i2->lyxCode() == FLOAT_CODE)
+ type = static_cast<InsetFloat *>(i2)->params().type;
+ else if (i2->lyxCode() == WRAP_CODE)
+ type = static_cast<InsetWrap *>(i2)->params().type;
+ else
+ lyx::Assert(0);
+
FloatList const & floats =
bv->buffer()->params.getLyXTextClass().floats();
string const fl = i2 ? floats.getType(type).name() : N_("Float");
// Discover the number...
- // ...
- string const num("#");
+ string const num = "#";
-#if USE_BOOST_FORMAT
// Generate the label
- boost::format frm("%1$s %2$s:");
- frm % _(fl) % num;
- string const label = frm.str();
-#else
- // Generate the label
- string const label = _(fl) + ' ' + num + ':';
-#endif
+ string const label = bformat("%1$s %2$s:", _(fl), num);
Painter & pain = bv->painter();
int const w = font_metrics::width(label, f);
pain.text(int(x), baseline, label, f);