| 1782 | } |
| 1783 | |
| 1784 | void KDiff3App::slotWinFocusPrev() |
| 1785 | { |
| 1786 | QWidget* focus = qApp->focusWidget(); |
| 1787 | if(focus == m_pDirectoryMergeWindow && m_pDirectoryMergeWindow->isVisible() && !dirShowBoth->isChecked()) |
| 1788 | { |
| 1789 | slotDirViewToggle(); |
| 1790 | } |
| 1791 | |
| 1792 | std::list<QWidget*> visibleWidgetList; |
| 1793 | if(m_pDiffTextWindow1 && m_pDiffTextWindow1->isVisible()) visibleWidgetList.push_back(m_pDiffTextWindow1); |
| 1794 | if(m_pDiffTextWindow2 && m_pDiffTextWindow2->isVisible()) visibleWidgetList.push_back(m_pDiffTextWindow2); |
| 1795 | if(m_pDiffTextWindow3 && m_pDiffTextWindow3->isVisible()) visibleWidgetList.push_back(m_pDiffTextWindow3); |
| 1796 | if(m_pMergeResultWindow && m_pMergeResultWindow->isVisible()) visibleWidgetList.push_back(m_pMergeResultWindow); |
| 1797 | if(m_bDirCompare /* m_pDirectoryMergeWindow->isVisible() */) visibleWidgetList.push_back(m_pDirectoryMergeWindow); |
| 1798 | //if ( m_pDirectoryMergeInfo->isVisible() ) visibleWidgetList.push_back(m_pDirectoryMergeInfo->getInfoList()); |
| 1799 | if(visibleWidgetList.empty()) |
| 1800 | return; |
| 1801 | |
| 1802 | std::list<QWidget*>::iterator i = std::find(visibleWidgetList.begin(), visibleWidgetList.end(), focus); |
| 1803 | if(i == visibleWidgetList.begin()) |
| 1804 | i = visibleWidgetList.end(); |
| 1805 | --i; |
| 1806 | //i will never be |
| 1807 | if(*i == m_pDirectoryMergeWindow && !dirShowBoth->isChecked()) |
| 1808 | { |
| 1809 | slotDirViewToggle(); |
| 1810 | } |
| 1811 | (*i)->setFocus(); |
| 1812 | } |
| 1813 | |
| 1814 | void KDiff3App::slotWinToggleSplitterOrientation() |
| 1815 | { |