Replitのようなペイン分割できてDnD可能なUIを達成するやり方案について
こんにちわ。nap5です。
Replitのようなペイン分割できてDnD可能なUIを達成するやり方案について考えてみたので、紹介したいと思います。
実現するために入れるライブラリは以下になります。ラフに考えてみました。
Multiple Droppables
Splitter
分割対象ペインの直交座標系上のどこにDnDしているカーソルポインタが内包されているかでQuadTreeみたいに分割していく挙動が達成できれば良さそうです。
以下がラフなステップになります。
DnDのコンテキストでラップする
Sortableなドラッグ対象ペインを定義する
ドロップ可能なペインを定義する
ドラッグ時にオーバーレイでドロップ可能な領域をIndicateする
DnDオーバーされているペインにおける直交座標系の当たり判定に基づき短形領域をオーバーレイする
最大で4つの領域
ドロップしてタブ化する
タブ領域を同様にDnD化
その他に参考にしたスレになります。
OSSで他に参考になりそうなリンクなど
簡単ですが、以上です。
この記事が気に入ったらサポートをしてみませんか?