From: Tommaso Cucinotta Date: Mon, 10 Dec 2012 23:22:10 +0000 (+0000) Subject: While exporting from the command-line, theApp() doesn't exist. X-Git-Tag: 2.1.0beta1~1117 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=4285b0b31698cb83c3a525d1cf6b54c5d4654142;p=features.git While exporting from the command-line, theApp() doesn't exist. It was only needed for getting hex names of colors. So, get them directly from a ColorCache object with default mapping. --- diff --git a/src/Makefile.am b/src/Makefile.am index d3c52f5e90..e2298f9357 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -5,7 +5,7 @@ include $(top_srcdir)/config/common.am DISTCLEANFILES += libintl.h AM_CPPFLAGS += $(PCH_FLAGS) -I$(top_srcdir)/src $(BOOST_INCLUDES) $(ENCHANT_CFLAGS) $(HUNSPELL_CFLAGS) -AM_CPPFLAGS += $(QT4_CPPFLAGS) $(QT4_CORE_INCLUDES) +AM_CPPFLAGS += $(QT4_CPPFLAGS) $(QT4_INCLUDES) if BUILD_CLIENT_SUBDIR CLIENT = client diff --git a/src/graphics/PreviewLoader.cpp b/src/graphics/PreviewLoader.cpp index 6185681f53..ce273aa189 100644 --- a/src/graphics/PreviewLoader.cpp +++ b/src/graphics/PreviewLoader.cpp @@ -27,6 +27,7 @@ #include "TexRow.h" #include "frontends/Application.h" // hexName +#include "frontends/qt4/ColorCache.h" #include "insets/Inset.h" @@ -36,6 +37,7 @@ #include "support/filetools.h" #include "support/ForkedCalls.h" #include "support/lstrings.h" +#include "support/qstring_helpers.h" #include "support/bind.h" @@ -587,16 +589,26 @@ void PreviewLoader::Impl::startLoading(bool wait) // FIXME XHTML // The colors should be customizable. ColorCode const bg = buffer_.isExporting() - ? Color_white : PreviewLoader::backgroundColor(); + ? Color_white : PreviewLoader::backgroundColor(); ColorCode const fg = buffer_.isExporting() - ? Color_black : PreviewLoader::foregroundColor(); + ? Color_black : PreviewLoader::foregroundColor(); + std::string bg_name, fg_name; + if (theApp()) { + fg_name = theApp()->hexName(fg); + bg_name = theApp()->hexName(bg); + } else { + ColorCache cc; + fg_name = ltrim(fromqstr(cc.get(fg).name()), "#"); + bg_name = ltrim(fromqstr(cc.get(bg).name()), "#"); + } + // The conversion command. ostringstream cs; cs << pconverter_->command << " " << quoteName(latexfile.toFilesystemEncoding()) << " --dpi " << int(font_scaling_factor) - << " --fg " << theApp()->hexName(fg) - << " --bg " << theApp()->hexName(bg); + << " --fg " << fg_name + << " --bg " << bg_name; // FIXME what about LuaTeX? if (buffer_.params().useNonTeXFonts) cs << " --latex=xelatex";