# Form implementation generated from reading ui file 'clonedialog.ui'
#
# Created by: PyQt6 UI code generator 6.10.2
#
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
# run again.  Do not edit this file unless you know what you are doing.


from gitfourchette.localization import *
from gitfourchette.qt import *


class Ui_CloneDialog(object):
    def setupUi(self, CloneDialog):
        CloneDialog.setObjectName("CloneDialog")
        CloneDialog.setWindowModality(Qt.WindowModality.NonModal)
        CloneDialog.setEnabled(True)
        CloneDialog.resize(640, 340)
        sizePolicy = QSizePolicy(QSizePolicy.Policy.Preferred, QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(CloneDialog.sizePolicy().hasHeightForWidth())
        CloneDialog.setSizePolicy(sizePolicy)
        CloneDialog.setSizeGripEnabled(False)
        CloneDialog.setModal(True)
        self.formLayout = QFormLayout(CloneDialog)
        self.formLayout.setFieldGrowthPolicy(QFormLayout.FieldGrowthPolicy.ExpandingFieldsGrow)
        self.formLayout.setObjectName("formLayout")
        self.urlLabel = QLabel(parent=CloneDialog)
        self.urlLabel.setObjectName("urlLabel")
        self.formLayout.setWidget(0, QFormLayout.ItemRole.LabelRole, self.urlLabel)
        self.urlLayout = QHBoxLayout()
        self.urlLayout.setObjectName("urlLayout")
        self.urlEdit = QComboBox(parent=CloneDialog)
        sizePolicy = QSizePolicy(QSizePolicy.Policy.MinimumExpanding, QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.urlEdit.sizePolicy().hasHeightForWidth())
        self.urlEdit.setSizePolicy(sizePolicy)
        self.urlEdit.setEditable(True)
        self.urlEdit.setInsertPolicy(QComboBox.InsertPolicy.NoInsert)
        self.urlEdit.setObjectName("urlEdit")
        self.urlLayout.addWidget(self.urlEdit)
        self.protocolButton = ProtocolButton(parent=CloneDialog)
        self.protocolButton.setText("https")
        self.protocolButton.setObjectName("protocolButton")
        self.urlLayout.addWidget(self.protocolButton)
        self.formLayout.setLayout(0, QFormLayout.ItemRole.FieldRole, self.urlLayout)
        self.pathLabel = QLabel(parent=CloneDialog)
        self.pathLabel.setObjectName("pathLabel")
        self.formLayout.setWidget(1, QFormLayout.ItemRole.LabelRole, self.pathLabel)
        self.pathLayout = QHBoxLayout()
        self.pathLayout.setObjectName("pathLayout")
        self.pathEdit = QLineEdit(parent=CloneDialog)
        self.pathEdit.setObjectName("pathEdit")
        self.pathLayout.addWidget(self.pathEdit)
        self.browseButton = QToolButton(parent=CloneDialog)
        self.browseButton.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.browseButton.setObjectName("browseButton")
        self.pathLayout.addWidget(self.browseButton)
        self.formLayout.setLayout(1, QFormLayout.ItemRole.FieldRole, self.pathLayout)
        self.optionsLabel = QLabel(parent=CloneDialog)
        self.optionsLabel.setObjectName("optionsLabel")
        self.formLayout.setWidget(2, QFormLayout.ItemRole.LabelRole, self.optionsLabel)
        self.recurseSubmodulesCheckBox = QCheckBox(parent=CloneDialog)
        self.recurseSubmodulesCheckBox.setChecked(True)
        self.recurseSubmodulesCheckBox.setObjectName("recurseSubmodulesCheckBox")
        self.formLayout.setWidget(2, QFormLayout.ItemRole.FieldRole, self.recurseSubmodulesCheckBox)
        self.shallowCloneLayout = QHBoxLayout()
        self.shallowCloneLayout.setObjectName("shallowCloneLayout")
        self.shallowCloneCheckBox = QCheckBox(parent=CloneDialog)
        self.shallowCloneCheckBox.setText("(SHALLOW CLONE)")
        self.shallowCloneCheckBox.setObjectName("shallowCloneCheckBox")
        self.shallowCloneLayout.addWidget(self.shallowCloneCheckBox)
        self.shallowCloneDepthSpinBox = QSpinBox(parent=CloneDialog)
        self.shallowCloneDepthSpinBox.setProperty("showGroupSeparator", True)
        self.shallowCloneDepthSpinBox.setPrefix("")
        self.shallowCloneDepthSpinBox.setMinimum(1)
        self.shallowCloneDepthSpinBox.setMaximum(999999)
        self.shallowCloneDepthSpinBox.setStepType(QAbstractSpinBox.StepType.AdaptiveDecimalStepType)
        self.shallowCloneDepthSpinBox.setObjectName("shallowCloneDepthSpinBox")
        self.shallowCloneLayout.addWidget(self.shallowCloneDepthSpinBox)
        self.shallowCloneSuffix = QLabel(parent=CloneDialog)
        self.shallowCloneSuffix.setText("(SUFFIX)")
        self.shallowCloneSuffix.setObjectName("shallowCloneSuffix")
        self.shallowCloneLayout.addWidget(self.shallowCloneSuffix)
        self.formLayout.setLayout(3, QFormLayout.ItemRole.FieldRole, self.shallowCloneLayout)
        self.keyFilePicker = KeyFilePickerCheckBox(parent=CloneDialog)
        self.keyFilePicker.setObjectName("keyFilePicker")
        self.formLayout.setWidget(4, QFormLayout.ItemRole.FieldRole, self.keyFilePicker)
        spacerItem = QSpacerItem(20, 16, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Fixed)
        self.formLayout.setItem(5, QFormLayout.ItemRole.FieldRole, spacerItem)
        self.statusGroupBox = QGroupBox(parent=CloneDialog)
        sizePolicy = QSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(1)
        sizePolicy.setHeightForWidth(self.statusGroupBox.sizePolicy().hasHeightForWidth())
        self.statusGroupBox.setSizePolicy(sizePolicy)
        self.statusGroupBox.setTitle("")
        self.statusGroupBox.setObjectName("statusGroupBox")
        self.verticalLayout = QVBoxLayout(self.statusGroupBox)
        self.verticalLayout.setObjectName("verticalLayout")
        self.statusForm = StatusForm(parent=self.statusGroupBox)
        self.statusForm.setObjectName("statusForm")
        self.verticalLayout.addWidget(self.statusForm)
        self.formLayout.setWidget(6, QFormLayout.ItemRole.SpanningRole, self.statusGroupBox)
        self.buttonBox = QDialogButtonBox(parent=CloneDialog)
        self.buttonBox.setOrientation(Qt.Orientation.Horizontal)
        self.buttonBox.setStandardButtons(QDialogButtonBox.StandardButton.Cancel|QDialogButtonBox.StandardButton.Ok)
        self.buttonBox.setCenterButtons(False)
        self.buttonBox.setObjectName("buttonBox")
        self.formLayout.setWidget(7, QFormLayout.ItemRole.FieldRole, self.buttonBox)
        self.urlLabel.setBuddy(self.urlEdit)
        self.pathLabel.setBuddy(self.pathEdit)
        self.optionsLabel.setBuddy(self.recurseSubmodulesCheckBox)
        self.shallowCloneSuffix.setBuddy(self.shallowCloneDepthSpinBox)

        self.retranslateUi(CloneDialog)
        self.buttonBox.rejected.connect(CloneDialog.reject) # type: ignore
        CloneDialog.setTabOrder(self.urlEdit, self.protocolButton)
        CloneDialog.setTabOrder(self.protocolButton, self.pathEdit)
        CloneDialog.setTabOrder(self.pathEdit, self.browseButton)
        CloneDialog.setTabOrder(self.browseButton, self.recurseSubmodulesCheckBox)
        CloneDialog.setTabOrder(self.recurseSubmodulesCheckBox, self.shallowCloneCheckBox)
        CloneDialog.setTabOrder(self.shallowCloneCheckBox, self.shallowCloneDepthSpinBox)
        CloneDialog.setTabOrder(self.shallowCloneDepthSpinBox, self.keyFilePicker)

    def retranslateUi(self, CloneDialog):
        CloneDialog.setWindowTitle(_p("CloneDialog", "Clone repository"))
        self.urlLabel.setText(_p("CloneDialog", "Remote &URL:"))
        self.pathLabel.setText(_p("CloneDialog", "Clone in&to:"))
        self.browseButton.setText(_p("CloneDialog", "&Browse…"))
        self.optionsLabel.setText(_p("CloneDialog", "Options:"))
        self.recurseSubmodulesCheckBox.setText(_p("CloneDialog", "Initialize submodules recursively (if any)"))
        self.shallowCloneCheckBox.setToolTip(_p("CloneDialog", "<p>Tick this to download just the latest commits, not the entire history of the repository."))
        self.keyFilePicker.setText(_p("CloneDialog", "Log in to SSH remotes with custom &key file"))
from gitfourchette.forms.keyfilepickercheckbox import KeyFilePickerCheckBox
from gitfourchette.forms.protocolbutton import ProtocolButton
from gitfourchette.forms.statusform import StatusForm
