Commit Graph

57 Commits

Author SHA1 Message Date
Yuriy Skalko
4f0981e7bb Merge namespace signals2 into namespace lyx 2020-12-19 22:52:51 +02:00
Yuriy Skalko
2a594d3e90 Remove unused forward declarations 2020-10-13 09:57:36 +03:00
Guillaume MM
db58111360 Properly track the lifetime of signals2::slots (#8261)
Starting at 61b2bd5e, boost::bind was progressively replaced with
std::bind. They are not interchangeable though. boost::bind implements
the tracking of boost::signals{,2}::trackable objects. Now that
std::bind has completely replaced boost::bind, tracking never occurred.

This commit replaces boost::signals2::trackable with the new preferred
boost::signals2 methods: scoped_connections or slot::track_foreign. The
support::Trackable class introduced is less safe but easier for transitioning
old code.

Fixes the crash at #8261.
2017-06-11 19:51:17 +02:00
Guillaume Munch
ad16347b08 Regularly check if graphics is modified when visible on screen (#10596)
In case one cannot rely on QFileSystemWatcher.

see https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg199112.html
2017-03-19 14:41:54 +01:00
Guillaume Munch
e3a1396813 Replace FileMonitor with FileMonitor2 in GraphicsCacheItem
Remove dead code
2017-03-11 00:50:57 +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
Georg Baum
2047ea5eb4 Replace Boost.Signals with Boost.Signals2
Boost.Signals is deprecated. This fixes bug #9943.
The only thing left to do is to rewrite (or get rid of) the boost -mt test
in config/lyxinclude.m4 not to use signals anymore.
2016-06-09 22:25:34 +02:00
Abdelrazak Younes
896cb74fe2 Optimize the graphics loader: don't put the image in the queue if it is directly loadable and no conversion is needed. No more temporary preview image, yeah!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25166 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-06 13:30:38 +00:00
Abdelrazak Younes
377ae30bd8 lyxlib.h:sum -> FileName::checksum()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21874 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-30 09:23:44 +00:00
André Pönitz
98ddc514da remove a few uses of boost::scoped_ptr
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21705 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-21 23:47:47 +00:00
André Pönitz
d33cedef34 replace boost::noncopyable by plain C++ idiom
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21704 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-21 23:31:12 +00:00
André Pönitz
fad47c0fe0 boost/utility -> boost/noncopyable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20608 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-30 15:47:00 +00:00
Georg Baum
8e6e970d7b Next step of true unicode filenames: Use support::FileName instead of
std::string at many places (not all yet).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16069 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-26 21:30:39 +00:00
André Pönitz
6c300f72a2 move everything into namespace lyx
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15422 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 00:16:43 +00:00
Lars Gullik Bjønnes
ec94b42f51 Use the preferred calling for Boost.Signal
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9010 a592a061-630c-0410-9148-cb99ea01b6c8
2004-09-26 14:19:47 +00:00
Lars Gullik Bjønnes
44cd0fc9a1 The std::string mammoth path.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7862 a592a061-630c-0410-9148-cb99ea01b6c8
2003-10-06 15:43:21 +00:00
Angus Leeming
0705dae8a3 Finish the task of removing all cruft from the header files.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7703 a592a061-630c-0410-9148-cb99ea01b6c8
2003-09-07 21:25:37 +00:00
Angus Leeming
236ea81bc5 Replace LString.h with support/std_string.h,
Lsstream.h with support/std_sstream.h,
support/LIstream.h with support/std_istream.h,
support/LOstream.h with support/std_ostream.h.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7685 a592a061-630c-0410-9148-cb99ea01b6c8
2003-09-05 17:23:11 +00:00
Angus Leeming
0be0fcfd59 If I ever see another licence blurb again, it'll be too soon...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7598 a592a061-630c-0410-9148-cb99ea01b6c8
2003-08-23 00:17:00 +00:00
Angus Leeming
0d4d71dfe6 Finish the migration from namespace grfx to lyx::graphics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7334 a592a061-630c-0410-9148-cb99ea01b6c8
2003-07-21 21:30:57 +00:00
Lars Gullik Bjønnes
fe390e9da1 namespace grfx -> lyx::graphics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7239 a592a061-630c-0410-9148-cb99ea01b6c8
2003-07-04 08:23:23 +00:00
Lars Gullik Bjønnes
99d1627a47 dont use pragma impementation and interface anymore
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@6138 a592a061-630c-0410-9148-cb99ea01b6c8
2003-02-13 16:53:15 +00:00
Lars Gullik Bjønnes
13349032cb ws changes
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@5758 a592a061-630c-0410-9148-cb99ea01b6c8
2002-12-01 22:59:25 +00:00
Angus Leeming
1eb8155fa0 This file is part of LyX, the document processor.
Licence details can be found in the file COPYING.

and thank God for sed.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@5211 a592a061-630c-0410-9148-cb99ea01b6c8
2002-09-05 15:14:23 +00:00
Angus Leeming
6fac1dc980 Really dull and boring header shit
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@5210 a592a061-630c-0410-9148-cb99ea01b6c8
2002-09-05 14:10:50 +00:00
Angus Leeming
3aa7e91a82 Modify the headers of files in src/graphics as discussed on the list.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@5206 a592a061-630c-0410-9148-cb99ea01b6c8
2002-09-05 11:31:30 +00:00
Angus Leeming
6206e59009 File monitoring is Go!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4703 a592a061-630c-0410-9148-cb99ea01b6c8
2002-07-18 14:01:42 +00:00
Angus Leeming
4303dd8738 Fix comments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4689 a592a061-630c-0410-9148-cb99ea01b6c8
2002-07-17 17:16:15 +00:00
Angus Leeming
f643df79a8 * Make the graphics files conform strictly to the Pimpl idiom by moving
the boost::signals into the relevant Impl classes and creating new,
publicly-accessible connect() methods.
* Const-ify all publicly-accessible methods, reflecting the fact that each
class contains only a const pimpl_ member variable.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4687 a592a061-630c-0410-9148-cb99ea01b6c8
2002-07-17 16:56:42 +00:00
Angus Leeming
a674f70d4a Pedantic change of email only.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4637 a592a061-630c-0410-9148-cb99ea01b6c8
2002-07-15 10:19:45 +00:00
Angus Leeming
888532c465 Asymptotic approach to a well-designed graphics loader.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4502 a592a061-630c-0410-9148-cb99ea01b6c8
2002-06-28 11:22:56 +00:00
Angus Leeming
1bb197b5d4 Create a grfx::Loader class and so move large chunks of code out of
frontends/screen.C and insets/insetgraphics.C. Leave mathed/preview.C
untouched as an excercise for Andr� ;-)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4489 a592a061-630c-0410-9148-cb99ea01b6c8
2002-06-26 14:15:08 +00:00
Angus Leeming
514156adbb * Split the graphics loader into a frontend and a backend.
* Add frontend code to generate and display the pixmap to InsetGraphics.
* Add (much simpler) frontend code to the LyXScreen to show the splash screen
once more.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4480 a592a061-630c-0410-9148-cb99ea01b6c8
2002-06-25 15:59:10 +00:00
Lars Gullik Bjønnes
1e39473100 Switch from SigC signals to boost::signals
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4281 a592a061-630c-0410-9148-cb99ea01b6c8
2002-05-29 16:21:03 +00:00
Lars Gullik Bjønnes
482c04ecca use more specific smart_ptr headers
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4183 a592a061-630c-0410-9148-cb99ea01b6c8
2002-05-22 01:16:37 +00:00
Angus Leeming
b95a56f37a (Herbert): discover the "Bounding Box" of non-(e)ps graphics files, and
use it in the graphics dialog.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3973 a592a061-630c-0410-9148-cb99ea01b6c8
2002-04-11 17:40:44 +00:00
Lars Gullik Bjønnes
8283e978f8 ws cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3803 a592a061-630c-0410-9148-cb99ea01b6c8
2002-03-21 17:27:08 +00:00
Lars Gullik Bjønnes
b49f5ac419 doxy, ws and const change
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3718 a592a061-630c-0410-9148-cb99ea01b6c8
2002-03-11 22:58:05 +00:00
Angus Leeming
607ad8d3a7 The graphics inset now has:
* lazy loading (don't try and load the image until a request to draw it
  is received).
* asynchronous conversion to a loadable format.
* asynchronous loading if the image loader supports it (it doesn't).
* "simple" cropping, rotating and scaling (in that order) of the image
  on the LyX screen.
* display in color, grayscale or monochrome.

We also have a forked calls dialog, although it isn't very exciting
yet because only the graphics cache makes use of the forked call controller.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3591 a592a061-630c-0410-9148-cb99ea01b6c8
2002-02-27 09:59:52 +00:00
Angus Leeming
f09619a7e8 Herbert's big graphics patch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3446 a592a061-630c-0410-9148-cb99ea01b6c8
2002-01-29 09:26:24 +00:00
Jean-Marc Lasgouttes
1070702ea4 removed most uses of toupper and friends, removed <config.h> from headers and added it to some source files, applied patch from John for search&replace, and perhaps other things you will discover by browsing Changelog :)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3255 a592a061-630c-0410-9148-cb99ea01b6c8
2001-12-20 15:11:51 +00:00
Baruch Even
099779019f Minor code shuffle.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@2258 a592a061-630c-0410-9148-cb99ea01b6c8
2001-07-17 00:38:04 +00:00
Lars Gullik Bjønnes
83acbbd523 update copyright year
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@2072 a592a061-630c-0410-9148-cb99ea01b6c8
2001-05-30 13:53:44 +00:00
Lars Gullik Bjønnes
1e0c627c73 c++ mode and inherit privately from noncopyable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1930 a592a061-630c-0410-9148-cb99ea01b6c8
2001-04-17 14:11:26 +00:00
Baruch Even
2f20425459 Changed to use the Converter class instead of hardcoding ImageMagick.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1874 a592a061-630c-0410-9148-cb99ea01b6c8
2001-04-02 19:56:48 +00:00
Lars Gullik Bjønnes
d4ee9c38b6 remove CXX_WORKING_NAMESPACES
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1777 a592a061-630c-0410-9148-cb99ea01b6c8
2001-03-15 18:21:56 +00:00
Lars Gullik Bjønnes
a27892b6c8 one small private fix in mathed, put noncopyable and tie into boost namespace
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1774 a592a061-630c-0410-9148-cb99ea01b6c8
2001-03-15 16:04:46 +00:00
Baruch Even
96e0bafddd Cleaned up the GraphicsCache mechanism, made it use shared_ptr for cleanliness
Updated InsetGraphics to use the changed the GraphicsCache, and fixed a
lurking bug in LyXImage.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1606 a592a061-630c-0410-9148-cb99ea01b6c8
2001-02-22 16:53:59 +00:00
Baruch Even
39b3fd44b9 Cleaned up cruft in InsetGraphics.
Added the auto-conversion of images to InsetGraphics, this adds support
for bitmap images.
Modified the mechanism of image loading for inline viewing - still not
working though.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1457 a592a061-630c-0410-9148-cb99ea01b6c8
2001-02-08 13:06:55 +00:00
Jürgen Vigna
325dccab09 Baruch's InsetGraphics - LyXImage patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1106 a592a061-630c-0410-9148-cb99ea01b6c8
2000-10-12 10:46:06 +00:00