class CreateInstallerDialogController(DialogController, Ui_Dialog):
    def __init__(self, dialog, name='', path='', argv=''):
        self.setupUi(dialog)
        self.file_dialog = FileDialog(widget=dialog)
        default_argv = [
            '',
            '/s /sms',
            '"/qb-! REBOOT=ReallySuppress"',
            '/SILENT',
            '/S',
            '/s'
        ]
        self.argComboBox.addItems(default_argv)
        line_edit = QLineEdit()
        line_edit.setPlaceholderText('аргументи для тихого режиму')
        self.argComboBox.setLineEdit(line_edit)

        self.nameLineEdit.setText(name)
        self.pathLineEdit.setText(path)
        self.argComboBox.setCurrentText(argv)
        self.connect_slots()
        super().__init__(dialog)

    def get_results(self):
        if self.dialog.result():
            path = self.pathLineEdit.text()
            name = self.nameLineEdit.text()
            arg = self.argComboBox.currentText()
            return name, path, arg
        return None, None, None

    def get_path(self):
        path = self.file_dialog.get_installer_path()
        path = path[0] if path else None
        if path:
            self.pathLineEdit.setText(path)
            if not self.nameLineEdit.text():
                self.nameLineEdit.setText(os.path.basename(path)[:-4])

    def connect_slots(self):
        self.pathToolButton.clicked.connect(self.get_path)