Thomas Geymayer
9c421d55a9
Canvas: support for custom events and event dispatching.
2014-05-19 00:17:23 +02:00
Thomas Geymayer
1af6cbc1aa
cppbind.Ghost: more member overloads.
2014-05-18 23:55:43 +02:00
Thomas Geymayer
a9e7af6e6e
Enable dynamic linking on Mac for Boost.Test
2014-05-18 17:47:03 +02:00
Thomas Geymayer
c967fbc0a6
cppbind.Ghost: clean up a bit
2014-05-18 17:43:30 +02:00
Thomas Geymayer
6929ba75c0
cppbind: convert maps from nasal.
2014-05-18 13:34:06 +02:00
Thomas Geymayer
289777bd99
cppbind.Ghost: register _get called on retrieving unset member.
...
Allow registering a callback on ghosts called upon retrieving
an unset member.
2014-05-18 13:34:06 +02:00
Thomas Geymayer
7535dfd2d0
cppbind: from_nasal/to_nasal for SGWeakReferenced based objects
2014-05-10 10:49:11 +02:00
Thomas Geymayer
23279b4d0a
Canvas: move window from flightgear.
2014-05-09 16:17:40 +02:00
Thomas Geymayer
d34d3ecfb1
SGWeakReferenced: fix for clang.
2014-05-09 11:52:42 +02:00
Thomas Geymayer
55f18574aa
Fix for CMake 2.6
...
No named arguments for add_test in CMake 2.6.
2014-05-08 11:17:28 +02:00
Thomas Geymayer
02ac1a43c1
Add smart pointer tests (finally using Boost.Test)
2014-05-08 02:17:24 +02:00
Thomas Geymayer
b2c3a90adf
Fix use count for deleted, reference counted objects.
...
Remove inconsitency of returning 0 or ~0. If the object
has been deleted there are no more references, so always
return 0.
2014-05-08 01:43:41 +02:00
Thomas Geymayer
9975c751a7
Add support for using SGWeakPtr with virtual base classes.
...
- Add SGVirtualWeakReferenced to be used as base class
for reference counted objects supporting weak references
and virtual base classes.
- Modify SGWeakPtr to copy with SGVirtualWeakReferenced
objects.
2014-05-08 00:27:00 +02:00
Thomas Geymayer
efbec8b367
Canvas: base Elements/Canvas on SGWeakReferenced.
2014-05-06 18:10:42 +02:00
Thomas Geymayer
9642f6d946
cppbind: add naContext/naRef overload to Ghost::_set
2014-05-06 18:10:35 +02:00
Thomas Geymayer
247aa49849
SGSharedPtr/SGWeakPtr: add some methods/operators
...
- allow placing SGWeakPtr in sorted STL containers (eg. requiring
operator<)
- add reset() like for boost::shared_ptr/boost::weak_ptr
- add helper to extract pointer from SGWeakPtr
2014-05-06 18:10:14 +02:00
Thomas Geymayer
edaae885ee
cppbind: small logging/warning updates.
2014-05-05 15:06:15 +02:00
Thomas Geymayer
b101f64cd8
cppbind.Ghost: register _set called on setting new properties.
2014-05-05 15:06:09 +02:00
Thomas Geymayer
f75d1cbcb1
cppbind: disable special handling of 'parents' for ghost.
2014-05-05 14:48:29 +02:00
Thomas Geymayer
ac2e80dc07
Nasal: allow ghost as 'me' for 'call'
2014-05-05 14:47:10 +02:00
Peter Sadrozinski
85b17ae8d4
fix for sgGetBuckets. Northern most buckets in the bounding box were left out
2014-04-16 10:18:13 -04:00
Thomas Geymayer
77955e5c3c
math/nasal: Add more SGRect members and nasal helper.
2014-04-15 10:07:01 +02:00
Peter Sadrozinski
19481983e5
fix windows build
2014-04-06 12:14:44 -04:00
Peter Sadrozinski
5b2b420c48
- secondary tc and vertex attribs in .btg file
...
- decrease debug when writing btg files
- deprecate some set_xxx apis
2014-04-05 21:48:38 +02:00
James Turner
15d3c12139
Fixed for FreeBSD
...
(From Gerald Laplanche)
2014-04-03 13:42:11 +01:00
Thomas Geymayer
338a748823
Canvas::Path: also restore glBlendFunc.
2014-04-01 12:35:43 +02:00
Thomas Geymayer
8c45796dc8
Canvas::Path: reduce number of OpenGL state changes.
...
- Do not enable any multisampling as for FBOs it is not
supported anyhow.
- Just restore GL_BLEND and GL_STENCIL_TEST manually
=> Getting rid of the huge load of glPushAttrib/glPopAttrib
gets us a huge performance boost, especially for drivers
with slow state stack implementations.
2014-04-01 12:03:53 +02:00
Thomas Geymayer
a160e176da
cppbind: fix testing for naRef identity.
2014-03-31 14:21:21 +02:00
Thomas Geymayer
d332da0605
Canvas: do not write bounding box to property tree.
...
- Prevent writing to property tree in wrong thread.
- Add Element::getBoundingBox and
Element::getTightBoundingBox as uniform way to
retrieve bounding boxes of all canvas elements.
- Update path bounding boxe in update traversal.
2014-03-31 13:28:03 +02:00
Thomas Geymayer
6ea55c6851
nasal::Ghost: remove bogus warning.
2014-03-27 12:09:05 +01:00
Thomas Geymayer
10ee7a901f
ShivaVG: disable paint textures ( Fixes #1414 )
...
Currently there is no need for paint textures so just
disable them to prevent releasing OpenGL resources
from the wrong context/thread.
2014-03-27 11:20:38 +01:00
Thomas Geymayer
db8b60ec49
Revert "CanvasGroup: return empty bounding box without children."
...
Returning somehow valid data in case it is used unchecked was
probably not a good idea. Better fix the code using it^^
This fixes #1421 .
This reverts commit 3525fff8d0
.
2014-03-23 17:27:30 +01:00
Thomas Geymayer
09d47e7f55
cppbind: fix problem with function call without arguments.
2014-03-22 13:23:21 +01:00
Thomas Geymayer
13a3ea3503
cppbind: allow calling methods with 'me' object from C++.
2014-03-22 12:41:47 +01:00
Thomas Geymayer
ff53792e4f
CanvasImage: rename 'file' to 'src'.
2014-03-20 11:42:02 +01:00
Thomas Geymayer
fd51518d92
CanvasImage: improve fetching from http and add mime detection.
2014-03-20 01:44:31 +01:00
Thomas Geymayer
01a43b49a5
Canvas: Respect clipping while event handling.
2014-03-19 18:21:25 +01:00
Thomas Geymayer
3525fff8d0
CanvasGroup: return empty bounding box without children.
...
Return an invalid bounding box can lead to problems
if used unchecked. Just returning an empty bounding
box (size 0x0 and position at the origin of the
element) is much safer.
2014-03-19 16:31:17 +01:00
Thomas Geymayer
6c75e2fe3c
CanvasImage: support for http protocol.
...
- Download and display images.
2014-03-18 18:33:44 +01:00
Mathias Froehlich
b322864ef4
Fix detection of airports in the stg loader.
2014-03-16 16:08:31 +01:00
Thomas Geymayer
f28e3fc9bb
Canvas: fix position for drag events and multiclick handling.
...
- Calculate local/client position for every drag event
instead of just reporting the position of the initial
mousedown event.
- Only pressing the same button multiple times increases
the mouse clickcount.
2014-03-15 14:53:08 +01:00
Thomas Geymayer
80e77b8372
Canvas: set button for drag events.
2014-03-15 00:40:48 +01:00
James Turner
c925b7b601
Don't leak cube-map textures
...
- use observer_ptr so cube-map textures are released without the
builder holing a ref.
2014-03-13 22:16:58 +00:00
James Turner
966789de90
Fix leak of object-mask textures
2014-03-13 22:16:00 +00:00
Torsten Dreyer
d44a3117d9
Partial fix of #1408 , add missing throw
2014-03-12 21:10:14 +01:00
Thomas Geymayer
c851c449da
cppbind: Do not derive from SGReferenced if there is no need
2014-03-12 17:40:21 +01:00
Thomas Geymayer
b2d9385f46
cppbind: fix possible usage of expired object from Nasal
2014-03-11 15:40:26 +01:00
James Turner
f40efe66fa
Simplify copyProperties
...
- with initial-state save/restore gone, all uses of
copyProperties are now simple. For selective copying, use
copyPropertiesWithAttribute.
2014-03-11 08:32:33 +00:00
Thomas Geymayer
5560479665
SGPropertyNode: do not keep list of deleted children.
...
Get rid of the possibilty to keep delted children. This was not
used actively, required unnecessary memory for each property node
and lead to subtile bugs, as creating a node after a node with
the same path has been deleted resulted in getting the old node
back instead of a cleanly initialized one.
2014-03-06 00:39:23 +01:00
James Turner
4ea8e4774e
Remove unused cube-map from 2D clouds.
2014-03-05 14:42:29 +00:00