- case LFUN_DIALOG_TOGGLE:
- flag.setOnOff(lyx_view_->getDialogs().visible(cmd.getArg(0)));
- // fall through to set "enable"
- case LFUN_DIALOG_SHOW: {
- string const name = cmd.getArg(0);
- if (!buf)
- enable = name == "aboutlyx"
- || name == "file" //FIXME: should be removed.
- || name == "prefs"
- || name == "texinfo";
- else if (name == "print")
- enable = buf->isExportable("dvi")
- && lyxrc.print_command != "none";
- else if (name == "character") {
- if (!view())
- enable = false;
- else {
- InsetCode ic = view()->cursor().inset().lyxCode();
- enable = ic != ERT_CODE && ic != LISTINGS_CODE;
- }
- }
- else if (name == "latexlog")
- enable = FileName(buf->logName()).isFileReadable();
- else if (name == "spellchecker")
-#if defined (USE_ASPELL) || defined (USE_ISPELL) || defined (USE_PSPELL)
- enable = !buf->isReadonly();
-#else
- enable = false;
-#endif
- else if (name == "vclog")
- enable = buf->lyxvc().inUse();
- break;
- }
-
- case LFUN_DIALOG_UPDATE: {
- string const name = cmd.getArg(0);
- if (!buf)
- enable = name == "prefs";
- break;
- }
-