クーポンビューの追加
クーポンの一覧はCtrl+F>称号名称一覧で下の「検索」を押すことで出力できます。(WBのようなデータベース化の要望は出ていて現在検討中のようです)
暗黒騎士さんのこれを読んでオープンな課題としては見つからなかったので立ててみました。 欲しい理由は参照を検索時の不便の解消です。 例えば
この画面で1の参照を検索します。すると
この画面になりますね。 ここから今度は2のクーポンの参照を検索するには、再び検索をかけて一覧を表示させないといけません。10個ぐらいのクーポンを調べようと思ったら、ビルダーと比べてかなり不便を強いられることになります。
クーポンビューと書いてますがゴシップも見れるようにしたいですね。
Comments (24)
-
-
reporter -
ただ、メモリ上に一時的にそうした実体を作ってコンボボックスなどで選択できるようにする、という形などで実現できないわけではない
メモリ上の一時的な実体を作る=データベース化です。(WBでも利用数0のクーポンは保持されない) それはUIの違いで中身でやることは一緒です。
急に閉じられた印象を受けたので、別に大丈夫というつもりで言ったんですが、お気を悪くされたのでしたらすいません。
-
reporter となるとデータベース化というのを自分が勘違いしてたのかな。 WBのデータウィンドウのクーポンの欄のようなものを作るという意味だと思っていたのですが。 というかデータベース化を実現しないとそれが作れないということでしょうか。
正直言うと
ただ、メモリ上に一時的にそうした実体を作ってコンボボックスなどで選択できるようにする、という形などで実現できないわけではない
これについてはよく分かってなかったです。特にコンボボックスなどで選択できるようにするというのがどういうイメージで仰られていたのか全く分かってなかった。
急に閉じられた印象を受けたので、別に大丈夫というつもりで言ったんですが、お気を悪くされたのでしたらすいません。
あまり気を使わないでください。何が良いか、良くないかを語る場で感情的な配慮は望ましいものではないと思います。でないと言いたいことも言えないでしょう。閉じた理由は書いた通りです。たぶん誤解されてるのは、あの提案でやりたかったのは連番の作成です。データベース化云々についてはそもそもよく分かってなかった。分かってないから、視野にも入ってなかった。単純に自分の理解不足でした。
-
reporter 暗黒騎士さんの指摘でWBを振り返ってみたのですが、クーポン・ゴシップビューはWBの目玉機能の一つですね。
これを追加するということはここに クーポン・ゴシップの追加を入れる必要があって、つまりDB化ということかな。 自分としてはクーポンビューで今使ってるクーポンが一覧で見れたらぐらいで課題を立てたのですが、どうも勘違いしてたようです。
-
reporter - marked as minor
事が自分が想像してた以上に大きく、長丁場になりそうなので優先度を一つ下げときます。
-
repo owner おさらいとして書いておきます。
この一覧を出すためには、シナリオをロードしたり編集したりした時、メモリ上に、シナリオ上で使われている称号などの一覧を保持しておき、リアルタイムに編集を反映して更新する必要があります。
その内部的な一覧は、実際にはすでにあります。検索した時に一瞬でリストが出てきたり、使用回数をカウントできているのはこれを使用しているからです。
問題は、そのリストは当初から使用回数カウントのために設計された機能で、使用されていない称号等は相手にしていないという事です。追加や削除を行う時の問題はここにあります。称号を専用のビューで追加すると、その称号は存在するが使用者はまだいない、という状態になります。使用回数カウンタとしてのリストはそのような状態を想定していません。ここのところが問題で、少し設計を変える必要があります。
例えばイベントコンテントやカードを編集した結果、使用回数が0になった称号は、リストから消える必要があります……が、称号を独立した存在として考えると、使用回数が0になっても消せないという事になります。
そこで自動的に消さない事にすると延々ゴミが残るかもしれませんし、だからといって消す事にすると、ビューで追加した称号をどこか1箇所で使って、その1箇所をアンドゥなどで消した途端にビューからも追加したばかりの称号が消滅するという、甚だ直感に反する挙動が発生します。
このように使用回数0の問題が厄介な一方で、常に称号一覧を表示してリアルタイムに更新するという事が現在できない理由はもっと小さなもので、単に編集中にそれを更新していくとパフォーマンスが悪化するのではないかという懸念があったためです。
たぶんこの懸念は杞憂です。リストはすでに存在しているので、あとはそれを表示するだけであり、たぶん称号が何万件もない限り、表示には体感できるほどの時間はかからないはずです。
実はクーポンビュー的な機能を要望されたのは@jinto_さんが2人目です(もう1つの要望は過去のIssueにあったはず)。以前の要望にも称号・名称検索を行ってくださいという返答をしたのですが、それが不便である事は明白なので、そろそろ改善は避けられないと私としても思っています。
称号・名称一覧の検索結果がリアルタイムに更新されるだけでもだいぶましになるはずです。
-
reporter 称号・名称一覧の検索結果がリアルタイムに更新されるだけでもだいぶましになるはずです。
これは
自分としてはクーポンビューで今使ってるクーポンが一覧で見れたら
と同じ意味であり、そしてその実現自体はそれほど難しくはないだろうという理解でいいのかな。 それなら自分としてはそれで十分です。
-
reporter - edited description
-
reporter - marked as major
- edited description
-
repo owner 追加してみました。こんな感じでどうでしょう。
表示されていない場合は、「表示」メニューから「クーポンビュー」を選択してください。
クーポンが6万件くらいあるシナリオでテストしてみたのですが、これだけあるとさすがに数秒単位で時間がかかってしまいますね。ビューを非表示にさえすればパフォーマンス上の影響は消えるのですが。
-
reporter ありがとうございます。
クーポンが一覧で見れて参照が検索できるので自分は満足です。 画面がちょっと複雑になった感じがするのが欠点でしょうか。
個人的には終了印・キーコード・セル名称ビューはなくてよかったです。
そこまで使う頻度もないだろうから、称号・名称一覧の検索の方でやってもらうのでよかった気がします。
逆に終了印・キーコード・セル名称ビューがあるとなると称号・名称一覧はもう必要ないのではと思えます。
それらを置いといても終了印ビューだけはビュー画面という花形の位置に置かれるようなものかという疑問があります。クーポンが6万件くらいあるシナリオでテスト
6万件はすごいですね。でもそれで数秒ならむしろ問題ないということなのでは。
とにかく対応の方、ありがとうございます。
-
reporter クーポンマガジン CW号で_CH桃をコピー(クーポンビュー)してイベントビューで貼り付けするとエラーログが出ました。
コピーが何に使うのかわからない。2017-03-18 23:15:25 [Build: 2017-03-18 20:52:27 Debug (64-bit)] cwx\utils.d:135 Stack Trace -------- cwx\editor\gui\dwt\mainwindow.d-mixin-4458, 4458 cwx\editor\gui\dwt\mainwindow.d-mixin-4461, 4461 cwx\editor\gui\dwt\dmenu.d-mixin-381, 381 cwx\editor\gui\dwt\dmenu.d-mixin-166, 166 cwx\editor\gui\dwt\dmenu.d-mixin-175, 175 cwx\editor\gui\dwt\eventtreeview.d-mixin-3328, 3328 cwx\editor\gui\dwt\eventtreeview.d-mixin-3470, 3470 cwx\editor\gui\dwt\eventtreeview.d-mixin-3505, 3505 cwx\editor\gui\dwt\eventtreeview.d-mixin-3509, 3509 cwx\editor\gui\dwt\eventtreeview.d-mixin-3514, 3514 cwx\editor\gui\dwt\eventtreeview.d-mixin-3515, 3515 cwx\editor\gui\dwt\eventtreeview.d-mixin-3526, 3526 cwx\script.d-mixin-84, 84 -------- 2017-03-18 23:15:25 [Build: 2017-03-18 20:52:27 Debug (64-bit)] cwx\editor\gui\dwt\mainwindow.d:4562 [invalid UTF-8 sequence] src\rt\util\utf.d, 292: 0x00007FF635C6C110 0x00007FF635C687AC 0x00007FF635C529ED 0x00007FF6356CEA0D 0x00007FF634776C0C 0x00007FF6353685FF 0x00007FF6353679E8 0x00007FF635364128 0x00007FF634281A5B 0x00007FF63429F6BE 0x00007FF635A49DBB 0x00007FF635AEE4F9 0x00007FF6358FA0A9 0x00007FF635A13E53 0x00007FF635A118CD 0x00007FF634887659 0x00007FF6354FFD93 0x00007FF635C555F2 0x00007FF635C554AF 0x00007FF635C5556C 0x00007FF635C554AF 0x00007FF635C552C9 0x00007FF635500434 0x00007FF635D14C89 0x00007FFA50C68364 in BaseThreadInitThunk 0x00007FFA528A70D1 in RtlUserThreadStart
-
repo owner ご確認・ご報告ありがとうございます。
個人的には終了印・キーコード・セル名称ビューはなくてよかったです。
それらのビューを作ったのは、称号と扱い方が同じで、クーポンビューを作るのであれば手間無しで作る事が可能だからです。コピーもそうですが、cwxeditorはよほど邪魔とか別の問題が出るとかでなければ入れられる機能は入れる主義です。シナリオの内容によっては役立つかもしれません(コピーは名前のリストをテキストで得られるのですが、メモとか情報のやり取りに使える、かなぁ……)。
ただ使用頻度が低そうに思えるのは確かなので、初期設定ではクーポンビュー以外は非表示にしています。
逆に終了印・キーコード・セル名称ビューがあるとなると称号・名称一覧はもう必要ないのではと思えます。
これは私も一瞬そう思ったのですが、検索画面には検索範囲を限定する機能があり、特定のエリアで使われている称号だけ検索、というような事ができます。そのため残しました。
エラーは、CWXスクリプトの構文解析結果が少しおかしかった事が原因のもので、元々あったものでした。イベントツリービューでは、イベントツリーのデータでないテキストを貼り付けようとしたらCWXスクリプトと仮定してコンパイルする事にしているので、このバグがたまたま発見できたようです。
pull request #18で修正しました。
-
reporter 特殊なこだわりなのを認めたうえでですが、便利か便利でないかと言えば便利だと思います。
たまに使うことはあるでしょう。
でもきれいじゃないです。
自分にとって表示で示される選択肢というのはオールスターのようなものです。
そこに2割5分以下のバッターが三人入り込んできたような感じがして、あまり気持ちが良くない。
場違いなものがあるという違和感が、xeditorが前よりきれいなものではなくなった(ごたごたしたものになった)という印象になってます。
そこは自分の中で便利さよりも優先される感覚です。
なのでやっぱりなくしてほしいです。
或いは、好きな人だけ表示の所に出せるようにするとか。
これはこれであまりきれいではないと思いますが。検索画面には検索範囲を限定する機能があり
そこは失念していました。
失礼しました。エラーログの方は出なくなりました。
対応ありがとうございます。 -
repo owner エディタはシナリオを作るソフトですから、いざという時に手に届く所に道具がある事が必要です。全体をその思想で作っていますから、機能自体は存在するに越した事はありません。
例えばCWXスクリプト関係や、データをXMLに変換する機能は、たまに重宝しているという人もいますが、人によっては一生使わないかもしれません。そうした機能は大量にあります。今回のクーポンビューも、私がいらないと思っていたので今まで存在しませんでした。
ある機能を使わない人がそれぞれ「使わない機能をメニューに置くと美しくない」と言い、それを受け入れると、別の人が愛用している・これから愛用するかもしれなかった機能が失われてしまいます。そうした喪失が増えると、結局ほとんど全てのユーザが損をします。
一人が、いらない、消したいと思うものは、世の中全体にとっていらないものではないのです。これは既存のものにもいえますし、新しいものにもいえる事です。
それを踏まえた上で、やはり簡潔性も必要です。あまりにもメニューがごちゃごちゃしすぎると、整理されていない道具箱と同じで、結局機能に手が届きません。
今回、それは「表示」メニューの中身の話になりますが、「表示」メニューは元々そんなに大きくないので、今回の5件を追加しただけで中身が把握できないほど複雑になるようには思えませんし、そもそも「表示」メニュー自体しょっちゅう表示するようなものではないと思うのですが、いかがでしょうか。
耐え難いほど美しくないという事でしたら、サブメニューに収めるという手もあります。これはいざ必要な時にアクセス性が若干落ちる(そのため必要なのに機能の存在に気づかないケースが出る)という代償を伴いますが、仕方ないという場合もあります。一人耐えられない人がいるなら他にもいるかもしれません。
或いは、好きな人だけ表示の所に出せるようにするとか。
これはたぶんメニューのカスタマイズという課題に繋がっていく話だと思います。とんでもなく大変な気がします。
-
reporter これはxeditorに流れる一貫した思想による拒絶ですね。
納得しました。
今までのxeditorにも慣れたのだから、今のxeditorにもその内慣れるでしょう。
同じ思想で作られてるわけだから。
1週間ほど置いてこれで大丈夫と判断したら解決とします。 -
repo owner 念のため、誤解しないでいただきたいのですが、@jinto_さんや他の方の考えに私の考えや既成の思想が常に優先するというわけではありません。合理的な理由があればそっちを曲げる事もあります。
どうしても慣れられそうもなかったら遠慮なく仰ってください。そんなに慣れられないという事は、何か重大な問題があると考えられますから、その正体を探って解決を試みる必要があります。
-
reporter そこまで深刻なものではないです。
あまり使われないものは前(表示メニュー)より後ろ(称号・名称一覧)に回してほしいと思っただけです。
自分にはその方がきれいに見えるというだけで、感覚が基本なので合理性は乏しいです。
今の画面も筋が通っていてきれいと見れなくもないです。 -
reporter クーポン・ゴシップビューを表示して新しいシナリオを開く時、動作を停止からのプログラムの終了に高頻度で遭遇するようになりました。
今までで確実に10回以上。試しに冒険者の宿で(Ver-7.90)からシナリオAを10回開いてみます。
その時の動作を停止した回数が、
クーポン・ゴシップビューを非表示 〇〇〇〇〇〇〇〇〇〇
クーポン・ゴシップビューを表示 ××〇〇××〇〇〇〇
ちょっと心配になるレベルです。 -
repo owner どうも手許で再現しないですね。その手の異常終了の事例にはいくらか経験があって、大抵はDWT(GUIツールキット)の一部のAPIを避ける事で回避できました。今回、普段使っていないAPIを使ったので、そのせいかもしれません。
試しにそのAPIを避けたバージョンを以下に上げてみました。これで問題が再現するか試していただけないでしょうか。
https://bitbucket.org/k4nagatsuki/cwxeditor-k4nagatsuki/downloads/
また、この手の問題は、32-bitか64-bitかなど、ビルド内容によっても再現性が変わるかもしれないので、OSなどの環境の情報に加え、問題が起きる版のバージョン情報のところにあるビルドデータをコピーして貼り付けていただけると助かります。
-
reporter どうもすみません。 XEditor側の問題ではなかったようです。
Windows10のUPDATE後、メモリの使用率がかなり上がってたようで(70越えは当たり前になってた)シナリオを開いて強制停止していたのはそれが一時的に100に達していたからではと思います。(あるいはCPUか?よく分からない)
掃除を敢行したら停止することはなくなりました。
メモリは4GBはあるのですが、色々やばい状況でした。
余計な手間をかけさせてしまってすみません。 -
repo owner という事は、特にDWTの問題というわけでもなかったのですね。了解しました。
「冒険者の宿で」クラスのシナリオになるとクーポンやゴシップの量がバカにならなくなってきますね。
-
reporter - changed status to resolved
特に問題はないので、これで解決とします。
ありがとうございます。 - Log in to comment
すいません、そういえば
#129は閉じられていましたね。課題は再オープンすることも可能です。また、長月さんは課題をためておく派のようですので、明白に解決している場合以外は別段急いで閉じなくて大丈夫だと思います。