Commit Graph

119 Commits

Author SHA1 Message Date
Jean-Marc Lasgouttes
7bb08f10b1 Move initial values of LyXRC members to the header
We use a C++11 construct that puts initial values of members along
with their definition. It is a good construct and now the out of line
constructor and the setDefaults() method can go.

This removes the need to define a dummy constructor in tex2lyx and
client.

The only needed change to the rest of code is a change of signature
for the user_(name|email) to return std::string. They are now called
explicitely from the constructor. We now have to include userinfo.h in
LyXRC.h, but this should not be too expensive.
2019-04-19 14:46:12 +02:00
Jean-Marc Lasgouttes
9fe101e890 Remove support for pixmap cache
This code has issues and there is no evidence that it improves performance.

Remove LyXRC variable \use_pixmap_cache and update rc format to 29.

Now the global pixmap cache is only used by GuiCompleter. Therefore
there is no need to reset it when fonts change.
2018-10-07 14:56:55 +02:00
Juergen Spitzmueller
ed61ce74b7 So long, date-insert!
This function is superseded by info-insert date, which is much mightier
and more flexible.
2018-08-20 09:25:22 +02:00
Juergen Spitzmueller
8d45179403 More GuiInfo usability work 2018-08-01 09:28:03 +02:00
Juergen Spitzmueller
26ea1e1496 Align fontenc with document fonts
Following a request by Günter, we consider the document fonts (only rm
for now) when selecting an appropriate font encoding.

See #9741

The new default font encoding setting "auto" does

* consider the font encoding needed by the language(s), which can now
  have fallback alternatives
* Consider which font encoding is provided by the document font

Thus, cm now will result in OT1 fontenc, if the language can deal with
that.

The font_enc pref is ditched: it is no longer needed.

The automatism is still very basic and is subject to extension.

File format and prefs format change.
2018-04-22 19:06:46 +02:00
Jean-Marc Lasgouttes
af795b80d8 Make it possible to select (not)native file dialogs at run time
Add a new LyXRC variable use_native_filedialog (true by default) that
allows to select the kind of FileDialog we want at runtime.
2018-03-19 11:17:33 +01:00
Juergen Spitzmueller
2aaf185e7c Add default output format for pLaTeX
Fixes: #10747
2017-09-09 08:56:04 +02:00
Jean-Marc Lasgouttes
3d590d3bd7 Merge remote-tracking branch 'features/properpaint'
Now painting the workarea is done at paint events as should be.
Explicit painting after updating metrics has been replaced by a much
lighter procedure (updatePosCache) to update the insets positions cache.

Expected benefits:
- better performance
- proper use of subpixel aliasing

The LyXRC variable use_qimage is not needed anymore and is therefore removed.
2017-09-08 17:05:13 +02:00
Jean-Marc Lasgouttes
4f4383cac5 remove LyXRC::use_qimage
This is not needed anymore now that we do not need a backup pixmap.

Update LyXRC format to 23 and add conversion.
2017-09-08 16:58:21 +02:00
Juergen Spitzmueller
858a9a0465 Make the session zoom relative to the default zoom
Also rename lyxrc.zoom to lyxrc.defaultZoom

Fixes: #10455
2017-09-06 18:13:34 +02:00
Enrico Forestieri
ae56167718 Use a combo box instead of a check box for selecting the listings package 2017-06-12 17:24:26 +02:00
Daniel Ramöller
4183a9f4dc Preferences shows current zoom instead of preference's default zoom (#10455)
- Adds a currentZoom variable which holds the current zoom level.

- The zoom stored in preferences is used as default zoom level (default binding:
  M+0).

- The currentZoom is saved and restored via QSettings.

- Adds LFUN buffer-zoom for (re)setting zoom.
2017-05-07 14:17:54 +02:00
Juergen Spitzmueller
34943a4e5f Make Japanese Biblatex-aware
Biblatex can be used with Japanese, but then, biber (not pbibtex) should
be used as processor.

I this context, bring the jbibtex UI in line with bibtex, allowing for
a selection of alternatives.
2017-01-14 12:13:33 +01:00
Tommaso Cucinotta
6e22bb17c7 Remove unused lyxrc.use_converter_wrappers that inadvertently slipped through [244de5d2/lyxgit]. 2016-12-10 14:57:20 +01:00
Tommaso Cucinotta
244de5d2c1 Add 'needauth' option to converters that need explicit user authorization.
Addressing #10481.

This patch adds the new 'needauth' option for converters launching
external programs that are capable of running arbitrary code on behalf
of the user. These converters won't be run unless the user gives explicit
authorization, which is asked on-demand when the converter is about to
be run (question is not asked if the file is cached and calling the
converter is not needed).

The user prompt has a 3rd button so that he/she's not prompted again
for (any converter over) the same document (identified through
buffer->absFileName()).

Two preference options are added:

lyxrc.use_converter_needauth_forbidden disables any converter with
the 'needauth' option, which is meant to force user to an explicit
action via the preferences pane, before being able to use advanced
converters that can potentially bring security threats;

lyxrc.use_converter_needauth enables prompting the user for 'needauth'
converters, or bypasses the check if not enabled, falling back to the
previous behavior.

So, the first option is for maximum security, the second is for
maximum usability.
2016-11-22 23:54:58 +01:00
Guillaume Munch
77714e6db7 Raise the maxlastfiles cap
This only changes the maximum value that the user can choose in the UI, not the
default value.
2016-05-28 17:42:31 -04:00
Richard Heck
3c2b3e6907 Remove printing support from LyX.
This was bug #6747.
2015-05-27 18:13:08 -04:00
Enrico Forestieri
260a98d295 Save the document directory path only if explicitly allowed.
A new preference is introduced for allowing the record of the document
directory path in the saved file. Without explicit consent, it is not saved.
If the origin tag contains an invalid/wrong path or garbage, LyX behaves
exactly as before, i.e., included files are simply not found.
2015-05-23 17:49:33 +02:00
Juergen Spitzmueller
d48e5330be Add pref option to disable middle-mouse-button paste
Fixes: #9399
2015-02-08 17:41:28 +01:00
Jean-Marc Lasgouttes
45eb314a86 Get rid of rtl_support preference
This variable was introduced to guard against any bad consequence of the then-new right-to-left
languages support. Let's be bold and get rid of it altogether!

Now right to left support is always enabled.
2014-07-09 21:11:08 +02:00
Jean-Marc Lasgouttes
9d5c947110 Remove LyXRC option force_paint_single_char
It was not honored anymore.
2014-07-08 23:12:09 +02:00
Jean-Marc Lasgouttes
4176795e72 Remove support for LyXRC::force_paint_single_char
This workaround is not necessary anymore, and it complicates the code.

The variable itself will be removed after the landing of the branch on
master.
2014-07-08 21:30:05 +02:00
Jean-Marc Lasgouttes
275b7af75e Code cleanup: get rid of RenderPreview::status()
This method is a proxy for LyXRC::preview that forces to forward
declare some wrapper around an enum...

Instead, two simple static methods previewMath() and previewText() are
introduced, that make the code much easier to follow.
2014-05-20 12:19:26 +02:00
Prannoy Pilligundla
214f7ed262 Allow statusbar to be set on or off in full screen mode as a
preference.
2014-02-25 20:48:56 -05:00
Juergen Spitzmueller
8f287f5ffa Implement option to set a global default output format for dics with non-tex fonts (#8706) 2013-06-01 16:58:34 +02:00
Stephan Witt
75c631df7f On Mac, moving down a paragraph should place the cursor at the end of the current paragraph
(unless it's already there, in which case it should move to the end of the next paragraph).
Change the preference setting name (mac_like_word_movement to mac_like_cursor_movement)
to better reflect its function.

Patch and description from Bennett Helm
2013-05-25 18:02:21 +02:00
Pavel Sanda
183b188ebe Slowly going through the suggestion made by our headers script.
I tried not to kill "redundant" includes which are actually used
in the header, apology for mistakes.
2013-05-15 22:02:10 -07:00
Vincent van Ravesteijn
147dcb4cb9 Make the use of system's theme icons configurable
A lyxrc variable is added and a checkbox is added to the LyX->preferences
dialog.
2013-05-14 17:26:06 +02:00
Pavel Sanda
154319d063 Remove some header leftovers based on Scott's script hints.
False positive rate of hints is quite high. Although the includes can be
technically removed (due to other includes) they logically belong to the
header.
2013-05-02 00:30:16 -07:00
Tommaso Cucinotta
4985015e89 Now LyX closes the current document WA only by default (other WAs remain open).
If the WA is the last one showing a buffer, then the buffer may either be
closed or kept hidden, or the user is asked. The behaviour is controlled
by a new preference option.
For discussion, see http://comments.gmane.org/gmane.editors.lyx.devel/142638
2012-09-28 23:12:38 +01:00
Juergen Spitzmueller
2dd84b3417 Remove lyxrc \default_language which has been dropped from the GUI some time ago
The default language of new documents is set via the template
2012-08-07 08:29:46 +02:00
Stephan Witt
97d48fbd6a #6760 add UI to configure the minimal length of a word to be added to the list of words for text completion - using richards patch and rework it to match current trunk
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40557 a592a061-630c-0410-9148-cb99ea01b6c8
2012-01-02 22:47:04 +00:00
Abdelrazak Younes
c5c0c22f6b Introduce new RC option for QImage backend instead of macro. This can later be changed at runtime though a command line option or by auto detecting the X11 remote status.
This option is set to true by default as this is the most widespread use case.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40515 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-17 21:53:46 +00:00
Vincent van Ravesteijn
5014b38cb7 Add a preference option to specify the default length unit (cm or in).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40030 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-27 11:52:11 +00:00
Vincent van Ravesteijn
269695aa5f Remove the prefence default_papersize
- This preference was used for specifying the papersize to xdvi, dvipdfm,
  dvips. However, I can't seem to see any effect on the result.

- The papersize should instead be defined in the document settings.

- The global papersize default was misused to also change the tex
  output by specifying the papersize as if it was specified in the
  document settings. This caused the same lyx document to be outputted
  differently on different pcs.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40028 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-27 11:48:16 +00:00
Enrico Forestieri
1717ef203c Introduce the possibility of setting a prefix for the TEXINPUTS environment
variable. This is done in the preferences, much like as the PATH prefix.
A single '.' in the paths will get replaced with the current document dir
and also non-absolute paths will be prefixed with that dir.

The default semantics of TEXINPUTS apply, such that, for example, if a
path is terminated with a double slash, all subdirectories will be also
searched by both the TeX engine and ancillary programs such as dvi
previewers or dvips. As an example, if the prefix is set to ".:figs", the
TEXINPUTS variable will be set as ".:<docdir>:<docdir>/figs:$ORIGTEXINPUTS",
where <docdir> is the document directory.

The initial '.' is necessary to address the actual current dir (this will
be the temp dir at preview time), while if TEXINPUTS was initially unset,
such that $ORIGTEXINPUTS is empty, a colon (or semicolon on Windows) will
end the path list. This is very important, because we don't want to replace
the system directories but to complement them and, in order to do that, an
empty element has to be present in the list. Indeed, according to the
TEXINPUTS semantics, an empty element means the standard search path.
This works whether TEXINPUTS is originally set or not, because if the
original TEXINPUTS starts with a colon (meaning that the standard search
path is wanted there) we will have an empty element at that point,
otherwise the final colon will simply serve as a path separator.

Of course, on Windows a ';' has to be used as a path separator. LyX will
take care of transforming the platform path list into one understandable
by the TeX engine. For example, this will be the case for a Cygwin version
of LyX using a native Windows TeX engine or viceversa. I tested all of
this and it works for me.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38681 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-09 23:25:51 +00:00
Enrico Forestieri
a99340cd10 Infrastructure for choosing different icon sets. This currently works
through the rc setting \icon_set. Preferences dialog will follow shortly.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38038 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-25 01:59:34 +00:00
Stephan Witt
ad1dc2fd6b now the user has control over the width of the text cursor
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37901 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-11 06:11:55 +00:00
Stephan Witt
f6e7fbefce #6920 paint single characters only when Qt4.7 or better, otherwise automatic kerning breaks cursor positioning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37781 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-24 21:38:12 +00:00
Richard Heck
0de73b8866 Don't try to convert any of the preference files except the user's own.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37243 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-17 15:54:51 +00:00
Richard Heck
eb353f1b58 Previous two commits did the wrong thing. This is right.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37242 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-17 15:07:54 +00:00
Richard Heck
6ceaa728ec Forgot this part.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37241 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-17 15:02:54 +00:00
Richard Heck
dfb67984f2 Conversion routines for preference files.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37233 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-16 20:28:43 +00:00
Jürgen Spitzmüller
ef79a1fe8a * UI changes in anticipation of polyglossia support:
- rename \language_package to \language_custom_package
     - the bool \language_use_babel is replaced by a more fine-grained selection:
        * chose language package automatically (later: babel or polyglossia)
        * always use babel (also with XeTeX)
        * custom (i.e. use \language_custom_package)
        * none (equivalent to former \language_use_babel false)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36407 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-20 13:34:14 +00:00
Enrico Forestieri
22ffc93467 The "single instance" patch.
By default, if the lyxpipe is set up and working, loading of documents
is deferred to an already running instance. Note that an already running
instance is only used for loading, such that export from command line
still works as usual.

The default behavior can be changed through a preference setting, and,
whatever the default is, it can be overridden by command line options.
Unticking the "Single instance" check box in the preferences, LyX behaves
exactly as before the introduction of this feature.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36278 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-13 11:55:05 +00:00
Pavel Sanda
59ce20acde Add CB for Meta/Control key swap on Mac OS X.
Patch by Jens Noeckel.
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg160177.html

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35453 a592a061-630c-0410-9148-cb99ea01b6c8
2010-09-19 22:00:25 +00:00
Jean-Marc Lasgouttes
17729b9346 Add new pref use_system_colors (defaults to true).
What is missing is some feedback on what colors are 
set from the system (they should be disabled in the
color list).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35096 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-08 23:11:02 +00:00
Stephan Witt
710bb42049 correct typo in RC_SCROLL_WHEEL_ZOOM text
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35004 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-22 14:51:35 +00:00
Stephan Witt
e99bd868f9 use "alt" instead of "option" for modifier keyword
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34967 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-18 10:04:59 +00:00
Stephan Witt
0d386d7c25 make mouse scroll wheel zoom configurable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34955 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-17 22:29:42 +00:00