README improved
This commit is contained in:
parent
607cb1d837
commit
89695a82d5
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,7 +1,9 @@
|
|||||||
Makefile
|
Makefile
|
||||||
|
.qmake.stash
|
||||||
obj
|
obj
|
||||||
moc
|
moc
|
||||||
rcc
|
rcc
|
||||||
lib
|
lib
|
||||||
bin
|
bin
|
||||||
qvg
|
qvg
|
||||||
|
*.swp
|
||||||
|
18
README.md
18
README.md
@ -2,4 +2,20 @@ QSkinny
|
|||||||
-------
|
-------
|
||||||
|
|
||||||
The (Q)Skinny library contains a set of lightweight Qt Quick Controls.
|
The (Q)Skinny library contains a set of lightweight Qt Quick Controls.
|
||||||
It is implemented to 100% in C++, and can be used from C++ and/or QML application code.
|
|
||||||
|
It is implemented to be 100% usable in C++, but can be used from C++ and/or QML
|
||||||
|
application code.
|
||||||
|
|
||||||
|
Doing the implementation in C++ allows to make use of the "scene graph"
|
||||||
|
classes. Building controls from scene graph nodes allows for a lighter implementation
|
||||||
|
than found with stacking "heavier" objects like QObject or QQuickItem.
|
||||||
|
|
||||||
|
Being "skinny" also means a design that separates concerns between
|
||||||
|
the API and logic of the controls themselves, the styling of these controls,
|
||||||
|
and the delegated rendering of the controls to the screen.
|
||||||
|
|
||||||
|
The current selection of implemented controls is driven by the needs of specific
|
||||||
|
projects and therefore may feel a bit random. Conceptually, though, any type of
|
||||||
|
control fits into QSkinny, as long as it is usable from C++ (as opposed to only
|
||||||
|
QML).
|
||||||
|
|
||||||
|
@ -172,11 +172,6 @@ QSGNode* QskImage::updatePaintNode( QSGNode* oldNode, UpdatePaintNodeData* data
|
|||||||
if ( !isVisible() )
|
if ( !isVisible() )
|
||||||
{
|
{
|
||||||
m_data->dirtyUpdate = true;
|
m_data->dirtyUpdate = true;
|
||||||
|
|
||||||
#if 0
|
|
||||||
delete oldNode;
|
|
||||||
oldNode = nullptr;
|
|
||||||
#endif
|
|
||||||
return oldNode;
|
return oldNode;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -205,27 +205,7 @@ void QskLayout::adjustItemAt( int index )
|
|||||||
void QskLayout::updateLayout()
|
void QskLayout::updateLayout()
|
||||||
{
|
{
|
||||||
if ( m_data->isActive )
|
if ( m_data->isActive )
|
||||||
{
|
|
||||||
#if 0
|
|
||||||
// the list of items to be polished is unordered,
|
|
||||||
// while setting geometries should always be done top down
|
|
||||||
// to avoid unnecessary ( potentially heavy ) operations
|
|
||||||
|
|
||||||
QQuickItem* item = this;
|
|
||||||
|
|
||||||
while ( QQuickItem* item = item->parentItem() )
|
|
||||||
{
|
|
||||||
if ( parent->isPolishScheduled() )
|
|
||||||
{
|
|
||||||
// putting parent at the end of the list
|
|
||||||
...
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
engine().setGeometries( alignedLayoutRect( layoutRect() ) );
|
engine().setGeometries( alignedLayoutRect( layoutRect() ) );
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QRectF QskLayout::alignedLayoutRect( const QRectF& rect ) const
|
QRectF QskLayout::alignedLayoutRect( const QRectF& rect ) const
|
||||||
|
Loading…
x
Reference in New Issue
Block a user