Commit Graph

1759 Commits

Author SHA1 Message Date
4c749b121c slideshow: Merge ShaderTransition into OGLTransitionImpl
Change-Id: Ia585a5064362c261c137d8c4abefcfda7cb7bdd7
2015-11-23 23:06:38 +01:00
fb3661a43f slideshow: Move Operation to its own translation unit
Change-Id: Ie0be68055152347e82da66cb48cf76c54b7966c0
2015-11-23 23:06:38 +01:00
04fe52e947 loplugin:unusedfields in slideshow/
Change-Id: I509dd0bdda284abb2b8abdb809bf1dec8b9632ce
2015-11-23 13:30:54 +02:00
55dd7c5223 loplugin:staticmethods
Change-Id: I57ab559112201269ce389bb6eff737168cec1e78
Reviewed-on: https://gerrit.libreoffice.org/20119
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-22 14:48:26 +00:00
b3ce63e5a5 slideshow: Reimplement reflections in shaders, and port Rochade and TurnAround
This removes the hack reflections were previously, where a black quad
was drawn on top of a mirror version of the first primitive only.

Change-Id: I8c0863ab30e85d0130a8d7e838f3514e9be93788
2015-11-20 21:48:58 +01:00
f62990a835 slideshow: Reimplement both Fade transitions in shaders
Change-Id: I94187b9316a206578bb738411053afe070703f09
2015-11-20 21:48:57 +01:00
1f91c05c55 slideshow: Make SimpleTransition inherit from ShaderTransition
Many transitions don’t like the simplistic default shader, especially
since it doesn’t handle lighting or reflections properly.

Those issues are addressed in the following commits.  TODO: except
lighting.

Change-Id: Ia99308deb87c97d9bbe1da32aac64d0437061a84
2015-11-20 21:48:57 +01:00
b8793748b0 Seems more natural to pass a homogenous list by initializer_list
...than by template parameter pack (even if that requires using ServiceDecl*, as
initializer_list cannot take reference types)

Change-Id: Ia986201b52d8daedfe925f132ebc79bc2c0ba378
2015-11-20 13:39:52 +01:00
ab9add5c96 loplugin:sallogareas
Change-Id: Ib1f06cb5f925535858bc14aab6f59ad7fd2a3a8d
2015-11-20 10:14:49 +01:00
ff52270410 loplugin:redundantcast
Change-Id: I89281db92f9b75e972313a95c33473d7649a9bef
2015-11-19 22:45:45 +01:00
cda5c7ab23 slideshow: Port all matrix operations from GL to glm
We are still using glPushMatrix/glMultMatrix/glPopMatrix until
everything is moved to shaders, at which point we will upload it with
glUniformMatrix instead.

Change-Id: I1684700eb9ed5867c5a2ae2b4e8cf2f1805f4d70
2015-11-19 19:21:54 +02:00
e18da092ef slideshow: Batch primitive display as much as possible
We now set the state and upload all vertices data at once, before each
batch, in order to minimize GL calls during drawing.

The next step will be to move to shaders, in order to use per-primitive
uniforms instead of changing the global modelview matrix and issuing
another draw call.

Change-Id: I8c7cf29047047b9cad575cc6264485ae77d6ba10
2015-11-19 19:21:48 +02:00
cad6045f5c slideshow: Always enable normals, there is no case where they are empty
Change-Id: Ia45a3ec98a1f548b5a976f485d4165bb3d1ff2e4
2015-11-19 19:21:42 +02:00
ba02afad40 slideshow: Don’t create the permTexture if the shaders don’t use it
Change-Id: I0aefe2130a85303213e247676d45546d9859cf62
2015-11-19 19:21:38 +02:00
f41358a71f slideshow: Rename getVertices into getVertex, to match its only usage 2015-11-19 19:21:34 +02:00
9f8392846b slideshow: improve "honeycomb" transition
Change-Id: I8687127cd9ccf6a6ddd87d934f7462a69a047053
2015-11-18 18:28:04 +01:00
53f16c39f5 remove unused typedefs and inline use-once typedefs
and improve the script a little

Change-Id: I2792ea4dd5df3a50736fbe209225c3f16fb86b84
Reviewed-on: https://gerrit.libreoffice.org/20033
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-18 10:38:08 +00:00
d9e6270392 loplugin:unnecessaryvirtual
update the plugin with lessons learned from the mergeclasses plugin and
re-run it

Change-Id: I9d622eb3d05fceaf8fa764c533c8fa5dfb4c7711
Reviewed-on: https://gerrit.libreoffice.org/20015
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-17 12:26:32 +00:00
97972153d0 slideshow: initial work on "honeycomb" transition (incomplete)
Change-Id: I4a46f7f1ec289f96f9fd1b849317b7548ac29383
2015-11-16 21:41:50 +01:00
6f6056d9cf slideshow: improve rotation timing in glitter transition
Change-Id: I8b0475a6dcde53202a489b9d3265add9fe068cbc
2015-11-13 19:17:01 +01:00
7dec6e6eed slideshow: simplify NByMTileFlip transition
Change-Id: I0ec07eb25d538d82d740a33f05b0a4f002adf36a
2015-11-13 19:17:00 +01:00
f6ef7e33b0 slideshow: add "glitter" slide transition
Change-Id: Ie89b64c4399cd0092eee579660c9fe85f8ca8e73
2015-11-13 10:15:08 +01:00
db17d3c17c new loplugin: memoryvar
detect when we can convert a new/delete sequence on a local variable to
use std::unique_ptr

Change-Id: Iecae4e4197eccdfacfce2eed39aa4a69e4a660bc
Reviewed-on: https://gerrit.libreoffice.org/19884
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-11 07:16:20 +00:00
b6fe760beb loplugin:nullptr (automatic rewrite)
Change-Id: Ief4dd31d68bd7c8e45070eea689d07057449ce77
2015-11-10 10:31:39 +01:00
ef04c66659 Improve transition shader portability
Use #version 120 explicitly, and adapt the shader shader code
accordingly, to use strictly only GLSL 1.20 constructs. Also, use less
vertex attribute data in the Vortex vertex shader: We can pack the
per-vertex tile x and y index and in-tile vertex index information
into one float. Also, the shader can calculate the center of the tile
a vertex belongs to based on the knowledge of which tile it is.

Now the shader transitions work on OS X, too.

Change-Id: I93e8b5069a6d06d2e412ffee322b1eb32805e606
2015-11-07 01:45:48 +02:00
24db02dc8d Make the Vortex transition a bit more interesting
Also some minor cleanups in the C++ code.

Change-Id: I106657130dd6e32b458cb416717806caac5031ce
2015-11-06 20:49:55 +02:00
69b81b64f8 loplugin:stringconstant: elide explicit ctor usage (automatic rewrite)
Change-Id: I23de1fa2f8e6c0cf6281b32eab179e131aa98056
2015-11-06 09:37:21 +01:00
75465aadff Add a 'Ripple' transition
Change-Id: I18efe35c299bc3a4a2a5e449021323fc1f53f378
2015-11-06 01:01:44 +02:00
1c3d3ffa81 use uno::Reference::set method instead of assignment
Change-Id: Ib93d762cf523e0029bbed16e08beebd9f418ae24
2015-11-05 09:59:30 +02:00
59b072e22b yyyyy
Change-Id: I9a947beefd2dfe21da8239e841ea3fb416bd1548
2015-11-04 14:10:44 +02:00
dc3fca8483 Mac fix
Change-Id: Ib44f84ae028a73dd1940797acdadaff1e3c206d9
2015-10-30 13:25:31 +01:00
76cfcea672 The fglrx driver is an X11 only thing
It means "FireGL and Radeon for X".

Change-Id: I188fa03a113d9977a7a240bc0fc9f6dc9be054b8
2015-10-30 13:42:47 +02:00
3bc5df7f32 UNO: no need to use OUString constructor when calling createInstance
Change-Id: I37da28539b94706574116d0fff5f008aabfb5526
Reviewed-on: https://gerrit.libreoffice.org/19682
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2015-10-30 08:59:59 +00:00
6e2736705d coverity#1332210 Uninitialized scalar field
Change-Id: I9f62e3f9d2bb517ad8f40400004670de1c4d06a5
2015-10-30 08:13:26 +00:00
c7e8f21a53 loplugin:unusedmethods
Change-Id: Id3b5cd75d4357336ed592ef11a3f34d209f8e95f
Reviewed-on: https://gerrit.libreoffice.org/19636
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2015-10-30 05:58:41 +00:00
e195b2ec95 com::sun::star->css in slideshow
Change-Id: I7ae3c5198c22a3937e8c3ef87f48fa2a7e562c62
Reviewed-on: https://gerrit.libreoffice.org/19664
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-10-29 10:24:23 +00:00
973a4086d7 Remove initial :: from sal_* types
Change-Id: Idcdc9aeb7d3fdca0a9db43c1cb518ab1d1b2f0f4
2015-10-27 15:42:54 +02:00
f157d0fa9d WaE: unused parameters
Change-Id: I4273a4ddc00d24f561cce6a21b5237d4dfc56a92
2015-10-27 14:42:52 +02:00
30cdd16cbf Initial work on a "Vortex" transition
The actual transition is not yet at all like the one in the competing
product. But some basic ideas are in place.

Change-Id: Ie17a4fe03ae93abe51a2f1f760f417ee4b193e2c
2015-10-27 14:39:48 +02:00
191cbcc173 Drop some 'using', the std:: is not that ugly
Change-Id: If26ae80278dc55d5bf9fa644763e653c69415597
2015-10-26 11:12:34 +02:00
c59d726976 Use std::shared_ptr instead of boost
Change-Id: Id1b48f190831bbd4cc75d0d9e315e5b2b491d595
2015-10-26 11:09:36 +02:00
25e777f92f Simplify ifdefs
Change-Id: I5c3835f6fdc215e5d9dc1b8146c12e0d1a57da7c
2015-10-26 10:45:47 +02:00
42e2b43715 Use same order in this switch, too, as above
Change-Id: Icbe775e59d66efbb994a73c00024f9f7750f9ef0
2015-10-22 16:01:25 +03:00
e6cf271f13 Add a bit of explanatory comment
Also, sort the cases in the switch in numeric order for clarity.

Change-Id: Ic32da29a78b3aeedf22ee5f646a0975e4cbcb9cc
2015-10-22 15:21:11 +03:00
9bfe1d13c0 No, it isn't
Change-Id: I0236ff718ec9c3ee8d5845a044d65c927a896879
2015-10-21 11:33:53 +03:00
7e5bada554 slideshow: remove unecessary boost/bind includes
All of the remaining includes of boost/bind.hpp may be removed from
slideshow, as last remaining uses of boost::bind have been removed from
the module. There should be no side effects due to this change.

Change-Id: I4e1855545fad69d09e594d0be139c09aad561b2d
Reviewed-on: https://gerrit.libreoffice.org/19395
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-10-19 06:52:58 +00:00
90d82f73b8 loplugin:unreffun
Change-Id: If9ca3e2d88d1b0dee57531ed954ba4895fb37fe3
2015-10-15 08:48:45 +02:00
39c7826c81 tdf#93243 slideshow: boost::bind -> C++11 lambdas
Replace boost::bind with C++11 lambdas. In addition, replace the use of
FuncT::result_type in ListenerOperations::notifyAllListeners with a less
type specific means of determining the return type of the function to be
applied in order to allow for the use of C++11 lambdas.

Change-Id: I1035be976e542d8b5bbd451c473a896d91ed66ca
Reviewed-on: https://gerrit.libreoffice.org/19314
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2015-10-15 06:23:24 +00:00
4038b27a0b tdf#93243 slideshow: boost::bind -> C++11 lambdas
Replace boost::bind with C++11 lambdas

Change-Id: I37e769c88d997eaecf46c07e510cef6a30fbce8e
Reviewed-on: https://gerrit.libreoffice.org/19334
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-10-13 08:05:18 +00:00
ed7361ef0b cppcheck:variableScope
Change-Id: I7cbd5a9e9bb5417f754d4e2445df309140fd40af
Reviewed-on: https://gerrit.libreoffice.org/19329
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-10-13 06:22:33 +00:00