3 * This file is part of LyX, the document processor.
4 * Licence details can be found in the file COPYING.
6 * \author Angus Leeming
8 * Full author contact details are available in file CREDITS.
18 #include "FuncRequest.h"
19 #include "FuncStatus.h"
28 Dialog::Dialog(GuiView & lv, std::string const & name)
29 : lyxview_(&lv), name_(name.c_str())
37 std::string Dialog::name() const
42 bool Dialog::canApply() const
44 FuncRequest const fr(getLfun(), name_);
45 FuncStatus const fs(getStatus(fr));
50 void Dialog::dispatch(FuncRequest const & fr) const
52 theLyXFunc().setLyXView(lyxview_);
57 void Dialog::updateDialog() const
59 dispatch(FuncRequest(LFUN_DIALOG_UPDATE, name_));
63 void Dialog::disconnect() const
65 lyxview_->disconnectDialog(name_);
69 bool Dialog::isBufferAvailable() const
71 return lyxview_->buffer() != 0;
75 bool Dialog::isBufferReadonly() const
77 if (!lyxview_->buffer())
79 return lyxview_->buffer()->isReadonly();
83 std::string const Dialog::bufferFilepath() const
85 return buffer().filePath();
89 KernelDocType Dialog::docType() const
91 if (buffer().isLatex())
93 if (buffer().isLiterate())
100 BufferView * Dialog::bufferview()
102 return lyxview_->view();
106 BufferView const * Dialog::bufferview() const
108 return lyxview_->view();
112 Buffer & Dialog::buffer()
114 BOOST_ASSERT(lyxview_->buffer());
115 return *lyxview_->buffer();
119 Buffer const & Dialog::buffer() const
121 BOOST_ASSERT(lyxview_->buffer());
122 return *lyxview_->buffer();
125 } // namespace frontend