これは小さな問題だと思います。
次の問題。
USBスティックに保存するプロジェクトがいくつかあります。 だから私はそれらをgodotにインポートし、すべてが正常に機能します。
USBスティックが接続されていて、godotを起動すると、プロジェクトが一覧表示されます。
ここで問題が発生します。 USBスティックが接続されておらず、godotを開始した場合、プロジェクトはもちろんリストされません。 しかし、その後、リストから完全に削除されるようです。 スティックをコンピューターに接続してからgodotを再起動しても、プロジェクトは終了し、手動で再度追加する必要があります。 これは少し面倒です。
そのプロジェクトがまだ保存されているとよいでしょう。 USBスティックが差し込まれていなくても。
ロジックは、システム上で見つからなくてもリスト内のすべてのプロジェクトを保持することである可能性がありますが、グレー表示されているか、欠落している場合は何かである可能性があります。 このようなプロジェクトを編集/実行しようとすると、ファイルが欠落していることを通知するポップアップがトリガーされ、必要に応じてプロジェクトリストから削除することが提案されます。
#8792での提案は、それらをリストに保持し、さらにプロジェクトリストから削除するオプションを提供することでした。
以前、エディターのプロジェクトリストのコードを覗いてみましたが、これをどのように実装できるかについての基本的な考えはあると思います。 私のc ++スキルは限られていますが、後でこれを機能させることに挑戦するかもしれません。
ProjectManager::_load_recent_projects()
内のFileAccess::exists(conf)
elseブロックは、例としてEditorSettings
から次の行をフェッチするように変更できます。
(favourite_)projects/::path::to::my::awesome::godot::project/cached_project_name
(favourite_)projects/::path::to::my::awesome::godot::project/cached_project_modified_time
(favourite_)projects/::path::to::my::awesome::godot::project/cached_project_icon
(おそらく.godot/tmp
?)
明らかに欠落しているconf
どのように処理するのか疑問に思っています。 ディスク上のファイルをもう一度チェックしたり、 conf
が特別な「プロジェクトが見つかりません」という文字列であるかどうかを確認したりできますが、他にも考慮すべきことがたくさんあります。
最も参考になるコメント
ロジックは、システム上で見つからなくてもリスト内のすべてのプロジェクトを保持することである可能性がありますが、グレー表示されているか、欠落している場合は何かである可能性があります。 このようなプロジェクトを編集/実行しようとすると、ファイルが欠落していることを通知するポップアップがトリガーされ、必要に応じてプロジェクトリストから削除することが提案されます。