// -*- C++ -*- /* * \file ControlDialog.tmpl * Copyright 2002 the LyX Team * Read the file COPYING * * \author Angus Leeming * * ControlDialog is a base class and so these templatised methods will be * instantiated if this file is #included in the derived classes' .C file. */ #include "ControlDialog.h" #include "ButtonControllerBase.h" #include "ControlConnections.h" #include "frontends/LyXView.h" #include "BufferView.h" #include "ViewBase.h" #include "debug.h" template ControlDialog::ControlDialog(LyXView & lv, Dialogs & d) : Base(lv, d), dialog_built_(false) {} template void ControlDialog::show() { if (Base::isBufferDependent() && !Base::lv_.view()->available()) return; Base::connect(); setParams(); if (Base::emergency_exit_) { hide(); return; } if (!dialog_built_) { Base::view().build(); dialog_built_ = true; } Base::bc().readOnly(Base::isReadonly()); Base::view().show(); } template void ControlDialog::update() { if (Base::isBufferDependent() && !Base::lv_.view()->available()) return; setParams(); if (Base::emergency_exit_) { hide(); return; } Base::bc().readOnly(Base::isReadonly()); Base::view().update(); } template void ControlDialog::hide() { Base::emergency_exit_ = false; clearParams(); Base::disconnect(); Base::view().hide(); }