- case LFUN_DOWN_PARAGRAPH:
- if (!cur.mark())
- cur.clearSelection();
- needsUpdate = cursorDownParagraph(cur);
- finishChange(cur, false);
- break;
-
- case LFUN_DOWN_PARAGRAPHSEL:
- if (!cur.selection())
- cur.resetAnchor();
- cursorDownParagraph(cur);
- finishChange(cur, true);
- break;
-
- case LFUN_PRIORSEL:
- update(cur);
- if (!cur.selection())
- cur.resetAnchor();
- needsUpdate = cursorPrevious(cur);
- finishChange(cur, true);
- break;
-
- case LFUN_NEXTSEL:
- update(cur);
- if (!cur.selection())
- cur.resetAnchor();
- needsUpdate = cursorNext(cur);
- finishChange(cur, true);
- break;
-
- case LFUN_HOMESEL:
- update(cur);
- if (!cur.selection())
- cur.resetAnchor();
- needsUpdate = cursorHome(cur);
- finishChange(cur, true);
- break;
-
- case LFUN_ENDSEL:
- update(cur);
- if (!cur.selection())
- cur.resetAnchor();
- needsUpdate = cursorEnd(cur);
- finishChange(cur, true);
- break;
-
- case LFUN_WORDRIGHTSEL:
- if (!cur.selection())
- cur.resetAnchor();
- if (isRTL(cur.paragraph()))
- cursorLeftOneWord(cur);
- else
- cursorRightOneWord(cur);
- finishChange(cur, true);
- break;
-
- case LFUN_WORDLEFTSEL:
- if (!cur.selection())
- cur.resetAnchor();
- if (isRTL(cur.paragraph()))
- cursorRightOneWord(cur);
- else
- cursorLeftOneWord(cur);
- finishChange(cur, true);
- break;
-
- case LFUN_WORDSEL: {
- selectWord(cur, lyx::WHOLE_WORD);
- finishChange(cur, true);
- break;
- }
-
- case LFUN_PRIOR:
- update(cur);
- if (!cur.mark())
- cur.clearSelection();
- finishChange(cur, false);