Commit Graph

59 Commits

Author SHA1 Message Date
Paul Cornett
fe1737d399 Reduce the scope of some local variables 2019-04-05 10:44:02 -07:00
Vadim Zeitlin
982ebc8741 Simplify wxGIFHandler::LoadFile().
Don't use heap-allocated wxGIFDecoder when a stack-allocated object would do
just as well.

Don't handle errors different from the defined wxGIF_XXX constants: they can
never happen because LoadGIF() has no way of returning them.

Don't check for "ok" variable being false when it was set to true and never
changed until this check.
2015-05-24 01:53:11 +02:00
Vadim Zeitlin
5e42de8062 Use wxScopedArray in wxGIFHandler instead of manual delete[].
No changes, just make the code simpler and safer.
2015-05-24 01:53:10 +02:00
Vadim Zeitlin
a82dc09927 Check for having valid image size in wxGIFHandler saving code.
At least the width must be non-0 as we allocate a width-sized array below and
0 height is probably problematic -- and definitely not useful -- as well, so
just bail out if either of them is 0.
2015-05-24 01:53:10 +02:00
Dimitri Schoolwerth
8f8d58d193 Use wx-prefixed macros throughout the repository.
Change {DECLARE,IMPLEMENT}_*CLASS and {DECLARE,BEGIN,END}_EVENT_TABLE
occurrences to use the wx-prefixed version of the macros.
2015-04-23 22:00:35 +04:00
Vadim Zeitlin
be0dcf769f Write delay between frames correctly when saving GIF files.
Deal with delays greater than ~2.5s correctly, their most significant byte was
previously lost resulting in 0 delay being written to the file.

Closes #16392.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-25 17:34:27 +00:00
Vadim Zeitlin
3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-26 16:02:46 +00:00
Dimitri Schoolwerth
ff5bf31cb1 Fixed saving GIFs on big-endian architectures.
Word (16 bits) values were written in the wrong order resulting in invalid GIF files on for example PowerPC machines.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67802 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-27 12:25:25 +00:00
Dimitri Schoolwerth
64a3ee76aa Allow writing a comment to each GIF frame.
Don't write a comment as part of the GIF header during the first frame only but write a possible comment for each wxImage in an animation.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-28 08:36:34 +00:00
Dimitri Schoolwerth
da60600bc9 Added support for writing a long comment to a GIF image.
Instead of limiting a comment to a maximum length of 255 bytes write multiple comment data blocks (each a Pascal string) followed by the block terminator.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66802 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-28 08:10:01 +00:00
Dimitri Schoolwerth
491da41173 Changed the procedure for writing a comment to a GIF image.
Use wxImage.SetOption with newly introduced wxIMAGE_OPTION_GIF_COMMENT to set a GIF's image comment now. Formerly this was done (since recently) using wxGIFHandler::ms_comment which has now been removed.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-28 07:27:34 +00:00
Dimitri Schoolwerth
6636ef8ddf Use wxString's empty() when checking if the string is (non-)empty throughout wx.
Instead of constructs such as if "( s.length() )" and "if (s.length() > 0)" use "if ( !s.empty() )" instead. Similarly for "if (s.length() == 0)" or "if ( s.IsNull() )", use "if ( s.empty() )".
No code changes intended except for a few instances where a construct like "if ( s.length() && wxFileExists(s) )" was changed to not check the length of the string and let wxFileExists handle such cases.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-22 14:38:36 +00:00
Dimitri Schoolwerth
77b83d0a0f Added GIF and animated GIF saving support.
Applied (modified) patch by troelsk. Also added a basic unit test for checking the frames of a saved animated GIF (a previous unit test already handles content of a GIF with a single frame).

Closes #8583.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66716 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-19 12:28:31 +00:00
Vadim Zeitlin
03647350fc No changes, just removed hard tabs and trailing white space.
This commit is huge but there are no non-white-space changes in it.

Some files containing third-party sources (src/msw/wince/time.cpp,
src/x11/pango*.cpp) were left unchanged.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-21 10:41:26 +00:00
Vadim Zeitlin
af58844636 Add information about the log message generation location to wxLog.
This means that wxLog::DoLogRecord() can now retrieve the file name, line
number and the function where the message was logged.

An unfortunate consequence of this change is that now

	if ( condition )
		wxLogError("Whatever");

results in a warning from g++ 4.x with -Wparentehses, so extra parentheses had
to be added in many places.

Finally, also allow storing arbitrary attributes in wxLogRecordInfo. This had
to be added to implement our own overloaded wxLogStatus() and wxLogSysError()
and will probably be useful for the others as well.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-09 20:26:34 +00:00
Francesco Montorsi
8faef7ccbc document that CanRead() and GetImageCount() functions of wxImageHandlers do NOT modify the current stream position and that they require seekable streams; rename current GetImageCount() functions to DoGetImageCount() and put save-and-restore stream position logic in GetImageCount(); add comments in the various DoCanRead() and in DoGetImageCount() where the stream position is modified; remove unneeded SeekI(0) calls from DoCanRead() and DoGetImageCount() functions: they didn't allow to load images from non-seekable streams; implement forward-seeking in wxInputStream::SeekI() also for non-seekable streams
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60852 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-01 11:43:36 +00:00
Vadim Zeitlin
85fcb94fc9 implement GetImageCount() for GIF handler (closes #10663); added test for it to the sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-05 12:52:22 +00:00
Vadim Zeitlin
72045d5768 added wxAnimationCtrl (patch 1570325)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41819 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-09 17:51:07 +00:00
Włodzimierz Skiba
8898456df4 wx/wxprec.h already includes wx/defs.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-18 07:24:35 +00:00
Mart Raudsepp
8907154c1a Nuke #pragma implementation/interface's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-23 12:56:45 +00:00
Włodzimierz Skiba
7beb59f36c Source cleaning: whitespaces, tabs, -1/wxDefaultCoord/wxNOT_FOUND, TRUE/true, FALSE/false, !!/!IsEmpty().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29155 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-09-16 18:13:32 +00:00
Julian Smart
655719367a Use old licence name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 20:53:33 +00:00
Julian Smart
77ffb5937e Name and version changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 14:56:36 +00:00
Václav Slavík
14f355c2b5 added support for gcc precompiled headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-08-09 12:46:53 +00:00
Vadim Zeitlin
39d16996b7 restore the stream position in wxImageHandler itself instead of forcing all
derived classes to do it themselves


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15642 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-05-22 23:14:47 +00:00
Václav Slavík
b931f7ee94 applied patch for seeking in GIF images
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-03-15 23:59:09 +00:00
Václav Slavík
c96ea65713 added wxUSE_IMAGE; added write-only wxXPMHandler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9854 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 22:31:53 +00:00
Václav Slavík
add95ac378 replaced 'wxPCX/GIFHandler:' by 'PCX/GIF:' in error messages -- these are for users, should not reveal internals
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@6659 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2000-03-13 17:22:49 +00:00
Guillermo Rodriguez Garcia
0141d2c9bd moved Destroy() to the beginning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@6360 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2000-02-29 20:58:36 +00:00
Guillermo Rodriguez Garcia
8141573c1e Now wxGIFDecoder always tries to read to the end of the GIF data.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@6131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2000-02-17 23:39:35 +00:00
Václav Slavík
8f49300284 image handlers moved to separate headers (imagbmp.h etc.) This change is backward compatible (all hdrs #included in image.h) and reduces executable size under GCC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-12-15 22:38:02 +00:00
Václav Slavík
ad81651f00 removed USE_SHARED_LIBRARY(IES)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4950 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-12-14 23:57:30 +00:00
Guillermo Rodriguez Garcia
e4b8154a65 source clean-up
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-12-10 20:16:01 +00:00
Robert Roebling
f6b7723929 Two missing #includes in image code.
Corrected item coloring in wxListCtrl report mode (incl sample).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-12-04 11:56:28 +00:00
Robert Roebling
58c837a4e6 String changes for translations,
Made wxBitmap derive from wxGDIObject,
  Removed #ifdefs around destrctors for GDI lists (wxBrushList etc),
  Created wxEVT_COMMAND_SPINCTRL_UPDATE with obvious usage.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-12-04 10:37:39 +00:00
Robert Roebling
700ec4546c Compile fix for GIF decoder,
Added image index to loadfile.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4774 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-11-30 17:24:14 +00:00
Vadim Zeitlin
3096bd2fa7 include <wx/...> => include "wx/..."
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-11-02 15:50:22 +00:00
Vadim Zeitlin
995612e2ab 1. wxImageHandler::DoCanRead() introduced to solve the virtual function name
hiding problem
2. wxPNMHandler::CanRead() shouldn't use wxT() - should it?


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4005 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 16:59:32 +00:00
Karsten Ballüder
223d09f6b5 replaced T() makro with wxT() due to namespace probs, _T() exists, too
fixed compilation problems, mainly in html code
compiles and links fine on Solaris, runs with samples and Mahogany


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-08 14:35:56 +00:00
Vadim Zeitlin
e90c1d2a19 many changes; major ones:
1. start of !wxUSE_GUI support
2. _T() macro renamed to T()
3. wxConvertWX2MB and MB2WX macro added


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3828 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 20:15:38 +00:00
Guillermo Rodriguez Garcia
9ab6ee851e Ops. wxUSE_XXX and wxUSE_STREAMS are separated again :-)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 22:19:18 +00:00
Guillermo Rodriguez Garcia
b9b32d5c4f Added #include "wx/setup.h" (or "wx/defs.h") before checking for
wxUSE_***

Merged wxUSE_*** and wxUSE_STREAM (is this right?)

Replaced wxUSE_LIBGIF with wxUSE_GIF everywhere


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3595 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 21:58:54 +00:00
Julian Smart
1044a386f0 Misc. 16-bit compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-05 15:14:50 +00:00
Guilhem Lavaux
aa6d970619 Updated wxSocket documentation
Renamed GSOCK_TIMEOUT to GSOCK_TIMEDOUT
Added wxURL::ConvertFromURI
Use wxUSE_LIBGIF in imaggif.cpp and samples/html/test/test.cpp
Full implementation of "timeout"s in gsocket.c
Non-blocking WaitConnection()/Connect() are supported now.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-05 10:23:22 +00:00
Guillermo Rodriguez Garcia
e08e239b43 Added error messages when (verbose == TRUE) to know why the
load failed.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3517 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 11:50:57 +00:00
Guillermo Rodriguez Garcia
8a68d8b6c1 small change (honour 'verbose' parameter in LoadFile)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 11:29:10 +00:00
Guillermo Rodriguez Garcia
bd2fdefea2 Fixed CanRead(), which incorrectly forced version 89a, thus preventing
valid GIFs with older version numbers (87a) to be loaded correctly. Also,
CanRead() is now in gifdecod.cpp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 22:10:51 +00:00
Václav Slavík
0828c0875e added wxImage::CanRead
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3421 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 21:22:54 +00:00
Julian Smart
464122b639 Added gifdecod.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 06:28:20 +00:00
Sylvain Bougnoux
deb2fec01e Improve wxImage::LoadImage so that image format in not anymore required
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-17 09:27:44 +00:00