1 2002-07-08 Angus Leeming <leeming@lyx.org>
3 * PreviewLoader.C: Further refactoring of the code. Should now be
6 * PreviewMetrics.[Ch]: removed. Had a v. short shelf life and is now
7 past its sell-by date. The code to read the metrics file is now found
8 as a helper function in PreviewLoader.C.
10 2002-07-08 Herbert Voss <voss@lyx.org>
12 * PreviewLoader.C: use of preview_size_factor to get the right
13 font-size! 0.9 is the default.
15 2002-07-08 Angus Leeming <leeming@lyx.org>
17 * PreviewLoader.C: Add "delayed" and "showlabels" options to the
18 invocation of preview.sty.
19 Perform something of an internal clean-up.
21 2002-07-06 Angus Leeming <leeming@lyx.org>
23 * PreviewLoader.C: ensure that the metrics data is used by the
27 * PreviewImage.C: (Impl d-tor): remove all generated files that still
28 exist (perhaps because the process was curtailed before the images
31 * PreviewLoader.C (unique_filename): store the files in Buffer::tmppath.
33 2002-07-05 Angus Leeming <leeming@lyx.org>
42 * Previews.C: new files. The previewed LaTeX snippet stuff.
44 * Makefile.am: add these files.
46 2002-07-05 Angus Leeming <leeming@lyx.org>
48 * GraphicsLoader.h: whitespace.
50 2002-07-04 Lars Gullik Bjønnes <larsbj@birdstep.com>
52 * GraphicsImage.[Ch]: newImage and loadableFormats changed to
53 boost::function from boost::signal.
55 2002-07-01 Jean-Marc Lasgouttes <lasgouttes@freesurf.fr>
57 * GraphicsConverter.C (convert): do not use ChangeExtension
58 because to_file_base may contain a dot.
60 2002-06-28 Angus Leeming <leeming@lyx.org>
62 * GraphicsCacheItem.[Ch]: refactor some of the more convoluted logic
63 by moving those SignalPtrs into the grfx::Image and grfx::Converter
64 classes where they really belong.
65 Use the Pimpl idiom to hide the class internals from public view.
67 * GraphicsTypes: remove the typedefs, leaving only the enums.
69 * GraphicsImage.h: now has a finishedLoading signal, as opposed to being
70 passed a reference to one in the load() method.
72 * GraphicsConverter.[Ch]: totally refactored. An instance of
73 grfx::Converter now represents a single conversion process.
74 Thus grfx::CachItem now has a grfx::Converter * that is set when the
75 conversion is initiated and destroyed on completion.
78 * GraphicsCacheItem.[Ch]:
79 * GraphicsConverter.[Ch]:
80 * GraphicsLoader.[Ch]: use the Pimpl idiom to hide the class internals
82 Note that I have done this only after making the above changes,
83 so not only should we have a clean, minimal and well documented
84 interface to these classes in the header files, but the class internals
85 should be much clearer too.
88 grfx::GCache -> grfx::Cache,
89 grfx::GCacheItem -> grfx::CacheItem,
90 grfx::GConverter -> grfx::Converter,
91 grfx::GImage -> grfx::Image,
92 grfx::GImageXPM -> grfx::ImageXPM,
93 grfx::GParams -> grfx::Params.
95 2002-06-26 Angus Leeming <leeming@lyx.org>
97 * GraphicsLoader.[Ch]: use boost::scoped_ptr in preference to
98 std::auto_ptr. Define an empty Loader d-tor out-of-line to ensure it
101 2002-06-26 Angus Leeming <leeming@lyx.org>
103 * GraphicsTypes.h: add "Ready" to the ImageStatus enum.
104 move the DisplayType enum out of grfx::GParams to here.
106 * GraphicsCacheItem.h: re-write preliminary description to reflect
109 * GraphicsParams.[Ch]:
110 * GraphicsImageXPM.C (load, setPixmap): changes aassociated with moving
111 grfx::DisplayType out of grfx::GParams.
113 * GraphicsLoader.[Ch]: new files. Factor out the image loading stuff
114 that was in frontends/screen.C and insets/insetgraphics.C into a
115 single, easy-to-use class.
117 * Makefile.am: add these files.
119 2002-06-25 Angus Leeming <leeming@lyx.org>
121 * GraphicsCache.[Ch]:
122 * GraphicsCacheItem.[Ch]:
123 * GraphicsTypes.h: rewrite the graphics cache to just load a graphics
124 file into memory. The cache no longer controls the generation of the
125 pixmap. Instead, it just emits a signal when the loading status of an
127 The cache no longer stores InsetGraphics pointers and nor does it
128 assume responsibility for modifying an image (scaling, rotating etc).
129 Instead, that must now be performed elsewhere.
131 2002-06-19 Angus Leeming <leeming@lyx.org>
133 * GraphicsConverter.C: add using std::endl directive.
135 2002-06-17 Herbert Voss <voss@lyx.org>
137 * GraphicsCachItem.C: (findTargetFormat)return xpm-format as a
138 default when nothing different was found
139 (convertToDisplayFormat): handle zipped files in the right way and
140 choose always convert as a default converter when no other
141 userdefined was found
143 * GraphicsConverter.C: add more lyxerr comments and choose
144 convert when no other userdefined converter was found
146 2002-06-10 Herbert Voss <voss@lyx.org>
148 * GraphicsImageXPM.C (convertTo7chars): get another special color
149 format from convert work in the right way
151 2002-06-12 John Levon <moz@compsoc.man.ac.uk>
153 * GraphicsCache.C: use right colormap incantation
155 2002-06-12 John Levon <moz@compsoc.man.ac.uk>
157 * GraphicsCache.C: use lyx_gui namespace
159 * GraphicsImageXPM.C: back down to using xforms
162 2002-06-07 Angus Leeming <leeming@lyx.org>
164 Fixes needed to compile with Compaq cxx 6.5.
165 * GraphicsConverter.h: forward declare class ConvProcess.
167 * GraphicsImageXPM.C:
168 all c-library variables have been moved into namespace std.
169 Wrap using std::xyz declarations inside a #ifndef CXX_GLOBAL_CSTD block.
171 2002-06-06 Angus Leeming <a.leeming@ic.ac.uk>
173 * GraphicsImageXPM.C (rotate): rotate in the same sense as xdvi!
175 2002-05-30 Lars Gullik Bjønnes <larsbj@birdstep.com>
177 * GraphicsImageXPM.C: SigC to boot::signals changes.
178 (newImage): fix () bug when using new.
180 2002-05-29 Lars Gullik Bjønnes <larsbj@birdstep.com>
182 * switch from SigC signals to boost::signals.
184 2002-05-29 André Pönitz <poenitz@gmx.net>
186 * GraphicsParam.C: remove unneeded #include, move vomment
188 2002-05-28 André Pönitz <poenitz@gmx.net>
190 * GraphicsParam.[Ch]: move inset related stuff to inset/insetgraphics
192 2002-05-24 John Levon <moz@compsoc.man.ac.uk>
194 * GraphicsImageXPM.C: ColorHandler moved
196 2002-05-24 Juergen Vigna <jug@sad.it>
199 * GraphicsImage.h: include LString.h first.
201 2002-05-22 Lars Gullik Bjønnes <larsbj@birdstep.com>
203 * GraphicsCacheItem.h: use more specific smart_ptr header.
204 * GraphicsTypes.h: ditto
205 * GraphicsImage.h: ditto
206 * GraphicsConverter.h: ditto
208 2002-04-28 John Levon <moz@compsoc.man.ac.uk>
210 * GraphicsImageXPM.C: understand convert's use of "opaque"
213 2002-04-19 Marco Morandini <morandini@aero.polimi.it>
215 * GraphicsCache.[Ch] (loadableFormats): new method. A wrapper for
216 GImage::loadableFormats() that ensures that the signal is connected
217 to the derived class' method.
219 2002-04-18 Lars Gullik Bjønnes <larsbj@birdstep.com>
221 * GraphicsImageXPM.C (convertTo7chars): drop all conversions and
222 only work on the string.
224 2002-04-17 Angus Leeming <a.leeming@ic.ac.uk>
226 * GraphicsImageXPM.C (Data::reset): Fix the loading of xpm files by
227 the simple image loader when it encounters colour strings like
230 2002-04-16 Angus Leeming <a.leeming@ic.ac.uk>
232 * GraphicsCacheItem.C (convertToDisplayFormat):
233 * GraphicsConverter.C (build_script): remove the Alerts when things go
234 wrong as the inset displays the message anyway. Moreover, Alert seems
235 pretty temperamemtal at the moment.
237 2002-04-16 Rob Lahaye <lahaye@users.sourceforge.net>
238 * GraphicsImageXPM.C: fix clipping for boundingbox y-coordinates
240 2002-04-08 Angus Leeming <a.leeming@ic.ac.uk>
242 * GraphicsCacheItem.C (findTargetFormat): fix bug waiting to bite:
243 a reference to a temp object that's going out of scope...
245 2002-04-09 Herbert Voss <voss@lyx.org>
247 * GraphicsParams.C (BoundingBox c-tor): fix rounding errors by using
248 LyXLength::inBP instead of inPixels.
250 2002-04-10 Herbert Voss <voss@perce.de>
252 * GraphicsCache.[Ch]:
253 * GraphicsCacheItem.[Ch]: add width/height functions from Angus
254 to read the "Bounding Box" from non (e)ps files.
256 2002-04-08 Angus Leeming <a.leeming@ic.ac.uk>
258 * GraphicsParams.C (c-tor): if clipping, then check the Bounding Box of
259 the EPS file too, to ensure that the clipped Bounding Box is relative
260 to the original. (From Herbert.)
262 2002-04-04 Angus Leeming <a.leeming@ic.ac.uk>
264 * GraphicsParams.C (BoundingBox c-tor): ensure that the member
265 variables are initialised. Clean-up parsing of the string (with thanks
268 2002-03-26 Angus Leeming <a.leeming@ic.ac.uk>
270 * GraphicsCacheItem.C (convertToDisplayFormat): don't launch that Alert
271 if the file can't be found.
273 * GraphicsParams.h (c-tor): remove string() as default argument.
275 * GraphicsCacheItem.C: a couple of changes as a result.
277 2002-03-22 Angus Leeming <a.leeming@ic.ac.uk>
279 * GraphicsCache.[Ch] (update): now passed filepath to determine absolute
280 path to graphics file.
282 * GraphicsParams.[Ch] (c-tor): now passed filepath.
284 2002-03-21 Lars Gullik Bjønnes <larsbj@birdstep.com>
286 * most files: ws cleanup
288 * Makefile.am: remove ld -r stuff
290 2002-03-20 Lars Gullik Bjønnes <larsbj@birdstep.com>
292 * Makefile.am: special rules if partial linking
294 2002-03-14 Angus Leeming <a.leeming@ic.ac.uk>
296 * GraphicsCache.C: use Lars' preferred idiom for a for-loop.
298 2002-03-11 Lars Gullik Bjønnes <larsbj@birdstep.com>
300 * GraphicsConverter.[Ch] (converted): make first arg const ref.
302 * GraphicsCacheItem.h: doxy change
304 * GraphicsCacheItem.C: ws change
306 2002-03-05 Angus Leeming <a.leeming@ic.ac.uk>
308 * Makefile.am: if there is no image loading class leveraging the power
309 of the appropriate gui library, then compile the basic alternative
310 found in GraphicsImageXPM.[Ch].
312 2002-03-04 Angus Leeming <a.leeming@ic.ac.uk>
314 * GraphicsCache.C: change associated with move of initialiseGraphics
317 2002-02-28 Angus Leeming <a.leeming@ic.ac.uk>
319 * GraphicsParams.[Ch]:
321 * GraphicsImageXPM.C: properly resolve more warnings about comparison
322 between signed and unsigned integer expressions.
324 * Makefile.am: add GraphicsTypes.h which I'd carelessly left out.
326 * GraphicsCache.C: move connections to the GImage-derived classes to
329 * GraphicsImageXPM.C (copy c-tor): don't copy pixmap.
331 * GraphicsCacheItem.C (findTargetFormat): if we can load direct without
332 conversion, then do that.
334 2002-02-27 Angus Leeming <a.leeming@ic.ac.uk>
336 * GraphicsCache.C: improve commentary to graphicsInit and where it
339 * GraphicsImageXPM.C (~Data, free_color_table): resolve the crash
340 that became a memory leak properly. (Let the shared_c_ptr free the
342 (reset, mapcolor): tidy up and introduce a work around for XPM files
343 with crappy color entries. Print out a nice friendly message on what's
344 gone wrong and how to resolve it properly.
346 2002-02-27 Angus Leeming <a.leeming@ic.ac.uk>
348 * GraphicsImageXPM.[Ch]: more rigorous use of types (signed/unsigned).
349 (Data d-tor): introduce memory leak temporarily, to "fix" a crash
351 (unique_color_string): use the correct string c-tor.
353 2002-02-15 Angus Leeming <a.leeming@ic.ac.uk>
356 * ImageLoaderXPM.[Ch]: removed.
358 * GraphicsConverter.[Ch]:
359 * GraphicsImage.[Ch]:
360 * GraphicsImageXPM.[Ch]:
361 * GraphicsParams.[Ch]:
362 * GraphicsTypes.h: new files.
364 * All files. A total re-write of the graphics cache. The cache now
365 supports asynchronous file conversion and file loading. Images
366 can be cropped, rotated and scaled for display on the LyX screen.
367 The old LyXImage and ImageLoader have been combined in a new class
368 GImage. Ditto, ImageLoaderXPM's functionality has been moved into
371 2002-02-07 Herbert Voss <voss@lyx.org>
373 * GraphicsCacheItem.C: use unzipFile() from support/filetools
375 2002-01-31 Herbert Voss <voss@lyx.org>
377 * GraphicsCacheItem.h: handle filetype without the file extension;
378 getting type from contents; handle zipped files
380 2002-01-27 Herbert Voss <voss@lyx.org>
382 * GraphicsCacheItem.h: added Converting to the ImageStatus enum.
384 2002-01-17 John Levon <moz@compsoc.man.ac.uk>
386 * ImageLoaderXPM.C: don't set XpmColorKey flag if we don't use it
388 2001-12-19 Jean-Marc Lasgouttes <lasgouttes@freesurf.fr>
390 * GraphicsCacheItem.h: do not include <config.h> in header files
392 2001-09-21 Angus Leeming <a.leeming@ic.ac.uk>
394 * ImageLoaderXPM.C (runImageLoader): If the pixmap contains a
395 transparent colour, then set it to the colour of the background.
396 Also take account of the monochrome, grayscale of color
399 2001-09-20 Angus Leeming <a.leeming@ic.ac.uk>
401 * GraphicsCacheItem.C (convertImage): only convert if "from" and "to"
402 are different. Thus, don't delete the "to" if it's the original!
404 2001-09-01 John Levon <moz@compsoc.man.ac.uk>
406 * ImageLoadXPM.C: remove setting of alloc colour mask,
407 led to crash as we don't define a callback
409 2001-07-29 Baruch Even <baruch@lyx.org>
411 * ImageLoaderXPM.C (runImageLoader): When loading agree to use non-exact
412 colors with closeness of 10000.
414 * GraphicsCacheItem.C: Fixed a compilation bug introduced earlier.
416 2001-07-29 Baruch Even <baruch@lyx.org>
418 * GraphicsCacheItem.C (findTargetFormat): Removed error dialog box,
421 2001-07-23 Baruch Even <baruch@lyx.org>
423 * GraphicsCacheItem.C (convertImage): Fixed a bug with regard to loading
424 the image after conversion.
426 2001-07-17 Baruch Even <baruch@lyx.org>
428 * GraphicsCacheItem.h:
429 * GraphicsCacheItem.C: Shuffled things a bit to make it easier to switch
430 from synchronous to asynchronous and to ease the coming changes.
432 2001-07-03 Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>
434 * ImageLoaderXPM.C (runImageLoader): get display information from
437 2001-06-14 Angus Leeming <a.leeming@ic.ac.uk>
440 * GraphicsCacheItem.C:
442 * ImageLoaderXPM.C: removed // -*- C++ -*- as first line.
444 2001-04-17 Lars Gullik Bjønnes <larsbj@birdstep.com>
446 * GraphicsCache.h: inherit privately from noncopyable
447 * ImageLoader.h: ditto
448 * GraphicsCacheItem.h: ditto
450 2001-04-16 Allan Rae <rae@lyx.org>
452 * ImageLoaderXPM.C (runImageLoader): #warning triggers an error on Sun
453 CC 6.0 as an unrecognised preprocessor directive. So ensure they're
456 2001-04-02 Baruch Even <baruch@lyx.org>
458 * GraphicsCacheItem.[Ch]: Changed to used the Converter class instead
459 of hard coding ImageMagick.
461 2001-03-10 Baruch Even <baruch@lyx.org>
463 * GraphicsCache.C: Style change from (*it).field to it->field
465 2001-03-15 Lars Gullik Bjønnes <larsbj@trylle.birdstep.com>
467 * GraphicsCache.h: noncopyable is in namespace boost
468 * ImageLoader.h: ditto
469 * GraphicsCacheItem.h: ditto
471 2001-03-07 Baruch Even <baruch@lyx.org>
473 * GraphicsCache.C (d-tor): Removed the assert, the assumption it carried
474 was false and it's not needed anyhow since the shared_ptr's in the cache
475 will destroy everything on exit.
477 2001-02-28 Baruch Even <baruch@ev-en.org>
480 * GraphicsCache.C: Changed the singleton pattern implementation, the
481 former version "leaked" in the sense that it was not deallocated at
484 2001-02-20 Baruch Even <baruch@ev-en.org>
486 * GraphicsCache.C: Changed to use shared_ptr<GraphicsCacheItem>
487 instead of a pure pointer.
489 * GraphicsCacheItem.[Ch]:
490 * GraphicsCacheItem_pimpl.[Ch]: Collapsed them into GraphicsCacheItem,
491 removed the reference counting that was inside. Also fixed a bug where
492 a temporary file wouldn't get erased.
494 * ImageLoader.[Ch]: Changed the semantics of the image_ pointers usage.
495 Ownership is now dropped when the caller requests the image_ pointer.
497 2001-02-20 Baruch Even <baruch@ev-en.org>
499 * GraphicsCache.C: Cleared up the confusion on when and how it is
502 * GraphicsCacheItem.C: Indentation change.
504 * GraphicsCacheItem_pimpl.C: Fixed the loading logic so that it will
505 figure correctly when the image has been loaded successfully.
507 2001-02-08 Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>
509 * ImageLoader.C: add a "using" directive.
511 * ImageLoader.h: remove extra comma at the end of enum; add an
512 std:: qualifier for vector.
514 2001-01-21 Baruch Even <baruch@ev-en.org>
516 * GraphicsCacheItem.[Ch]: Changes due to the storage of width and
517 height in the image itself and minor cleanups.
519 * GraphicsCacheItem_impl.[Ch]: Changes due to the switch to use a
520 new ImageLoader class instead of the older Renderer class. This
521 means change of responsibilities.