Пример #1
0
  def __init__(self, wiz):
    super(SelectWindowPage, self).__init__(wiz)
    self.setTitle(my.tr("Select game window"))

    introLabel = QtWidgets.QLabel(my.tr(
      "Press START and  CLICK the game window, or press the STOP button to cancel."
    ))
    introLabel.setWordWrap(True)

    self._picker = winpicker.WindowPicker(self)
    self._picker.windowClicked.connect(self._onWindowClicked)
    wiz.visibleChanged.connect(self._onVisibleChanged)

    self._windowEdit = QtWidgets.QLineEdit()
    self._windowEdit.setReadOnly(True)
    self._windowEdit.setPlaceholderText(my.tr("Not found, or not a game window"))
    self._windowEdit.setToolTip(my.tr("Game window"))
    windowLabel = QtWidgets.QLabel(my.tr("Game window") + ":")
    windowLabel.setBuddy(self._windowEdit)

    self._nameEdit = QtWidgets.QLineEdit()
    self._nameEdit.setReadOnly(True)
    self._nameEdit.setPlaceholderText(tr_("Not found"))
    self._nameEdit.setToolTip(tr_("Window title"))
    nameLabel = QtWidgets.QLabel("=> " + tr_("Window title") + ":")
    nameLabel.setBuddy(self._nameEdit)

    self._startButton = QtWidgets.QPushButton("\n\n" + tr_("START") + "\n\n")
    self._startButton.clicked.connect(self._start)
    skqss.class_(self._startButton, 'btn btn-primary')

    self._stopButton = QtWidgets.QPushButton("\n\n" + tr_("STOP") + "\n\n")
    self._stopButton.clicked.connect(self._stop)
    skqss.class_(self._stopButton, 'btn btn-danger')

    layout = QtWidgets.QVBoxLayout()
    layout.addWidget(introLabel)
    buttons = QtWidgets.QHBoxLayout()
    buttons.addWidget(self._startButton)
    buttons.addWidget(self._stopButton)
    buttons.setContentsMargins(10,10,10,10)
    layout.addLayout(buttons)

    grid = QtWidgets.QGridLayout()
    # 0
    grid.addWidget(windowLabel, 0, 0)
    grid.addWidget(self._windowEdit, 0, 1)
    # 1
    grid.addWidget(nameLabel)
    grid.addWidget(self._nameEdit)

    layout.addLayout(grid)
    self.setLayout(layout)
Пример #2
0
 def kanjiEdit(self):
     ret = QtWidgets.QLineEdit()
     #skqss(ret, 'text-primary')
     ret.setToolTip(my.tr("Guessed kanji of pattern using MSIME"))
     ret.setReadOnly(True)
     #ret.setWordWrap(True)
     return ret
Пример #3
0
 def yomiEdit(self):
     ret = QtWidgets.QLineEdit()
     #skqss(ret, 'text-primary')
     ret.setToolTip(my.tr("Yomigana of translation"))
     ret.setReadOnly(True)
     #ret.setWordWrap(True)
     return ret
Пример #4
0
 def commentEdit(self):
   ret = QtWidgets.QLineEdit()
   ret.setToolTip(tr_("Comment"))
   ret.setPlaceholderText(tr_("Empty"))
   #ret.setMinimumHeight(TEXTEDIT_MINIMUM_HEIGHT)
   ret.textChanged.connect(self._saveComment)
   return ret
Пример #5
0
 def rubyEdit(self):
     ret = QtWidgets.QLineEdit()
     skqss.class_(ret, 'normal')
     ret.setPlaceholderText(my.tr("Note above or after the translation"))
     ret.setToolTip(ret.placeholderText())
     ret.textChanged.connect(self.refresh)
     return ret
Пример #6
0
 def textEdit(self):
     ret = QtWidgets.QLineEdit()
     skqss.class_(ret, 'normal')
     ret.setPlaceholderText(mytr_("Replaced text"))
     ret.setToolTip(ret.placeholderText())
     ret.textChanged.connect(self.refresh)
     return ret
Пример #7
0
 def titleEdit(self):
     ret = QtWidgets.QLineEdit()
     skqss.class_(ret, 'editable')
     ret.setPlaceholderText(tr_("Title"))
     ret.setToolTip(tr_("Title"))
     ret.textChanged.connect(self._refreshSaveButton)
     return ret
Пример #8
0
  def __init__(self, parent=None):
    super(SelectFilePage, self).__init__(parent)
    self.setTitle(my.tr("Select game executable"))

    introLabel = QtWidgets.QLabel(my.tr("Please select the game executable's location"))
    introLabel.setWordWrap(True)

    self._edit = QtWidgets.QLineEdit()
    self._edit.setPlaceholderText(tr_("Location"))
    self._edit.textChanged.connect(self._validateEdit)
    self._edit.textChanged.connect(self.completeChanged)

    self._browseButton = QtWidgets.QPushButton(tr_("Browse") + " ...")
    skqss.class_(self._browseButton, 'btn btn-info')
    self._browseButton.clicked.connect(self._browse)

    #self._applocButton = QtWidgets.QCheckBox(my.tr("Open in Japanese locale (0x0411) using AppLocale"))
    #self._applocButton.toggled.connect(settings.global_().setApplocEnabled)

    #self._tzButton = QtWidgets.QCheckBox(my.tr("Open in Japanese time zone (+9 Asia/Tokyo)"))
    #self._tzButton.toggled.connect(settings.global_().setTimeZoneEnabled)

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

    row = QtWidgets.QHBoxLayout()
    row.addWidget(self._edit)
    row.addWidget(self._browseButton)
    layout.addLayout(row)
    #layout.addWidget(self._applocButton)
    #layout.addWidget(self._tzButton)
    self.setLayout(layout)
Пример #9
0
 def roleEdit(self):
     ret = QtWidgets.QLineEdit()
     #skqss.class_(ret, 'normal')
     ret.setPlaceholderText(my.tr("Such as x (Phrase) or m (Name)"))
     ret.setToolTip(tr_("Optional"))
     ret.textChanged.connect(self.refresh)
     return ret
Пример #10
0
 def commentEdit(self):
     ret = QtWidgets.QLineEdit()
     #skqss.class_(ret, 'normal')
     ret.setPlaceholderText(tr_("Comment"))
     ret.setToolTip(tr_("Optional"))
     #ret.textChanged.connect(self.refresh)
     return ret
Пример #11
0
 def priorityEdit(self):
     ret = QtWidgets.QLineEdit()
     ret.setPlaceholderText(my.tr("Estimated pattern size"))
     ret.setToolTip(my.tr("Estimated number of characters in pattern"))
     #ret.textChanged.connect(self._refreshPriority)
     #ret.textChanged.connect(self._refreshStatus)
     ret.textChanged.connect(self.refresh)
     return ret
Пример #12
0
 def nameEdit(self):
     ret = QtWidgets.QLineEdit()
     skqss.class_(ret, 'normal')
     ret.setPlaceholderText(tr_("Not specified"))
     ret.setToolTip(my.tr("The game name displayed on the Spring Board"))
     ret.setStatusTip(ret.toolTip())
     ret.textChanged.connect(self._saveName)
     return ret
Пример #13
0
 def addressEdit(self):
     t = my.tr("Connecting to {0}").format('www.clipconverter.com')
     ret = QtWidgets.QLineEdit(t)
     #skqss.class_(ret, 'texture text-info')
     skqss.class_(ret, 'texture')
     ret.setPlaceholderText(t)
     ret.setReadOnly(True)
     return ret
Пример #14
0
 def encodingEdit(self):
     ret = QtWidgets.QLineEdit()
     skqss.class_(ret, 'readonly')
     ret.setReadOnly(True)
     ret.setPlaceholderText(tr_("Not specified"))
     ret.setToolTip(tr_("Read-only"))
     ret.setStatusTip(ret.toolTip())
     return ret
Пример #15
0
    def __init__(self, q, data, container=None):
        sortingEnabled = False

        root = _SkWidgetTreeController.parseData(data) if data else None
        self.sourceModel = SkTreeModel(root=root, parent=q)

        self.proxyModel = SkMultiFilterProxyModel(
            q,
            roles=(Qt.DisplayRole, Qt.ToolTipRole, Qt.StatusTipRole,
                   Qt.UserRole))
        #self.proxyModel.setSortingEnabled(sortingEnabled)
        self.proxyModel.setDynamicSortFilter(sortingEnabled)
        self.proxyModel.setSortCaseSensitivity(Qt.CaseInsensitive)
        self.proxyModel.setSourceModel(self.sourceModel)

        q_parent = q.parent()
        self._parentWidget = q_parent if isinstance(
            q_parent, QtWidgets.QWidget) else None
        self.treeView = QtWidgets.QTreeView(self._parentWidget)
        self.treeView.setRootIsDecorated(True)
        self.treeView.setAlternatingRowColors(True)
        self.treeView.setSortingEnabled(sortingEnabled)
        self.treeView.setModel(self.proxyModel)

        self.filterEdit = QtWidgets.QLineEdit()
        self.filterEdit.setPlaceholderText(tr_("Search"))
        self.filterEdit.setToolTip("%s (%s, %s)" %
                                   (tr_("Search"), tr_("case-insensitive"),
                                    tr_("regular expression")))

        self.countLabel = QtWidgets.QLabel()
        #self.countLabel.setToolTip(self.q.tr("Count"))

        self.container = container or skwidgets.SkContainerWidget(
            self._parentWidget)

        # Connections

        #self.treeView.activated.connect(q.currentIndexChanged)
        #self.treeView.clicked.connect(q.currentIndexChanged)
        self.selectionModel = self.treeView.selectionModel(
        )  # increase reference counting
        self.selectionModel.currentChanged.connect(self._refresh)
        self.selectionModel.currentChanged.connect(q.currentIndexChanged)

        self.filterEdit.textChanged.connect(self._updateFilter)
        self.filterEdit.textChanged.connect(self._updateCount)

        self.sourceModel.dataChanged.connect(self._updateCount)

        if self.sourceModel.rootItem():
            w = self.sourceModel.rootItem().dataAt(
                role=SkWidgetTreeController.WidgetRole)
            if w:
                dprint(w.__class__.__name__)
                self._setCurrentWidget(w)
Пример #16
0
 def hookEdit(self):
     ret = QtWidgets.QLineEdit()
     skqss.class_(ret, 'readonly')
     ret.setReadOnly(True)
     ret.setPlaceholderText(tr_("Not specified"))
     ret.setToolTip(tr_("Read-only"))
     ret.setStatusTip(ret.toolTip())
     #ret.setStyleSheet("QLineEdit.disabled { text-decoration:line-through }")
     #ret.textChanged.connect(self._saveHook)
     return ret
Пример #17
0
 def searchEdit(self):
     ret = QtWidgets.QLineEdit()
     #skqss.class_(ret, 'normal')
     ret.setPlaceholderText(
         my.
         tr("Type part of the game title or game ID or URL of the webpage"))
     ret.setToolTip(ret.placeholderText() + " (Alt+E)")
     ret.textChanged.connect(self._searchLater)
     #ret.returnPressed.connect(self._search)
     return ret
Пример #18
0
 def inputEdit(self):
     ret = QtWidgets.QLineEdit()
     ret.setText(DEFAULT_INPUT)
     #skqss.class_(ret, 'normal')
     skqss.class_(ret, 'texture-inverse')
     ret.setPlaceholderText(tr_("Japanese"))
     ret.setToolTip(ret.placeholderText())
     ret.textChanged.connect(self.refresh)
     ret.returnPressed.connect(self.submit)
     return ret
Пример #19
0
 def launchEdit(self):
     ret = QtWidgets.QLineEdit()
     ret.setReadOnly(True)
     ret.setPlaceholderText(my.tr("No game path"))
     ret.setToolTip(my.tr("Game launcher location"))
     ret.setStatusTip(ret.toolTip())
     ret.textChanged.connect(self._verifyLaunchEdit)
     ret.textChanged.connect(lambda text: self.resetLaunchButton.setEnabled(
         osutil.normalize_path(text) != osutil.normalize_path(self.game.path
                                                              )))
     return ret
Пример #20
0
 def filterEdit(self):
     ret = QtWidgets.QLineEdit()
     #skqss.class_(ret, 'normal')
     ret.setPlaceholderText("%s ... (%s, %s)" %
                            (tr_("Filter"), tr_("regular expression"),
                             tr_("case-insensitive")))
     ret.setToolTip("%s ... (%s, %s, Alt+F)" %
                    (tr_("Filter"), tr_("regular expression"),
                     tr_("case-insensitive")))
     ret.textChanged.connect(lambda t: self.proxyModel.setFilterRegExp(
         QRegExp(t.strip(), Qt.CaseInsensitive) if t else None))
     return ret
Пример #21
0
 def _createLabel(self, styleclass, tip, minwidth):
   """
   @param  styleClass  str
   @param  minimumWidth  int
   @return  QLineEdit
   """
   ret = QtWidgets.QLineEdit()
   ret.setReadOnly(True)
   ret.setMinimumWidth(minwidth)
   ret.setToolTip(tip)
   skqss.class_(ret, styleclass)
   return ret
Пример #22
0
  def __init__(self, parent=None):
    super(SyncGamePage, self).__init__(parent)
    self.setTitle(my.tr("Analyzing the game process"))

    introLabel = QtWidgets.QLabel(my.tr("Synchronizing with visual novel") + " ...")
    introLabel.setWordWrap(True)

    self._edit = QtWidgets.QLineEdit()
    self._edit.setReadOnly(True)
    self._edit.setToolTip(tr_("Status"))

    layout = QtWidgets.QVBoxLayout()
    layout.addWidget(introLabel)
    layout.addWidget(self._edit)
    self.setLayout(layout)
Пример #23
0
  def _createUi(self, q):
    self.edit = QtWidgets.QLineEdit()
    skqss.class_(self.edit, 'normal')

    grid = QtWidgets.QGridLayout()
    r = 0
    self.updateCommentButton = QtWidgets.QRadioButton(mytr_("Update reason"))
    self.updateCommentButton.setChecked(True)
    self.commentButton = QtWidgets.QRadioButton(tr_("Comment"))
    g = QtWidgets.QButtonGroup(q)
    g.addButton(self.updateCommentButton)
    g.addButton(self.commentButton)
    grid.addWidget(create_label(tr_("Property")), r, 0)
    for i,b in enumerate(g.buttons()):
      grid.addWidget(b, r, i+1)

    r += 1
    self.appendButton = QtWidgets.QRadioButton(tr_("Append"))
    self.appendButton.setChecked(True)
    self.overwriteButton = QtWidgets.QRadioButton(tr_("Overwrite"))
    g = QtWidgets.QButtonGroup(q)
    g.addButton(self.appendButton)
    g.addButton(self.overwriteButton)
    grid.addWidget(create_label(tr_("Method")), r, 0)
    for i,b in enumerate(g.buttons()):
      grid.addWidget(b, r, i+1)

    layout = QtWidgets.QVBoxLayout()
    layout.addWidget(self.edit)

    optionGroup = QtWidgets.QGroupBox(tr_("Option"))
    optionGroup.setLayout(grid)
    layout.addWidget(optionGroup)

    buttonBox = QtWidgets.QDialogButtonBox(
        QtWidgets.QDialogButtonBox.Ok|
        QtWidgets.QDialogButtonBox.Cancel)
    layout.addWidget(buttonBox)
    buttonBox.accepted.connect(q.accept)
    buttonBox.rejected.connect(q.reject)

    okButton = buttonBox.button(buttonBox.Ok)
    okButton.setDefault(True)
    skqss.class_(okButton, 'btn btn-primary')
    #cancelButton = buttonBox.button(buttonBox.Cancel)

    q.setLayout(layout)
Пример #24
0
  def __init__(self, wiz):
    super(SyncThreadPage, self).__init__(wiz)
    self.setTitle(my.tr("Analyzing the game threads"))

    self._complete = False
    wiz.profile().threadUpdated.connect(self._setComplete)

    introLabel = QtWidgets.QLabel(my.tr("Searching for game settings online") + " ...")
    introLabel.setWordWrap(True)

    self._edit = QtWidgets.QLineEdit()
    self._edit.setReadOnly(True)
    self._edit.setToolTip(tr_("Status"))
    self._edit.setText(tr_("Searching") + " ...")

    layout = QtWidgets.QVBoxLayout()
    layout.addWidget(introLabel)
    layout.addWidget(self._edit)
    self.setLayout(layout)
Пример #25
0
    def __init__(self, q):
        self.sourceModel = QtGui.QStandardItemModel(q)

        self.proxyModel = SkMultiFilterProxyModel(q)
        self.proxyModel.setDynamicSortFilter(True)
        self.proxyModel.setSortCaseSensitivity(Qt.CaseInsensitive)
        self.proxyModel.setSourceModel(self.sourceModel)

        q_parent = q.parent()
        self._parentWidget = q_parent if isinstance(
            q_parent, QtWidgets.QWidget) else None
        self.treeView = QtWidgets.QTreeView(self._parentWidget)
        self.treeView.setRootIsDecorated(True)
        self.treeView.setAlternatingRowColors(True)
        self.treeView.setSortingEnabled(True)
        self.treeView.setModel(self.proxyModel)

        self.filterEdit = QtWidgets.QLineEdit()
        self.filterEdit.setPlaceholderText(tr_("Search"))
        self.filterEdit.setToolTip("%s (%s, %s)" %
                                   (tr_("Search"), tr_("case-insensitive"),
                                    tr_("regular expression")))

        self.countLabel = QtWidgets.QLabel()
        #self.countLabel.setToolTip(self.q.tr("Count"))

        # Connections

        # See: http://www.qtcentre.org/threads/2603-currentChanged-protected-slot-cant-get-working
        #self.treeView.activated.connect(q.currentIndexChanged)
        #self.treeView.clicked.connect(q.currentIndexChanged)
        self.selectionModel = self.treeView.selectionModel(
        )  # increase reference counting
        self.selectionModel.currentChanged.connect(q.currentIndexChanged)

        self.filterEdit.textChanged.connect(self._updateFilter)
        self.filterEdit.textChanged.connect(self._updateCount)

        self.sourceModel.dataChanged.connect(self._updateCount)
Пример #26
0
 def messageEdit(self):
     ret = QtWidgets.QLineEdit()
     ret.setReadOnly(True)
     ret.setToolTip(tr_("Status"))
     ret.setPlaceholderText(ret.toolTip())
     return ret
Пример #27
0
 def replaceEdit(self):
     ret = QtWidgets.QLineEdit()
     skqss.class_(ret, 'normal')
     ret.setToolTip(mytr_("Replaced text"))
     ret.setPlaceholderText(ret.toolTip())
     return ret
Пример #28
0
  def __init__(self, wiz):
    super(ConfirmGamePage, self).__init__(wiz)
    self.setTitle(my.tr("Confirm the game information"))

    wiz.profile().processUpdated.connect(self._refresh)

    introLabel = QtWidgets.QLabel(my.tr("Is this the visual novel you would like to play?"))
    introLabel.setWordWrap(True)

    self._windowEdit = QtWidgets.QLineEdit()
    self._windowEdit.setReadOnly(True)
    self._windowEdit.setPlaceholderText(tr_("Not found"))
    self._windowEdit.setToolTip(my.tr("Process window"))
    windowLabel = QtWidgets.QLabel(my.tr("Active window") + ":")
    windowLabel.setBuddy(self._windowEdit)

    self._processEdit = QtWidgets.QLineEdit()
    self._processEdit.setReadOnly(True)
    self._processEdit.setPlaceholderText(tr_("Not found"))
    self._processEdit.setToolTip(my.tr("Running process"))
    processLabel = QtWidgets.QLabel(my.tr("Running process") + ":")
    processLabel.setBuddy(self._processEdit)

    self._pnameEdit = QtWidgets.QLineEdit()
    self._pnameEdit.setReadOnly(True)
    self._pnameEdit.setPlaceholderText(tr_("Not found"))
    self._pnameEdit.setToolTip(my.tr("Program name"))
    pnameLabel = QtWidgets.QLabel("=> " + my.tr("Process name") + ":")
    pnameLabel.setBuddy(self._pnameEdit)

    self._wnameEdit = QtWidgets.QLineEdit()
    self._wnameEdit.setReadOnly(True)
    self._wnameEdit.setPlaceholderText(tr_("Not found"))
    self._wnameEdit.setToolTip(tr_("Window title"))
    wnameLabel = QtWidgets.QLabel("=> " + tr_("Window title") + ":")
    wnameLabel.setBuddy(self._wnameEdit)

    self._pathEdit = QtWidgets.QLineEdit()
    self._pathEdit.setReadOnly(True)
    self._pathEdit.setPlaceholderText(tr_("Not found"))
    self._pathEdit.setToolTip(my.tr("Executable location") + ":")
    pathLabel = QtWidgets.QLabel(tr_("Location"))
    pathLabel.setBuddy(self._pathEdit)

    self._iconButton = QtWidgets.QPushButton()
    self._iconButton.setToolTip(tr_("Icon"))
    skqss.class_(self._iconButton, 'transp')

    refreshButton = QtWidgets.QPushButton(tr_("Refresh"))
    refreshButton.clicked.connect(self._updateProcess)
    skqss.class_(refreshButton, 'btn btn-success')

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

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

    grid = QtWidgets.QGridLayout()
    r=0; grid.addWidget(introLabel, r, 0, 1, 2)
    r+=1; grid.addWidget(pathLabel, r, 0)
    grid.addWidget(self._pathEdit, r, 1)
    grid.addWidget(self._iconButton, r, 2)

    r+=1; grid.addWidget(processLabel, r, 0)
    grid.addWidget(self._processEdit, r, 1)
    grid.addWidget(clearProcessButton, r, 2)

    r+=1; grid.addWidget(pnameLabel, r, 0)
    grid.addWidget(self._pnameEdit, r, 1)

    r+=1; grid.addWidget(windowLabel, r, 0)
    grid.addWidget(self._windowEdit, r, 1)

    r+=1; grid.addWidget(wnameLabel, r, 0)
    grid.addWidget(self._wnameEdit, r, 1)
    grid.addWidget(clearWindowButton, r, 2)

    r+=1; grid.addWidget(refreshButton, r, 2)
    self.setLayout(grid)