mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-22 01:59:02 +00:00
Kill LFUN_OUTLINE_DRAGMOVE.
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg157155.html git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33050 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
e88b91116f
commit
17e2928374
@ -62,10 +62,6 @@ The following new LyX functions have been introduced:
|
||||
|
||||
- LFUN_FONT_UWAVE ("font-underwave").
|
||||
|
||||
//FIXME kill this before release unless Rob comes
|
||||
//with something new.
|
||||
- LFUN_OUTLINE_DRAGMOVE ("outline-dragmove").
|
||||
|
||||
- LFUN_BRANCHES_RENAME ("branches-rename").
|
||||
|
||||
- LFUN_BRANCH_ADD_INSERT ("branch-add-insert").
|
||||
|
@ -344,9 +344,9 @@ enum FuncCode
|
||||
// 260
|
||||
LFUN_OUTLINE_IN,
|
||||
LFUN_OUTLINE_OUT,
|
||||
LFUN_OUTLINE_DRAGMOVE, // roakes 20090601
|
||||
LFUN_PARAGRAPH_MOVE_DOWN,
|
||||
LFUN_PARAGRAPH_MOVE_UP,
|
||||
LFUN_CURSOR_FOLLOWS_SCROLLBAR_TOGGLE, // ARRae 971202
|
||||
// 265
|
||||
LFUN_CLIPBOARD_PASTE,
|
||||
LFUN_INSET_DISSOLVE, // jspitzm 20060807
|
||||
@ -442,7 +442,6 @@ enum FuncCode
|
||||
LFUN_BUFFER_CLOSE_ALL, // vfr 20090806
|
||||
LFUN_GRAPHICS_RELOAD, // vfr 20090810
|
||||
LFUN_SCREEN_SHOW_CURSOR, // vfr, 20090325
|
||||
LFUN_CURSOR_FOLLOWS_SCROLLBAR_TOGGLE, // ARRae 971202
|
||||
// 345
|
||||
|
||||
LFUN_LASTACTION // end of the table
|
||||
|
@ -2008,25 +2008,6 @@ void LyXAction::init()
|
||||
* \endvar
|
||||
*/
|
||||
{ LFUN_OUTLINE_OUT, "outline-out", Noop, Edit },
|
||||
|
||||
/*!
|
||||
* \var lyx::FuncCode lyx::LFUN_OUTLINE_DRAGMOVE
|
||||
* \li Action: Moves the document section associated with the specified
|
||||
heading to a specified location. Both the heading and the
|
||||
target paragraph are specified by the paragraph ID numbers.
|
||||
* \li Notion: The heading is a paragraph with style Part/Chapter/Section/
|
||||
etc. Id number of the paragraph is not the sequential number
|
||||
seen on the screen, but an internal number that is unique
|
||||
for all opened buffers (documents).
|
||||
* \li Syntax: outline-dragmove <PAR_ID_SECTION> <PAR_ID_DROP_POSITION>
|
||||
* \li Params: <PAR_ID_SECTION>: paragraph id of the section heading which
|
||||
is to be moved. \n
|
||||
<PAR_ID_DROP_POSITION>: the paragraph id where the section
|
||||
will be moved to.
|
||||
* \li Origin: Rob Oakes, 22 June 2009
|
||||
* \endvar
|
||||
*/
|
||||
{ LFUN_OUTLINE_DRAGMOVE, "outline-dragmove", Noop, Edit },
|
||||
|
||||
/*!
|
||||
* \var lyx::FuncCode lyx::LFUN_INSET_EDIT
|
||||
@ -2038,7 +2019,6 @@ void LyXAction::init()
|
||||
* \li Origin: JSpitzm, 27 Apr 2006
|
||||
* \endvar
|
||||
*/
|
||||
|
||||
{ LFUN_INSET_EDIT, "inset-edit", ReadOnly, Edit },
|
||||
|
||||
/*!
|
||||
|
@ -299,59 +299,6 @@ string const freefont2string()
|
||||
}
|
||||
|
||||
|
||||
static void dragMove(Cursor & cur, int moveid, int movetoid)
|
||||
{
|
||||
// Create pointers to buffers
|
||||
Buffer & buf_move = *cur.buffer();
|
||||
DocIterator dit_move = buf_move.getParFromID(moveid);
|
||||
DocIterator dit_dest = buf_move.getParFromID(movetoid);
|
||||
|
||||
pit_type & pit_move = dit_move.pit();
|
||||
pit_type & pit_dest = dit_dest.pit();
|
||||
ParagraphList & pars = dit_move.text()->paragraphs();
|
||||
|
||||
// Create references to the paragraphs to be moved
|
||||
ParagraphList::iterator const bgn = pars.begin();
|
||||
ParagraphList::iterator dest_start = boost::next(bgn, pit_dest);
|
||||
|
||||
// The first paragraph of the area to be copied:
|
||||
ParagraphList::iterator start = boost::next(bgn, pit_move);
|
||||
// The final paragraph of area to be copied:
|
||||
ParagraphList::iterator finish = start;
|
||||
ParagraphList::iterator const end = pars.end();
|
||||
|
||||
// Move out (down) from this section header
|
||||
if (finish != end)
|
||||
++finish;
|
||||
|
||||
// Seek the one (on same level) below
|
||||
int const thistoclevel = start->layout().toclevel;
|
||||
for (; finish != end; ++finish) {
|
||||
int const toclevel = finish->layout().toclevel;
|
||||
if (toclevel != Layout::NOT_IN_TOC
|
||||
&& toclevel <= thistoclevel)
|
||||
break;
|
||||
}
|
||||
|
||||
if (start == pars.begin() || start == dest_start)
|
||||
// Nothing to move
|
||||
return;
|
||||
|
||||
pars.insert(dest_start, start, finish);
|
||||
pars.erase(start, finish);
|
||||
|
||||
// FIXME: This only really needs doing for the newly
|
||||
// introduced paragraphs. Something like:
|
||||
// pit_type const numpars = distance(start, finish);
|
||||
// start = boost::next(bgn, pit);
|
||||
// finish = boost::next(start, numpars);
|
||||
// for (; start != finish; ++start)
|
||||
// start->setBuffer(buf);
|
||||
// But while this seems to work, it is kind of fragile.
|
||||
buf_move.inset().setBuffer(buf_move);
|
||||
}
|
||||
|
||||
|
||||
/// the type of outline operation
|
||||
enum OutlineOp {
|
||||
OutlineUp, // Move this header with text down
|
||||
@ -2107,16 +2054,6 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
|
||||
cur.buffer()->updateLabels();
|
||||
needsUpdate = true;
|
||||
break;
|
||||
|
||||
case LFUN_OUTLINE_DRAGMOVE: {
|
||||
int const move_id = convert<int>(cmd.getArg(0));
|
||||
int const move_to_id = convert<int>(cmd.getArg(1));
|
||||
dragMove(cur, move_id, move_to_id);
|
||||
setCursor(cur, cur.pit(), 0);
|
||||
cur.buffer()->updateLabels();
|
||||
needsUpdate = true;
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
LYXERR(Debug::ACTION, "Command " << cmd << " not DISPATCHED by Text");
|
||||
@ -2528,11 +2465,6 @@ bool Text::getStatus(Cursor & cur, FuncRequest const & cmd,
|
||||
case LFUN_OUTLINE_DOWN:
|
||||
case LFUN_OUTLINE_IN:
|
||||
case LFUN_OUTLINE_OUT:
|
||||
case LFUN_OUTLINE_DRAGMOVE:
|
||||
// FIXME: LyX is not ready for outlining within inset.
|
||||
enable = isMainText()
|
||||
&& cur.paragraph().layout().toclevel != Layout::NOT_IN_TOC;
|
||||
break;
|
||||
|
||||
case LFUN_NEWLINE_INSERT:
|
||||
// LaTeX restrictions (labels or empty par)
|
||||
|
Loading…
Reference in New Issue
Block a user