堕天使の煉獄
2023-05
26
23:53:05
下手の考え休むに似たり
いま組み直してる書庫内画像ファイル編集ツール、verは3.0として作り直してるのですが。
そんで普段運用してるのはv1.1.0で、まだQt5の頃で、しかも32bitアプリだったりいろいろと古かったりして。
その間にver2.0を組み直しとして作り直しやってた時期あったのだけども、どうして途中で放棄したのかってのをはっきりと思い出したり。
そう、今丁度組み始めてる部分。
書庫内ファイルリストのデータ構造のあたりでものすごく悩んで、悩んでるうちにやる気失せちゃったんですよね。
書庫の中のファイルリストの構造は、単純にディレクトリパス(相対パス)とファイル名のセットのパス名のフィールドがあるだけで、あとは単純にズラッと並んでるだけで。
順番とかも特に決まってないし、あとはzipの場合フォルダを意味する「フォルダアイテム」的なものもあるのですが、これは必須ではなく、あってもなくても良い。
逆に言うと、それに依存した読み込みはしちゃ駄目だったりするぽ。
実際、手持ちの書庫作成ツールいくつか試してみたら一個、ディレクトリアイテム作成しないソフトあったし。
なので、自前でパスからディレクトリ構造を構築しないと行けない感じなのです。
まあそこまではさして難しいはなしでもないのですが。
旧版では、ファイルリストはQTableWidgetで表示してたりで。
ディレクトリ構造はパスでソートするだけで単一のリストとして扱う感じで。
んで、旧版と使う上でファイルリスト周りでは新たに追加したい機能として、
「余分なフォルダの除去」
「リスト内ファイルをドラッグでファイルの順番の並び替え」
「ディレクトリ名の変更」
「ディレクトリの削除」
といったものを追加したいなと思っていて。
そうなると、ツリー構造にしないと駄目な感じかなぁと。
表示もQTreeWidgetに変更するべきかなぁ……。
そのあたりでデータ構造を考え直すところでかなり行き詰まってver2.0は忘却の彼方に消えていった感じだったりする。
で今回。
今回もおんなじところでフンづまる。
どうやってもツリー構造にるすと複雑になりすぎて、もっとシンプルに組めないものか……と。
上に上げた追加要項や元々の機能がやりやすいリスト構造という縛りもあるので、そのへんでとっても難航してたりして。
んで、下手の考え休むに似たりってことで、すぐに妙案浮かばないんならいっそ休む(=遊ぶ)か~ってことで、ここ数日、以前大型最終アップデートが来てそこそこしゃぶり尽くしたあと、さらにプチアップデートが続いてたのが終わった感じだったので「ざくアク」をはじめから再プレイしてたり。
まだEX版部分にまでたどり着いてないですけど。ようやく水着イベントにこぎつけたあたり。
で、そのあたりでずっとプレイ中とか、寝る前とかにももんもんとデータ構造の案を練ってたりして、ようやく行けそうな案が浮かんだので作業再開な感じぽ。
まだ実装途中なのでテストまでいってないのだけども、ディレクトリパスとキーとしたハッシュリストにディレクトリ内アイテムリストを持つ感じにして、ファイルの並び替えはリストを右クリックしてコンテキストメニューから「ファイル名個別編集(仮)」を選択すると、該当ファイルが所属するディレクトリ内のファイルリストのみを対象としたリストを別窓で開いて編集する感じにしてみようかなと。
全部が単一のリスト内でドラッグ移動許可すると、フォルダをまたいだ移動の処理が大変面倒くさいことになる……っていうのがネックだったんですよね。
そこだけ処理を切り分けるようにしたのと、基本的にディレクトリ内アイテムリストを一つの単位として扱う感じにして、「余分なフォルダの除去」なんかはその走査のためだけにワークでツリー構造を構築してそっちで処理する。
実際のファイル管理にはツリー構造は使わない。
って感じのやり方でかなりシンプルなデータ構造にしたまま、機能追加の要項満たせる感じのできそうぽ。
てか、普段QTreeWidgetなんかはQDirとかからフォルダツリー構造そのまま引っ張ってくる使い方で簡単に作れちゃう……というかそういう用途でしか殆ど使ったこと無いのでのであんま気にしてなかったけども。
自前でただの文字列のディレクトリパスから"/"区切りでパス分解してツリー構造自前で構築とかほんと面倒な処理なんだなぁと……。
ただツリー構造つくるだけならともかく、間のディレクトリの名前変えたり、間にあるディレクトリを削除したりとかそういう処理まで入れてくと、再帰的に処理しなきゃいけない部分も多いしでどんどん複雑になっていくし。
かなり限定出来な使い方なので、今後流用することもあんまなさそうだしで。
一度組んだら、半年もしたらもうどうなってるのかわけわからん感じになりそうなぐらい複雑になっちゃうしで。
実際、今回の組み直しの際に、ツリー構造に変更するべきかなぁってのは漠然とあった……というかver2.0のころの記憶がちょっと残ってたかんじだったので、一旦ツリー構造で組んでみたんですけどね。
あまりにも取り扱いが面倒くさい感じになっちゃって。
あとからメンテとか機能追加とか考えるとちょっとコレは別の案考えたほうが……って感じになったんですよね。
まあ、ずっと悩み続けてるとどんどんモチベーションも削られていくし、休むに似たりの言葉通り、時間だけ浪費することになるので、スパッと気分転換したのは成功だったかも知んない。
あとはトピック
Firefox 113でタブがまた上に戻りやがったファッキン……てなったばっかだけど、
ピクチャーインピクチャー画面にシークバーと早送り+巻戻しボタンを表示
が追加されてて、これはグッジョブ……。
ていうかピクチャーインピクチャー導入されたの随分前だけど、その時点でピクチャーインピクチャーにシークバーないんかい……。
とずっと不便感じてたので、ようやく……って感じだったりもするんだけどね。
そして最近温度差激しいな。
真夏かってぐらい暑いと思ったら、もうしまうつもりだった長袖引っ張り出してくるぐらい寒い日に戻ったりで。
寝て起きたら風邪とか引きそうで怖い~。
季節の変わり目は気をつけないとね。
そんで普段運用してるのはv1.1.0で、まだQt5の頃で、しかも32bitアプリだったりいろいろと古かったりして。
その間にver2.0を組み直しとして作り直しやってた時期あったのだけども、どうして途中で放棄したのかってのをはっきりと思い出したり。
そう、今丁度組み始めてる部分。
書庫内ファイルリストのデータ構造のあたりでものすごく悩んで、悩んでるうちにやる気失せちゃったんですよね。
書庫の中のファイルリストの構造は、単純にディレクトリパス(相対パス)とファイル名のセットのパス名のフィールドがあるだけで、あとは単純にズラッと並んでるだけで。
順番とかも特に決まってないし、あとはzipの場合フォルダを意味する「フォルダアイテム」的なものもあるのですが、これは必須ではなく、あってもなくても良い。
逆に言うと、それに依存した読み込みはしちゃ駄目だったりするぽ。
実際、手持ちの書庫作成ツールいくつか試してみたら一個、ディレクトリアイテム作成しないソフトあったし。
なので、自前でパスからディレクトリ構造を構築しないと行けない感じなのです。
まあそこまではさして難しいはなしでもないのですが。
旧版では、ファイルリストはQTableWidgetで表示してたりで。
ディレクトリ構造はパスでソートするだけで単一のリストとして扱う感じで。
んで、旧版と使う上でファイルリスト周りでは新たに追加したい機能として、
「余分なフォルダの除去」
「リスト内ファイルをドラッグでファイルの順番の並び替え」
「ディレクトリ名の変更」
「ディレクトリの削除」
といったものを追加したいなと思っていて。
そうなると、ツリー構造にしないと駄目な感じかなぁと。
表示もQTreeWidgetに変更するべきかなぁ……。
そのあたりでデータ構造を考え直すところでかなり行き詰まってver2.0は忘却の彼方に消えていった感じだったりする。
で今回。
今回もおんなじところでフンづまる。
どうやってもツリー構造にるすと複雑になりすぎて、もっとシンプルに組めないものか……と。
上に上げた追加要項や元々の機能がやりやすいリスト構造という縛りもあるので、そのへんでとっても難航してたりして。
んで、下手の考え休むに似たりってことで、すぐに妙案浮かばないんならいっそ休む(=遊ぶ)か~ってことで、ここ数日、以前大型最終アップデートが来てそこそこしゃぶり尽くしたあと、さらにプチアップデートが続いてたのが終わった感じだったので「ざくアク」をはじめから再プレイしてたり。
まだEX版部分にまでたどり着いてないですけど。ようやく水着イベントにこぎつけたあたり。
で、そのあたりでずっとプレイ中とか、寝る前とかにももんもんとデータ構造の案を練ってたりして、ようやく行けそうな案が浮かんだので作業再開な感じぽ。
まだ実装途中なのでテストまでいってないのだけども、ディレクトリパスとキーとしたハッシュリストにディレクトリ内アイテムリストを持つ感じにして、ファイルの並び替えはリストを右クリックしてコンテキストメニューから「ファイル名個別編集(仮)」を選択すると、該当ファイルが所属するディレクトリ内のファイルリストのみを対象としたリストを別窓で開いて編集する感じにしてみようかなと。
全部が単一のリスト内でドラッグ移動許可すると、フォルダをまたいだ移動の処理が大変面倒くさいことになる……っていうのがネックだったんですよね。
そこだけ処理を切り分けるようにしたのと、基本的にディレクトリ内アイテムリストを一つの単位として扱う感じにして、「余分なフォルダの除去」なんかはその走査のためだけにワークでツリー構造を構築してそっちで処理する。
実際のファイル管理にはツリー構造は使わない。
って感じのやり方でかなりシンプルなデータ構造にしたまま、機能追加の要項満たせる感じのできそうぽ。
てか、普段QTreeWidgetなんかはQDirとかからフォルダツリー構造そのまま引っ張ってくる使い方で簡単に作れちゃう……というかそういう用途でしか殆ど使ったこと無いのでのであんま気にしてなかったけども。
自前でただの文字列のディレクトリパスから"/"区切りでパス分解してツリー構造自前で構築とかほんと面倒な処理なんだなぁと……。
ただツリー構造つくるだけならともかく、間のディレクトリの名前変えたり、間にあるディレクトリを削除したりとかそういう処理まで入れてくと、再帰的に処理しなきゃいけない部分も多いしでどんどん複雑になっていくし。
かなり限定出来な使い方なので、今後流用することもあんまなさそうだしで。
一度組んだら、半年もしたらもうどうなってるのかわけわからん感じになりそうなぐらい複雑になっちゃうしで。
実際、今回の組み直しの際に、ツリー構造に変更するべきかなぁってのは漠然とあった……というかver2.0のころの記憶がちょっと残ってたかんじだったので、一旦ツリー構造で組んでみたんですけどね。
あまりにも取り扱いが面倒くさい感じになっちゃって。
あとからメンテとか機能追加とか考えるとちょっとコレは別の案考えたほうが……って感じになったんですよね。
まあ、ずっと悩み続けてるとどんどんモチベーションも削られていくし、休むに似たりの言葉通り、時間だけ浪費することになるので、スパッと気分転換したのは成功だったかも知んない。
あとはトピック
Firefox 113でタブがまた上に戻りやがったファッキン……てなったばっかだけど、
ピクチャーインピクチャー画面にシークバーと早送り+巻戻しボタンを表示
が追加されてて、これはグッジョブ……。
ていうかピクチャーインピクチャー導入されたの随分前だけど、その時点でピクチャーインピクチャーにシークバーないんかい……。
とずっと不便感じてたので、ようやく……って感じだったりもするんだけどね。
そして最近温度差激しいな。
真夏かってぐらい暑いと思ったら、もうしまうつもりだった長袖引っ張り出してくるぐらい寒い日に戻ったりで。
寝て起きたら風邪とか引きそうで怖い~。
季節の変わり目は気をつけないとね。
Sun
Mon
Tue
Wed
Thu
Fri
Sat
01
02
■
■
今週気づいたこと
03
[憲法記念日]
04
[みどりの日]
05
[こどもの日]
06
07
08
09
10
11
12
13
14
15
■
■
少しずつでも
16
■
■
暑い寒い
17
18
■
■
あほかっ
19
■
■
おもったほどでは
20
21
22
■
■
タイトルがしんどい
23
24
25
26
■
■
下手の考え休むに似たり
27
28
■
■
細かいところで
29
30
31
total:2081312 t:72 y:214
■記事タイトル■
■年度別リスト■
2024年
2024年12月(0)2024年11月(0)
2024年10月(1)
2024年09月(2)
2024年08月(1)
2024年07月(1)
2024年06月(5)
2024年05月(2)
2024年04月(1)
2024年03月(6)
2024年02月(4)
2024年01月(3)
2023年
2023年12月(3)2023年11月(1)
2023年10月(2)
2023年09月(3)
2023年08月(3)
2023年07月(3)
2023年06月(7)
2023年05月(8)
2023年04月(2)
2023年03月(1)
2023年02月(2)
2023年01月(3)
2022年
2022年12月(4)2022年11月(3)
2022年10月(1)
2022年09月(3)
2022年08月(3)
2022年07月(2)
2022年06月(1)
2022年05月(3)
2022年04月(2)
2022年03月(2)
2022年02月(1)
2022年01月(6)
2021年
2021年12月(8)2021年11月(3)
2021年10月(4)
2021年09月(6)
2021年08月(2)
2021年07月(1)
2021年06月(3)
2021年05月(2)
2021年04月(2)
2021年03月(3)
2021年02月(1)
2021年01月(4)
2020年
2020年12月(3)2020年11月(7)
2020年10月(2)
2020年09月(3)
2020年08月(1)
2020年07月(3)
2020年06月(7)
2020年05月(5)
2020年04月(8)
2020年03月(4)
2020年02月(2)
2020年01月(4)
2019年
2019年12月(1)2019年11月(1)
2019年10月(2)
2019年09月(1)
2019年08月(3)
2019年07月(2)
2019年06月(2)
2019年05月(2)
2019年04月(4)
2019年03月(1)
2019年02月(7)
2019年01月(1)
2018年
2018年12月(1)2018年11月(1)
2018年10月(5)
2018年09月(1)
2018年08月(5)
2018年07月(1)
2018年06月(1)
2018年05月(1)
2018年04月(2)
2018年03月(2)
2018年02月(1)
2018年01月(1)
2017年
2017年12月(2)2017年11月(1)
2017年10月(2)
2017年09月(5)
2017年08月(8)
2017年07月(2)
2017年06月(1)
2017年05月(1)
2017年04月(3)
2017年03月(5)
2017年02月(7)
2017年01月(8)
2016年
2016年12月(7)2016年11月(2)
2016年10月(3)
2016年09月(7)
2016年08月(8)
2016年07月(10)
2016年06月(17)
2016年05月(6)
2016年04月(8)
2016年03月(10)
2016年02月(5)
2016年01月(10)
2015年
2015年12月(7)2015年11月(7)
2015年10月(13)
2015年09月(7)
2015年08月(7)
2015年07月(5)
2015年06月(4)
2015年05月(5)
2015年04月(2)
2015年03月(4)
2015年02月(1)
2015年01月(7)
2014年
2014年12月(12)2014年11月(8)
2014年10月(4)
2014年09月(6)
2014年08月(7)
2014年07月(4)
2014年06月(2)
2014年05月(5)
2014年04月(4)
2014年03月(8)
2014年02月(4)
2014年01月(8)
2013年
2013年12月(15)2013年11月(8)
2013年10月(3)
2013年09月(3)
2013年08月(8)
2013年07月(0)
2013年06月(0)
2013年05月(0)
2013年04月(0)
2013年03月(0)
2013年02月(0)
2013年01月(0)
■レス履歴■
■ファイル抽出■
■ワード検索■
堕天使の煉獄
https://rengoku.sakura.ne.jp
管理人
織田霧さくら(oda-x)
E-mail (■を@に)
oda-x■rengoku.sakura.ne.jp