MCPcopy Create free account
hub / github.com/KDE/kdiff3 / slotUpdateAvailabilities

Method slotUpdateAvailabilities

src/pdiff.cpp:1920–1984  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1918}
1919
1920void KDiff3App::slotUpdateAvailabilities()
1921{
1922 assert(m_pDiffTextWindow2 != nullptr && m_pDiffTextWindow1 != nullptr && m_pDiffTextWindow3 != nullptr);
1923
1924 bool bTextDataAvailable = (m_sd1->hasData() || m_sd2->hasData() || m_sd3->hasData());
1925
1926 if(dirShowBoth->isChecked())
1927 {
1928 m_pDirectoryMergeDock->setVisible(m_bDirCompare);
1929 m_pDirectoryMergeInfoDock->setVisible(m_bDirCompare);
1930
1931 if(!m_pMainWidget->isVisible() &&
1932 bTextDataAvailable && !m_pDirectoryMergeWindow->isScanning())
1933 m_pMainWidget->show();
1934 }
1935
1936 bool bDiffWindowVisible = m_pMainWidget->isVisible();
1937 bool bMergeEditorVisible = m_pMergeWindowFrame->isVisible();
1938
1939 m_pDirectoryMergeWindow->updateAvailabilities(bMergeEditorVisible, m_bDirCompare, bDiffWindowVisible, chooseA, chooseB, chooseC);
1940
1941 dirShowBoth->setEnabled(m_bDirCompare);
1942 dirViewToggle->setEnabled(
1943 m_bDirCompare &&
1944 ((!m_pDirectoryMergeDock->isVisible() && m_pMainWidget->isVisible()) ||
1945 (m_pDirectoryMergeDock->isVisible() && !m_pMainWidget->isVisible() && bTextDataAvailable)));
1946
1947 showWhiteSpaceCharacters->setEnabled(bDiffWindowVisible);
1948 autoAdvance->setEnabled(bMergeEditorVisible);
1949 mAutoSolve->setEnabled(bMergeEditorVisible && m_bTripleDiff);
1950 mUnsolve->setEnabled(bMergeEditorVisible);
1951
1952 mMergeHistory->setEnabled(bMergeEditorVisible);
1953 mergeRegExp->setEnabled(bMergeEditorVisible);
1954 showWindowA->setEnabled(bDiffWindowVisible && (m_pDiffTextWindow2->isVisible() || m_pDiffTextWindow3->isVisible()));
1955 showWindowB->setEnabled(bDiffWindowVisible && (m_pDiffTextWindow1->isVisible() || m_pDiffTextWindow3->isVisible()));
1956 showWindowC->setEnabled(bDiffWindowVisible && m_bTripleDiff && (m_pDiffTextWindow1->isVisible() || m_pDiffTextWindow2->isVisible()));
1957 editFind->setEnabled(bDiffWindowVisible);
1958 editFindNext->setEnabled(bDiffWindowVisible);
1959 m_pFindDialog->m_pSearchInC->setEnabled(m_bTripleDiff);
1960 m_pFindDialog->m_pSearchInOutput->setEnabled(bMergeEditorVisible);
1961 stdMenus->updateAvailabilities();
1962
1963 mGoTop->setEnabled(bDiffWindowVisible && m_pMergeResultWindow->isDeltaAboveCurrent());
1964 mGoBottom->setEnabled(bDiffWindowVisible && m_pMergeResultWindow->isDeltaBelowCurrent());
1965 mGoCurrent->setEnabled(bDiffWindowVisible);
1966 mGoPrevUnsolvedConflict->setEnabled(bMergeEditorVisible && m_pMergeResultWindow->isUnsolvedConflictAboveCurrent());
1967 mGoNextUnsolvedConflict->setEnabled(bMergeEditorVisible && m_pMergeResultWindow->isUnsolvedConflictBelowCurrent());
1968 mGoPrevConflict->setEnabled(bDiffWindowVisible && bMergeEditorVisible && m_pMergeResultWindow->isConflictAboveCurrent());
1969 mGoNextConflict->setEnabled(bDiffWindowVisible && bMergeEditorVisible && m_pMergeResultWindow->isConflictBelowCurrent());
1970 mGoPrevDelta->setEnabled(bDiffWindowVisible && m_pMergeResultWindow->isDeltaAboveCurrent());
1971 mGoNextDelta->setEnabled(bDiffWindowVisible && m_pMergeResultWindow->isDeltaBelowCurrent());
1972
1973 overviewModeNormal->setEnabled(m_bTripleDiff && bDiffWindowVisible);
1974 overviewModeAB->setEnabled(m_bTripleDiff && bDiffWindowVisible);
1975 overviewModeAC->setEnabled(m_bTripleDiff && bDiffWindowVisible);
1976 overviewModeBC->setEnabled(m_bTripleDiff && bDiffWindowVisible);
1977 e_OverviewMode overviewMode = m_pOverview->getOverviewMode();

Callers

nothing calls this directly

Calls 12

hasDataMethod · 0.80
isScanningMethod · 0.80
showMethod · 0.80
isDeltaAboveCurrentMethod · 0.80
isDeltaBelowCurrentMethod · 0.80
setVisibleMethod · 0.45
updateAvailabilitiesMethod · 0.45
getOverviewModeMethod · 0.45

Tested by

no test coverage detected