Example #1
0
    def _createUi(self, q):
        textEdit = QtWidgets.QPlainTextEdit()
        textEdit.setToolTip("BBCode")
        #textEdit.setAcceptRichText(False)
        skqss.class_(textEdit, 'normal')

        textView = QtWidgets.QTextBrowser()
        skqss.class_(textView, 'texture')
        textView.setToolTip("HTML")
        textView.setReadOnly(True)
        textView.setOpenExternalLinks(True)

        textEdit.textChanged.connect(
            lambda: textView.setHtml(self.toHtml(textEdit.toPlainText())))

        textEdit.setPlainText(
            """You can use this [u]tester[/u] to play with [url=http://en.wikipedia.org/wiki/BBCode][color=blue]BBCode[/color][/url]
that you could use to format [color=red]subtitles[/color].""")

        #textEdit.resize(300, 200)

        center = QtWidgets.QSplitter(Qt.Vertical)
        center.setChildrenCollapsible(False)
        center.addWidget(textEdit)
        center.addWidget(textView)
        q.setCentralWidget(center)
Example #2
0
 def textView(self):
     ret = QtWidgets.QTextBrowser()
     skqss.class_(ret, 'texture')
     ret.setToolTip(tr_("Target"))
     ret.setOpenExternalLinks(True)
     #ret.setAcceptRichText(False)
     return ret
Example #3
0
  def __init__(self, parent=None):
    super(IntroPage, self).__init__(parent)
    self.setTitle(my.tr("Add a new visual novel"))

    url = config.URL_READER_DEMO

    introEdit = QtWidgets.QTextBrowser()
    introEdit.setReadOnly(True)
    introEdit.setOpenExternalLinks(True)
    introEdit.setHtml(my.tr(
"""This wizard will help you add new visual novel step by step.
<br/><br/>

An Internet access is not indispensable, but is recommended.
With the Internet, the wizard will be able to search the online database for game settings, which will save you some time for setting things up,
<br/><br/>

Note:
On Windows Vista or Windows 7 where UAC is enabled,
if the target game is launched with <b>admin privilege</b>
(i.e., when you run the game, the Windows will black out, and ask you blablabla and "YES" or "NO" to continue),
<b>please open Visual Novel Reader as admin as well</b>!
<br/><br/>

Here's a <a href="%s">demo on youtube</a> that might be helpful.""") % url)

    self._onlineLabel = QtWidgets.QLabel()

    onlineLabel = QtWidgets.QLabel(my.tr("Current Internet status") + ": ")
    onlineLabel.setBuddy(self._onlineLabel)

    self._elevateLabel = QtWidgets.QLabel(
        tr_("Not administrator") if features.ADMIN == False else
        tr_("Administrator"))
    skqss.class_(self._elevateLabel, 'warning' if features.ADMIN == False else 'normal')
    elevateLabel = QtWidgets.QLabel(my.tr("Current privileges") + ": ")
    elevateLabel.setBuddy(self._elevateLabel)

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

    row = QtWidgets.QHBoxLayout()
    row.addWidget(onlineLabel)
    row.addWidget(self._onlineLabel)
    row.addStretch()
    layout.addLayout(row)

    row = QtWidgets.QHBoxLayout()
    row.addWidget(elevateLabel)
    row.addWidget(self._elevateLabel)
    row.addStretch()
    layout.addLayout(row)

    self.setLayout(layout)
Example #4
0
 def resultEdit(self):
     ret = QtWidgets.QTextBrowser()
     ret.setAcceptRichText(False)
     skqss.class_(ret, 'texture-inverse')
     #skqss.class_(ret, 'texture')
     #skqss.class_(ret, 'normal')
     #ret.setToolTip(tr_("Result"))
     ret.setReadOnly(True)
     ret.setPlainText(EMPTY_PLACEHOLDER)
     ret.setStyleSheet(CSS_TEXTEDIT)
     import osutil
     ret.anchorClicked.connect(osutil.open_url)
     return ret
Example #5
0
  def __init__(self, parent=None):
    super(FinalPage, self).__init__(parent)
    self.setFinalPage(True)

    self.setTitle(tr_("Finish"))

    introLabel = QtWidgets.QLabel(my.tr(
      "Complete adding visual novel!"
    ))
    introLabel.setWordWrap(True)


    introEdit = QtWidgets.QTextBrowser()
    introEdit.setReadOnly(True)

    mail = config.EMAIL_HELP
    introEdit.setHtml(my.tr(
"""<span style="color:green">
You can change these settings later in <a href="#">Text Settings</a>.
</span>
<br/><br/>

<span style="color:green">
You can access the context menu by right-click the <span style="color:blue">Blue button</span> sitting on the bottom left corner.
</span>
<br/><br/>

<span style="color:brown">
<b>If the game text does not appear</b>, please try adjusting the text threads in <a href="#">Text Settings</a>,
or complain to me by email (<a href="mailto:%s">%s</a>).
</span>
<br/><br/>

It is recommended that you <b>set the Game Text Speed to maximum</b> if possible.
Especially if you would like to translate this game.""") % (mail, mail))
    introEdit.anchorClicked.connect(
        main.manager().showTextSettings)

    layout = QtWidgets.QVBoxLayout()
    layout.addWidget(introLabel)
    layout.addWidget(introEdit)
    self.setLayout(layout)
Example #6
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"))
Example #7
0
    def _createUi(self, q):
        layout = QtWidgets.QVBoxLayout()

        self.versionLabel = QtWidgets.QLabel()
        #self.versionLabel.setWordWrap(True)

        linkstyle = 'color:#428bca'  # bootstrap btn-link
        url = 'http://sakuradite.com/changes/vnr'
        changesLabel = QtWidgets.QLabel(
            '<a href="%s" style="%s">%s</a>' %
            (url, linkstyle, tr_("Recent Changes")))
        changesLabel.setOpenExternalLinks(True)
        changesLabel.setToolTip(url)

        import rc
        url = rc.image_path('logo-reader')
        img = '<img src="%s" width=60 height=60 />' % url
        imageLabel = QtWidgets.QLabel(img)

        import main
        m = main.manager()
        wikiButton = QtWidgets.QPushButton(tr_("Wiki"))
        wikiButton.setToolTip(tr_("Wiki"))
        skqss.class_(wikiButton, 'btn btn-default')
        wikiButton.clicked.connect(lambda: m.openWiki('VNR'))

        updateButton = QtWidgets.QPushButton(tr_("Update"))
        updateButton.setToolTip(tr_("Update"))
        skqss.class_(updateButton, 'btn btn-primary')
        updateButton.clicked.connect(m.checkUpdate)

        creditButton = QtWidgets.QPushButton(tr_("Credits"))
        creditButton.setToolTip(tr_("Credits"))
        skqss.class_(creditButton, 'btn btn-info')
        creditButton.clicked.connect(m.showCredits)

        #helpEdit = QtWidgets.QLabel()
        helpEdit = QtWidgets.QTextBrowser()
        skqss.class_(helpEdit, 'texture')
        helpEdit.setReadOnly(True)
        helpEdit.setOpenExternalLinks(True)
        helpEdit.setHtml(info.renderAppHelp())

        #labels = QtWidgets.QHBoxLayout()
        #labels.addWidget(self.versionLabel)
        #labels.addWidget(imageLabel)
        #layout.addLayout(labels)

        row = QtWidgets.QHBoxLayout()
        row.addWidget(self.versionLabel)
        row.addStretch()
        row.addWidget(changesLabel)
        layout.addLayout(row)

        row = QtWidgets.QHBoxLayout()
        #row.addLayout(labels)
        row.addWidget(imageLabel)
        row.addStretch()
        row.addWidget(updateButton)
        row.addWidget(creditButton)
        row.addWidget(wikiButton)
        layout.addLayout(row)

        layout.addWidget(helpEdit)

        q.setLayout(layout)