Coder Social home page Coder Social logo

kdtoolbox's People

Contributors

amantia avatar cogilvie avatar cpi47 avatar dangelog avatar dantti avatar dfaure-kdab avatar frankosterfeld avatar iamsergio avatar jcelerier avatar jesperkdab avatar lorendb avatar marc-kdab avatar mgiroday avatar milianw avatar narnaud avatar nickdademo avatar pre-commit-ci[bot] avatar sengels avatar waqar144 avatar winterz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kdtoolbox's Issues

SortProxyModel doesn't forward dataChanged signals

source data changes, in particular for roles other than the sort role, are not forwarded (SortProxyModel::handleDataChanged), thus having a SortProxyModel in the stack makes you "lose" updates.

In a customer project using SPM, I just implemented it using linear search to do the mapping:

int minRow = std::numeric_limits<int>::max();
int maxRow = -1;

for (int sourceRow = topLeft.row(); sourceRow <= bottomRight.row(); ++sourceRow) {
    auto it = std::find(m_rowMap.cbegin(), m_rowMap.cend(), sourceRow);
    Q_ASSERT(it != m_rowMap.cend());
    const auto proxyRow = static_cast<int>(std::distance(m_rowMap.cbegin(), it));
    minRow = std::min(minRow, proxyRow);
    maxRow = std::max(maxRow, proxyRow);
}

Q_ASSERT(minRow <= maxRow);

emit dataChanged(index(minRow, 0), index(maxRow, 0), roles);

That does the job for my use case, but generic solution probably should use something more efficient.

DepthFirstIterator copy constructor incorrect?

DepthFirstIterator copy constructor is not copying value of m_atEnd. That probably is not intentional, right? It leads to incorrect behavior (e.g. omitting the very last node when iterating) if using copied iterator.

SortProxyModel doesn't update if it starts empty

If the source model of SortProxyModel starts out empty, inserts don't get inserted into the rowMap. This is because sortproxymodel.cpp line 355 checks if the curIt is the end iterator of m_rowMap, but that is always the case if the list is empty.

TabWindow crashes

Start example TabWindow. Take Tab1 to separate window. Take Tab2 and move it to the Tab1 to attach. App crashes

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.