1 2002-07-16 Jean-Marc Lasgouttes <lasgouttes@freesurf.fr>
3 * PreviewLoader.C (setConverter): remove unused variable
5 * GraphicsImageXPM.C (isDrawable): implement
6 (setPixmap): the opaque color is black, not white
8 2002-07-15 Jean-Marc Lasgouttes <lasgouttes@freesurf.fr>
10 * GraphicsImageXPM.C (color_none_id):
11 (contains_color_none): use ascii_lowercase instead of lowercase
13 2002-07-16 Angus Leeming <leeming@lyx.org>
15 * PreviewLoader.C: greater use of STL algorithms.
17 * Previews.[Ch]: use const in more places.
18 (generateBufferPreviews): now takes a Buffer const & argument, not a
21 2002-07-15 John Levon <moz@compsoc.man.ac.uk>
23 * GraphicsImage.h: remove getPixmap/X, add isDrawable()
25 2002-07-12 Angus Leeming <leeming@lyx.org>
27 * GraphicsLoader.[Ch]: smart loading of images. Images are loaded only
28 if visible 2 secs after the call to load them is first made.
30 * GraphicsSupport.[Ch]: new files. isInsetVisible interrogates the
31 BufferView to ascertain whether the inset is visible or not.
33 * Makefile.am: added GraphicsSupport.[Ch].
35 * PreviewImage.[Ch]: use this smart loader.
37 * PreviewLoader.C: don't load generated image files indiscimminantly.
38 Instead emit the imageReady signal and allow the image owner to decide.
40 2002-07-12 John Levon <moz@compsoc.man.ac.uk>
42 * GraphicsCache.C: remove init_graphics()
44 2002-07-09 Angus Leeming <leeming@lyx.org>
46 * PreviewLoader.C (setAscentFractions): fix bug due to use of integer
47 arithmetic when it should be floating.
49 2002-07-09 Angus Leeming <leeming@lyx.org>
51 * PreviewLoader.C (startLoading): prepend LaTeX file with "\batchmode".
52 Output equation labels as "(#)" if lyxrc preference is set.
53 (setFontScalingFactor): use lyxrc variable preview_scale_factor
54 rather than hard-coding this.
56 2002-07-09 Angus Leeming <leeming@lyx.org>
58 * PreviewLoader.C: Further refactoring of the code. Should now be
61 * PreviewMetrics.[Ch]: removed. Had a v. short shelf life and is now
62 past its sell-by date. The code to read the metrics file is now found
63 as a helper function in PreviewLoader.C.
65 * GraphicsImageXPM.C (scale): use boost::tie.
67 2002-07-08 Herbert Voss <voss@lyx.org>
69 * PreviewLoader.C: use of preview_size_factor to get the right
70 font-size! 0.9 is the default.
72 2002-07-08 Angus Leeming <leeming@lyx.org>
74 * PreviewLoader.C: Add "delayed" and "showlabels" options to the
75 invocation of preview.sty.
76 Perform something of an internal clean-up.
78 2002-07-06 Angus Leeming <leeming@lyx.org>
80 * PreviewLoader.C: ensure that the metrics data is used by the
84 * PreviewImage.C: (Impl d-tor): remove all generated files that still
85 exist (perhaps because the process was curtailed before the images
88 * PreviewLoader.C (unique_filename): store the files in Buffer::tmppath.
90 2002-07-05 Angus Leeming <leeming@lyx.org>
99 * Previews.C: new files. The previewed LaTeX snippet stuff.
101 * Makefile.am: add these files.
103 2002-07-05 Angus Leeming <leeming@lyx.org>
105 * GraphicsLoader.h: whitespace.
107 2002-07-04 Lars Gullik Bjønnes <larsbj@birdstep.com>
109 * GraphicsImage.[Ch]: newImage and loadableFormats changed to
110 boost::function from boost::signal.
112 2002-07-01 Jean-Marc Lasgouttes <lasgouttes@freesurf.fr>
114 * GraphicsConverter.C (convert): do not use ChangeExtension
115 because to_file_base may contain a dot.
117 2002-06-28 Angus Leeming <leeming@lyx.org>
119 * GraphicsCacheItem.[Ch]: refactor some of the more convoluted logic
120 by moving those SignalPtrs into the grfx::Image and grfx::Converter
121 classes where they really belong.
122 Use the Pimpl idiom to hide the class internals from public view.
124 * GraphicsTypes: remove the typedefs, leaving only the enums.
126 * GraphicsImage.h: now has a finishedLoading signal, as opposed to being
127 passed a reference to one in the load() method.
129 * GraphicsConverter.[Ch]: totally refactored. An instance of
130 grfx::Converter now represents a single conversion process.
131 Thus grfx::CachItem now has a grfx::Converter * that is set when the
132 conversion is initiated and destroyed on completion.
134 * GraphicsCache.[Ch]:
135 * GraphicsCacheItem.[Ch]:
136 * GraphicsConverter.[Ch]:
137 * GraphicsLoader.[Ch]: use the Pimpl idiom to hide the class internals
139 Note that I have done this only after making the above changes,
140 so not only should we have a clean, minimal and well documented
141 interface to these classes in the header files, but the class internals
142 should be much clearer too.
145 grfx::GCache -> grfx::Cache,
146 grfx::GCacheItem -> grfx::CacheItem,
147 grfx::GConverter -> grfx::Converter,
148 grfx::GImage -> grfx::Image,
149 grfx::GImageXPM -> grfx::ImageXPM,
150 grfx::GParams -> grfx::Params.
152 2002-06-26 Angus Leeming <leeming@lyx.org>
154 * GraphicsLoader.[Ch]: use boost::scoped_ptr in preference to
155 std::auto_ptr. Define an empty Loader d-tor out-of-line to ensure it
158 2002-06-26 Angus Leeming <leeming@lyx.org>
160 * GraphicsTypes.h: add "Ready" to the ImageStatus enum.
161 move the DisplayType enum out of grfx::GParams to here.
163 * GraphicsCacheItem.h: re-write preliminary description to reflect
166 * GraphicsParams.[Ch]:
167 * GraphicsImageXPM.C (load, setPixmap): changes aassociated with moving
168 grfx::DisplayType out of grfx::GParams.
170 * GraphicsLoader.[Ch]: new files. Factor out the image loading stuff
171 that was in frontends/screen.C and insets/insetgraphics.C into a
172 single, easy-to-use class.
174 * Makefile.am: add these files.
176 2002-06-25 Angus Leeming <leeming@lyx.org>
178 * GraphicsCache.[Ch]:
179 * GraphicsCacheItem.[Ch]:
180 * GraphicsTypes.h: rewrite the graphics cache to just load a graphics
181 file into memory. The cache no longer controls the generation of the
182 pixmap. Instead, it just emits a signal when the loading status of an
184 The cache no longer stores InsetGraphics pointers and nor does it
185 assume responsibility for modifying an image (scaling, rotating etc).
186 Instead, that must now be performed elsewhere.
188 2002-06-19 Angus Leeming <leeming@lyx.org>
190 * GraphicsConverter.C: add using std::endl directive.
192 2002-06-17 Herbert Voss <voss@lyx.org>
194 * GraphicsCachItem.C: (findTargetFormat)return xpm-format as a
195 default when nothing different was found
196 (convertToDisplayFormat): handle zipped files in the right way and
197 choose always convert as a default converter when no other
198 userdefined was found
200 * GraphicsConverter.C: add more lyxerr comments and choose
201 convert when no other userdefined converter was found
203 2002-06-10 Herbert Voss <voss@lyx.org>
205 * GraphicsImageXPM.C (convertTo7chars): get another special color
206 format from convert work in the right way
208 2002-06-12 John Levon <moz@compsoc.man.ac.uk>
210 * GraphicsCache.C: use right colormap incantation
212 2002-06-12 John Levon <moz@compsoc.man.ac.uk>
214 * GraphicsCache.C: use lyx_gui namespace
216 * GraphicsImageXPM.C: back down to using xforms
219 2002-06-07 Angus Leeming <leeming@lyx.org>
221 Fixes needed to compile with Compaq cxx 6.5.
222 * GraphicsConverter.h: forward declare class ConvProcess.
224 * GraphicsImageXPM.C:
225 all c-library variables have been moved into namespace std.
226 Wrap using std::xyz declarations inside a #ifndef CXX_GLOBAL_CSTD block.
228 2002-06-06 Angus Leeming <a.leeming@ic.ac.uk>
230 * GraphicsImageXPM.C (rotate): rotate in the same sense as xdvi!
232 2002-05-30 Lars Gullik Bjønnes <larsbj@birdstep.com>
234 * GraphicsImageXPM.C: SigC to boot::signals changes.
235 (newImage): fix () bug when using new.
237 2002-05-29 Lars Gullik Bjønnes <larsbj@birdstep.com>
239 * switch from SigC signals to boost::signals.
241 2002-05-29 André Pönitz <poenitz@gmx.net>
243 * GraphicsParam.C: remove unneeded #include, move vomment
245 2002-05-28 André Pönitz <poenitz@gmx.net>
247 * GraphicsParam.[Ch]: move inset related stuff to inset/insetgraphics
249 2002-05-24 John Levon <moz@compsoc.man.ac.uk>
251 * GraphicsImageXPM.C: ColorHandler moved
253 2002-05-24 Juergen Vigna <jug@sad.it>
256 * GraphicsImage.h: include LString.h first.
258 2002-05-22 Lars Gullik Bjønnes <larsbj@birdstep.com>
260 * GraphicsCacheItem.h: use more specific smart_ptr header.
261 * GraphicsTypes.h: ditto
262 * GraphicsImage.h: ditto
263 * GraphicsConverter.h: ditto
265 2002-04-28 John Levon <moz@compsoc.man.ac.uk>
267 * GraphicsImageXPM.C: understand convert's use of "opaque"
270 2002-04-19 Marco Morandini <morandini@aero.polimi.it>
272 * GraphicsCache.[Ch] (loadableFormats): new method. A wrapper for
273 GImage::loadableFormats() that ensures that the signal is connected
274 to the derived class' method.
276 2002-04-18 Lars Gullik Bjønnes <larsbj@birdstep.com>
278 * GraphicsImageXPM.C (convertTo7chars): drop all conversions and
279 only work on the string.
281 2002-04-17 Angus Leeming <a.leeming@ic.ac.uk>
283 * GraphicsImageXPM.C (Data::reset): Fix the loading of xpm files by
284 the simple image loader when it encounters colour strings like
287 2002-04-16 Angus Leeming <a.leeming@ic.ac.uk>
289 * GraphicsCacheItem.C (convertToDisplayFormat):
290 * GraphicsConverter.C (build_script): remove the Alerts when things go
291 wrong as the inset displays the message anyway. Moreover, Alert seems
292 pretty temperamemtal at the moment.
294 2002-04-16 Rob Lahaye <lahaye@users.sourceforge.net>
296 * GraphicsImageXPM.C: fix clipping for boundingbox y-coordinates
298 2002-04-08 Angus Leeming <a.leeming@ic.ac.uk>
300 * GraphicsCacheItem.C (findTargetFormat): fix bug waiting to bite:
301 a reference to a temp object that's going out of scope...
303 2002-04-09 Herbert Voss <voss@lyx.org>
305 * GraphicsParams.C (BoundingBox c-tor): fix rounding errors by using
306 LyXLength::inBP instead of inPixels.
308 2002-04-10 Herbert Voss <voss@perce.de>
310 * GraphicsCache.[Ch]:
311 * GraphicsCacheItem.[Ch]: add width/height functions from Angus
312 to read the "Bounding Box" from non (e)ps files.
314 2002-04-08 Angus Leeming <a.leeming@ic.ac.uk>
316 * GraphicsParams.C (c-tor): if clipping, then check the Bounding Box of
317 the EPS file too, to ensure that the clipped Bounding Box is relative
318 to the original. (From Herbert.)
320 2002-04-04 Angus Leeming <a.leeming@ic.ac.uk>
322 * GraphicsParams.C (BoundingBox c-tor): ensure that the member
323 variables are initialised. Clean-up parsing of the string (with thanks
326 2002-03-26 Angus Leeming <a.leeming@ic.ac.uk>
328 * GraphicsCacheItem.C (convertToDisplayFormat): don't launch that Alert
329 if the file can't be found.
331 * GraphicsParams.h (c-tor): remove string() as default argument.
333 * GraphicsCacheItem.C: a couple of changes as a result.
335 2002-03-22 Angus Leeming <a.leeming@ic.ac.uk>
337 * GraphicsCache.[Ch] (update): now passed filepath to determine absolute
338 path to graphics file.
340 * GraphicsParams.[Ch] (c-tor): now passed filepath.
342 2002-03-21 Lars Gullik Bjønnes <larsbj@birdstep.com>
344 * most files: ws cleanup
346 * Makefile.am: remove ld -r stuff
348 2002-03-20 Lars Gullik Bjønnes <larsbj@birdstep.com>
350 * Makefile.am: special rules if partial linking
352 2002-03-14 Angus Leeming <a.leeming@ic.ac.uk>
354 * GraphicsCache.C: use Lars' preferred idiom for a for-loop.
356 2002-03-11 Lars Gullik Bjønnes <larsbj@birdstep.com>
358 * GraphicsConverter.[Ch] (converted): make first arg const ref.
360 * GraphicsCacheItem.h: doxy change
362 * GraphicsCacheItem.C: ws change
364 2002-03-05 Angus Leeming <a.leeming@ic.ac.uk>
366 * Makefile.am: if there is no image loading class leveraging the power
367 of the appropriate gui library, then compile the basic alternative
368 found in GraphicsImageXPM.[Ch].
370 2002-03-04 Angus Leeming <a.leeming@ic.ac.uk>
372 * GraphicsCache.C: change associated with move of initialiseGraphics
375 2002-02-28 Angus Leeming <a.leeming@ic.ac.uk>
377 * GraphicsParams.[Ch]:
379 * GraphicsImageXPM.C: properly resolve more warnings about comparison
380 between signed and unsigned integer expressions.
382 * Makefile.am: add GraphicsTypes.h which I'd carelessly left out.
384 * GraphicsCache.C: move connections to the GImage-derived classes to
387 * GraphicsImageXPM.C (copy c-tor): don't copy pixmap.
389 * GraphicsCacheItem.C (findTargetFormat): if we can load direct without
390 conversion, then do that.
392 2002-02-27 Angus Leeming <a.leeming@ic.ac.uk>
394 * GraphicsCache.C: improve commentary to graphicsInit and where it
397 * GraphicsImageXPM.C (~Data, free_color_table): resolve the crash
398 that became a memory leak properly. (Let the shared_c_ptr free the
400 (reset, mapcolor): tidy up and introduce a work around for XPM files
401 with crappy color entries. Print out a nice friendly message on what's
402 gone wrong and how to resolve it properly.
404 2002-02-27 Angus Leeming <a.leeming@ic.ac.uk>
406 * GraphicsImageXPM.[Ch]: more rigorous use of types (signed/unsigned).
407 (Data d-tor): introduce memory leak temporarily, to "fix" a crash
409 (unique_color_string): use the correct string c-tor.
411 2002-02-15 Angus Leeming <a.leeming@ic.ac.uk>
414 * ImageLoaderXPM.[Ch]: removed.
416 * GraphicsConverter.[Ch]:
417 * GraphicsImage.[Ch]:
418 * GraphicsImageXPM.[Ch]:
419 * GraphicsParams.[Ch]:
420 * GraphicsTypes.h: new files.
422 * All files. A total re-write of the graphics cache. The cache now
423 supports asynchronous file conversion and file loading. Images
424 can be cropped, rotated and scaled for display on the LyX screen.
425 The old LyXImage and ImageLoader have been combined in a new class
426 GImage. Ditto, ImageLoaderXPM's functionality has been moved into
429 2002-02-07 Herbert Voss <voss@lyx.org>
431 * GraphicsCacheItem.C: use unzipFile() from support/filetools
433 2002-01-31 Herbert Voss <voss@lyx.org>
435 * GraphicsCacheItem.h: handle filetype without the file extension;
436 getting type from contents; handle zipped files
438 2002-01-27 Herbert Voss <voss@lyx.org>
440 * GraphicsCacheItem.h: added Converting to the ImageStatus enum.
442 2002-01-17 John Levon <moz@compsoc.man.ac.uk>
444 * ImageLoaderXPM.C: don't set XpmColorKey flag if we don't use it
446 2001-12-19 Jean-Marc Lasgouttes <lasgouttes@freesurf.fr>
448 * GraphicsCacheItem.h: do not include <config.h> in header files
450 2001-09-21 Angus Leeming <a.leeming@ic.ac.uk>
452 * ImageLoaderXPM.C (runImageLoader): If the pixmap contains a
453 transparent colour, then set it to the colour of the background.
454 Also take account of the monochrome, grayscale of color
457 2001-09-20 Angus Leeming <a.leeming@ic.ac.uk>
459 * GraphicsCacheItem.C (convertImage): only convert if "from" and "to"
460 are different. Thus, don't delete the "to" if it's the original!
462 2001-09-01 John Levon <moz@compsoc.man.ac.uk>
464 * ImageLoadXPM.C: remove setting of alloc colour mask,
465 led to crash as we don't define a callback
467 2001-07-29 Baruch Even <baruch@lyx.org>
469 * ImageLoaderXPM.C (runImageLoader): When loading agree to use non-exact
470 colors with closeness of 10000.
472 * GraphicsCacheItem.C: Fixed a compilation bug introduced earlier.
474 2001-07-29 Baruch Even <baruch@lyx.org>
476 * GraphicsCacheItem.C (findTargetFormat): Removed error dialog box,
479 2001-07-23 Baruch Even <baruch@lyx.org>
481 * GraphicsCacheItem.C (convertImage): Fixed a bug with regard to loading
482 the image after conversion.
484 2001-07-17 Baruch Even <baruch@lyx.org>
486 * GraphicsCacheItem.h:
487 * GraphicsCacheItem.C: Shuffled things a bit to make it easier to switch
488 from synchronous to asynchronous and to ease the coming changes.
490 2001-07-03 Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>
492 * ImageLoaderXPM.C (runImageLoader): get display information from
495 2001-06-14 Angus Leeming <a.leeming@ic.ac.uk>
498 * GraphicsCacheItem.C:
500 * ImageLoaderXPM.C: removed // -*- C++ -*- as first line.
502 2001-04-17 Lars Gullik Bjønnes <larsbj@birdstep.com>
504 * GraphicsCache.h: inherit privately from noncopyable
505 * ImageLoader.h: ditto
506 * GraphicsCacheItem.h: ditto
508 2001-04-16 Allan Rae <rae@lyx.org>
510 * ImageLoaderXPM.C (runImageLoader): #warning triggers an error on Sun
511 CC 6.0 as an unrecognised preprocessor directive. So ensure they're
514 2001-04-02 Baruch Even <baruch@lyx.org>
516 * GraphicsCacheItem.[Ch]: Changed to used the Converter class instead
517 of hard coding ImageMagick.
519 2001-03-10 Baruch Even <baruch@lyx.org>
521 * GraphicsCache.C: Style change from (*it).field to it->field
523 2001-03-15 Lars Gullik Bjønnes <larsbj@trylle.birdstep.com>
525 * GraphicsCache.h: noncopyable is in namespace boost
526 * ImageLoader.h: ditto
527 * GraphicsCacheItem.h: ditto
529 2001-03-07 Baruch Even <baruch@lyx.org>
531 * GraphicsCache.C (d-tor): Removed the assert, the assumption it carried
532 was false and it's not needed anyhow since the shared_ptr's in the cache
533 will destroy everything on exit.
535 2001-02-28 Baruch Even <baruch@ev-en.org>
538 * GraphicsCache.C: Changed the singleton pattern implementation, the
539 former version "leaked" in the sense that it was not deallocated at
542 2001-02-20 Baruch Even <baruch@ev-en.org>
544 * GraphicsCache.C: Changed to use shared_ptr<GraphicsCacheItem>
545 instead of a pure pointer.
547 * GraphicsCacheItem.[Ch]:
548 * GraphicsCacheItem_pimpl.[Ch]: Collapsed them into GraphicsCacheItem,
549 removed the reference counting that was inside. Also fixed a bug where
550 a temporary file wouldn't get erased.
552 * ImageLoader.[Ch]: Changed the semantics of the image_ pointers usage.
553 Ownership is now dropped when the caller requests the image_ pointer.
555 2001-02-20 Baruch Even <baruch@ev-en.org>
557 * GraphicsCache.C: Cleared up the confusion on when and how it is
560 * GraphicsCacheItem.C: Indentation change.
562 * GraphicsCacheItem_pimpl.C: Fixed the loading logic so that it will
563 figure correctly when the image has been loaded successfully.
565 2001-02-08 Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>
567 * ImageLoader.C: add a "using" directive.
569 * ImageLoader.h: remove extra comma at the end of enum; add an
570 std:: qualifier for vector.
572 2001-01-21 Baruch Even <baruch@ev-en.org>
574 * GraphicsCacheItem.[Ch]: Changes due to the storage of width and
575 height in the image itself and minor cleanups.
577 * GraphicsCacheItem_impl.[Ch]: Changes due to the switch to use a
578 new ImageLoader class instead of the older Renderer class. This
579 means change of responsibilities.