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 lyxview_->dispatch(fr);
56 void Dialog::updateDialog() const
58 dispatch(FuncRequest(LFUN_DIALOG_UPDATE, name_));
62 void Dialog::disconnect() const
64 lyxview_->disconnectDialog(name_);
68 bool Dialog::isBufferAvailable() const
70 return lyxview_->buffer() != 0;
74 bool Dialog::isBufferReadonly() const
76 if (!lyxview_->buffer())
78 return lyxview_->buffer()->isReadonly();
82 std::string const Dialog::bufferFilepath() const
84 return buffer().filePath();
88 KernelDocType Dialog::docType() const
90 if (buffer().isLatex())
92 if (buffer().isLiterate())
99 BufferView * Dialog::bufferview()
101 return lyxview_->view();
105 BufferView const * Dialog::bufferview() const
107 return lyxview_->view();
111 Buffer & Dialog::buffer()
113 BOOST_ASSERT(lyxview_->buffer());
114 return *lyxview_->buffer();
118 Buffer const & Dialog::buffer() const
120 BOOST_ASSERT(lyxview_->buffer());
121 return *lyxview_->buffer();
124 } // namespace frontend