mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-22 01:59:02 +00:00
parent
02e6a5ea19
commit
c4c7053d1d
@ -478,6 +478,7 @@ enum FuncCode
|
||||
LFUN_EXPORT_CANCEL, // rgh, 20171227
|
||||
LFUN_BUFFER_ANONYMIZE, // sanda, 20180201
|
||||
LFUN_GRAPHICS_UNIFY, // sanda, 20180207
|
||||
LFUN_MASTER_BUFFER_EXPORT, // rkh, 20180417
|
||||
LFUN_LASTACTION // end of the table
|
||||
};
|
||||
|
||||
|
@ -2506,6 +2506,25 @@ void LyXAction::init()
|
||||
{ LFUN_MARK_TOGGLE, "mark-toggle", ReadOnly, Edit },
|
||||
|
||||
|
||||
/*!
|
||||
* \var lyx::FuncCode lyx::LFUN_MASTER_BUFFER_EXPORT
|
||||
* \li Action: Exports the master buffer (document) to the given format.
|
||||
* \li Syntax: master-buffer-export [<FORMAT>] [<DEST>]
|
||||
* \li Params: <FORMAT> is one of the formats which you can find in
|
||||
Tools->Preferences->File formats->Format.
|
||||
Usual format you will enter is "pdf2" (pdflatex),
|
||||
"pdflatex" (plain tex for pdflatex) or "ps" for postscript.\n
|
||||
Note that "custom" is not allowed in this case.\n
|
||||
If absent or "default", then the default output format of the
|
||||
document is used.\n
|
||||
<DEST> If present, this argument provides the export destination
|
||||
filename. Its containing folder will also be the destination
|
||||
folder, where all the needed external files will be copied.
|
||||
* \li Origin: rkh, 18 April 2018
|
||||
* \endvar
|
||||
*/
|
||||
{ LFUN_MASTER_BUFFER_EXPORT, "master-buffer-export", ReadOnly, Buffer },
|
||||
|
||||
/*!
|
||||
* \var lyx::FuncCode lyx::LFUN_MASTER_BUFFER_UPDATE
|
||||
* \li Action: Update (export) the document built from the master buffer,
|
||||
|
@ -1865,6 +1865,15 @@ bool GuiView::getStatus(FuncRequest const & cmd, FuncStatus & flag)
|
||||
case LFUN_BUFFER_IMPORT:
|
||||
break;
|
||||
|
||||
case LFUN_MASTER_BUFFER_EXPORT:
|
||||
enable = doc_buffer
|
||||
&& (doc_buffer->parent() != 0
|
||||
|| doc_buffer->hasChildren())
|
||||
&& !d.processing_thread_watcher_.isRunning()
|
||||
// this launches a dialog, which would be in the wrong Buffer
|
||||
&& !(::lyx::operator==(cmd.argument(), "custom"));
|
||||
break;
|
||||
|
||||
case LFUN_MASTER_BUFFER_UPDATE:
|
||||
case LFUN_MASTER_BUFFER_VIEW:
|
||||
enable = doc_buffer
|
||||
@ -3701,11 +3710,19 @@ void GuiView::dispatch(FuncRequest const & cmd, DispatchResult & dr)
|
||||
importDocument(to_utf8(cmd.argument()));
|
||||
break;
|
||||
|
||||
case LFUN_MASTER_BUFFER_EXPORT:
|
||||
if (doc_buffer)
|
||||
doc_buffer = const_cast<Buffer *>(doc_buffer->masterBuffer());
|
||||
// fall through
|
||||
case LFUN_BUFFER_EXPORT: {
|
||||
if (!doc_buffer)
|
||||
break;
|
||||
// GCC only sees strfwd.h when building merged
|
||||
if (::lyx::operator==(cmd.argument(), "custom")) {
|
||||
// LFUN_MASTER_BUFFER_EXPORT is not enabled for this case,
|
||||
// so the following test should not be needed.
|
||||
// In principle, we could try to switch to such a view...
|
||||
// if (cmd.action() == LFUN_BUFFER_EXPORT)
|
||||
dispatch(FuncRequest(LFUN_DIALOG_SHOW, "sendto"), dr);
|
||||
break;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user