前回投稿から、しばらくたちましたが、
0.1.0から少しずつ機能追加・修正を繰り返し、
0.2.0をリリースしました。
https://github.com/shigenobu/ebonyrack/releases/tag/v0.2.0
(最新はこちら)https://github.com/shigenobu/ebonyrack/releases
前回書いていて、実装したかった分ですが、とりあえず以下の内容で対応しています。
■オブジェクトのコピー&ペースト
むずい。ペンディング。
■外部キーのコネクターのIE記法導入
むずい。ペンディング。
■拡大・縮小またはアウトライン表示でのスムーズな表示中画面移動
こちらは、0.2.0でアウトライン機能を実装しました。
アウトラインの枠内を動かすことで、右側のワークスペースが一緒に動きます。
逆もまた同じです。
今まで、グラフィックスを取得すると、後続が描画されないということで諦めていたのですが、
var rect = workspace.getBounds(); var captureImage = new BufferedImage(rect.width, rect.height, BufferedImage.TYPE_INT_ARGB); var cg = captureImage.getGraphics(); workspace.printComponents(cg); cg.dispose(); var g2 = (Graphics2D) g.create(); g2.drawImage(captureImage, 0, 0, w, h, new Color(73, 70, 44, 8), null); g2.dispose();
なんて感じで「printComponents」メソッドを使うことで上手く描画できました。
■画像・DDL出力時のオプション選択
画像・DDLともに出力時に保存先を選択できるようにしました。
最後に出力した保存先は、次回保存するときにデフォルトで選択されるようになりました。
DDLについては、シーケンス・テーブル・外部キー、を選択して出力できるようにしました。
■ヘルプダイアログを各所に配置
いつかやる。(かも)
だいぶできてきた感じはあるものの、
まだ対応しきれない細かい部分は結構ある感じです。
直近では、プロジェクトを開いたときに、
ワークスペースのスクロールバーの位置が調整できていないことがあるので、
それを直していければとは考えています。
ひとまず、当面はUI改善を進めつつ、パーティンションの機能を追加できればとは考えています。
以上
コメントがあればどうぞ