スキン自動作成ダイアログで、エンジンを選ばなくても「決定」可能

Issue #120 resolved
takuto_cw created an issue

次のβを作成するとのことなので、その前に未解決バグを放流します。自分では間に合わないそうにないので、余裕がありましたら手伝っていただけないでしょうか…?

WinXP SP3 + cardwirthpy_20140305b で確認いたしました。

スキン自動作成ダイアログにて、コピー元エンジンを選ばなくても「決定」ボタンが押せてしまいます。2回押すとフリーズし、右上の×では終了できなくなります。

どうぞよろしくお願いします。

Comments (6)

  1. tachi gigas

    参考情報で申し訳ないですが、試したところエラーログが出力されていますね。

    一度目(エラーダイアログ表示、復帰可能)

    Traceback (most recent call last):
      File "C:\(cwpyパス)\cw\skin\convert.py", line 938, in run
        res = self.res.get_bitmap(resname)
    AttributeError: 'NoneType' object has no attribute 'get_bitmap'
    
    Exception in thread Thread-1:
    Traceback (most recent call last):
      File "C:\(Pythonパス)\lib\threading.py", line 810, in __bootstrap_inner
        self.run()
      File "C:\(cwpyパス)\cw\skin\convert.py", line 1035, in run
        raise ex
    AttributeError: 'NoneType' object has no attribute 'get_bitmap'
    

    二度目(フリーズ)

    Traceback (most recent call last):
      File "C:\(cwpyパス)\cw\dialog\skin.py", line 78, in OnOk
        self.conv.start()
      File "C:\(Pythonパス)\lib\threading.py", line 739, in start
        raise RuntimeError("threads can only be started once")
    RuntimeError: threads can only be started once
    

    二度目以降も一度目と同じ反応が返ってくれば理想的、と推測しています。

  2. tachi gigas

    調べました。本体・データなどの場所指定がなければそもそも決定ボタンが押せないコードになっています。問題は、本体の初期値が空白で、決定ボタンがデフォルトで有効化されている事と思われます。よって、決定ボタンがデフォルトで無効化されれば良いという結論を得ました。

    作業します。

  3. tachi gigas

    pull request #182

    イリーガルな入力への完全な対応とは言えませんが、これで操作ミスによる事故は減ると思います。イリーガルな入力に対応するにはまた別途考えなければいけません。

  4. k4nagatsuki repo owner

    pull requestをマージしました。CWでは全般的に入力無しだとOKが押せないというような処理になっているので、統一するためにも当面はこれでいいと思います。

    後から確認して問題が残っている場合はコメントください。

  5. takuto_cw reporter

    ありがとうございます! 修正確認しました。自分ではどうにもならなかったので、本当に助かります。

  6. Log in to comment