| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
qmake/generators/symbian/symmake.cpp
src/gui/image/qimage.cpp
src/openvg/qwindowsurface_vgegl.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In the case where a polygon or polyline that contains consequtive equal
points, we end up calculating an invalid normal vector for the joins.
This fix skips past duplicate consequtive points.
Task-number: QTBUG-9548
Reviewed-by: Kim
|
| |
| |
| |
| |
| |
| |
| | |
The patterns all got the same cache key (e.g. 1), which caused the
patterns to be uploaded as a texture every single time they were used.
Reviewed-by: Kim
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is not valid in C++0x:
char str[] = { 128, 0 };
Because 128 cannot be represented in a char. The same applies to
conversion from int to qreal: it's a narrowing conversion, with
possible data loss.
More info: http://www2.research.att.com/~bs/C++0xFAQ.html#narrowing
Reviewed-by: Trust Me
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: (112 commits)
Verbose unexpected errors.
One url for an *unqualilfied* import is not special.
Fix test failures
Optimization: Don't unnecessarily run VMEStack element constructors
Optimization: Reduce unnecessary QObject allocations
Reset QDeclarativeDeclarativeData::outerContext when the context is removed
Simplify QDeclarativeComponent::creationContext() logic
Optimization: Use id notifier for QtScript bindings
Optimization: Combine QDeclarativeDeclarativeData and QObject allocations
Fixes for the module import
Fix documentation
add alan's tic-tac-toe AI
Remove test in .pro file also
Remove unneeded #include and add needed header to .pri
Add easing changes to QmlChanges.txt
Update more animation on property value source docs.
Doc fixes.
QmlChanges.txt cleanup.
Remove WorkerListModel and integrate its functionality into ListModel.
Split post alpha API changes into a separate section.
...
|
| |\ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: (100 commits)
Remove test in .pro file also
Remove unneeded #include and add needed header to .pri
Add easing changes to QmlChanges.txt
Update more animation on property value source docs.
Doc fixes.
QmlChanges.txt cleanup.
Remove WorkerListModel and integrate its functionality into ListModel.
Split post alpha API changes into a separate section.
Optimize drawPixmapFragments for the GL2 paint engine.
Optimize QRegion::intersects(QRect).
Compile with user defined Qt namespace
Fix regression from previous commit
Import "content" with as qualifier to support network without qmldir
Small fixes to photoviewer demo
Little more doc on QabstractItemModel and QML.
Fix benchmark.
Add basic QUrl benchmarks.
Add busy indicator to photoviewer demo
Set maximumExtents correctly for highlightRangeMode: StrictlyEnforceRange
fix installation of imports libraries
...
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
In this case, we don't need QGL2PEXVertexArray to keep track of min and
max information.
Reviewed-by: Samuel
|
| | | |
| | | |
| | | |
| | | | |
Reviewed-by: Daniel Pope
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The simplified vertex shader for complex geometry is written
specifically for solid brushes and needs to be disabled when the
brush is anything else. This work-around can be removed later when
QTBUG-9069 is handled, since that removes the extra requirements on
the setPosition() shader.
Reviewed-by: tom
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When drawing text, the vertex count will most likely be so high that
using a uniform-based, simpler vertex shader is faster. We implement
the ability to inform the shader manager that the geometry is considered
complex, so that it can choose the simpler vertex shader in these cases.
Task-number: QT-2887
Reviewed-by: tom
|
|\ \
| |/
| |
| |
| | |
Conflicts:
src/gui/styles/qs60style_s60.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Apparently the driver does some optimization which causes it to behave
erratically when stencil testing is enabled. Multiplying the return
value from the texture lookup by 1.0 disables the optimization.
Task-number: QTBUG-8753
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Without clipping, the stroker could consume a huge amount of
memory when scaling up cosmetic, dashed strokes. I also made
QDashStroker clip more aggressively.
Task-number: QTBUG-7832
Reviewed-by: Samuel
|
| |
| |
| |
| | |
Reviewed-by: Samuel
|
| |
| |
| |
| | |
Reviewed-by: Tom Cooksey
|
| |
| |
| |
| | |
Reviewed-by: Kim
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
configure.exe
examples/multimedia/audioinput/audioinput.cpp
src/corelib/io/qfsfileengine.cpp
src/gui/egl/qegl_wince.cpp
src/gui/egl/qeglproperties.cpp
src/gui/egl/qeglproperties_p.h
src/gui/embedded/directfb.pri
src/gui/kernel/qapplication_win.cpp
src/gui/painting/qdrawutil.cpp
src/opengl/qgl_p.h
src/sql/drivers/odbc/qsql_odbc.cpp
src/sql/drivers/odbc/qsql_odbc.h
tests/auto/auto.pro
tests/auto/qgl/tst_qgl.cpp
translations/assistant_adp_ru.ts
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The global destructor for the clean up hooks might be called before the
global destructor for QPixmap objects. We shouldn't leave pixmaps
around that is destroyed after the QApplication destructor is called.
Task-number: QTBUG-8681
Reviewed-by: Tom Cooksey
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Removing this comment, as a decision was made. QStaticText is an
optimization class. Forcing a fallback for all fonts over a certain
size would be to intrusive. People should get to decide for themselves
whether to cache the text or not when using QStaticText. They can always
fall back to drawText() themselves.
Reviewed-by: TrustMe
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QPainter has now gotten a drawPixmapFragments() function together
with a Fragment class that describes how each pixmap fragment is
supposed to be drawn.
Reviewed-by: Gunnar
Reviewed-by: Samuel
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
configure.exe
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
src/opengl/qgl.cpp
|
| |\ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-qml: (81 commits)
Revert "Speed up QmlGraphicsItem::setParentItem."
Fix dynamic example
More strict type checking of ListElement properties.
Fix tst_QmlGraphicsLoader::networkRequestUrl autotest.
Fix tst_qmlgraphicstextedit::delegateLoading autotest
Delete the QmlImageRequestHandler in the correct thread.
Fix "AnimatedImage ignores Anchors setting"
Remove unused function that breaks build on AIX.
doc
Add support for startDragDistance in qmlviewer.
Add pixmap benchmarks and make cached rounded rect the same as Rectangle.
Make QmlDom API internal
Compile fix with namepaces
Doc: reformulate why we build a button
Removed incorrect Q_UNUSED() macro from QmlPropertyAnimation::transition
Doc: onExited, onEntered only work when button pressed or hoverEnabled
Ensure visibleIndex and currentIndex are updated on itemsMoved().
QmlView API review. See QmlChanges.txt for details.
Fix example after introduction of RotationAnimation.
Animation doc fix.
...
|
| | |\ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Conflicts:
mkspecs/linux-g++-x11egl/qplatformdefs.h
src/declarative/qml/qmldom.h
src/declarative/util/qmlview.cpp
src/declarative/util/qmlview.h
tools/qdoc3/cppcodemarker.cpp
tools/qmldebugger/standalone/canvasframerate.cpp
tools/qmldebugger/standalone/engine.cpp
tools/qmldebugger/standalone/expressionquerywidget.cpp
tools/qmldebugger/standalone/expressionquerywidget.h
tools/qmldebugger/standalone/objectpropertiesview.cpp
tools/qmldebugger/standalone/objectpropertiesview.h
tools/qmldebugger/standalone/objecttree.cpp
tools/qmldebugger/standalone/qmldebugger.cpp
tools/qmldebugger/standalone/watchtable.cpp
tools/qmldebugger/standalone/watchtable.h
|
| | | | | |
|
| |\ \ \ \
| | | |/ /
| | |/| |
| | | | |
| | | | |
| | | | |
| | | | | |
Conflicts:
tools/assistant/tools/assistant/helpviewer_qtb.h
tools/assistant/tools/assistant/helpviewer_qwv.cpp
tools/assistant/tools/assistant/helpviewer_qwv.h
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Gcc warns if declaration and initialization order are different.
Reviewed-by: Samuel
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The code is disabled by default, but included for testing on different
platforms. Intuition implies that caching the index array in a VBO
should be a performance improvement, but so far our tests do not
confirm this.
Reviewed-by: Gunnar
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Only call glBindTexture() if the glyph cache texture is not already
bound. This can potentially give performance improvement of around 30%.
Reviewed-by: Gunnar
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
GL_RGB5 and GL_RGB8 don't exist on OpenGL/ES systems.
Reviewed-by: Julian de Bhal
|
| |\ \ \ \
| | | |/ /
| | |/| |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Conflicts:
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
tests/auto/qlineedit/tst_qlineedit.cpp
Merge branch 'master' of scm.dev.troll.no:qt/oslo-staging-2 into qstatictext-4.7
Conflicts:
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
tests/auto/qlineedit/tst_qlineedit.cpp
Merge branch 'master' of scm.dev.troll.no:qt/oslo-staging-2 into qstatictext-4.7
Conflicts:
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
tests/auto/qlineedit/tst_qlineedit.cpp
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
QStaticText was previously made private API to support inclusion in
Qt 4.6.x. This change turns it back into public API for Qt 4.7.0.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Changing the height here will make the coords out of sync with the '
buffer, causing broken drawing. I revert this change to prepare
QStaticText for integration, and will revisit it later on.
|
| | | | |
| | | | |
| | | | |
| | | | | |
This is a significant speed-up on some architectures and drivers.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We keep around a engine-global index array which we only grow when we
need to. This should hopefully speed up text drawing on some devices.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
glDrawElements needs to be handled properly, using triangle strips
rather than triangle lists, so the code has been removed for now.
The VBO caching did not gain us any particular performance. We rather
cache the client-side buffers for the same speed-up but with less
clean-up complexity.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Follow pattern from qpaintengine_opengl.cpp and listen for the
destroyed signal of the GL context. If the context that owns the VBOs
is deleted, then we delete the VBOs as well.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
A small hack to turn off the current matrix when drawing QStaticText,
since its coordinates are already transformed.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
If you draw the QStaticText object to a new QGLWidget, then we need to
recreate the VBOs (if the vertex arrays are cached.) It would be
possible to share this across contexts, which can be implemented later
as an extra optimization for switching between different target
devices.
|
| |\ \ \ \
| | | | | |
| | | | | |
| | | | | | |
qstatictext-4.6
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Don't recalculate the index array when the glyphs are simply moved.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Passing text through drawElements introduced a bug when text items
exceeded the range of GLubyte (seen in textedit demo.)
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
According to some design documents, drawElements() is likely to be
quicker on some devices, as the driver then does not have to create
the index array. To test the impact of this, we cache use drawElements
and cache the index array in QStaticText
|
| |\ \ \ \ \ |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
The GL2 paint engine was rewritten to use GL to transform glyphs when
copying them from the glyph cache instead of keeping a separate cache
for different transformations. Since the glyph positions in QStaticText
already include the transformation, we need to run the gl calls with
an identity matrix, otherwise the position of the glyphs will be
transformed twice. The output from drawText() and drawStaticText()
will for the same reason look different for the two different engines.
The option here is to detect the problem when drawing to the opengl2
engine, and then recalculating the glyph positions for the QStaticText.
This will of course create a big overhead when regularly switching
between different paint devices, but it might make sense to optimize
for one QStaticText per paint device. For the time being I haven't
done that, though, since that change would require a bigger hack, so
it warrants deeper consideration.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Turns QStaticText into private API in preparation for Qt 4.6.x. The
related functions in QPainter are marked as internal in the docs. There
are already internal functions in QPainter, so this seemed like a
reasonable solution. Since the functions require QStaticText they will
not be accessible to anyone who does not include private API.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
These belong to an OpenGL extension which is not in use.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
There's a big improvement to be seen in the OpenGL engine by caching
the vertex data for the QStaticText in VBOs. In order to have the
buffers properly disposed, I've implemented a userdata concept for
QStaticTextItem. By default, the optimizations will be turned off, and
can be turned on by using the useBackendOptimizations flag.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Optimization for drawStaticText()
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This function is the main performance hog when using QStaticText with
the OpenGL engine, so I've improved on it a little by removing the
conversion from (qreal,qreal) -> QPointF -> QGLPoint. Since the function
is called so often, it has an impact on drawStaticText().
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Some errors introduced by merges.
|