Mercurial > hg > easyhg
comparison src/mainwindow.cpp @ 514:306a62fe851e
Add "Close branch" menu option. Is currently available in some cases where it should not be, and using it exposes the fact that the chain of marked-closed changesets is not yet right in grapher.
| author | Chris Cannam | 
|---|---|
| date | Tue, 18 Oct 2011 16:50:05 +0100 | 
| parents | 459aa20d3eee | 
| children | 5c846f3c9244 | 
   comparison
  equal
  deleted
  inserted
  replaced
| 513:ddc7238fc3b0 | 514:306a62fe851e | 
|---|---|
| 324 } | 324 } | 
| 325 | 325 | 
| 326 void MainWindow::hgQueryHeadsActive() | 326 void MainWindow::hgQueryHeadsActive() | 
| 327 { | 327 { | 
| 328 QStringList params; | 328 QStringList params; | 
| 329 params << "heads" << "--active"; | 329 params << "heads"; | 
| 330 m_runner->requestAction(HgAction(ACT_QUERY_HEADS_ACTIVE, m_workFolderPath, params)); | 330 m_runner->requestAction(HgAction(ACT_QUERY_HEADS_ACTIVE, m_workFolderPath, params)); | 
| 331 } | 331 } | 
| 332 | 332 | 
| 333 void MainWindow::hgQueryHeads() | 333 void MainWindow::hgQueryHeads() | 
| 334 { | 334 { | 
| 539 if (parentBranch == "") parentBranch = "default"; | 539 if (parentBranch == "") parentBranch = "default"; | 
| 540 | 540 | 
| 541 QStringList params; | 541 QStringList params; | 
| 542 params << "branch" << parentBranch; | 542 params << "branch" << parentBranch; | 
| 543 m_runner->requestAction(HgAction(ACT_NEW_BRANCH, m_workFolderPath, params)); | 543 m_runner->requestAction(HgAction(ACT_NEW_BRANCH, m_workFolderPath, params)); | 
| 544 } | |
| 545 | |
| 546 void MainWindow::hgCloseBranch() | |
| 547 { | |
| 548 QStringList params; | |
| 549 | |
| 550 //!!! how to ensure this doesn't happen when uncommitted changes present? | |
| 551 | |
| 552 QString cf(tr("Close branch")); | |
| 553 QString comment; | |
| 554 | |
| 555 QString defaultWarning; | |
| 556 | |
| 557 QString branchText; | |
| 558 if (m_currentBranch == "" || m_currentBranch == "default") { | |
| 559 branchText = tr("the default branch"); | |
| 560 defaultWarning = tr("<p><b>Warning:</b> you are asking to close the default branch. This is not usually a good idea!</p>"); | |
| 561 } else { | |
| 562 branchText = tr("branch \"%1\"").arg(m_currentBranch); | |
| 563 } | |
| 564 | |
| 565 if (ConfirmCommentDialog::confirmAndGetLongComment | |
| 566 (this, | |
| 567 cf, | |
| 568 tr("<h3>%1</h3><p>%2%3").arg(cf) | |
| 569 .arg(tr("You are about to close %1.<p>This branch will be marked as closed, will be hidden from the history view, and will no longer accept commits.<p>Please enter your comment for the commit log:").arg(branchText)) | |
| 570 .arg(defaultWarning), | |
| 571 comment, | |
| 572 tr("C&lose branch"))) { | |
| 573 | |
| 574 params << "commit" << "--message" << comment | |
| 575 << "--user" << getUserInfo() << "--close-branch"; | |
| 576 | |
| 577 m_runner->requestAction(HgAction(ACT_CLOSE_BRANCH, m_workFolderPath, params)); | |
| 578 } | |
| 544 } | 579 } | 
| 545 | 580 | 
| 546 void MainWindow::hgTag(QString id) | 581 void MainWindow::hgTag(QString id) | 
| 547 { | 582 { | 
| 548 QStringList params; | 583 QStringList params; | 
| 2363 m_hgTabs->clearSelections(); | 2398 m_hgTabs->clearSelections(); | 
| 2364 m_justMerged = false; | 2399 m_justMerged = false; | 
| 2365 m_shouldHgStat = true; | 2400 m_shouldHgStat = true; | 
| 2366 break; | 2401 break; | 
| 2367 | 2402 | 
| 2403 case ACT_CLOSE_BRANCH: | |
| 2404 m_hgTabs->clearSelections(); | |
| 2405 m_justMerged = false; | |
| 2406 m_shouldHgStat = true; | |
| 2407 break; | |
| 2408 | |
| 2368 case ACT_REVERT: | 2409 case ACT_REVERT: | 
| 2369 hgMarkFilesResolved(m_lastRevertedFiles); | 2410 hgMarkFilesResolved(m_lastRevertedFiles); | 
| 2370 m_justMerged = false; | 2411 m_justMerged = false; | 
| 2371 break; | 2412 break; | 
| 2372 | 2413 | 
| 2618 connect(m_hgTabs, SIGNAL(mergeFrom(QString)), | 2659 connect(m_hgTabs, SIGNAL(mergeFrom(QString)), | 
| 2619 this, SLOT(hgMergeFrom(QString))); | 2660 this, SLOT(hgMergeFrom(QString))); | 
| 2620 | 2661 | 
| 2621 connect(m_hgTabs, SIGNAL(newBranch(QString)), | 2662 connect(m_hgTabs, SIGNAL(newBranch(QString)), | 
| 2622 this, SLOT(hgNewBranch())); | 2663 this, SLOT(hgNewBranch())); | 
| 2664 | |
| 2665 connect(m_hgTabs, SIGNAL(closeBranch(QString)), | |
| 2666 this, SLOT(hgCloseBranch())); | |
| 2623 | 2667 | 
| 2624 connect(m_hgTabs, SIGNAL(tag(QString)), | 2668 connect(m_hgTabs, SIGNAL(tag(QString)), | 
| 2625 this, SLOT(hgTag(QString))); | 2669 this, SLOT(hgTag(QString))); | 
| 2626 | 2670 | 
| 2627 connect(m_hgTabs, SIGNAL(annotateFiles(QStringList)), | 2671 connect(m_hgTabs, SIGNAL(annotateFiles(QStringList)), | 
