Commit Graph

110 Commits

Author SHA1 Message Date
Richard Heck
d188a36fc2 Fix bug #10835.
VCS InsetInfos were broken by the switch at 2e934fc5f8 to using
updateBuffer to handle them. But we do not really want to go through
that routine in a clone, not for those insets, whose contents we
want to be the same as in the original Buffer.

Also fixes some issues noted in discussion of this bug: Failure to
update after context menu switch; failure to re-calculate shortcuts,
which can change.
2017-12-29 16:09:15 -05:00
Jean-Marc Lasgouttes
6936c1b4fa Fix MSVC warning
Take this occasion to simplify the code.

Fixes bug #10402.
2017-12-14 13:39:37 +01:00
Juergen Spitzmueller
c466baaa5b Collapsable -> Collapsible (part 2)
The current spelling is not strictly wrong, but flagged as unusual or
historical by some authorities. It is also found fault with many
spell checkers. Thus we decided to move to the more standard "-ible"
form once and for all.

See #10678 for discussion

This part covers the most tricky part: the internal naming.
Translations and layouts will follow.

This will all also all be backported to 2.3.x, for the sake of backwards
compatibility (cherry-picking).
2017-10-16 10:12:21 +02:00
Richard Heck
2e934fc5f8 Remove updateInfo() calls in favor of doing the relevant work
in updateBuffer().

This is in response to a reported crash. See
	https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg202217.html
Commit af381a2f addressed the crash, and is worth doing anyway. But
this also makes sense.

Also adds a flag to tell us whether we need to recalculate the
relevant information. In some cases, there is no need to do so
more than once. (Note that, with the existing code, we *never*
recalculate, which would have given rise to bugs.)
2017-10-15 20:53:15 -04:00
Christian Ridderström
e30f3d76d2 Bulk cleanup/fix incorrect annotation at the end of namespaces.
This commit does a bulk fix of incorrect annotations (comments) at the
end of namespaces.

The commit was generated by initially running clang-format, and then
from the diff of the result extracting the hunks corresponding to
fixes of namespace comments. The changes being applied and all the
results have been manually reviewed. The source code successfully
builds on macOS.

Further details on the steps below, in case they're of interest to
someone else in the future.

1. Checkout a fresh and up to date version of src/

    git pull && git checkout -- src && git status src

2. Ensure there's a suitable .clang-format in place, i.e. with options
   to fix the comment at the end of namespaces, including:

    FixNamespaceComments:                           true
    SpacesBeforeTrailingComments:                   1

and that clang-format is >= 5.0.0, by doing e.g.:

    clang-format -dump-config | grep Comments:
    clang-format --version

3. Apply clang-format to the source:

    clang-format -i $(find src -name "*.cpp" -or -name "*.h")

4. Create and filter out hunks related to fixing the namespace

    git diff -U0 src > tmp.patch
    grepdiff '^} // namespace' --output-matching=hunk tmp.patch  > fix_namespace.patch

5. Filter out hunks corresponding to simple fixes into to a separate patch:

    pcregrep -M -e '^diff[^\n]+\nindex[^\n]+\n--- [^\n]+\n\+\+\+ [^\n]+\n'  \
        -e '^@@ -[0-9]+ \+[0-9]+ @@[^\n]*\n-\}[^\n]*\n\+\}[^\n]*\n'         \
        fix_namespace.patch > fix_namespace_simple.patch

6. Manually review the simple patch and then apply it, after first
   restoring the source.

    git checkout -- src
    patch -p1 < fix_namespace_simple.path

7. Manually review the (simple) changes and then stage the changes

    git diff src
    git add src

8. Again apply clang-format and filter out hunks related to any
   remaining fixes to the namespace, this time filter with more
   context. There will be fewer hunks as all the simple cases have
   already been handled:

    clang-format -i $(find src -name "*.cpp" -or -name "*.h")
    git diff src > tmp.patch
    grepdiff '^} // namespace' --output-matching=hunk tmp.patch  > fix_namespace2.patch

9. Manually review/edit the resulting patch file to remove hunks for files
   which need to be dealt with manually, noting the file names and
   line numbers. Then restore files to as before applying clang-format
   and apply the patch:

    git checkout src
    patch -p1 < fix_namespace2.patch

10. Manually fix the files noted in the previous step. Stage files,
    review changes and commit.
2017-07-23 13:11:54 +02:00
Richard Heck
75bfed5507 Fix trailing whitespace in cpp files. 2017-07-03 13:53:14 -04:00
Enrico Forestieri
b6880470b3 Fix bug #9898: inset info cannot show specified icon 2015-12-11 08:51:37 +01:00
Jean-Marc Lasgouttes
4dcc73ebf0 Get rid of autoBreakRow, which is obsoleted by allowMultiPar()
The only real user was Text::insertStringAsLine, but this got changed
in commit 2c7152ab.

While not other place did read the value, there is a side effect of
setAutobreakRow that merges exiting paragraphs. However, this is used
in two situations

* some constructors, where the inset is empty;

* InsetTabular::toggleFixedWidth, which actually contains itself some
  code to merge paragraphs.

Therefore the member and all associated code can be removed safely.
2015-03-31 17:02:00 +02:00
Enrico Forestieri
0bbfadb23f Typo 2015-03-31 16:03:16 +02:00
Enrico Forestieri
f516629285 Add comment 2015-03-31 01:26:48 +02:00
Kornel Benko
fd7e4f2dbb No need to compute size of an icon if not using GUI.
This also avoids crash while calling Qimage() without GUI.
2015-03-28 21:05:41 +01:00
Enrico Forestieri
0f0750a65a Allow using icon names in InsetInfo
Currently, only lfun names are accepeted but there are cases in which
the lfun name does not map directly to an icon. Fore example, in the
outliner, the icon named "promote" is used for the lfun outline-out.
As a result, a graphics inset is used in the documentation for describing
the corresponding icon. Now one can also use an icon name. The argument
of "info-isert icon" is firstly lookep up as an lfun. If no corresponding
icon is found, the argument is taken as the name of the icon. If no such
icon exists, the "unknown" icon is used.
2015-03-28 12:45:20 +01:00
Enrico Forestieri
a3d5f27038 Remove the iconScaleFactor() method from src/support.
I am moving the corresponding code directly to InsetInfo.cpp.
Moreover, the size of the image displayed by the info inset is
now dynamically set according to the text size.
2015-03-25 21:26:32 +01:00
Richard Heck
eb79a98e01 Whitespace. 2015-03-23 21:58:45 -04:00
Enrico Forestieri
d00dcc2ca7 Use the nominal theme's icon size for displaying the icon in an info inset. 2015-03-13 00:38:05 +01:00
Vincent van Ravesteijn
8a40336848 Fix assertion: icon in insetinfo without a font
InsetInfos of the type ICON have a graphics Inset in their paragraph.
These insets were inserted without a font. This lead to an assertion in
Paragraph::fontSpan because the fontlist_ of the paragraph is empty.
2013-05-19 12:48:34 +02:00
Vincent van Ravesteijn
7287a259c5 Change the type of the context menu name to string
There is no need for GUI-elements to use docstring.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40058 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-29 14:48:55 +00:00
Enrico Forestieri
3fd8b88154 Make InsetInfo output a path matching the LaTeX compiler.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39629 a592a061-630c-0410-9148-cb99ea01b6c8
2011-09-07 08:14:10 +00:00
Abdelrazak Younes
6056db3212 Header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39300 a592a061-630c-0410-9148-cb99ea01b6c8
2011-07-14 17:00:35 +00:00
Pavel Sanda
29fc2f60be InsetInfo - on VCS error we don't want localized output in .tex output.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38117 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-29 01:43:06 +00:00
Richard Heck
3f27f951cb This is intended to be a pure renaming of the Inset::name() routine,
preparatory to fixing #7080. Note that mathed uses the same routine, but
for a completely different purpose, so I did not rename it there. I have
seen no difference in behavior after testing, e.g., opening and
exporting Math.lyx, and also re-saving it and looking at the diff.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38109 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-28 22:33:04 +00:00
Pavel Sanda
1b3c9e54c5 We have lyx_version, for PACKAGE_VERSION.
(Introduced in r34186.)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37577 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-09 17:23:20 +00:00
Georg Baum
a89dbd75e6 Fix crash in lyx -e latex lib/doc/Shortcuts.lyx: theApp() is 0 in batch mode.
Unfortunately the commandline export of InsetInfo is still broken for MENU_INFO.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37134 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-06 18:40:39 +00:00
Vincent van Ravesteijn
80c1e18bda Compile fix: solve the merge conflicts in the correct way ;)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36607 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-29 23:47:55 +00:00
Vincent van Ravesteijn
c42a61c5ac Fix bug #6642: Concatenate the context menus for: InsetCollapsables without a button, InsetTexts which have a custom context menu and InsetTabulars. Override the default behaviour for InsetInfo.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36606 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-29 23:21:52 +00:00
Vincent van Ravesteijn
e7f2bbe1ee Rename InsetXXX::contextMenu to InsetXXX::contextMenuName. Now this function doesn't need all the parameters and we split the functionality of choosing which context menu to return, from the functionality of supplying the name for the Inset itself. Now, the InsetText context menu is returned for InsetCollapsables when the button is not hit by the mouse. There is no (intended) change in functionality for insets without a button, collapsed insets. This fixes partly bug #6642. A fix for InsetTabular and for insets with no button will follow.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36604 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-29 21:27:25 +00:00
Jean-Marc Lasgouttes
574931dcdb Fix bug #6930: no undo for inset type changing
THis is a consequence of the new AtPoint mechanism. In the old
world, recordUndoInset was called before INSET_MODIFY. I reintroduced
manual recordUndoInset calls in all places that matter. I suspect
that this issue should be revisited later.

Note that recordUndoInset can now take an optional parameter that tells
what inset is concerned. This is useful because the cursor can be
either just inside the inset or in front of it.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36580 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-29 09:47:46 +00:00
Stephan Witt
85b09e9d04 remove the translation context for vcs buffer info message for unimplemented features, the name of vcs info is hardcoded and ascii only
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35965 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-01 15:16:59 +00:00
Stephan Witt
17b3e30335 correct the gettext context for the format of the displayed error message for unknown vcs buffer-info insets
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35961 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-01 07:03:47 +00:00
Stephan Witt
81b0f275a8 correct the gettext format of the displayed error message for unknown vcs buffer-info insets
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35960 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-01 06:32:09 +00:00
Vincent van Ravesteijn
0f2e47c4ad Fix bug #6664: InsetInfo: lyxrc information broken.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34278 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-23 11:46:24 +00:00
Vincent van Ravesteijn
6ec5776991 Fix bug #5543: InsetInfo gives wrong result for textclasses.
InsetInfo only returned whether a layout file was available for a class, not whether the LaTeX document class was available.

This might be caused by the maybe misleading name of the "LayoutFileList::haveClass()" function.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34268 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-22 19:36:03 +00:00
Vincent van Ravesteijn
1df3f70ed1 Fix more of bug #5446: Enable to copy the contents of an InsetInfo through the context menu.
This introduces a new LFUN LFUN_INSET_COPY_AS, which copies a certain Inset to the clipboard. For InsetInfo this is the text that is visible, but this could also replace LFUN_LABEL_COPY_AS_REF, by copying the INSET to the clipboard as a reference, and also a Math inset to copy to the clipboard as latex (including $'s or \[..\]).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34223 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-19 21:36:32 +00:00
Vincent van Ravesteijn
ec862d10da Better(?) fix for bug #6659: InsetInfo context menu disabled unless cursor immediately in front.
(see r34215 for the previous fix.)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34216 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-18 23:47:11 +00:00
Vincent van Ravesteijn
ce4d5f22f8 Fix bug #6659: InsetInfo context menu disabled unless cursor immediately in front.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34215 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-18 23:35:59 +00:00
Richard Heck
aeac2f8cb9 Disable InsetInfo for VC when VC is not active.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34190 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-17 13:34:13 +00:00
Richard Heck
9d7e5b6b41 Messed this up, too.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34189 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-17 13:29:00 +00:00
Richard Heck
7747410bb0 Forgot this.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34188 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-17 13:24:49 +00:00
Richard Heck
64840ec5ef Simplify VC output from InsetInfo.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34187 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-17 13:24:32 +00:00
Richard Heck
49945d3fac LyX version info for InsetInfo.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34186 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-17 13:04:41 +00:00
Richard Heck
b79d8e5e2d Make members of FuncRequest private, per the FIXME there. Again, this is
basically a massive renaming, with no real changes.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34106 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-09 19:00:42 +00:00
Richard Heck
4c7a5d0024 This is just a giant renaming of member variables in FuncRequest,
preparatory to making them private.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34105 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-09 18:15:17 +00:00
Uwe Stöhr
6d41db574d InsetXXX.cpp: remove unused include of MetricsInfo.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33721 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-12 00:23:48 +00:00
Jean-Marc Lasgouttes
19031e2345 Restore some sanaity in InsetInfo lfuns (bug #6580)
The context menu is wrong, I do not know why.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33689 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-09 23:04:35 +00:00
Vincent van Ravesteijn
8a840ef805 Fix bug #6580: Revert r29305, which was supposed to fix bug #5901.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33646 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-06 17:47:50 +00:00
Pavel Sanda
c0f9fb76a8 SVN info - add author, date, time
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33435 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-12 05:52:34 +00:00
Pavel Sanda
7875d1a9ad Tree revision info into InsetInfo. Muhehe.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33431 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-12 02:31:58 +00:00
Pavel Sanda
4c5ba07a7a Spots from Abdel
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33428 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-12 01:44:13 +00:00
Pavel Sanda
a97f1ddf06 Connect to InsetInfo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33426 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-12 01:44:04 +00:00
Vincent van Ravesteijn
c1c2629ffc Fix bug #5446: Cursor gets stuck in InsetInfo.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33285 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-31 01:44:49 +00:00