Commit Graph

59 Commits

Author SHA1 Message Date
Ilya Sinitsyn
b1a744ce07 Fix an issue with the background in wxGenericAnimationCtrl
Static bitmap with alpha channel must also be drawn on the memory DC
instead of being used directly, just as the bitmaps with a mask.
2020-06-09 18:07:10 +02:00
Vadim Zeitlin
f2ed3a5376 Add static wxAnimationCtrl::CreateCompatibleAnimation()
This may be more convenient to use than CreateAnimation() if there is no
wxAnimationCtrl object at hand.
2020-04-06 23:33:07 +02:00
Vadim Zeitlin
cdf156e7e8 Remove redundant checks for IsOk() in wxAnimationGenericImpl
We already check that IsOk() returns true before calling these methods,
there is no need to do it again inside them.

Generally speaking, private functions may rely on public ones doing the
precondition checking.
2020-04-06 23:21:27 +02:00
Vadim Zeitlin
d9b1ca54ca Stop deriving native wxGTK wxAnimationCtrl from generic one
This is unnecessary and confusing.
2020-04-06 01:09:36 +02:00
Vadim Zeitlin
3678d67f92 Move wxGenericAnimationCtrl::m_animation to the base class
API of wxAnimationCtrlBase practically forces the derived classes to
have such method, so just add it and make GetAnimation() a simple
non-virtual accessor.
2020-04-06 01:03:39 +02:00
Vadim Zeitlin
b08db49bf6 Make wxAnimationImpl private and get rid of wxAnimationImplType
Simplify and streamline animation classes relationship: wxAnimation is
the only public class representing an animation and it can be created by
both the native wxAnimationCtrl and wxGenericAnimationCtrl using the new
public CreateAnimation() method.

Replace wxAnimationImplType enum with more flexible type info based
check.
2020-04-06 01:00:15 +02:00
Vadim Zeitlin
86d6cb8d1f Don't derive wxAnimationImpl from wxObject
This is just unnecessary and having wxAnimation::m_refData->m_refData is
confusing, both in wxGTK version where it's not used and in the generic
one where it is, but can be replaced by more type-safe m_decoder.
2020-04-06 00:00:10 +02:00
Vadim Zeitlin
16c7f4f74d Restore blank line present in master to minimize diff
No real changes.
2020-04-05 16:04:26 +02:00
Robin Dunn
e258a9d982 Move the animation Impl classes to private headers 2020-04-03 13:22:35 -07:00
Robin Dunn
4545d93924 Move wxAnimationDecoderList-related methods to wxAnimation 2020-04-03 12:49:15 -07:00
Robin Dunn
6f79567f3b Use better names for the Impl accessor methods 2020-04-02 13:21:49 -07:00
Robin Dunn
c532edfe67 Fix class names in the header 2020-04-02 12:51:16 -07:00
Robin Dunn
6b6a930e9c Update GTK animation classes for the new pattern 2020-04-01 14:16:15 -07:00
Robin Dunn
085f08aefe Remove the generic-specific methods from the wxAnimation API 2020-04-01 13:30:49 -07:00
Robin Dunn
cd74255da3 Ensure the animation is ok before getting its impl 2020-04-01 12:58:35 -07:00
Robin Dunn
606f365ea3 Verify the animation impl type matches the animation ctrl type 2020-04-01 12:39:48 -07:00
Robin Dunn
e464453073 * Switch wxAnimation to be a facade over a wxAnimationImpl class.
* Implement wxAnimationGenericImpl
* Update wxGenericAnimationCtrl as needed
2020-04-01 11:53:19 -07:00
Robin Dunn
85bd16fb06 Trim trailing whitespace 2020-03-31 14:02:39 -07:00
Robin Dunn
f3b916a99e commit suggested change
Co-Authored-By: VZ <vadim@wxwidgets.org>
2020-03-31 13:26:51 -07:00
Robin Dunn
a7f9d5e3c5 * Switch back to using an wxAnimationBase class
* Change the [GS]etAnimation methods to be non-virtual so they can use generic/native types of animation obj
2020-03-30 14:53:11 -07:00
Robin Dunn
08ac4dbad6 Name the base animation class wxGenericAnimation with a wxAnimation shim class 2020-03-27 15:53:03 -07:00
Robin Dunn
488084c2f5 Name the base animation class wxGenericAnimation with a wxAnimation shim class 2020-03-27 14:33:11 -07:00
Robin Dunn
fae15d39a6 * Rename the generic version as wxGenericAnimationCtrl
* Add a simple shim class for the generic wxAnimationCtrl
* Use the generic wxAnimation as the base class (this will probably change...)
2020-03-25 16:29:34 -07:00
Robin Dunn
398b178431 Compile native or generic animation classes based on wxUSE flags 2020-03-24 14:49:03 -07:00
Maarten Bent
370ae40b35 Use more FromDIP for hardcoded sizes 2019-09-28 23:47:04 +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
Tim Kosse
3ff982aa7a wxBitmap::GetMask() asserts on invalid bitmap. Check for valid bitmap before calling GetMask().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76737 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-19 09:29:42 +00:00
Vadim Zeitlin
33ad33d447 Add wxOVERRIDE and use it in common and wxOSX code.
Make overriding virtual methods more explicit and enable additional checks
provided by C++11 compilers when "override" is used.

Closes #16100.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-20 13:26:28 +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
a1b806b982 Replaced Ok() occurrences with IsOk() throughout trunk.
Additionally renamed wxOSX' private wxNativePrinterDC::Ok() function to IsOk().

Didn't deprecate the various Ok() functions: given the amount of changes already introduced in 3.0 a trivial one like this seems more suitable for after 3.0.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-03 16:29:04 +00:00
Dimitri Schoolwerth
4c51a665c6 Fixed various typos.
Applied patch by snowleopard2 fixing a bunch of typos such as misspellings and double words in the documentation. Combined the patch with some local queued typos waiting to be committed as well as adding new typo fixes inspired by the patch.

Function names with American spelling were not changed nor was third-party code touched. The only code changes involve some changes in strings that are translated ("Can not" -> "Cannot").

Closes #13063 (again).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-03-22 14:17:38 +00:00
Dimitri Schoolwerth
80fdcdb90e No changes, synchronised source names that appear commented at the top of files with the actual path to the files.
Fixed commented names (path, filename, and extension) of files in include/ and src/. Prepended the names in src/ with "src/" everywhere, while starting those in include/wx/ with "wx/".

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-03-20 00:14:35 +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
9a83f86094 Globally replace _T() with wxT().
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Francesco Montorsi
9690b00654 always remember to test IsOk() after using wxFileInputStream
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57917 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-08 18:26:35 +00:00
Vadim Zeitlin
5c33522fca replace wx_{const,static,reinterpret}_cast with their standard C++ equivalents
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-02 02:39:52 +00:00
Vadim Zeitlin
462167a9f7 allow loading wxAnimationCtrl contents from stream (patch 1962344)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53629 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-05-17 22:51:52 +00:00
Vadim Zeitlin
ff654490b7 removed all compile- and run-time checks for GTK+ < 2.4; don't include the generic files which are now never used in wxGTK in the build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49660 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-05 22:31:24 +00:00
Vadim Zeitlin
48271822ef use one shot timers in wxAnimationCtrl (patch 1774535)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48085 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-15 11:36:50 +00:00
Václav Slavík
47b378bd88 removed extra semicolons (patch #1700459; fixes compilation with gcc's -pedantic flag)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-14 09:58:37 +00:00
Vadim Zeitlin
ba5787676d test whether pointer is non-NULL before using it, not after, in wxAnimation::Load() (thanks coverity)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45145 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-30 13:43:31 +00:00
Vadim Zeitlin
870cf35c45 replaced size_t with unsigned int in wxAnimation and related classes and a couple of minor cleanups (use C++ comments; wrap long lines; put private parts after the public ones)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-12-10 14:18:37 +00:00
Vadim Zeitlin
988bbabbaa update from suzumizaki (patch 1522241)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-25 00:23:38 +00:00
Robert Roebling
1bd2ceb57b [ 1598659 ] make wxAnimationCtrl::SetInactiveBitmap center given bitmap
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-18 17:46:29 +00:00
Vadim Zeitlin
1afdfc9deb - fix wxAnimationCtrl::SetBackgroundColour both for generic and native GTK
version
- fix wxAnimationCtrl::GetAnimation for GTK version (modifying correctly the
  constructor which takes a GdkPixbufAnimation)
- fix the generic wxAnimationCtrl::SetAnimation() when it's used with a
  wxNullAnimation.
- moves the frame counter reset in Stop() as it's more sensed to always have
  m_currentFrame cleared immediately when the animation has been stopped
- fix a problem with transparent bitmaps drawing in wxAnimationCtrl::OnPaint

(part of patch 1598005)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-17 18:14:42 +00:00
Vadim Zeitlin
4683dc1c43 call SetAnimation() from the ctor instead of just assigning m_animation directly to ensure that UpdateBackingStoreWithStaticImage() is initially called
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-12 22:16:58 +00:00
Robin Dunn
8434297daf The "small optimization" causes asserts if Play is called before the
first EVT_SIZE event (because the m_backingStore bitmap won't have
been created yet) so take it out.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43140 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-07 05:12:52 +00:00
Vadim Zeitlin
580ca0a4e1 wxAnimationCtrl fix to display inactive bitmap at start (patch 1590192)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-03 22:16:51 +00:00
Robert Roebling
8e458bb539 [ 1580776 ] wxAnimationCtrl::SetInactiveBitmap
Additionally call UnShare() in it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42195 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-21 13:51:38 +00:00
Paul Cornett
5f8047a69b use generic wxAnimationCtrl in wxGTK-universal
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42089 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-18 03:32:52 +00:00