Changeset 8576:315f42945e80 in orange


Ignore:
Timestamp:
08/02/11 15:47:15 (3 years ago)
Author:
Noughmad <Noughmad@…>
Branch:
default
Convert:
998a328abc61192c5d2066727b5a9d309bb567dd
Message:

Only update the properties that have actually changed in UnconnectedLinesCurve

File:
1 edited

Legend:

Unmodified
Added
Removed
  • source/orangeplot/unconnectedlinescurve.cpp

    r8570 r8576  
    1515void UnconnectedLinesCurve::update_properties() 
    1616{ 
    17     const Data d = data(); 
    18     const int n = d.size()/2; 
    19     const int m = m_items.size(); 
    20     if (m > n) 
    21     { 
    22         for (int i = n; i < m; ++i) 
     17    if (needs_update() & (UpdateNumberOfItems)) 
     18    {    
     19        const int n = data().size()/2; 
     20        const int m = m_items.size(); 
     21        if (m > n) 
    2322        { 
    24             delete m_items.takeLast(); 
     23            for (int i = n; i < m; ++i) 
     24            { 
     25                delete m_items.takeLast(); 
     26            } 
    2527        } 
     28        else if (m < n) 
     29        { 
     30            for (int i = m; i < n; ++i) 
     31            { 
     32                m_items << new QGraphicsLineItem(this); 
     33            } 
     34        } 
     35        set_updated(UpdateNumberOfItems); 
     36        Q_ASSERT(m_items.size() == n); 
    2637    } 
    27     else if (m < n) 
    28     { 
    29         for (int i = m; i < n; ++i) 
    30         { 
    31             m_items << new QGraphicsLineItem(this); 
    32         } 
    33     } 
    34     Q_ASSERT(m_items.size() == n); 
    3538    if (needs_update() & (UpdatePosition | UpdatePen) ) 
    3639    { 
     40        const Data d = data(); 
     41        const int n = d.size()/2; 
    3742        QLineF line; 
    3843        QPen p = pen(); 
Note: See TracChangeset for help on using the changeset viewer.