~ubuntu-branches/ubuntu/karmic/eric/karmic

« back to all changes in this revision

Viewing changes to eric/VCS/subversionPackage/MergeDialog.py

  • Committer: Bazaar Package Importer
  • Author(s): Scott Kitterman
  • Date: 2008-01-28 18:02:25 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20080128180225-6nrox6yrworh2c4v
Tags: 4.0.4-1ubuntu1
* Add python-qt3 to build-depends becuase that's where Ubuntu puts 
  pyqtconfig
* Change maintainer to MOTU

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# -*- coding: utf-8 -*-
2
 
 
3
 
# Copyright (c) 2003 - 2007 Detlev Offenbach <detlev@die-offenbachs.de>
4
 
#
5
 
 
6
 
"""
7
 
Module implementing a dialog to enter the data for a merge operation.
8
 
"""
9
 
 
10
 
from qt import *
11
 
 
12
 
from MergeForm import MergeForm
13
 
 
14
 
class SvnMergeDialog(MergeForm):
15
 
    """
16
 
    Class implementing a dialog to enter the data for a merge operation.
17
 
    """
18
 
    def __init__(self, mergelist1, mergelist2, targetlist, parent = None):
19
 
        """
20
 
        Constructor
21
 
        
22
 
        @param mergelist1 list of previously entered URLs/revisions (QStringList)
23
 
        @param mergelist2 list of previously entered URLs/revisions (QStringList)
24
 
        @param targetlist list of previously entered targets (QStringList)
25
 
        @param parent parent widget (QWidget)
26
 
        """
27
 
        MergeForm.__init__(self, parent, None, 1)
28
 
       
29
 
        dummy = self.trUtf8('dummy')
30
 
        
31
 
        self.rx_url = QRegExp('(?:file:|svn:|svn+ssh:|http:|https:)//.+')
32
 
        self.rx_rev = QRegExp('\\d+')
33
 
        
34
 
        self.tag1Combo.clear()
35
 
        self.tag1Combo.insertStringList(mergelist1)
36
 
        self.tag2Combo.clear()
37
 
        self.tag2Combo.insertStringList(mergelist2)
38
 
        self.targetCombo.clear()
39
 
        self.targetCombo.insertStringList(targetlist)
40
 
        
41
 
    def enableOkButton(self, text):
42
 
        """
43
 
        Private method used to enable/disable the OK-button.
44
 
        
45
 
        @param text ignored
46
 
        """
47
 
        self.okButton.setDisabled(
48
 
            self.tag1Combo.currentText().isEmpty() or \
49
 
            self.tag2Combo.currentText().isEmpty() or \
50
 
            not ((self.rx_url.exactMatch(self.tag1Combo.currentText()) and \
51
 
                  self.rx_url.exactMatch(self.tag2Combo.currentText())) or \
52
 
                 (self.rx_rev.exactMatch(self.tag1Combo.currentText()) and \
53
 
                  self.rx_rev.exactMatch(self.tag2Combo.currentText()))
54
 
                )
55
 
            )
56
 
    
57
 
    def getParameters(self):
58
 
        """
59
 
        Public method to retrieve the tag data.
60
 
        
61
 
        @return tuple naming two tag names or two revisions (QString, QString)
62
 
        """
63
 
        return (self.tag1Combo.currentText(), 
64
 
                self.tag2Combo.currentText(),
65
 
                self.targetCombo.currentText())