本文整理汇总了Python中pychess.widgets.InfoBar.InfoBarMessage类的典型用法代码示例。如果您正苦于以下问题:Python InfoBarMessage类的具体用法?Python InfoBarMessage怎么用?Python InfoBarMessage使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了InfoBarMessage类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: offerError
def offerError(self, offer, error):
log.debug("Human.offerError: self=%s error=%s %s" %
(self, error, offer))
assert offer.type in ACTION_NAMES
actionName = ACTION_NAMES[offer.type]
if error == ACTION_ERROR_NONE_TO_ACCEPT:
heading = _("Unable to accept %s") % actionName.lower()
text = _("Probably because it has been withdrawn.")
elif error == ACTION_ERROR_NONE_TO_DECLINE or \
error == ACTION_ERROR_NONE_TO_WITHDRAW:
# If the offer was not there, it has probably already been either
# declined or withdrawn.
return
else:
heading = _("%s returns an error") % actionName
text = ERROR_MESSAGES[error]
content = InfoBar.get_message_content(heading, text,
Gtk.STOCK_DIALOG_WARNING)
def response_cb(infobar, response, message):
message.dismiss()
message = InfoBarMessage(Gtk.MessageType.WARNING, content, response_cb)
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE,
Gtk.ResponseType.CANCEL))
self.gmwidg.showMessage(message)
开发者ID:TPNguyen,项目名称:pychess,代码行数:27,代码来源:Human.py
示例2: response_cb
def response_cb (infobar, response, message):
if response == gtk.RESPONSE_ACCEPT:
#self.emit("offer", offer)
message.dismiss()
message = InfoBarMessage(gtk.MESSAGE_INFO, content, response_cb)
message.add_button(InfoBarMessageButton(_("Resend"), gtk.RESPONSE_ACCEPT))
message.add_button(InfoBarMessageButton(gtk.STOCK_CLOSE, gtk.RESPONSE_CANCEL))
self._show_message(message)
开发者ID:btrent,项目名称:knave,代码行数:8,代码来源:Human.py
示例3: hurry
def hurry (self):
title = _("Your opponent asks you to hurry!")
text = _("Generally this means nothing, as the game is time-based, but if you want to please your opponent, perhaps you should get going.")
content = InfoBar.get_message_content(title, text, Gtk.STOCK_DIALOG_INFO)
def response_cb (infobar, response, message):
message.dismiss()
message = InfoBarMessage(Gtk.MessageType.INFO, content, response_cb)
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE, Gtk.ResponseType.CANCEL))
self.gmwidg.showMessage(message)
开发者ID:sally0813,项目名称:pychess,代码行数:9,代码来源:Human.py
示例4: offerWithdrawn
def offerWithdrawn (self, offer):
log.debug("Human.offerWithdrawn: self=%s %s" % (self, offer))
assert offer.type in ACTION_NAMES
heading = _("%s was withdrawn by your opponent") % ACTION_NAMES[offer.type]
text = _("Your opponent seems to have changed their mind.")
content = InfoBar.get_message_content(heading, text, Gtk.STOCK_DIALOG_INFO)
def response_cb (infobar, response, message):
message.dismiss()
message = InfoBarMessage(Gtk.MessageType.INFO, content, response_cb)
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE, Gtk.ResponseType.CANCEL))
self.gmwidg.showMessage(message)
开发者ID:sally0813,项目名称:pychess,代码行数:11,代码来源:Human.py
示例5: our_seeks_removed
def our_seeks_removed(self, glm):
label = Gtk.Label(label=_("Your seeks have been removed"))
def response_cb(infobar, response, message):
message.dismiss()
return False
message = InfoBarMessage(Gtk.MessageType.INFO, label, response_cb)
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE,
Gtk.ResponseType.CANCEL))
self.messages.append(message)
self.infobar.push_message(message)
开发者ID:leogregianin,项目名称:pychess,代码行数:12,代码来源:__init__.py
示例6: nonoWhileExamine
def nonoWhileExamine(self, bm):
label = Gtk.Label(_("You can't touch this! You are examining a game."))
def response_cb(infobar, response, message):
message.dismiss()
return False
message = InfoBarMessage(Gtk.MessageType.INFO, label, response_cb)
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE,
Gtk.ResponseType.CANCEL))
self.messages.append(message)
self.infobar.push_message(message)
开发者ID:leogregianin,项目名称:pychess,代码行数:12,代码来源:__init__.py
示例7: player_lagged
def player_lagged (self, bm, player):
if player in self.gamemodel.ficsplayers:
content = get_infobarmessage_content(player,
_(" has lagged for 30 seconds"),
self.gamemodel.ficsgame.game_type)
def response_cb (infobar, response, message):
message.dismiss()
return False
message = InfoBarMessage(Gtk.MessageType.INFO, content, response_cb)
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE,
Gtk.ResponseType.CANCEL))
self.showMessage(message)
return False
开发者ID:sally0813,项目名称:pychess,代码行数:13,代码来源:gamewidget.py
示例8: player_on_noplay
def player_on_noplay(self, bm, player):
text = _(" noplay listing you")
content = get_infobarmessage_content(player, text)
def response_cb(infobar, response, message):
message.dismiss()
return False
message = InfoBarMessage(Gtk.MessageType.INFO, content, response_cb)
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE,
Gtk.ResponseType.CANCEL))
self.messages.append(message)
self.infobar.push_message(message)
开发者ID:leogregianin,项目名称:pychess,代码行数:13,代码来源:__init__.py
示例9: matchDeclined
def matchDeclined(self, bm, player):
text = _(" has declined your offer for a match")
content = get_infobarmessage_content(player, text)
def response_cb(infobar, response, message):
message.dismiss()
return False
message = InfoBarMessage(Gtk.MessageType.INFO, content, response_cb)
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE,
Gtk.ResponseType.CANCEL))
self.messages.append(message)
self.infobar.push_message(message)
开发者ID:leogregianin,项目名称:pychess,代码行数:13,代码来源:__init__.py
示例10: offerDeclined
def offerDeclined (self, offer):
log.debug("Human.offerDeclined: self=%s %s" % (self, offer))
assert offer.type in ACTION_NAMES
heading = _("%s was declined by your opponent") % ACTION_NAMES[offer.type]
text = _("Resend %s?" % ACTION_NAMES[offer.type].lower())
content = InfoBar.get_message_content(heading, text, Gtk.STOCK_DIALOG_INFO)
def response_cb (infobar, response, message):
if response == Gtk.ResponseType.ACCEPT:
self.emit("offer", offer)
message.dismiss()
message = InfoBarMessage(Gtk.MessageType.INFO, content, response_cb)
message.add_button(InfoBarMessageButton(_("Resend"), Gtk.ResponseType.ACCEPT))
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE, Gtk.ResponseType.CANCEL))
self.gmwidg.showMessage(message)
开发者ID:sally0813,项目名称:pychess,代码行数:14,代码来源:Human.py
示例11: req_not_fit_formula
def req_not_fit_formula(self, bm, player, formula):
content = get_infobarmessage_content2(
player, _(" uses a formula not fitting your match request:"),
formula)
def response_cb(infobar, response, message):
message.dismiss()
return False
message = InfoBarMessage(Gtk.MessageType.INFO, content, response_cb)
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE,
Gtk.ResponseType.CANCEL))
self.messages.append(message)
self.infobar.push_message(message)
开发者ID:leogregianin,项目名称:pychess,代码行数:14,代码来源:__init__.py
示例12: opp_not_out_of_time
def opp_not_out_of_time (self, bm):
if self.gamemodel.remote_player.time <= 0:
content = get_infobarmessage_content2(
self.gamemodel.remote_ficsplayer,
_(" is lagging heavily but hasn't disconnected"),
_("Continue to wait for opponent, or try to adjourn the game?"),
gametype=self.gamemodel.ficsgame.game_type)
def response_cb (infobar, response, message):
if response == 2:
self.gamemodel.connection.client.run_command("adjourn")
message.dismiss()
return False
message = InfoBarMessage(Gtk.MessageType.QUESTION, content, response_cb)
message.add_button(InfoBarMessageButton(_("Wait"), Gtk.ResponseType.CANCEL))
message.add_button(InfoBarMessageButton(_("Adjourn"), 2))
self.showMessage(message)
return False
开发者ID:sally0813,项目名称:pychess,代码行数:17,代码来源:gamewidget.py
示例13: offer
def offer(self, offer):
log.debug("Human.offer: self=%s %s" % (self, offer))
assert offer.type in OFFER_MESSAGES
if self.gamemodel.players[1 - self.color].__type__ is LOCAL:
self.emit("accept", offer)
return
heading, text, takes_param = OFFER_MESSAGES[offer.type]
if takes_param:
param = offer.param
if offer.type == TAKEBACK_OFFER and \
self.gamemodel.players[1 - self.color].__type__ != REMOTE:
param = self.gamemodel.ply - offer.param
heading = heading % param
text = text % param
def response_cb(infobar, response, message):
if response == Gtk.ResponseType.ACCEPT:
self.emit("accept", offer)
elif response == Gtk.ResponseType.NO:
self.emit("decline", offer)
message.dismiss()
content = InfoBar.get_message_content(heading, text,
Gtk.STOCK_DIALOG_QUESTION)
message = InfoBarMessage(Gtk.MessageType.QUESTION, content,
response_cb)
message.add_button(InfoBarMessageButton(
_("Accept"), Gtk.ResponseType.ACCEPT))
message.add_button(InfoBarMessageButton(
_("Decline"), Gtk.ResponseType.NO))
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE,
Gtk.ResponseType.CANCEL))
self.gmwidg.showMessage(message)
开发者ID:TPNguyen,项目名称:pychess,代码行数:35,代码来源:Human.py
示例14: on_seek_updated
def on_seek_updated(self, glm, message_text):
if "manual accept" in message_text:
message_text.replace("to manual accept", _("to manual accept"))
elif "automatic accept" in message_text:
message_text.replace("to automatic accept",
_("to automatic accept"))
if "rating range now" in message_text:
message_text.replace("rating range now", _("rating range now"))
label = Gtk.Label(label=_("Seek updated") + ": " + message_text)
def response_cb(infobar, response, message):
message.dismiss()
return False
message = InfoBarMessage(Gtk.MessageType.INFO, label, response_cb)
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE,
Gtk.ResponseType.CANCEL))
self.messages.append(message)
self.infobar.push_message(message)
开发者ID:leogregianin,项目名称:pychess,代码行数:19,代码来源:__init__.py
示例15: onChallengeAdd
def onChallengeAdd(self, challenges, challenge):
log.debug("%s" % challenge,
extra={"task": (self.connection.username, "onChallengeAdd")})
SoundTab.playAction("aPlayerChecks")
# TODO: differentiate between challenges and manual-seek-accepts
# (wait until seeks are comparable FICSSeek objects to do this)
# Related: http://code.google.com/p/pychess/issues/detail?id=206
if challenge.adjourned:
text = _(" would like to resume your adjourned <b>%(time)s</b> " +
"<b>%(gametype)s</b> game.") % \
{"time": challenge.display_timecontrol,
"gametype": challenge.game_type.display_text}
else:
text = _(" challenges you to a <b>%(time)s</b> %(rated)s <b>%(gametype)s</b> game") \
% {"time": challenge.display_timecontrol,
"rated": challenge.display_rated.lower(),
"gametype": challenge.game_type.display_text}
if challenge.color:
text += _(" where <b>%(player)s</b> plays <b>%(color)s</b>.") \
% {"player": challenge.player.name,
"color": _("white") if challenge.color == "white" else _("black")}
else:
text += "."
content = get_infobarmessage_content(challenge.player,
text,
gametype=challenge.game_type)
def callback(infobar, response, message):
if response == Gtk.ResponseType.ACCEPT:
self.connection.om.acceptIndex(challenge.index)
elif response == Gtk.ResponseType.NO:
self.connection.om.declineIndex(challenge.index)
message.dismiss()
return False
message = InfoBarMessage(Gtk.MessageType.QUESTION, content, callback)
message.add_button(InfoBarMessageButton(
_("Accept"), Gtk.ResponseType.ACCEPT))
message.add_button(InfoBarMessageButton(
_("Decline"), Gtk.ResponseType.NO))
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE,
Gtk.ResponseType.CANCEL))
self.messages[hash(challenge)] = message
self.infobar.push_message(message)
txi = self.store.prepend(
[challenge, challenge.player.getIcon(gametype=challenge.game_type),
self.chaPix, challenge.player.name +
challenge.player.display_titles(), challenge.player_rating,
challenge.display_rated, challenge.game_type.display_text,
challenge.display_timecontrol, challenge.sortable_time,
self.textcolor_normal(), get_challenge_tooltip_text(challenge)])
self.challenges[hash(challenge)] = txi
self.__updateActiveSeeksLabel()
self.widgets["seektreeview"].scroll_to_cell(self.store.get_path(txi))
开发者ID:teacoffee2017,项目名称:pychess,代码行数:56,代码来源:SeekListPanel.py
示例16: tooManySeeks
def tooManySeeks(self, bm):
label = Gtk.Label(label=_(
"You may only have 3 outstanding seeks at the same time. If you want \
to add a new seek you must clear your currently active seeks. Clear your seeks?"))
label.set_width_chars(80)
label.props.xalign = 0
label.set_line_wrap(True)
def response_cb(infobar, response, message):
if response == Gtk.ResponseType.YES:
self.connection.client.run_command("unseek")
message.dismiss()
return False
message = InfoBarMessage(Gtk.MessageType.QUESTION, label, response_cb)
message.add_button(InfoBarMessageButton(Gtk.STOCK_YES,
Gtk.ResponseType.YES))
message.add_button(InfoBarMessageButton(Gtk.STOCK_NO,
Gtk.ResponseType.NO))
self.messages.append(message)
self.infobar.push_message(message)
开发者ID:leogregianin,项目名称:pychess,代码行数:21,代码来源:__init__.py
示例17: _infobar_adjourned_message
def _infobar_adjourned_message(self, game, player):
if player not in self.messages:
text = _(" with whom you have an adjourned <b>%(timecontrol)s</b> " +
"<b>%(gametype)s</b> game is online.") % \
{"timecontrol": game.display_timecontrol,
"gametype": game.game_type.display_text}
content = get_infobarmessage_content(player,
text,
gametype=game.game_type)
def callback(infobar, response, message):
log.debug(
"%s" % player,
extra={"task": (self.connection.username,
"_infobar_adjourned_message.callback")})
if response == Gtk.ResponseType.ACCEPT:
self.connection.client.run_command("match %s" %
player.name)
elif response == Gtk.ResponseType.HELP:
self.connection.adm.queryMoves(game)
else:
try:
self.messages[player].dismiss()
del self.messages[player]
except KeyError:
pass
return False
message = InfoBarMessage(Gtk.MessageType.QUESTION, content,
callback)
message.add_button(InfoBarMessageButton(
_("Request Continuation"), Gtk.ResponseType.ACCEPT))
message.add_button(InfoBarMessageButton(
_("Examine Adjourned Game"), Gtk.ResponseType.HELP))
message.add_button(InfoBarMessageButton(Gtk.STOCK_CLOSE,
Gtk.ResponseType.CANCEL))
make_sensitive_if_available(message.buttons[0], player)
self.messages[player] = message
self.infobar.push_message(message)
开发者ID:leogregianin,项目名称:pychess,代码行数:39,代码来源:ArchiveListPanel.py
示例18: run_analyze
def run_analyze(button, *args):
gmwidg = gamewidget.cur_gmwidg()
gamemodel = gameDic[gmwidg]
old_check_value = conf.get("analyzer_check", True)
conf.set("analyzer_check", True)
analyzer = gamemodel.spectators[HINT]
gmwidg.menuitems["hint_mode"].active = True
threat_PV = conf.get("ThreatPV", False)
if threat_PV:
old_inv_check_value = conf.get("inv_analyzer_check", True)
conf.set("inv_analyzer_check", True)
inv_analyzer = gamemodel.spectators[SPY]
gmwidg.menuitems["spy_mode"].active = True
title = _("Game analyzing in progress...")
text = _("Do you want to abort it?")
content = InfoBar.get_message_content(title, text, Gtk.STOCK_DIALOG_QUESTION)
def response_cb (infobar, response, message):
message.dismiss()
abort()
message = InfoBarMessage(Gtk.MessageType.QUESTION, content, response_cb)
message.add_button(InfoBarMessageButton(_("Abort"), Gtk.ResponseType.CANCEL))
gmwidg.showMessage(message)
def analyse_moves():
from_current = conf.get("fromCurrent", True)
start_ply = gmwidg.board.view.shown if from_current else 0
move_time = int(conf.get("max_analysis_spin", 3))
thresold = int(conf.get("variation_thresold_spin", 50))
for board in gamemodel.boards[start_ply:]:
if stop_event.is_set():
break
@idle_add
def do():
gmwidg.board.view.setShownBoard(board)
do()
analyzer.setBoard(board)
inv_analyzer.setBoard(board)
time.sleep(move_time+0.1)
ply = board.ply
if ply-1 in gamemodel.scores and ply in gamemodel.scores:
color = (ply-1) % 2
oldmoves, oldscore, olddepth = gamemodel.scores[ply-1]
score_str = prettyPrintScore(oldscore, olddepth)
oldscore = oldscore * -1 if color == BLACK else oldscore
moves, score, depth = gamemodel.scores[ply]
score = score * -1 if color == WHITE else score
diff = score-oldscore
if (diff > thresold and color==BLACK) or (diff < -1*thresold and color==WHITE):
if threat_PV:
try:
if ply-1 in gamemodel.spy_scores:
oldmoves0, oldscore0, olddepth0 = gamemodel.spy_scores[ply-1]
score_str0 = prettyPrintScore(oldscore0, olddepth0)
pv0 = listToMoves(gamemodel.boards[ply-1], ["--"] + oldmoves0, validate=True)
if len(pv0) > 2:
gamemodel.add_variation(gamemodel.boards[ply-1], pv0, comment="Treatening", score=score_str0)
except ParsingError as e:
# ParsingErrors may happen when parsing "old" lines from
# analyzing engines, which haven't yet noticed their new tasks
log.debug("__parseLine: Ignored (%s) from analyzer: ParsingError%s" % \
(' '.join(oldmoves),e))
try:
pv = listToMoves(gamemodel.boards[ply-1], oldmoves, validate=True)
gamemodel.add_variation(gamemodel.boards[ply-1], pv, comment="Better is", score=score_str)
except ParsingError as e:
# ParsingErrors may happen when parsing "old" lines from
# analyzing engines, which haven't yet noticed their new tasks
log.debug("__parseLine: Ignored (%s) from analyzer: ParsingError%s" % \
(' '.join(oldmoves),e))
widgets["analyze_game"].hide()
widgets["analyze_ok_button"].set_sensitive(True)
conf.set("analyzer_check", old_check_value)
if threat_PV:
conf.set("inv_analyzer_check", old_inv_check_value)
message.dismiss()
t = threading.Thread(target=analyse_moves, name=fident(analyse_moves))
t.daemon = True
t.start()
hide_window(None)
return True
开发者ID:metiscus,项目名称:pychess,代码行数:86,代码来源:analyzegameDialog.py
示例19: __init__
def __init__(self, message_type, content, callback, player, text):
InfoBarMessage.__init__(self, message_type, content, callback)
self.player = player
self.text = text
开发者ID:leogregianin,项目名称:pychess,代码行数:4,代码来源:__init__.py
示例20: coro
def coro():
persp = perspective_manager.get_perspective("games")
gmwidg = persp.cur_gmwidg()
gamemodel = gmwidg.gamemodel
old_check_value = conf.get("analyzer_check")
conf.set("analyzer_check", True)
if HINT not in gamemodel.spectators:
try:
yield from asyncio.wait_for(gamemodel.start_analyzer(HINT), 5.0)
except asyncio.TimeoutError:
log.error("Got timeout error while starting hint analyzer")
return
except Exception:
log.error("Unknown error while starting hint analyzer")
return
analyzer = gamemodel.spectators[HINT]
gmwidg.menuitems["hint_mode"].active = True
threat_PV = conf.get("ThreatPV")
if threat_PV:
old_inv_check_value = conf.get("inv_analyzer_check")
conf.set("inv_analyzer_check", True)
if SPY not in gamemodel.spectators:
try:
yield from asyncio.wait_for(gamemodel.start_analyzer(SPY), 5.0)
except asyncio.TimeoutError:
log.error("Got timeout error while starting spy analyzer")
return
except Exception:
log.error("Unknown error while starting spy analyzer")
return
inv_analyzer = gamemodel.spectators[SPY]
gmwidg.menuitems["spy_mode"].active = True
title = _("Game analyzing in progress...")
text = _("Do you want to abort it?")
content = InfoBar.get_message_content(title, text, Gtk.STOCK_DIALOG_QUESTION)
def response_cb(infobar, response, message):
conf.set("analyzer_check", old_check_value)
if threat_PV:
conf.set("inv_analyzer_check", old_inv_check_value)
message.dismiss()
abort()
message = InfoBarMessage(Gtk.MessageType.QUESTION, content, response_cb)
message.add_button(InfoBarMessageButton(_("Abort"), Gtk.ResponseType.CANCEL))
gmwidg.replaceMessages(message)
@asyncio.coroutine
def analyse_moves():
should_black = conf.get("shouldBlack")
should_white = conf.get("shouldWhite")
from_current = conf.get("fromCurrent")
start_ply = gmwidg.board.view.shown if from_current else 0
move_time = int(conf.get("max_analysis_spin"))
threshold = int(conf.get("variation_threshold_spin"))
for board in gamemodel.boards[start_ply:]:
if self.stop_event.is_set():
break
gmwidg.board.view.setShownBoard(board)
analyzer.setBoard(board)
if threat_PV:
inv_analyzer.setBoard(board)
yield from asyncio.sleep(move_time + 0.1)
ply = board.ply - gamemodel.lowply
color = (ply - 1) % 2
if ply - 1 in gamemodel.scores and ply in gamemodel.scores and (
(color == BLACK and should_black) or (color == WHITE and should_white)):
oldmoves, oldscore, olddepth = gamemodel.scores[ply - 1]
oldscore = oldscore * -1 if color == BLACK else oldscore
score_str = prettyPrintScore(oldscore, olddepth)
moves, score, depth = gamemodel.scores[ply]
score = score * -1 if color == WHITE else score
diff = score - oldscore
if ((diff > threshold and color == BLACK) or (diff < -1 * threshold and color == WHITE)) and (
gamemodel.moves[ply - 1] != parseAny(gamemodel.boards[ply - 1], oldmoves[0])):
if threat_PV:
try:
if ply - 1 in gamemodel.spy_scores:
oldmoves0, oldscore0, olddepth0 = gamemodel.spy_scores[ply - 1]
score_str0 = prettyPrintScore(oldscore0, olddepth0)
pv0 = listToMoves(gamemodel.boards[ply - 1], ["--"] + oldmoves0, validate=True)
if len(pv0) > 2:
gamemodel.add_variation(gamemodel.boards[ply - 1], pv0,
comment="Threatening", score=score_str0, emit=False)
except ParsingError as e:
# ParsingErrors may happen when parsing "old" lines from
# analyzing engines, which haven't yet noticed their new tasks
log.debug("__parseLine: Ignored (%s) from analyzer: ParsingError%s" %
(' '.join(oldmoves), e))
try:
pv = listToMoves(gamemodel.boards[ply - 1], oldmoves, validate=True)
gamemodel.add_variation(gamemodel.boards[ply - 1], pv,
comment="Better is", score=score_str, emit=False)
except ParsingError as e:
# ParsingErrors may happen when parsing "old" lines from
# analyzing engines, which haven't yet noticed their new tasks
log.debug("__parseLine: Ignored (%s) from analyzer: ParsingError%s" %
#.........这里部分代码省略.........
开发者ID:leogregianin,项目名称:pychess,代码行数:101,代码来源:analyzegameDialog.py
注:本文中的pychess.widgets.InfoBar.InfoBarMessage类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论