X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2Fqt%2FGuiView.cpp;h=948deb9a756c8378faa666f9974db143287037bd;hb=b96b876403ea541ada6d35fd683b599368c8c854;hp=3160a1f8192108f135e1c3b95d817f1745249e16;hpb=6dcd4ca4f168df0cd49295fdfff3d75f1f70ba95;p=features.git diff --git a/src/frontends/qt/GuiView.cpp b/src/frontends/qt/GuiView.cpp index 3160a1f819..948deb9a75 100644 --- a/src/frontends/qt/GuiView.cpp +++ b/src/frontends/qt/GuiView.cpp @@ -95,6 +95,7 @@ #include #include #include +#include #include #include #include @@ -745,7 +746,7 @@ QVector GuiView::GuiViewPrivate::guiWorkAreas() static void handleExportStatus(GuiView * view, Buffer::ExportStatus status, string const & format) { - docstring const fmt = theFormats().prettyName(format); + docstring const fmt = translateIfPossible(theFormats().prettyName(format)); docstring msg; switch (status) { case Buffer::ExportSuccess: @@ -2370,6 +2371,10 @@ bool GuiView::getStatus(FuncRequest const & cmd, FuncStatus & flag) flag.setOnOff(lyxrc.spellcheck_continuously); break; + case LFUN_CITATION_OPEN: + enable = true; + break; + default: return false; } @@ -2531,7 +2536,7 @@ static bool import(GuiView * lv, FileName const & filename, if (loader_format.empty()) { frontend::Alert::error(_("Couldn't import file"), bformat(_("No information for importing the format %1$s."), - theFormats().prettyName(format))); + translateIfPossible(theFormats().prettyName(format)))); return false; } } else @@ -2578,13 +2583,13 @@ void GuiView::importDocument(string const & argument) } docstring const text = bformat(_("Select %1$s file to import"), - theFormats().prettyName(format)); + translateIfPossible(theFormats().prettyName(format))); FileDialog dlg(toqstr(text)); dlg.setButton1(qt_("D&ocuments"), toqstr(lyxrc.document_path)); dlg.setButton2(qt_("&Examples"), toqstr(lyxrc.example_path)); - docstring filter = theFormats().prettyName(format); + docstring filter = translateIfPossible(theFormats().prettyName(format)); filter += " (*.{"; // FIXME UNICODE filter += from_utf8(theFormats().extensions(format)); @@ -4619,6 +4624,16 @@ void GuiView::dispatch(FuncRequest const & cmd, DispatchResult & dr) dr.screenUpdate(Update::Force); break; + case LFUN_CITATION_OPEN: { + string pdfv, psv; + if (theFormats().getFormat("pdf")) + pdfv = theFormats().getFormat("pdf")->viewer(); + if (theFormats().getFormat("ps")) + psv = theFormats().getFormat("ps")->viewer(); + frontend::showTarget(argument, pdfv, psv); + break; + } + default: // The LFUN must be for one of BufferView, Buffer or Cursor; // let's try that: @@ -4786,6 +4801,19 @@ void GuiView::resetDialogs() } +void GuiView::flatGroupBoxes(const QObject * widget, bool flag) +{ + for (QObject * child: widget->children()) { + if (child->inherits("QGroupBox")) { + QGroupBox * box = (QGroupBox*) child; + box->setFlat(flag); + } else { + flatGroupBoxes(child, flag); + } + } +} + + Dialog * GuiView::findOrBuild(string const & name, bool hide_it) { if (!isValidName(name)) @@ -4801,6 +4829,11 @@ Dialog * GuiView::findOrBuild(string const & name, bool hide_it) Dialog * dialog = build(name); d.dialogs_[name].reset(dialog); +#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0)) + // Force a uniform style for group boxes + // On Mac non-flat works better, on Linux flat is standard + flatGroupBoxes(dialog->asQWidget(), guiApp->platformName() != "cocoa"); +#endif if (lyxrc.allow_geometry_session) dialog->restoreSession(); if (hide_it)