Commit Graph

174 Commits

Author SHA1 Message Date
Jean-Marc Lasgouttes
5e0c737a3b * src/mathed/math_scriptinset.C
(MathScriptInset::hasLimits): remove annoying debug message

	* src/mathed/math_nestinset.C
	(MathNestInset::script): ditto

	* src/CutAndPaste.C
	(copySelection): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14583 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-08 21:55:41 +00:00
Abdelrazak Younes
a4032074c9 This commit continues the drastic diet operated on BufferView. It removes all boost signal connections from BufferView::pimpl and put them in LyXView. LyXView already inherits from boost::signals::trackable so this is not a big deal. If you look closely at the signal connections, it all makes sense IMO.
With this change, the only difference between BufferView.h and BufferView_pimpl.h is "cursor.h" so I think it is time to merge the two classes at last.

BufferView:
* showErrorList(), getErrorList(): transfered to LyXView.

BufferView::pimpl
* addError(), showReadonly(), connectBuffer(), disconnectBuffer(): transfered to LyXView.

CutAndPaste.C: adapted to API changes
frontends/controllers/ControlErrorList.C: ditto
lyxfunc.C: ditto 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14458 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-14 21:47:48 +00:00
Georg Baum
c9c6ed0b7f Split clipboard and X selection
* src/LyXAction.C
	(LyXAction::init): handle new LFUN_CLIPBOARD_PASTE

	* src/insets/insettabular.C
	(InsetTabular::doDispatch): ditto

	* src/insets/insetbox.C
	(InsetBox::doDispatch): ditto

	* src/insets/insetert.C
	(InsetERT::doDispatch): ditto
	(InsetERT::getStatus): ditto

	* src/insets/insetcharstyle.C
	(InsetCharStyle::doDispatch): ditto

	* src/BufferView_pimpl.C
	(BufferView::Pimpl::selectionRequest): stuff selection, not clipboard

	* src/mathed/math_nestinset.C
	(MathNestInset::lfunMousePress): get stuff selection, not clipboard
	(MathNestInset::lfunMouseRelease): clipboard -> selection in
	commented code

	* src/CutAndPaste.C
	(cutSelection): ditto

	* src/frontends/{qt3,gtk}/GuiImplementation.C
	(GuiImplementation::newWorkArea): create new selection, not clipboard,
	since the clipboard is now an object
	(GuiImplementation::destroyWorkArea): destroy selection, not clipboard

	* src/frontends/{qt4,qt3,gtk}/GuiSelection.h: new, copied from
	GuiClipboard.h

	* src/frontends/{qt4,qt3,gtk}/GuiSelection.C: new, copied from
	GuiClipboard.C

	* src/frontends/{qt3,gtk}/GuiImplementation.h
	(selection): new accessor for selection_
	(selection_): new, the global selection object

	* src/frontends/{qt4,qt3,gtk}/Makefile.am: add GuiSelection.C and
	GuiSelection.h

	* src/frontends/{qt4,qt3,gtk}/GuiClipboard.C
	(GuiClipboard::get): return clipboard, not selection
	(GuiClipboard::put): stuff clipboard, not selection

	* src/frontends/{qt4,qt3,gtk}/GuiClipboard.h
	(haveSelection): remove (this is now in GuiSelection)

	* src/frontends/{qt3,gtk}/GuiClipboard.h
	(old_work_area_): remove, since it is not needed anymore

	* src/frontends/gtk/ghelpers.C
	(getGTKStockIcon): handle LFUN_CLIPBOARD_PASTE

	* src/frontends/Clipboard.h
	(haveSelection): remove (this is now in Selection)

	* src/frontends/qt4/GuiImplementation.[Ch]
	(GuiImplementation::selection): new accessor for selection_

	* src/frontends/Gui.h
	(selection): New accessor for the global selection object

	* src/frontends/Selection.h; new, copied from Clipboard.h

	* src/frontends/Makefile.am: add Selection.h

	* src/text3.C
	(various): s/clipboard().haveSelection/selection().haveSelection/

	(LyXText::dispatch): handle LFUN_CLIPBOARD_PASTE
	(LyXText::getStatus): ditto

	* src/lfuns.h: new lfun LFUN_CLIPBOARD_PASTE

	* lib/ui/stdmenus.ui: add new lfun LFUN_CLIPBOARD_PASTE


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14408 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-10 11:32:25 +00:00
Lars Gullik Bjønnes
fb97c0689b First part of r14315 from the younes branch:
* BufferView and BufferView::pimpl:
   		- getClipboard, stuffClipboard, haveSelection: deleted

	* CutAndPaste.C: use BufferView::owner()->gui().clipboard()
	* insettabular.C: ditto
	* math_nestinset.C: ditto
	* text3.C: ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14323 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-03 20:19:33 +00:00
Georg Baum
2392e19c66 Fix crash that occurs if the cursor is in a table cell when the document class
is changed
	* src/cursor.C: remove unused 'using std::swap'
	* src/BufferView.C: ditto

	* src/CutAndPaste.[Ch]
	(switchBetweenClasses): replace ParagraphList argument with InsetText
	argument. This avoids an unnecessary swap in lyxfunc.C.

	* src/CutAndPaste.C
	(pasteSelectionHelper): Adjust to the changes above
	(pasteSelectionHelper): Use ParagraphList::swap instead of std::swap.
	This fixes the crash.

	* src/lyxfunc.C
	(LyXFunc::dispatch): Adjust to switchBetweenClasses changes


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13895 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-21 17:33:03 +00:00
Martin Vermeer
2b4690b82d Fix bug 2516
* CutAndPaste.C
	(eraseSelectionHelper): merge (conditionally) only first and last
	paragraph of selection



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13875 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-19 16:23:49 +00:00
Georg Baum
c9b081f6f9 Fix bug 2476:
* src/CutAndPaste.C
	(resetOwnerAndChanges): rename to resetParagraph and reset the
	language of ERT paragraphs, too
	(copySelectionHelper): adapt to changes above
	(cutSelection): ditto
	(copySelection): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13699 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-20 08:42:01 +00:00
Abdelrazak Younes
f6bcac7285 * src/buffer_funcs.[Ch]
- updateCounters renamed to updateLabels
 - void updateLabels(Buffer const & buf,
   ParIterator & it): new convenience function
 - void updateLabels(Buffer const & buf,
   ParIterator & from, ParIterator & to): new convenience function
 - setCounter renamed to setLabel
 - bool tryToUpdateCurrentLabel(Buffer const & buf,
   ParIterator & it): new method
 - needsUpdateCounters: deleted

* src/BufferView_pimpl.C
* src/CutAndPaste.C
* src/frontends/controllers/ControlDocument.C
* src/lyxfunc.C
* src/text.C
* src/text2.C
* src/text3.C
 - fixed the calls to updateLabels


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13689 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-16 14:19:25 +00:00
Jürgen Spitzmüller
d27e1b9dd7 * src/paragraph.h (public): new enum ChangeTracking,
indicating if ct is used in the current buffer.
	(cleanChanges): pass enum ChangeTracking.

        * src/paragraph_pimpl.C (cleanChanges): delete ct marks from
	paste content if ct is of in the buffer. Set content INSERTED
	if ct is on (bug 2207).

        * src/CutAndPaste.C (pasteSelectionHelper): pass information 
	about the current change tracking state to cleanChanges.

        * src/paragraph_pimpl.h (cleanChanges): pass enum ChangeTracking.

        * src/paragraph.C (cleanChanges): pass enum ChangeTracking.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13666 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-13 16:47:57 +00:00
Lars Gullik Bjønnes
cf4293824f * Change several freestanding and class methods with first letter
capitalized to have first letter lowercased.
* Adjust all affected files.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13605 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-09 00:26:19 +00:00
Lars Gullik Bjønnes
3b9338a3a8 Whitespace cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13565 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-05 23:56:29 +00:00
Lars Gullik Bjønnes
9d6cad3fe6 * output_latex.h:
* buffer.h:
        * CutAndPaste.h:
        * pariterator.h:
        * paragraph_funcs.h:
        * output_linuxdoc.h:
        * output_docbook.h:
        * insets/insettext.h: get forward declaration of ParagraphList

        * output_plaintext.C:
        * bufferlist.C:
        * undo.C:
        * lyxtext.h:
        * undo.h:
        * buffer_funcs.C:
        * insets/insetbibitem.C: get proper ParagraphList decls

        * output_linuxdoc.C (linuxdocParagraphs):
        * output_latex.C (TeXOnePar):
        * insets/insettext.C (appendParagraphs):
        * insets/insetcharstyle.C (docbook): use std::distance

        * CutAndPaste.C (pasteSelectionHelper, copySelectionHelper):
        * paragraph_funcs.C (breakParagraph,
        breakParagraphConservative, mergeParagraph):
        * text.C (acceptChange, rejectChange):
        * text2.C (deleteEmptyParagraphMechanism): use boost::next

        * output_docbook.C (several places): use boost::next and
        std::distance

        * ParagraphList_fwd.h: modify to provid a forward declaratoin
        of the new ParagraphList.

        * RandomAccessList.h: New container for Paragraphs from
        Abdelrazak Younes

        * ParagraphList.h: new file, setup user of RandomAccessList

        * paragraph.C: remove ParagraphList constructor from this file



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13467 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-23 20:11:06 +00:00
Martin Vermeer
f42db3f4b2 Change tracking -related bug fixes (reported by Juergen) and some
documentation work



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13385 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-16 06:54:08 +00:00
Martin Vermeer
bcf1a16e10 Fix bug 880, or the multi-paragraph change tracking patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13339 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-11 13:31:41 +00:00
Jean-Marc Lasgouttes
4842112b77 fix bug 2096: LyX file inserting is broken
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10631 a592a061-630c-0410-9148-cb99ea01b6c8
2005-11-29 15:08:35 +00:00
Jean-Marc Lasgouttes
2eb67150a4 disable LFUN_PASTE when there is nothing to paste
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10620 a592a061-630c-0410-9148-cb99ea01b6c8
2005-11-25 09:27:08 +00:00
Georg Baum
d7055d0a8e implement missing bits of math cut and paste and fix bug 2059
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10548 a592a061-630c-0410-9148-cb99ea01b6c8
2005-10-12 18:44:53 +00:00
Jürgen Spitzmüller
4110aa3b1e fix bug 1919 (table cells won't accept normal text pastes)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10416 a592a061-630c-0410-9148-cb99ea01b6c8
2005-09-06 17:39:39 +00:00
Lars Gullik Bjønnes
411ece2787 2005-08-19 Lars Gullik Bj����nnes <larsbj@gullik.net>
* CutAndPaste.C (eraseSelectionHelper): fix bug 1920
use old deleteion algorithm when changetracking is on.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10400 a592a061-630c-0410-9148-cb99ea01b6c8
2005-08-19 16:22:22 +00:00
Lars Gullik Bjønnes
5570211e7b bug 1920
Erase all the middle pars in one go


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10338 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-19 13:17:01 +00:00
André Pönitz
49d8c0d3e0 partial revert of earlier patch avoids crash
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10245 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-16 15:22:07 +00:00
André Pönitz
ef68cb1128 remove some debug output, simplyfy pasteSelectionHelper interface
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10234 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-16 00:28:50 +00:00
Georg Baum
674038dc8c undefined charstyle fixes from Martin and me
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9903 a592a061-630c-0410-9148-cb99ea01b6c8
2005-05-04 11:21:14 +00:00
Angus Leeming
fb70c52b05 Whitespace, only whitespace.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9877 a592a061-630c-0410-9148-cb99ea01b6c8
2005-04-26 11:12:20 +00:00
Martin Vermeer
719dc8c0b2 More precise fix for bug 1654
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9783 a592a061-630c-0410-9148-cb99ea01b6c8
2005-04-06 07:38:24 +00:00
Jean-Marc Lasgouttes
1e7112db43 fix counters updating mechanism
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9682 a592a061-630c-0410-9148-cb99ea01b6c8
2005-02-25 11:55:36 +00:00
Lars Gullik Bjønnes
aa491cdb98 dociterator dont inherit from std::vector and updates
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9602 a592a061-630c-0410-9148-cb99ea01b6c8
2005-02-08 13:18:05 +00:00
Georg Baum
ccd660f0b1 fix cut and paste crash
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9594 a592a061-630c-0410-9148-cb99ea01b6c8
2005-02-07 10:01:43 +00:00
Georg Baum
5890d93dce file format change for bug 698 and fix for the reproducible part of bug 922
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9584 a592a061-630c-0410-9148-cb99ea01b6c8
2005-02-03 17:24:40 +00:00
Angus Leeming
c9f9ba315c Asger's exchanging of the class and struct keywords.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9502 a592a061-630c-0410-9148-cb99ea01b6c8
2005-01-19 15:03:31 +00:00
Georg Baum
f2a07f0ac9 fix bug 1332
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9461 a592a061-630c-0410-9148-cb99ea01b6c8
2005-01-10 13:10:48 +00:00
Alfredo Braunstein
a2cd656e25 CoordBranch merge
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9325 a592a061-630c-0410-9148-cb99ea01b6c8
2004-11-30 01:59:49 +00:00
Lars Gullik Bjønnes
686f1e276f InsetOld -> InsetBase renaming
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9310 a592a061-630c-0410-9148-cb99ea01b6c8
2004-11-25 19:13:07 +00:00
Alfredo Braunstein
ed064bdee6 par->pit renaming
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9300 a592a061-630c-0410-9148-cb99ea01b6c8
2004-11-24 21:53:46 +00:00
Lars Gullik Bjønnes
13c24dd556 * lyxfunctional.h: delete back_inserter_fun functions and helper
classes.
* lyx_gui.C (start): use for_each instead of explicit for loop
* cursor.C (insert): use for_each instead of explicit for loop

* bufferlist.C (getFileNames): use std::transform and
std::back_inserter instead of std::copy and lyx::back_inserter_fun.

* buffer_funcs.C (bufferErrors): use for_each instead of explicit
for loop

* buffer.C (changeLanguage): use for_each instead of explicit for
loop
(hasParWithID): implement using getParFromID

* LaTeXFeatures.C: ws change only

* CutAndPaste.C (replaceSelectionWithString): Use a temporary var
to cleanup a bit.

* BufferView_pimpl.C (trackChanges): use for_each instead of
expilicit for loop


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9182 a592a061-630c-0410-9148-cb99ea01b6c8
2004-11-06 15:23:12 +00:00
André Pönitz
eec2d548eb fix #1654
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8898 a592a061-630c-0410-9148-cb99ea01b6c8
2004-08-13 12:05:27 +00:00
Georg Baum
db707dab04 remove now unnecessary const casts
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8757 a592a061-630c-0410-9148-cb99ea01b6c8
2004-05-17 11:28:31 +00:00
Angus Leeming
c4762f9452 Whitespace, only whitespace...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8682 a592a061-630c-0410-9148-cb99ea01b6c8
2004-04-20 08:51:15 +00:00
André Pönitz
ba0a69bcd9 partial fix for cut and paste
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8658 a592a061-630c-0410-9148-cb99ea01b6c8
2004-04-18 07:32:34 +00:00
André Pönitz
2bdaf96dfb the Paragraph::inInset() changes
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8632 a592a061-630c-0410-9148-cb99ea01b6c8
2004-04-08 15:03:33 +00:00
Lars Gullik Bjønnes
68b7ef25fb simple ws changes only
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8594 a592a061-630c-0410-9148-cb99ea01b6c8
2004-04-03 08:37:12 +00:00
Alfredo Braunstein
610e905ed3 change iterators ctors, implement backwardPos
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8562 a592a061-630c-0410-9148-cb99ea01b6c8
2004-03-30 08:18:09 +00:00
Alfredo Braunstein
374e280417 cure a couple of funny new bugs introduced in my latest patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8556 a592a061-630c-0410-9148-cb99ea01b6c8
2004-03-29 09:46:05 +00:00
Alfredo Braunstein
3e80b0b318 the pariterator stuff
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8554 a592a061-630c-0410-9148-cb99ea01b6c8
2004-03-28 22:00:22 +00:00
Alfredo Braunstein
979a4d8ecf fixes 3 c&p crashes, and a vanishing insets bug fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8553 a592a061-630c-0410-9148-cb99ea01b6c8
2004-03-28 19:13:11 +00:00
Angus Leeming
b11b6f78b1 Squash a bunch of compiler warnings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8538 a592a061-630c-0410-9148-cb99ea01b6c8
2004-03-27 01:18:51 +00:00
André Pönitz
0d43ba149a the stuff from the sneak preview:
For one, it still contains a few things that are already in CVS (the
'brown paperbag' changes).

Secondly, this changes the ParagraphList to a std::vector but does not
yet take full advantage of it except removing LyXText::parOffset() and
similar.

I had an extensive talk with my profiler and we are happy nevertheless.

This also moves almost all Cut&Paste specific stuff from text.C to
CutAndPaste.C. Much smaller interface now... Namespace CutAndPaste is
now  lyx::cap::. Was inconsistent with the rest....

Make ParagraphList a proper class. We'll need this later for a
specialized erase/insert.

Remove some unneeded prototypes and function declarations

Use ParameterStruct directly instead of ShareContainer<ParameterStruct>

Inline a few accesses to CursorSlice members as suggested by the profiler.

Fix commandline conversion crash reported by Kayvan.

Replace PosIterator by DocumentIterator. The latter can also iterate
through math and nested text in math...

Remove math specific hack from Documentiterator

Derive InsetCollapsable from InsetText instead of using an InsetText
member. This give us the opportunity to get rid of the InsetOld::owner_
backpointer.

Cosmetics in CutAndPaste.C and cursor.C. Fix nasty crash (popping slices
off an empty selection anchor). Add a few asserts.

Remove all 'manual' update calls. We do now one per user interaction which
is completely sufficient.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8527 a592a061-630c-0410-9148-cb99ea01b6c8
2004-03-25 09:16:36 +00:00
Lars Gullik Bjønnes
2f33eaa286 Make some functors adaptable and related small stuff.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8324 a592a061-630c-0410-9148-cb99ea01b6c8
2004-01-07 17:57:47 +00:00
André Pönitz
153ac7500c * inset.h:
* insetert.[Ch]:
	* insettabular.[Ch]:
	* insettext.[Ch]: remove unused insetInset()

	* insetert.C: disable some  LFUNs

	* insettoc.[Ch]: metrics() and draw() of InsetButton is enough.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8221 a592a061-630c-0410-9148-cb99ea01b6c8
2003-12-10 09:45:32 +00:00
André Pönitz
4b2c271e23 * buffer.[Ch]:
* lyxtext.h: move ParagraphList member to LyXText
	rename LyXText::ownerParagraphs to LyXText::paragraph

	* CutAndPaste.C:
	* bufferview_funcs.C:
	* iterators.[Ch]:
	* lyx_cb.C:
	* paragraph.C:
	* rowpainter.C:
	* tabular.C:
	* text.C:
	* text2.C:
	* text3.C: adjust

	* lyxfunc.C: move LFUN_INSET_TOGGLE handling to insets.

	* undo.C: fix cursor positioning
	* insetbase.h: whitespace

	* inset.[Ch]: remove latexTextWidth
	make setBackgroundColor virtual

	* insettext.[Ch]:  move ParagraphList member to LyXText

	* insetcollapsable.[Ch]: handle LFUN_INSET_TOGGLE

	* insetcharstyle.C:
	* insetenv.C:
	* insetert.[Ch]:
	* insetfloat.[Ch]:
	* insetminipage.[Ch]:
	* insettabular.C:
	* insetwrap.[Ch]: adjust paragraphs and background color handling,


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8166 a592a061-630c-0410-9148-cb99ea01b6c8
2003-12-01 13:35:49 +00:00