#include "TextCache.h"
#include "lyxfind.h"
#include "undo_funcs.h"
+#include "ParagraphParameters.h"
+#include "figureForm.h"
using std::pair;
using std::make_pair;
extern BufferList bufferlist;
extern LyXServer * lyxserver;
-extern int greek_kb_flag;
extern bool selection_possible;
extern void MenuSendto();
return;
}
- // Can we be sure that this will work for all X-Windows
+ // Can we be sure that this will work for all X Window
// implementations? (Lgb)
// This code snippet makes lyx ignore some keys. Perhaps
// all of them should be explictly mentioned?
case LFUN_SPELLCHECK:
disable = lyxrc.isp_command == "none";
break;
+#ifndef HAVE_LIBAIKSAURUS
+ case LFUN_THESAURUS_ENTRY:
+ disable = true;
+ break;
+#endif
case LFUN_RUNCHKTEX:
disable = lyxrc.chktex_command == "none";
break;
if (disable)
flag |= func_status::Disabled;
- // the font related functions
+ // the font related functions (and a few others)
func_status::value_type box = func_status::ToggleOff;
LyXFont const & font =
TEXT(false)->real_current_font;
if (font.series() == LyXFont::BOLD_SERIES)
box = func_status::ToggleOn;
break;
-#ifndef NO_LATEX
- case LFUN_TEX:
- if (font.latex() == LyXFont::ON)
- box = func_status::ToggleOn;
- break;
-#endif
case LFUN_READ_ONLY_TOGGLE:
if (buf->isReadonly())
box = func_status::ToggleOn;
break;
+ case LFUN_APPENDIX:
+ if (TEXT(false)->cursor.par()->params().startOfAppendix())
+ box = func_status::ToggleOn;
+ break;
default:
box = func_status::OK;
break;
inset->edit(owner->view(),slx,sly,0);
return string();
} else if (((result=owner->view()->theLockingInset()->
- localDispatch(owner->view(), action,
- argument)) ==
- UpdatableInset::DISPATCHED) ||
- (result == UpdatableInset::DISPATCHED_NOUPDATE))
+ localDispatch(owner->view(), action, argument)) ==
+ UpdatableInset::DISPATCHED) ||
+ (result == UpdatableInset::DISPATCHED_NOUPDATE))
+ return string();
+ else if (result == UpdatableInset::FINISHED) {
+ if (TEXT()->cursor.par()->isRightToLeftPar(owner->buffer()->params)) {
+ TEXT()->cursorRight(owner->view());
+ moveCursorUpdate(true, false);
+ owner->showState();
+ }
+ return string();
+ } else if (result == UpdatableInset::FINISHED_RIGHT) {
+ if (!TEXT()->cursor.par()->isRightToLeftPar(owner->buffer()->params)) {
+ TEXT()->cursorRight(owner->view());
+ moveCursorUpdate(true, false);
+ owner->showState();
+ }
+ return string();
+ } else if (result == UpdatableInset::FINISHED_UP) {
+ if (TEXT()->cursor.row()->previous()) {
+ TEXT()->cursorUp(owner->view());
+ moveCursorUpdate(true, false);
+ owner->showState();
+ }
+ return string();
+ } else if (result == UpdatableInset::FINISHED_DOWN) {
+ if (TEXT()->cursor.row()->next())
+ TEXT()->cursorDown(owner->view());
+ else
+ TEXT()->cursorRight(owner->view());
+ moveCursorUpdate(true, false);
+ owner->showState();
return string();
- else {
+ } else {
//setMessage(N_("Text mode"));
switch (action) {
case LFUN_UNKNOWN_ACTION:
}
}
- lyx::Assert(action != LFUN_SELECT_FILE_SYNC);
-
switch (action) {
case LFUN_ESCAPE:
case LFUN_REMOVEERRORS:
if (owner->view()->removeAutoInsets()) {
owner->view()->redraw();
- owner->view()->fitCursor(TEXT());
+ owner->view()->fitCursor();
}
break;
owner->getDialogs()->setUserFreeFont();
break;
-#ifndef NO_LATEX
- case LFUN_TEX:
- Tex(owner->view());
- owner->view()->setState();
- owner->showState();
- break;
-#endif
-
case LFUN_RECONFIGURE:
Reconfigure(owner->view());
break;
break;
#else
#ifdef WITH_WARNINGS
-#warning Find another implementation here (or another lyxfunc)!
+//#warning Find another implementation here (or another lyxfunc)!
#endif
#endif
case LFUN_HELP_ABOUTLYX:
owner->getDialogs()->showAboutlyx();
break;
- case LFUN_HELP_COPYRIGHT:
- case LFUN_HELP_CREDITS:
-
+ case LFUN_HELP_TEXINFO:
+ owner->getDialogs()->showTexinfo();
+ break;
case LFUN_HELP_OPEN:
{
break;
}
- case LFUN_HELP_VERSION:
-
// --- version control -------------------------------
case LFUN_VC_REGISTER:
{
lyxerr[Debug::INFO] << "No matching paragraph found! ["
<< id << "]" << std::endl;
break;
+ } else {
+ lyxerr << "Paragraph " << par->id()
+ << " found." << endl;
}
// Set the cursor
- TEXT()->setCursor(owner->view(), par, 0);
+ owner->view()->text->setCursor(owner->view(), par, 0);
owner->view()->setState();
owner->showState();
// --- insert characters ----------------------------------------
// --- Mathed stuff. If we are here, there is no locked inset yet.
-
- // Greek mode
- case LFUN_GREEK:
- {
- if (!greek_kb_flag) {
- greek_kb_flag = 1;
- setMessage(N_("Math greek mode on"));
- } else
- greek_kb_flag = 0;
- }
- break;
-
- // Greek keyboard
- case LFUN_GREEK_TOGGLE:
- {
- greek_kb_flag = greek_kb_flag ? 0 : 2;
- if (greek_kb_flag) {
- setMessage(N_("Math greek keyboard on"));
- } else {
- setMessage(N_("Math greek keyboard off"));
- }
- }
- break;
-
case LFUN_MATH_EXTERN:
case LFUN_MATH_NUMBER:
case LFUN_MATH_NONUMBER:
owner->message(str.str().c_str());
} else {
ostringstream str;
- str << _("Could not open docuent") << ' ' << disp_fn;
+ str << _("Could not open document") << ' ' << disp_fn;
owner->message(str.str().c_str());
}
}
text += nicename;
if (tmpbuf->lyxvc.inUse()) {
text += " [";
- text += tmpbuf->lyxvc.version();
+ text += tmpbuf->lyxvc.versionString();
text += ' ';
text += tmpbuf->lyxvc.locker();
if (tmpbuf->isReadonly())