Efficiency fix for Qt TAS history view. Only redraw if it is visible in tabbed widget.
This commit is contained in:
parent
52792378c0
commit
199a3d8d72
|
@ -1360,11 +1360,19 @@ void TasEditorWindow::updateCheckedItems(void)
|
||||||
showToolTipsAct->setChecked( taseditorConfig.tooltipsEnabled );
|
showToolTipsAct->setChecked( taseditorConfig.tooltipsEnabled );
|
||||||
}
|
}
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
void TasEditorWindow::updateHistoryItems(void)
|
bool TasEditorWindow::updateHistoryItems(void)
|
||||||
{
|
{
|
||||||
int i, cursorPos;
|
int i, cursorPos;
|
||||||
QTreeWidgetItem *item;
|
QTreeWidgetItem *item;
|
||||||
const char *txt;
|
const char *txt;
|
||||||
|
bool isVisible;
|
||||||
|
|
||||||
|
isVisible = histTree->isVisible();
|
||||||
|
|
||||||
|
if ( !isVisible )
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
cursorPos = history.getCursorPos();
|
cursorPos = history.getCursorPos();
|
||||||
|
|
||||||
|
@ -1408,6 +1416,8 @@ void TasEditorWindow::updateHistoryItems(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
histTree->viewport()->update();
|
histTree->viewport()->update();
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
QPoint TasEditorWindow::getPreviewPopupCoordinates(void)
|
QPoint TasEditorWindow::getPreviewPopupCoordinates(void)
|
||||||
|
|
|
@ -387,6 +387,7 @@ class TasEditorWindow : public QDialog
|
||||||
bool handleColumnSetUsingPattern(void);
|
bool handleColumnSetUsingPattern(void);
|
||||||
bool handleInputColumnSet(int joy, int button);
|
bool handleInputColumnSet(int joy, int button);
|
||||||
bool handleInputColumnSetUsingPattern(int joy, int button);
|
bool handleInputColumnSetUsingPattern(int joy, int button);
|
||||||
|
bool updateHistoryItems(void);
|
||||||
|
|
||||||
QPoint getPreviewPopupCoordinates(void);
|
QPoint getPreviewPopupCoordinates(void);
|
||||||
|
|
||||||
|
@ -494,11 +495,11 @@ class TasEditorWindow : public QDialog
|
||||||
void saveRecentProjectMenu(void);
|
void saveRecentProjectMenu(void);
|
||||||
void addRecentProject(const char *prog);
|
void addRecentProject(const char *prog);
|
||||||
|
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void closeWindow(void);
|
void closeWindow(void);
|
||||||
void frameUpdate(void);
|
void frameUpdate(void);
|
||||||
void updateCheckedItems(void);
|
void updateCheckedItems(void);
|
||||||
void updateHistoryItems(void);
|
|
||||||
void updateRecordStatus(void);
|
void updateRecordStatus(void);
|
||||||
private slots:
|
private slots:
|
||||||
void openProject(void);
|
void openProject(void);
|
||||||
|
|
|
@ -170,8 +170,8 @@ void HISTORY::update()
|
||||||
|
|
||||||
if ( updateScheduled )
|
if ( updateScheduled )
|
||||||
{
|
{
|
||||||
redrawList();
|
|
||||||
updateScheduled = false;
|
updateScheduled = false;
|
||||||
|
redrawList();
|
||||||
}
|
}
|
||||||
//if (oldShowUndoHint != showUndoHint)
|
//if (oldShowUndoHint != showUndoHint)
|
||||||
// pianoRoll.redrawRow(undoHintPos);
|
// pianoRoll.redrawRow(undoHintPos);
|
||||||
|
@ -1207,7 +1207,10 @@ void HISTORY::updateList(void)
|
||||||
|
|
||||||
if (currLVItemCount != historyTotalItems)
|
if (currLVItemCount != historyTotalItems)
|
||||||
{
|
{
|
||||||
tasWin->updateHistoryItems();
|
if ( tasWin->updateHistoryItems() == false )
|
||||||
|
{
|
||||||
|
updateScheduled = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1219,7 +1222,10 @@ void HISTORY::redrawList(void)
|
||||||
updateScheduled = true;
|
updateScheduled = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
tasWin->updateHistoryItems();
|
if ( tasWin->updateHistoryItems() == false )
|
||||||
|
{
|
||||||
|
updateScheduled = true;
|
||||||
|
}
|
||||||
//ListView_SetItemState(hwndHistoryList, historyCursorPos, LVIS_FOCUSED|LVIS_SELECTED, LVIS_FOCUSED|LVIS_SELECTED);
|
//ListView_SetItemState(hwndHistoryList, historyCursorPos, LVIS_FOCUSED|LVIS_SELECTED, LVIS_FOCUSED|LVIS_SELECTED);
|
||||||
//ListView_EnsureVisible(hwndHistoryList, historyCursorPos, FALSE);
|
//ListView_EnsureVisible(hwndHistoryList, historyCursorPos, FALSE);
|
||||||
//InvalidateRect(hwndHistoryList, 0, FALSE);
|
//InvalidateRect(hwndHistoryList, 0, FALSE);
|
||||||
|
|
Loading…
Reference in New Issue