Example #1
0
 def typeEdit(self):
     ret = QtWidgets.QComboBox()
     ret.setEditable(False)
     ret.addItems(map(i18n.topic_type_name, defs.TOPIC_TYPES))
     ret.setMaxVisibleItems(ret.count())
     #ret.currentIndexChanged.connect(self._onTypeChanged)
     return ret
Example #2
0
 def languageEdit(self):
     ret = QtWidgets.QComboBox()
     ret.setEditable(False)
     ret.addItems(map(i18n.language_name, config.LANGUAGES))
     ret.setMaxVisibleItems(ret.count())
     ret.currentIndexChanged.connect(self._saveLanguage)
     return ret
Example #3
0
 def fromLanguageEdit(self):
     ret = QtWidgets.QComboBox()
     ret.setToolTip(my.tr("Text language"))
     ret.setEditable(False)
     ret.addItems(map(i18n.language_name2, config.LANGUAGES))
     ret.setMaxVisibleItems(ret.count())
     return ret
Example #4
0
 def translatorEdit(self):
     ret = QtWidgets.QComboBox()
     ret.setEditable(False)
     ret.addItems(dataman.Term.TR_HOSTS)
     ret.setMaxVisibleItems(ret.count())
     ret.currentIndexChanged.connect(self._onTranslatorChanged)
     return ret
Example #5
0
 def typeEdit(self):
   ret = QtWidgets.QComboBox()
   ret.setToolTip(tr_("Type"))
   ret.addItems(dataman.Comment.TR_TYPES)
   ret.setEditable(False)
   ret.currentIndexChanged.connect(self._saveType)
   #skqss.class_(ret, 'normal')
   return ret
Example #6
0
 def typeEdit(self):
     ret = QtWidgets.QComboBox()
     ret.setEditable(False)
     ret.addItems(dataman.Term.TR_TYPES)
     #ret.setCurrentIndex(0) # default index
     ret.setMaxVisibleItems(ret.count())
     ret.setMaximumWidth(COMBOBOX_MAXWIDTH)
     ret.currentIndexChanged.connect(self.refresh)
     return ret
Example #7
0
 def encodingEdit(self):
   ret = QtWidgets.QComboBox()
   ret.setEditable(False)
   ret.setToolTip(tr_("Text encoding"))
   ret.setStatusTip(tr_("Text encoding"))
   ret.addItems(map(i18n.encoding_desc, config.ENCODINGS))
   ret.setMaxVisibleItems(ret.count())
   ret.currentIndexChanged.connect(self._refresh)
   return ret
Example #8
0
    def deviceEdit(self):
        ret = QtWidgets.QComboBox()
        ret.setToolTip(my.tr("Audio device to record"))
        ret.setEditable(False)
        ret.addItems([it['name'] for it in audioinfo.inputdevices()])
        #ret.setMaxVisibleItems(ret.count())

        import settings
        ret.setCurrentIndex(settings.global_().audioDeviceIndex())
        return ret
Example #9
0
 def sourceLanguageEdit(self):
     ret = QtWidgets.QComboBox()
     ret.setEditable(False)
     ret.addItems(map(i18n.language_name, config.LANGUAGES))
     ret.setMaxVisibleItems(ret.count())
     ret.setMaximumWidth(COMBOBOX_MAXWIDTH)
     #ret.setCurrentIndex(0) # Japanese by default
     ret.currentIndexChanged.connect(self._refreshStatus)
     #ret.currentIndexChanged.connect(self._refreshYomi)
     return ret
Example #10
0
    def languageEdit(self):
        ret = QtWidgets.QComboBox()
        ret.setEditable(False)
        ret.addItems(map(i18n.language_name2, config.LANGUAGES))
        ret.setMaxVisibleItems(ret.count())

        import settings
        try:
            langIndex = config.LANGUAGES.index(
                settings.global_().speechRecognitionLanguage())
        except ValueError:
            langIndex = 0  # 'ja'
        ret.setCurrentIndex(langIndex)

        ret.currentIndexChanged.connect(self._saveLanguage)
        return ret
Example #11
0
    def targetLanguageEdit(self):
        ret = QtWidgets.QComboBox()
        ret.setEditable(False)

        #items = map(i18n.language_name, config.LANGUAGES)
        items = [
            tr_("All languages") if it == 'ja' else i18n.language_name(it)
            for it in config.LANGUAGES
        ]
        ret.addItems(items)
        ret.setMaxVisibleItems(ret.count())
        ret.setMaximumWidth(COMBOBOX_MAXWIDTH)

        index = config.LANGUAGES.index(dataman.manager().user().language)
        ret.setCurrentIndex(index)

        ret.currentIndexChanged.connect(self._refreshStatus)
        ret.currentIndexChanged.connect(self._refreshYomi)
        return ret
Example #12
0
  def __init__(self, wiz):
    super(SelectThreadPage, self).__init__(wiz)
    self.setTitle(my.tr("Select the text thread"))
    self.setCommitPage(True)

    self._active = False

    wiz.visibleChanged.connect(self._setActive)
    wiz.visibleChanged.connect(self._clear)

    self._threads = {} # {long signature:TextThread}

    introLabel = QtWidgets.QLabel(my.tr(
      "Please play the game a little bit, and pick one text thread that has the same contents as the game text. If no text thread appears, please try editing the /H hook code for this game."
    ))
    introLabel.setWordWrap(True)

    # grid of thread sources
    self._grid = skwidgets.SkRadioButtonGrid(self, col=2)
    self._grid.currentIndexChanged.connect(self._refresh)
    self._grid.currentIndexChanged.connect(self.completeChanged)
    threadGroup = QtWidgets.QGroupBox()
    threadGroup.setLayout(self._grid.layout())
    threadGroup.setTitle(mytr_("Text threads"))

    self._encodingEdit = QtWidgets.QComboBox()
    self._encodingEdit.setEditable(False)
    self._encodingEdit.setToolTip(tr_("Text encoding"))
    self._encodingEdit.addItems(map(i18n.encoding_desc, config.ENCODINGS))
    self._encodingEdit.currentIndexChanged.connect(self._refresh)

    self._keepsSpaceButton = QtWidgets.QCheckBox(
        my.tr("Insert spaces between words") +
        " (%s: %s)" % (tr_("for example"), "Howareyou! => How are you!"))
    self._keepsSpaceButton.toggled.connect(texthook.global_().setKeepsSpace)

    self._removesRepeatButton = QtWidgets.QCheckBox(
        my.tr("Eliminate finite repetition in the text") +
        " (%s: %s)" % (tr_("for example"), "YYeess!!NoNo! => Yes!No!"))
    self._removesRepeatButton.toggled.connect(self._refresh)

    self._ignoresRepeatButton = QtWidgets.QCheckBox(
        my.tr("Ignore infinite cyclic repetition in the text") +
        " (%s: %s)" % (tr_("for example"), "YesYesYes... => Yes"))
    self._ignoresRepeatButton.toggled.connect(texthook.global_().setRemovesRepeat)

    clearButton = QtWidgets.QPushButton(tr_("Clear"))
    clearButton.clicked.connect(self._clear)
    skqss.class_(clearButton, 'btn btn-danger')

    hookPrefsButton = QtWidgets.QPushButton(my.tr("Edit /H Hook Code"))
    skqss.class_(hookPrefsButton, 'btn btn-info')
    hookPrefsButton.clicked.connect(lambda: self.hookPrefsDialog.show())

    helpButton = QtWidgets.QPushButton(tr_("Help"))
    skqss.class_(helpButton, 'btn btn-success')
    helpButton.clicked.connect(lambda: self.helpDialog.show())

    self._textEdit = QtWidgets.QPlainTextEdit()
    self._textEdit.setReadOnly(True)
    self._textEdit.setToolTip(mytr_("Game text"))
    self._textEdit.setPlainText(my.tr("No game text"))

    layout = QtWidgets.QVBoxLayout()
    layout.addWidget(introLabel)
    row = QtWidgets.QHBoxLayout()
    row.addWidget(self._encodingEdit)
    row.addWidget(clearButton)
    row.addStretch()

    row.addWidget(hookPrefsButton)
    row.addWidget(helpButton)
    layout.addLayout(row)
    layout.addWidget(self._removesRepeatButton)
    layout.addWidget(self._ignoresRepeatButton)
    layout.addWidget(self._keepsSpaceButton)
    layout.addWidget(threadGroup)
    layout.addWidget(self._textEdit)
    self.setLayout(layout)
Example #13
0
  def _createUi(self, q):
    introEdit = QtWidgets.QTextBrowser()
    skqss.class_(introEdit, 'texture')
    introEdit.setReadOnly(True)
    introEdit.setOpenExternalLinks(True)

    import info
    introEdit.setHtml(info.renderHookCodeHelp())

    self._hookEdit = QtWidgets.QComboBox()
    self._hookEdit.setEditable(True)
    self._hookEdit.setToolTip(my.tr("Your hook code"))
    #self._hookEdit.lineEdit().setPlaceholderText(my.tr("Type /H code here"))
    self._hookEdit.editTextChanged.connect(self._refresh)
    #self._hookEdit = QtWidgets.QLineEdit()
    #self._hookEdit.setToolTip(my.tr("Your hook code"))
    #self._hookEdit.setPlaceholderText(my.tr("Type /H code here"))
    #self._hookEdit.textChanged.connect(self._refresh)

    self._deletedHookLabel = QtWidgets.QLabel()
    skqss.class_(self._deletedHookLabel, 'text-info')
    self._deletedHookLabel.setText(tr_("Empty"))
    self._deletedHookLabel.linkActivated.connect(self._hookEdit.setEditText)

    #self._deletedHookEdit.setText("%s (%s)" %
    #    (my.tr("Deleted hook code"), tr_("Empty")))

    cancelButton = QtWidgets.QPushButton(tr_("Cancel"))
    skqss.class_(cancelButton, 'btn btn-default')
    cancelButton.setToolTip(my.tr("Discard changes"))
    cancelButton.clicked.connect(q.hide)

    self._saveButton = QtWidgets.QPushButton(tr_("Save"))
    skqss.class_(self._saveButton, 'btn btn-primary')
    self._saveButton.setToolTip(my.tr("Apply the hook code to the current game"))
    self._saveButton.setEnabled(False)
    self._saveButton.clicked.connect(self._save)

    self._deleteButton = QtWidgets.QPushButton(tr_("Delete"))
    skqss.class_(self._deleteButton, 'btn btn-danger')
    self._deleteButton.setToolTip(my.tr("Remove the hook code from the current game"))
    self._deleteButton.setEnabled(False)
    self._deleteButton.clicked.connect(self._confirmDelete)

    layout = QtWidgets.QVBoxLayout()
    layout.addWidget(introEdit)

    row = QtWidgets.QHBoxLayout()
    label = QtWidgets.QLabel(my.tr("Deleted /H code") + ": ")
    skqss.class_(label, 'text-info')
    tip = my.tr("Recent /H code for this game that is deleted by other users")
    label.setToolTip(tip)
    row.addWidget(label)
    self._deletedHookLabel.setToolTip(tip)
    row.addWidget(self._deletedHookLabel)
    row.addStretch()
    layout.addLayout(row)

    layout.addWidget(self._hookEdit)
    buttons = QtWidgets.QHBoxLayout()
    buttons.addWidget(self._deleteButton)
    buttons.addStretch()
    buttons.addWidget(cancelButton)
    buttons.addWidget(self._saveButton)
    layout.addLayout(buttons)

    layout.setContentsMargins(18, 18, 18, 9) # left, top, right, bottom
    q.setLayout(layout)

    cancelButton.setFocus()

    # Do this after setLayout, otherwise QLineEdit is None
    self._hookEdit.lineEdit().setPlaceholderText(my.tr("Type /H code here"))