Commit Graph

9229 Commits

Author SHA1 Message Date
Stephan Witt
aec491f686 Avoid potential leak of memory pointed to by QTreeWidgetItem subcatItem 2020-02-21 07:57:09 +01:00
Stephan Witt
2bf7756196 Avoid potential leak of memory pointed to by QTreeWidgetItem catItem 2020-02-20 08:12:08 +01:00
Scott Kostyshak
19c41bd095 Fix write to uninitialized bytes for XCB event
As the xcb_send_event man page [1] states,

  In order to properly initialize these bytes, we allocate 32 bytes
  even though we only need less for an xcb_configure_notify_event_t

This commit fixes the following Valgrind error, which could be
triggered by selecting a letter in LyX:

  ==12698== Syscall param writev(vector[...]) points to uninitialised byte(s)
  ==12698==    at 0x61F578D: __writev (writev.c:26)
  ==12698==    by 0x61F578D: writev (writev.c:24)
  ==12698==    by 0x4A83BFC: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0)
  ==12698==    by 0x4A83FD0: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0)
  ==12698==    by 0x4A84246: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0)
  ==12698==    by 0x4A84ACB: xcb_flush (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0)
  ==12698==    by 0x17C8F06: lyx::frontend::GuiApplication::nativeEventFilter(QByteArray const&, void*, long*) (GuiApplication.cpp:3366)
  ==12698==    by 0x5AA4EEE: QAbstractEventDispatcher::filterNativeEvent(QByteArray const&, void*, long*) (qabstracteventdispatcher.cpp:484)

[1] https://www.x.org/releases/current/doc/man/man3/xcb_send_event.3.xhtml
2020-02-19 09:48:54 -05:00
Pavel Sanda
b7af21ad7c Fix memory leak.
Spotted by Scott.
https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg210447.html
2020-02-18 10:03:42 +01:00
Richard Kimberly Heck
731feb9f18 Silence some clang warnings. 2020-02-17 12:31:38 -05:00
Richard Kimberly Heck
fb03f2a5ec Fix a strange warning in QtCreator:
/cvs/lyx/lyx-devel/src/frontends/qt/TocModel.cpp:356: warning: loop variable 'toc' has type 'const pair<std::string, shared_ptr<lyx::Toc> > &' (aka 'const pair<basic_string<char>, shared_ptr<vector<lyx::TocItem> > > &') but is initialized with type 'const std::pair<const std::__cxx11::basic_string<char>, std::shared_ptr<std::vector<lyx::TocItem, std::allocator<lyx::TocItem> > > >' resulting in a copy

/cvs/lyx/lyx-devel/src/frontends/qt/TocModel.cpp:356: use non-reference type 'pair<std::string, shared_ptr<lyx::Toc> >' (aka 'pair<basic_string<char>, shared_ptr<vector<lyx::TocItem> > >') to keep the copy or type 'const std::pair<const std::__cxx11::basic_string<char>, std::shared_ptr<std::vector<lyx::TocItem, std::allocator<lyx::TocItem> > > > &' to prevent copying

Easier just to use 'auto'.
2020-02-17 12:31:38 -05:00
Stephan Witt
f12c4dbcd9 Remove unnecessary assertion after explicit buffer pointer check. 2020-02-17 14:35:03 +01:00
Stephan Witt
a1d68511ac Avoid potential crashes with missing document buffer in dispatch of buffer based LFUNs.
Use LASSERT with appropriate action instead of LATTEST assertions.
Debug build is unchanged and asserts, release build skips the action gracefully.
2020-02-17 13:36:37 +01:00
Pavel Sanda
2db6a81156 Unify handling in dispatchVC.
All these check could be actually dropped, because unless dispatchVC
is called directly, getstatus would already handle it.
2020-02-15 20:55:14 +01:00
Stephan Witt
6dab8739eb Avoid uninitialized position variables in case of current inset not doing the assignment 2020-02-14 12:11:10 +01:00
Stephan Witt
aca95619b8 Avoid potential leak of memory pointed to by QStandardItem catItem 2020-02-13 16:39:14 +01:00
Juergen Spitzmueller
b8546139c8 Properly resize columns of child document table widget 2020-02-07 17:23:14 +01:00
Jean-Marc Lasgouttes
4d6041a7b6 Adopt a 'belt and braces' approach to bidi forcing
There are two techniques that I know of for forcing the direction of a
string, regardlessly of whether its contents is naturally LtR, RtL or
undecided.

1/ The unicode LTR/LTR override characters. This is supposed to be the
   clean way, however, it does not seem to work with Qt 5.14 (see
   #11691).

2/ The undocumented QTextLayout::setFlags method. This is used
   internally and allows to pass the (undocumented) flags
   Qt::TextForceRightToLeft and Qt::TextForceLeftToRight. This was
   used until we had issues with Qt 5.11 (see #11284).

In order to get the best of both worlds, this patch allows to enable
those two methods separately, and actually enables both at the same
time by default!

(hopefully) Fixes bug #11691.
2020-01-27 23:23:10 +01:00
Juergen Spitzmueller
78ac0b4266 Fix typo in tooltip 2020-01-14 13:02:40 +01:00
Juergen Spitzmueller
5fc2662b13 Add pref to keep ct markup on copy/paste
Fixes #10278, #10128
2020-01-13 15:20:48 +01:00
Jean-Marc Lasgouttes
dba1e40b52 Revert "Automatically show the review toolbar if the document has tracked changes"
We will replace this with a better solution

For now, only keep
- Changes::isChanged()
- Buffer::areChangesPresent(), replaced by a dummy function

Next step will be to provide a working areChangesPresent() and to
compute Inset::isChanged in updateBuffer.

This reverts commit 6d4e6aad24.
2020-01-12 20:26:35 +01:00
Juergen Spitzmueller
c77999a5f3 Add buffer param to opt-out fragile content movement
Fixes #11714

File format change
2020-01-10 10:21:09 +01:00
Jean-Marc Lasgouttes
09130d7a62 Update to boost 1.72
This requires to add a assertion_failed_msg handler. Take this
occasion to cleanup and uniformize the various boost.cpp files that we
have.

This adds 50k line of whatever to the source code.
2020-01-07 16:27:23 +01:00
Juergen Spitzmueller
dc41c1f6df New helper lfun ifrelatives
This executes a command only if a buffer has either a master or children

Helps to disable master-related items in the UI
2020-01-02 14:09:24 +01:00
Juergen Spitzmueller
3f7b8db1b1 Further improve status check of master-buffer-forall 2020-01-02 14:09:01 +01:00
Juergen Spitzmueller
af9651a6a5 Slightly better status of master-buffer-forall 2019-12-31 18:46:33 +01:00
Juergen Spitzmueller
69792bbaa5 Implement master-buffer-forall
Similar to buffer-forall with the notable exception that its scope is
limited to the files of a project (master and all children)
2019-12-31 12:27:00 +01:00
Juergen Spitzmueller
c0f4eb0580 Introduce buffer-reset-export
Small helper lfun that makes LyX remove the aux file before doing the
next export. A bit more convenient than removing the files manually
or restarting LyX.
2019-12-27 11:06:34 +01:00
Juergen Spitzmueller
8e62dcc20f Add pref option to disable underlining of added text (in workarea)
Addresses #10102
2019-12-27 10:35:52 +01:00
Juergen Spitzmueller
90ae998287 Show modified text in merge changes dialog as far as possible
Fixes #1362
2019-12-26 11:17:09 +01:00
Juergen Spitzmueller
d914142969 Improve info in changes dialog 2019-12-26 08:01:37 +01:00
Juergen Spitzmueller
2d4948e107 Forgot this 2019-12-25 09:38:47 +01:00
Juergen Spitzmueller
0dbc3f759a Disable changebar checkbox if show changes in output is off 2019-12-24 18:43:22 +01:00
Juergen Spitzmueller
dc4823e759 Add native changebars
Fixes #10750
2019-12-24 18:12:22 +01:00
Juergen Spitzmueller
a08cbf41cf Provide way to add (optional) user initials
This makes it easier to hook the changes package into LyX's ct markup.
2019-12-24 14:31:08 +01:00
Juergen Spitzmueller
00985cf2fa Don't hide qualified citation list individual pre- and posttexts on single.item references
See #11697
2019-12-22 14:02:21 +01:00
Juergen Spitzmueller
239dee34af Report makeindex/xindy errors
Fixes #2569
2019-12-15 13:48:21 +01:00
Juergen Spitzmueller
772f2a2841 GuiSelectionManager: fix getSelectedIndex for availableLV 2019-11-20 14:07:05 +01:00
Juergen Spitzmueller
5d45c10fc7 Fix crash in selection manager
Patch by Patrick De Visschere
2019-11-19 13:47:32 +01:00
Jean-Marc Lasgouttes
d9edf32b67 Remove some useless expressions
Spotted by cppcheck
2019-10-27 00:09:05 +02:00
Scott Kostyshak
75bbe37495 Improve tooltip of "Save as Document Defaults"
The new message is shorter and also specifies that these defaults
are for new documents.
2019-10-26 14:46:33 -04:00
Jean-Marc Lasgouttes
067d6dc759 Mark insets with invalid buffer() in red in devel-mode.
We tend to have insets which buffer() member is invalid. To help
debugging, this commit paints their background in red when devel-mode
is on.

To this end, a new method develMode() is added to the Painter class.

With this commit, it is easy to see that macro template do not have a
proper buffer set!
2019-10-21 17:24:24 +02:00
Jean-Marc Lasgouttes
1ac5c937fb typo 2019-10-07 15:31:30 +02:00
Jean-Marc Lasgouttes
f009138f9c Revert "typo"
An unrelated change slipped in.

This reverts commit 3b642cd0ed.
2019-10-07 15:31:10 +02:00
Jean-Marc Lasgouttes
3b642cd0ed typo 2019-10-07 15:10:52 +02:00
Jean-Marc Lasgouttes
bdf58b77e7 Fix bad caret position with horizontal scrolling
Horizontal scrolling used to be taken into account when updating caret
geometry. This is wrong since it may have changed when time comes to
draw the caret. This leads to a situation where the first apparition
of the caret is at a wrong place.

Now the extra horizontal offset is used at drawing time.

Fixes bug #11603.
2019-10-07 12:31:20 +02:00
Jean-Marc Lasgouttes
8778e76a98 Pass some variables as reference
Spotted by cppcheck.
2019-09-17 23:22:35 +02:00
Juergen Spitzmueller
d76cef70a0 Allow to hide formats from menus
Fixes: #11657
2019-09-11 10:29:50 +02:00
Pavel Sanda
58cf1c5345 As observed on users list it's hard to guess where to setup external editor. 2019-08-16 23:01:34 +02:00
Scott Kostyshak
f11e9adf8a Implement commenting for CREDITS file
The reader of CREDITS (GuiAbout.cpp) now ignores lines that start
with the number sign (#). This commit also introduces a commented
out header in CREDITS reminding any potential editor that all
changes will be overwritten by generate_contributions.py.
2019-08-14 22:09:42 -04:00
Juergen Spitzmueller
e14f8daca4 GuiSetBorder: Fix drawing glitch with trimmed lines 2019-08-13 17:04:42 +02:00
Juergen Spitzmueller
cbfce678d8 Add Requires to float definition. 2019-08-12 12:18:28 +02:00
Juergen Spitzmueller
1386a3d8fd Allow for multiple use of same key in qualified citation lists
File format change

Fixes: #11618, #11632
2019-08-07 13:00:29 +02:00
Kornel Benko
bdf8c3b530 Fix forward search
The provided working directory was not properly set when the underlying
process starts.
It is not clear, why only this one call to one.startscript()
needs fixing. OTOH, the other calls do not use 'Systemcall::DontWait'
as the first parameter.
2019-07-25 10:01:03 +02:00
Juergen Spitzmueller
347800eff3 Allow multiple insertion of citation key with qualified citation lists
Fixes: #11618
2019-07-23 10:34:33 +02:00
Juergen Spitzmueller
6c2a0c6b37 Correct visual/logic cursor description 2019-07-23 07:36:53 +02:00
Jean-Marc Lasgouttes
2898c335be Add mechanism to change icons in RTL mode
When the cursor in RTL text, icons for "depth-increment" or
"layout-toggle Enumerate" look wrong.

To fix this, the lfun "bidi" is introduced. "bidi ltr func" behaves
like "func" in LTR text, but is unknown in RTL text. "bidi rtl" does
the opposite. This allows to add two icons, but only have one icon
available. When no document is available, only LTR is assumed.

To make this work, the handling of unknown functions in toolbar has
been changed so this these functions can change dynamically their
existence.

The icon themes `default', `oxygen' and `classic' have been updated
accordingly.

Fixes bug #4451.
2019-07-22 15:20:38 +02:00
Juergen Spitzmueller
24d72468c0 use validator rather than inputMask for line edit validation (part 2) 2019-07-22 11:31:56 +02:00
Juergen Spitzmueller
13df8f9a21 use validator rather than inputMask for line edit validation
inputMask gives an odd cursor, see #7204
2019-07-22 09:36:09 +02:00
Juergen Spitzmueller
b852df91bc Localize the default decimal separator
Do not blindly use (English) "." as default, but the locale default of
the current context language.

Fixes: #7204
2019-07-22 08:05:28 +02:00
Juergen Spitzmueller
3ca2b42389 Fix another tooltip 2019-07-21 16:43:41 +02:00
Juergen Spitzmueller
6fd2f7769f Hide custom_language_package if custom is not selected
Otherwise people might read it as if babel was automatically selected
2019-07-21 16:27:12 +02:00
Juergen Spitzmueller
6e7ef06dbc Further tooltips fix 2019-07-21 16:19:01 +02:00
Juergen Spitzmueller
ae9768da93 Fix tooltip 2019-07-21 14:41:23 +02:00
Juergen Spitzmueller
73146e757d Add tooltips
The function itself seems broken.
2019-07-21 14:37:14 +02:00
Juergen Spitzmueller
fb8ef40d12 Show language switch item in menu also in monolingual documents. 2019-07-21 11:49:33 +02:00
Juergen Spitzmueller
bbeee6bbef Improve prefs language UI 2019-07-21 11:37:54 +02:00
Kornel Benko
5c4c3b301a Amend c293be56: Cmake part of 'Rename frontend qt4 to qt' 2019-07-21 00:44:17 +02:00
Jean-Marc Lasgouttes
c293be56bd Rename frontend qt4 to qt
In particular, the directory frontends/qt4 is renamed to frontends/qt.

Many configurations file have to be updated. All mentions of qt4 in
the source have been audited, and changed to qt if necessary.

The only part that has not been updated is the CMake build system.
2019-07-20 23:39:40 +02:00
Jean-Marc Lasgouttes
c476c3766c Add a pref to disable OS keyboard language support
By default, the behavior is the same as before, except that the
language of new document is not unconditionally en_US anymore.

The new checkbox "Respect OS keyboard language" (off by default)
governs this behavior.

Update prefs format to 30.
2019-07-20 12:57:16 +02:00
Jean-Marc Lasgouttes
6f8298b165 Set language to OS input language when moving cursor
Instead of setting language from context when moving the cursor, set
it to the OS input language. This behavior will probably need to be
controlled by a preference, since not everybody changes keyboard
mapping when changing language.

This required to move BufferView::setCursorLanguage to
Cursor::setLanguageFromInput().
2019-07-19 11:52:03 +02:00
Jean-Marc Lasgouttes
049aed8e08 Respect OS-level keyboard language
This bug provides two features:

1/ when a new document is created the language is set to the current
  keyboard language.

2/ when keyboard is switched at OS level, the input language of
   current window is changed. The language is set preferably to one of
   those of the document. Ex. if the keyboard changes to en_GB but one
   is typing a document in US English and Hebrew, then US English will
   be selected rather that adding UK English to the list.

The implementation depends a lot on Qt. The platform status is :

* working on Windows 10

* not working with Linux (although 1/ works with Qt4); it seems that
  Qt5 supports switching through ibus, but I do not know what this
  means.

* not yet tested on macOS.

This addresses bugs #6450, #6247 and somehow #10514.
2019-07-17 23:23:13 +02:00
Jean-Marc Lasgouttes
732395ef1e Add support for amsmath's smallmatrix
This is a tight matrix in script size that is suitable for using inline.

Patch from our own Martin Vermeer and myself.
2019-07-15 13:38:07 +02:00
Jean-Marc Lasgouttes
e6b54ea4d2 Fix assertion in caret display code
It is not a good idea to call caretPosAndHeight when the caret is in a
paragraph that is not in cached metrics. This can happen when not
using "cursor follows scrollbar".

This commit refactor things a bit so that testing is done in
BufferView.

This bug is not in 2.3.x.
2019-07-14 23:27:44 +02:00
Juergen Spitzmueller
dc4a015fba Remove debug code 2019-07-14 12:04:53 +02:00
Juergen Spitzmueller
dcf06fdb22 Split osf options to families
Nowadays we support sf and tt fonts with osf options, so this needs to
be selectable separately.

File format change.
2019-07-14 11:41:36 +02:00
Jean-Marc Lasgouttes
575761c665 Use backing store also with wayland platform
Like with macOS, the Wayland compositor seems to require a
backingstore when doing partial updates like we do.

This extends the mechanism that has been introduced for macOS. This
has to be done at run time, not compile time.
2019-07-13 16:23:57 +02:00
Juergen Spitzmueller
0738ff08ba Consider CompleteFont with MoreOptions 2019-07-13 14:55:07 +02:00
Juergen Spitzmueller
c3c2815092 Implement support for font options
This revives a patch by Uwe and extends it. Additional options to font
packages/fontspec can now be entered in Document Settings.
This is principally also true for TeX fonts, if the new TeXFont tag
MoreOptions is set. For the time being, I have only done this for
MinionPro, as a model and prove of concept.

Note that adding more TeXFonts requires a file format change,
respectively, and changes to tex2lyx (in the same way as I've done for
MinionPro).

This addresses #8226
2019-07-11 20:28:34 +02:00
Juergen Spitzmueller
b6f0c1de3d Fix right and left layout alignment (in workarea) with RTL
Fixes: #11606
2019-07-10 14:50:08 +02:00
Juergen Spitzmueller
52fffee7f2 Preserve star on citation style change via menu
Fixes: #11439
2019-07-09 10:47:18 +02:00
Juergen Spitzmueller
13b6632228 Add TextClass option BibInToc
Fixes #1889
2019-07-08 15:40:17 +02:00
Jean-Marc Lasgouttes
455f10eae7 Revert "backing store"
This is not ready yet.

This reverts commit 1a2b1a3bfa.
2019-07-01 10:38:16 +02:00
Juergen Spitzmueller
cd5c406d9a More localization fixes 2019-06-26 12:25:53 +02:00
Juergen Spitzmueller
c703f76fe1 legacy > traditional 2019-06-26 11:14:59 +02:00
Juergen Spitzmueller
a62c4252ab Flag GUI strings for translation
Still room for improvement
2019-06-26 11:04:56 +02:00
Juergen Spitzmueller
0a8294d426 Improve encoding GUI string 2019-06-26 08:57:05 +02:00
Jean-Marc Lasgouttes
1a2b1a3bfa backing store 2019-06-25 12:39:32 +02:00
Juergen Spitzmueller
57788b8719 Fix tooltip 2019-06-22 08:35:14 +02:00
Günter Milde
71a57e0f4d Preserve \inputencoding value when switching to non-TeX fonts.
With non-TeX fonts, the \inputencoding setting is overridden
by "utf8-plain" (pass-through). Keeping the old value allows
switching back to TeX fonts without the need to (re)set
the input encoding.

Also change back the GUI name of the "auto-legacy" setting
(cf. #11115).
2019-06-21 12:40:41 +02:00
Jean-Marc Lasgouttes
938463b5d6 Fixup 3dc54d4a: fix string encoding issues with Qt4
The culprit here is the constructor QString(QByteArray const &): in
Qt4, it would interpret the byte array as latin1, and in Qt5 as utf8.

Therefore it is safer to use explicitly QString::fromUtf8 instead of
this constructor.

Several places where additionally simplified, in order to avoid some
extra conversions.
2019-06-20 11:27:15 +02:00
Jean-Marc Lasgouttes
3a7142d9bf Fix compilation with Qt4 2019-06-20 10:48:59 +02:00
Günter Milde
5fe6bc616c Fix order of Unicode encodings in Settings combobox.
Ensure the default encoding "utf8" comes always first,
followed by other common variants.
The encodings were sorted based on the GUI name which leads to
the default setting moving from the top position in some localizations.
2019-06-19 21:09:16 +02:00
Günter Milde
53500242f9 Harmonize input encoding selection widgets.
See #11115.
2019-06-18 15:43:34 +02:00
Jean-Marc Lasgouttes
5249eaaa60 Use <cstdint> instead of <boost/cstdint.hpp>
This is mandated by C++11.
2019-06-17 16:19:31 +02:00
Jean-Marc Lasgouttes
2b1515a936 Rename LM_ST_* to *_STYLE and FONT_SIZE_* to *_SIZE
This makes code more uniform. This is typically something that is done
at end of cycle to limit backport issues later.
2019-06-14 17:05:49 +02:00
Jean-Marc Lasgouttes
f12e796999 Revert "Rename LM_TC_* to FONT_STYLE_*"
Got it wrong, revert for now.

This reverts commit 67215833a1.
2019-06-14 17:05:00 +02:00
Jean-Marc Lasgouttes
67215833a1 Rename LM_TC_* to FONT_STYLE_*
This makes code more uniform. This is typically something that is done
at end of cycle to limit backport issues later.
2019-06-14 16:42:02 +02:00
Günter Milde
c627507b3f Revert 051de65db and implement alternative fix for remainder of #11115. 2019-06-12 11:48:47 +02:00
Richard Kimberly Heck
acd0f2fc78 Do not show both 'hide' and 'close' options on tabs for child buffers.
We can only close it (as opposed to hide it) if it's not a child.
Part of #11331.
2019-06-10 16:47:16 -04:00
Günter Milde
051de65db9 Fix remainder of #11115.
Implement GUI suggestions from
https://www.lyx.org/trac/ticket/11115#comment:26
2019-06-05 11:18:36 +02:00
Richard Kimberly Heck
0d54d3b762 Allow click on the 'spinner' to cancel export. 2019-05-27 23:21:07 -04:00
Günter Milde
c83765163f CJK package is never used with non-TeX fonts.
Prepare for languages that use CJK with TeX fonts and Polyglossia
with non-TeX fonts.

Korean is already supported by Polyglossia,
LyX support will follow (file version change).
2019-05-26 01:45:35 +02:00
Juergen Spitzmueller
1cafea7cf7 Read line edit label
Otherwise it is not clear what this means.
2019-05-24 17:51:42 +02:00
Juergen Spitzmueller
b6cb557c7d size tweak 2019-05-24 17:39:22 +02:00
Pavel Sanda
88f4718996 lineno: convert ui GB to CB per Juergen's request 2019-05-24 15:40:09 +02:00
Juergen Spitzmueller
03d9fe3a80 Some grammar and casing fixes and tooltip improvements 2019-05-24 10:59:00 +02:00
Pavel Sanda
7f125f62d2 Introduce doc preference for line numbering.
https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg208781.html
2019-05-23 15:13:27 +02:00
Pavel Sanda
e3707f1331 Resave NumberingUi.ui in qt5 designer 2019-05-23 15:11:39 +02:00
Richard Kimberly Heck
596b3c4522 Include all parent branches in the menu.
Previously, we only included branches from the master document. This
includes those from the parent, grandparent, etc, and does so in a way
that won't crash on recursive includes.
2019-05-22 22:00:31 -04:00
Richard Kimberly Heck
1842a11b3b Change how branches are displayed on the menus.
Show this document's branches first in the menu, and then show the
master document's branches on a sub-menu.
2019-05-22 21:41:22 -04:00
Richard Kimberly Heck
24fefaf23d Use ranges. 2019-05-22 21:41:22 -04:00
Richard Kimberly Heck
5fa493aa4a Re-organize and comment code a bit. 2019-05-22 20:58:00 -04:00
Juergen Spitzmueller
3da25187a9 Prevent assert due to some odd role in older qt versions. 2019-05-14 14:05:46 +02:00
Jean-Marc Lasgouttes
6df593049c Revert "Try to compute row height like it should be done"
This is not done right at all. The best is to revert for now and
think about how to do it properly.

This reverts commit 66a3d64346.
2019-05-13 10:47:47 +02:00
Richard Kimberly Heck
051a1a56a9 Revert "GMO for BG"
This reverts commit 5b84f11f80.
2019-05-12 23:30:49 -04:00
Richard Kimberly Heck
5b84f11f80 GMO for BG 2019-05-12 23:30:13 -04:00
Richard Kimberly Heck
15b90e4cc1 Rename for clarity. 2019-05-12 23:16:25 -04:00
Juergen Spitzmueller
682eabbe8e GuiDocument: Further encoding GUI improvement
Move the odd "(no inputenc)" option out of the encoding list.
2019-05-12 09:10:24 +02:00
Juergen Spitzmueller
e94239e973 Correct entry string 2019-05-11 19:04:36 +02:00
Juergen Spitzmueller
83a62a6d74 Further encoding GUI improvements 2019-05-11 12:16:52 +02:00
Juergen Spitzmueller
a6116428c0 GuiDocument: Adapt to new encoding default
Also simplify the code.
2019-05-11 11:28:21 +02:00
Jean-Marc Lasgouttes
c3f10df95d Move the stateText code for FontInfo to FontInfo class.
The first parameter of Font::stateText is now optional.
2019-05-10 10:45:40 +02:00
Günter Milde
337e3ff9a6 Fix Font selector GUI (font encoding) broken in 27ba6f282d. 2019-04-30 09:34:51 +02:00
Juergen Spitzmueller
e325c7cc6a GuiIdListModel: ignore DecorationRole (icons of available list) 2019-04-20 17:50:21 +02:00
Juergen Spitzmueller
b60259fbe1 Add system/local icon to available modules list
Also markup modules with missing requirements (like we do for layouts)
2019-04-20 09:28:46 +02:00
Juergen Spitzmueller
c0f734bcef Fix some listings/minted incompatibilities
The basic problem here is that rather than using an abstract syntax,
backend-specific param strings are produced in the listings dialog,
depending on whether listings or minted is used.

Of course this breaks if a user switches backends inbetween (s/he would
have to open and re-apply each and every listings inset!)

Do at least the most basic translations in InsetListings::latex().
A sane solution would imply the use of only one param syntax with
respective interpretation for each backend. But this would be a file
format change.
2019-04-19 19:03:29 +02:00
Juergen Spitzmueller
499167b2c5 Another quotation mark fix. 2019-04-19 14:27:27 +02:00
Juergen Spitzmueller
ac84510453 Fix quotation marks in GUI string. 2019-04-19 13:43:33 +02:00
Juergen Spitzmueller
2fa68abd00 Layout tweaking 2019-04-19 11:27:54 +02:00
Juergen Spitzmueller
7cadacb19b The Author(Year) label format is also mandatory for numeric natbib! 2019-04-19 09:53:42 +02:00
Juergen Spitzmueller
bebc184054 Display full author list with Natbib (non-BibTeX) if requested 2019-04-19 09:33:31 +02:00
Juergen Spitzmueller
8ecef0fcbc Available modules should not be editable. 2019-04-18 17:33:37 +02:00
Juergen Spitzmueller
8ee2ffaa52 Amend 3615a6a75b
Natbib provides separation of abbreviated and full author list also
beyond BibTeX
2019-04-18 16:27:22 +02:00
Juergen Spitzmueller
aec50eec49 Fix doxygen comment 2019-04-18 14:51:10 +02:00
Juergen Spitzmueller
3615a6a75b Make usage of natbib without BibTeX more obvious
Fixes: #5549
2019-04-18 14:48:01 +02:00
Juergen Spitzmueller
ed44bbddee Add MenuString to InsetLayout
Fixes: #8818
2019-04-18 10:27:19 +02:00
Günter Milde
27ba6f282d Rename legacy input encoding settings.
Format incremented to 573
2019-04-16 20:17:32 +02:00
Juergen Spitzmueller
7ec81c651e Listings: language updates
Patch by Sergei Winitzki
2019-04-15 11:55:46 +02:00
Jean-Marc Lasgouttes
f9da28428a Fix bold-like characters when selecting bidi text
In painter, restrting paining regions does not really work when region is empty.

Fixes bug #11198.
2019-04-09 11:32:22 +02:00
Juergen Spitzmueller
dfde45a01a Do not attempt to show module info for category headers 2019-04-07 13:57:41 +02:00
Juergen Spitzmueller
823263904f GuiDocument: Sort available modules by category
Also improve display of module information
2019-04-07 11:23:19 +02:00
Juergen Spitzmueller
6fef1cec1f Fix crash in GuiBibtex 2019-04-05 17:53:41 +02:00
Juergen Spitzmueller
38fbbf07cd GuiDocument: Add filter to modules selection
Sorting by category is needs more work, since the GuiIdListModel is
not suitable for trees.
2019-04-05 11:54:44 +02:00
Juergen Spitzmueller
fa79ff2db2 Resolve some implicit conversion warnings. 2019-04-05 11:54:44 +02:00
Juergen Spitzmueller
b5af05b4a7 Make module categories (almost) great again
The category tag was rarely used and thus not very useful. This adds
categorization to most modules (the rest will follow) and uses the
\DeclareCategory tag we use in layouts rather than the extra syntax
we used in modules. Categories are now added to the po files and
translated.

Note that this is work in progress: the current categories are still
subject to change.

The ultimate goal of this is to sort the modules in the GUI by category
as we do with layouts, examples and templates (and add a filter to search
for specific modules)

As it is now (with the many modules we accumulated), the module selector
is not really usable anymore. If you don't happen to know how exactly a
module is named, selecting a module is really a PITA.
2019-04-04 18:43:29 +02:00
Juergen Spitzmueller
2709c5fb58 Initialize TabularCreate dialog enabled.
As pointed out in #10105.
2019-04-04 08:23:27 +02:00
Juergen Spitzmueller
f60bda37a6 booktabs trimming: fix some thinkos 2019-04-03 17:18:21 +02:00
Juergen Spitzmueller
8085fc21f8 booktabs: support for \cmidrule trimming
This has probably still some rough edges, so please test thoroughly.

Fixes: #3072
2019-04-03 07:59:52 +02:00
Juergen Spitzmueller
9d384c3c12 Fix tooltip.
Thanks, Kornel.
2019-04-01 11:28:54 +02:00
Juergen Spitzmueller
00de6c4be7 Fix left/right border UI when toggling formal
Fixes: #9835
2019-04-01 09:26:09 +02:00
Juergen Spitzmueller
b0f9d98d6e Remove Qt 5.12-only colorrole
Designer inserts those automatically. So we have again backwards-incompatible
designer behavior :-(
2019-04-01 09:18:16 +02:00
Juergen Spitzmueller
3bbcfda3db Add option to reset to default booktabs lines
Addresses: #10106
2019-04-01 07:08:13 +02:00
Juergen Spitzmueller
c12190b5e5 GuiBibtex: add button to edit individual databases externally
This complements the inset context menu function, which only allows for
editing all databases externally
2019-03-30 11:37:28 +01:00
Juergen Spitzmueller
02974ff2a9 GuiSelectionManager: properly handle de-selecting items
When an item is de-selected with the mouse, and thus no item selected
anymore, disable add, up, down and delete buttons.
2019-03-30 11:36:47 +01:00
Juergen Spitzmueller
4d54d3afca Fix some implicit conversion issues. 2019-03-30 09:33:09 +01:00
Juergen Spitzmueller
f75b081551 Add support for mixed-encoded biblatex files
Biblatex 3.12 allows to specifiy individual encodings per bib file
via \addbibresource[bibencoding=<encoding>].

This is now supported via GuiBibtex.
2019-03-29 15:45:55 +01:00
Juergen Spitzmueller
0042fb34d0 Fix some group boxes. 2019-03-29 13:01:47 +01:00
Juergen Spitzmueller
ecb2427f41 Add tablestyle buffer param
Fixes: #9901
2019-03-26 16:24:27 +01:00
Juergen Spitzmueller
683b3a05e2 Introducing table templates
The idea is simple: we insert a pre-formatted table (with a given border
style currently, but other attributes are possible as well) via file-insert
and scale it then to the requested size.

We need three sizes (1x1, 1x2 and 1x3) to generate all sizes properly (due
to border specifications).

Currently, these styles can only be accessed via lfun tabular-style-insert
and the Tabular Create dialog.

My plan is to add a buffer param to set a default style (#9901) which then
also is respected by the toolbar button and probably a layout tag to let
classes specify a default style (#8360).
2019-03-26 13:43:33 +01:00
Juergen Spitzmueller
2ed3b22a06 Add ignorelang option to file-insert
This is useful for inserted files with no real text content
2019-03-26 10:13:33 +01:00
Juergen Spitzmueller
6852e35b1d GuiLyXFiles: handle defaults.lyx 2019-03-23 17:41:42 +01:00
Juergen Spitzmueller
3dc54d4aac Display URL-encoded chars decoded in display path 2019-03-23 15:15:08 +01:00
Juergen Spitzmueller
b8842a1584 Add l10n mark 2019-03-23 12:45:28 +01:00
Juergen Spitzmueller
c02ed04127 Save as Template: Also consider document language
Attempt to save the template in the appropriate language subfolder of
the user template directory (and propose to create it if it doesn't exist
yet).

That way, user-generated templates (1.) get the correct language attribution
in the lyxfiles dialog and (2.) users can easily generate different
language versions of a template.
2019-03-23 11:00:13 +01:00
Juergen Spitzmueller
ebc4092649 Add LFUN_BUFFER_WRITE_AS_TEMPLATE
Convenience function to easier save a file as template in the appropriate
templates folder.
2019-03-23 10:17:33 +01:00
Pavel Sanda
066a164ba6 Forgotten accelerators. 2019-03-22 22:14:21 +01:00
Jean-Marc Lasgouttes
b79a694c56 Compilation fix 2019-03-22 14:56:33 +01:00
Juergen Spitzmueller
6efdd1c399 Cosmetics 2019-03-22 14:18:17 +01:00
Juergen Spitzmueller
58c4c11c4c Use GuiLyXFiles also for ui, kbd and bind files in prefs 2019-03-22 14:14:33 +01:00
Juergen Spitzmueller
9a2c5b515a Disable language combo if there is nothing to select 2019-03-22 14:14:33 +01:00
Juergen Spitzmueller
b7f6c16a48 Fix duplicate language entry 2019-03-22 14:14:32 +01:00
Juergen Spitzmueller
55012674c8 Add forgotten replacement 2019-03-22 11:25:20 +01:00
Juergen Spitzmueller
ca024383e0 Fix problematic characters in example/template file names
For (, ) and & we use URL encoding now.
2019-03-22 11:10:49 +01:00
Juergen Spitzmueller
9a473a4954 Fix header case 2019-03-21 19:31:46 +01:00
Juergen Spitzmueller
7403fd2f88 Replace Type combo, which was considered irritating, with a Type filter
The new one allows to display only user or system files.
2019-03-21 19:25:10 +01:00
Jean-Marc Lasgouttes
e170051909 typo 2019-03-21 18:45:46 +01:00
Juergen Spitzmueller
4b2cce9e0f Consider files only in lang subtrees 2019-03-21 14:39:33 +01:00
Juergen Spitzmueller
cd9f52da89 GuiLyXFiles: fix icons and tooltips 2019-03-21 14:18:03 +01:00
Juergen Spitzmueller
7f39be8664 GuiLyXFiles: prefill language combo 2019-03-21 13:40:11 +01:00
Jean-Marc Lasgouttes
5d30f790dd Compilation fix
For some reason I need this (maybe a Qt4/5 discrepancy).
2019-03-21 10:28:16 +01:00
Juergen Spitzmueller
7be8307768 GuiLyXFiles: rework language selector
Now only the languages available for the selected file are displayed.
By default, LyX pre-selects the GUI language (and falls back to English
if this is not available). Once another language has been selected by
the user, this one is preferred before the GUI language (and the English
fallback).
2019-03-21 09:13:09 +01:00
Juergen Spitzmueller
ca67b8aa2c GuiLyXFiles: add icons that indicate whether a file is from user or system 2019-03-20 18:38:07 +01:00
Juergen Spitzmueller
1222ce3bfe Add Qt-internal string for translation 2019-03-20 18:37:34 +01:00
Juergen Spitzmueller
f3ee82fb87 Do not close LyXFiles dialog on double-clicking header 2019-03-20 12:37:55 +01:00
Juergen Spitzmueller
07e20fbb2f Amend 0c8eea0fe5 2019-03-20 12:36:39 +01:00
Jean-Marc Lasgouttes
0c8eea0fe5 Compilation fix for Qt < 5.2. 2019-03-20 11:45:29 +01:00
Jean-Marc Lasgouttes
d3979e798c Cache the value of GuiFontMetrics::lbearing().
This seems to be necessary on windows, where math editing can get very
slow. Note that other methods like rbearing already use a cache.

In the future all these caches for single characters shall be unified.
2019-03-20 11:14:43 +01:00
Juergen Spitzmueller
b52cb87e9a GuiLyXFiles: add language selector. 2019-03-19 17:55:19 +01:00
Juergen Spitzmueller
52d2ba16ed GuiLyXFiles: A bit more work towards generalization
Bind and Ui files can be displayed in this dialog now (via lfun
dialog-show lyxfiles ui|bind), although it is not yet usable in prefs.
2019-03-19 17:00:01 +01:00
Juergen Spitzmueller
adbe5121fe cosmetics 2019-03-19 13:36:05 +01:00
Juergen Spitzmueller
e141781aad GuiLyXFiles: minor generalization 2019-03-19 13:29:32 +01:00
Juergen Spitzmueller
7271325ba7 Fix strings 2019-03-19 07:42:11 +01:00
Juergen Spitzmueller
9faae1284b Add new dialog for templates and examples
This lists all respective files from user, build and system directory
in a structured way and thus allows for easier access to them.

Fixes: #2396, #6861
2019-03-19 06:59:24 +01:00
Günter Milde
406b1e7fcf Small formatting and comments update. 2019-03-16 12:59:34 +01:00
Kornel Benko
7ac04a2b75 Fix #11505. Count and display number of replaced strings in FindAdv 2019-03-13 14:06:18 +01:00
Juergen Spitzmueller
55c9bc218a Do not use GUI language for shortcut info inset if no translation is available
Fixes: #11508

Now there is the opposite case which needs to be addressed:
If no translation is available for a shortcut in a non-latin-scripted
document, we need to switch the language to English.
2019-03-09 12:00:40 +01:00
Jean-Marc Lasgouttes
954531f247 Update screen as needed when preferences are changed
This commit removes the adhoc code in GuiPrefs and moves it to LyXRC,
so that it triggers in every preference change.

The code has also been updated to trigger on more variables, e.g.
font_*_foundry.

Note that the actual function that are called have not been changed
(addPreviews and LFUN_SCREEN_FONT_UPDATE), although there are doubts
that they behave as needed (see FIXMEs).

Fixes bug #11498.
2019-02-26 16:53:14 +01:00
Jean-Marc Lasgouttes
91fc45ed35 Do not use trailing underscore for local variable 2019-02-18 16:04:15 +01:00
Jean-Marc Lasgouttes
66a3d64346 Try to compute row height like it should be done
Currently, our computation of row height is not completely standard:
* we ignore completely the QFontMetrics::leading() parameter

* we add arbitrarily 2 hardcoded pixels to the height.

This patch reverses these two choices, which leads to
* slightly larger spacing for MinionPro (which has a big leading).

* an additional spacing of 20% font height that depends on dpi and zoom.

Visual inspection with LibreOffice seems to imply that it disregards
the font leading but uses a interline which is 20% larger than the
font height.
2019-01-16 11:04:53 +01:00
Richard Kimberly Heck
6848dbfd2b Remove empty file discovered by Kornel.
Looks like an accidental commit.

> git log GuiGraphicsUi.h
commit a1cec91afa
Author: André Pönitz <poenitz@gmx.net>
Date:   Fri Aug 31 05:53:55 2007 +0000

    move our stuff off the Q* namespace

    git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19935 a592a061-630c-0410-9148-cb99ea01b6c8

That's all a rename, basically. The original file, QGraphicsUi.h, was commited at 12e5a52b92, and it was empty then, too.
2019-01-10 13:23:33 -05:00
Richard Kimberly Heck
c4fdab6993 Use combo box data rather than looking up info from InsetRef. 2019-01-06 17:46:40 -05:00
Richard Kimberly Heck
b35d90014e Add comment. 2019-01-06 13:02:40 -05:00
Richard Kimberly Heck
b91e2b9998 Remove debugging code. 2019-01-06 13:00:21 -05:00
Richard Kimberly Heck
9b3f9cc687 Fix problem caused by re-ordering of menu at 5f6332bf4.
This broke the activation and de-activation of plural, capitalize,
etc. I guess that tells us how much those get used....
2019-01-06 12:52:44 -05:00