ブログを作る※無料・簡単アフィリ    ブログトップ | 楽天市場
140610 ランダム
ZIGENのプラグイン開発 for Eclips… (パソコン・家電)楽天ブログ 【ケータイで見る】 【ログイン】
ZIGENのプラグイン開発 for Eclipse
ホーム 日記 プロフィール オークション 掲示板 ブックマーク お買い物一覧
banner

All Right Reserved, Copyright © ZIGEN 2005
本Blog内で掲載している記事、プログラムコード、画像(アフィリエイトを除く)
およびダウンロードしたプログラムの著作権はZIGENが保有します。

ZIGENのお勧め本
まるごとJavaScript & Ajax ! Vol.1 (大型本) セカンドライフの歩き方
SEの35歳の壁 ―その乗り越え方 SEの仕事を楽しくしよう―こんなSEはだめになる
SEのホンネ話―会社じゃ言えない ソフトウェア開発で伸びる人、伸びない人
信頼されるSEの条件 SEを極める50の鉄則
Eclipseプラグイン開発徹底攻略 Eclipseプラグイン開発

Eclipseプラグイン開発日記 [全225件]

2008.04.14楽天プロフィール Add to Google XML

ブログ引越します。  (3)

気分を一新するために、ブログを引越すことにしました。

新しいブログは、http://dbviewer.blogspot.com/

です。

今後ともよろしくお願いします^^w


Last updated 2008.04.14 23:08:28
コメント(3) | コメントを書く



2008.03.25

新機能開発中「アウトラインの活用」
[ プラグイン開発日誌 ]  

現在1.0.8向けの新機能を開発中です。

まずは、アウトラインをせっかく表示できるようになったので、

1.「副問合せ」だけを実行できるように機能を開発中です。
 ※アウトラインのSelectStatementノードを右クリックし実行するイメージです。

2.SQLエディターの実行結果は、同エディターで表示されるように開発中です。
SQL実行ビューではなく、SQLエディターをメインに利用されている人は
使いやすくなるのと思います。

outline.gif

この開発中の画面は、予告なく変更されることがあります。


今回、以下点に苦労しました。

・OutlineViewのContextMenuが出ない
org.eclipse.ui.popupMenusに対して拡張するのですが、SQLをアウトライン表示すると
右クリックでContextMenu自体が出ないため、拡張ポイントを定義しても
何も表示されないのです。

対応
空のContextMenuが表示できるように実装して、上記拡張ポイントでメニューを
追加しました

参考
org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage(1095行目付近)


・CTRL+A(全て選択)がテキストの全選択になる。
エディター上に、TextViewerとTableViewerをSashを使って配置すると
TableViewerにフォーカスがある状態で、CTRL+Aを実行しても、テキストが全選択
になり、SQL実行結果の全レコードを選択してくれない。

# 再ターゲット可能なActionとして、任意のActionに入れ替えはできたのですが、
# キーバインドが入れ替わらない。という意味です。


対応
  CommandServiceからCommandを取得して、実行するAction(Handler)を上書き。

  void setGlobalActionForResultView(IActionBars bars) {

    bars.clearGlobalActionHandlers();
    copyAction.refresh();

    bars.setGlobalActionHandler(ActionFactory.COPY.getId(), copyAction);
    bars.setGlobalActionHandler(ActionFactory.SELECT_ALL.getId(), selectAllRecordAction);
    bars.updateActionBars();

    // CTRL+C
    ICommandService commandService = (ICommandService) getSite().getService(ICommandService.class);
    Command copy = commandService.getCommand("org.eclipse.ui.edit.copy");
    copy.setHandler(new ActionHandler(copyAction));

    // CTRL+Aに対するコマンドの変更
    Command select = commandService.getCommand("org.eclipse.ui.edit.selectAll");
    select.setHandler(new ActionHandler(selectAllRecordAction));

  }


# 呼び出し側(フォーカスイベントに追加)
  public void createResultPartControl() {
    :
    table.addFocusListener(new FocusAdapter() {
      public void focusGained(FocusEvent e) {
        IActionBars bars = getEditorSite().getActionBars();
        setGlobalActionForResultView(bars);
        bars.updateActionBars();
      }
    });
 }


Last updated 2008.03.25 06:34:23
コメント(0) | コメントを書く

2008.03.20

あえて、推奨されないメソッドを使用することに。
[ プラグイン開発日誌 ]  

テーブル編集エディターのWhere条件フィールドでは、
CTRL+SPACEを押下すると、カラム名やキーワードの補完ができます。
# 実は、知らない人もいたりして・・・

以下がスクリーンショットです。
codeAssist1.0.7.gif

Eclipse3.2からは、テキストフィールドやコンボボックスに対して
比較的簡単に「コード補完」機能を実装できるようになりました。

カラム名の入力が非常に楽にはなるのですが、アイコンが付けられないが残念です。
# IContentProposalには画像を返すメソッドが無いためです。

しかし、Javaのクラス作成ウィザードなどでは、テキストフィールドに
アイコン付きの補完ができます。

調べてみると、そこで使っているAPIは、3.2や3.3では
推奨されないメソッドになっていました・・・・。

しかし、JDTが現在でも使っているAPIなので、そう簡単にはメソッドが廃止には
ならないだろうと思い、次のバージョンでは、
「あえて、推奨されないメソッド」で実装しようと思っています。

以下が、変更後のスクリーンショットです。
(カラムアイコンがあるで、以前より見やすいです)

codeAssist1.0.8.gif

将来、そのAPIが廃止になれば、アイコン無しの補完に
戻したいと思います^^。







Last updated 2008.03.20 22:06:56
コメント(0) | コメントを書く

2008.03.18

DBViewer 1.0.7.v20080318リリース!!

DBViewer 1.0.7をリリースしました。
ご利用の方はバージョンアップされることをお勧めします。

主な機能
1.SQLアウトライン表示(β版)
Select, Insert, Update, Delete 用です。
それ以外(ストアドなど)は・・・・。

2.DBツリービューのFilter設定
表示したくない要素やフォルダを設定できます。

3.データベース定義でのスキーマFilter設定
表示するスキーマのON/OFFを設定できます。

4.MySQL5のスキーマ表示(DBツリービュー)

など、です。

また、テーブル編集エディターの起動が以前よりも早くなっていますので、
ぜひ、最新バージョンを使ってみてください。

詳しくは、こちら


Last updated 2008.03.18 16:00:18
コメント(0) | コメントを書く

2008.03.13

DBViewer Formatterとblanco Formatterの性能差  (4)
[ プラグイン開発日誌 ]  

DBViewerには、2種類のSQLFormatterが搭載されています。

1つは、blancoSqlFormatter

もう1つは、DBViewer独自のFormatterです。
DBViewer独自といっても、私ではなく、会社の後輩が作っています。
※私には作れません^^w

今日はその2つのFormatterの性能差(あくまでも一例です)を書いておきたいと思います。


とあるプロジェクトで、整形すると4000行近くなる長いSELECT文を書いた
後輩がおりまして、、その整形の時間を計測してみてました。

------------------
計測環境
------------------
JDK1.4.2
DBViewer1.0.7(リリース前)
SQLFormatter 1.0.0v20080313(リリース前)
BlancoFormatter 0.0.3 (最新版ではありません)

------------------
性能結果
------------------
BlancoFormatter:約30秒~40秒
DBViewerFormatter(改良前):約10秒

想像以上に性能差があり、びっくりしました。

後輩は「もう少し性能向上できそう」と言って、改良版をくれました。
それで計測したところ、

DBViewerFormatter(改良後):約4秒~6秒

すばらしい!!、 やるな後輩!!

また、字句解析する際に、offsetやlength情報なども付与してもらっており、
今後の開発するかもしれない、「SQLのアウトライン表示」、「マーカー」機能など・・・
に重宝するはずです。

あとがき
そもそも、普通、4000行のSELECT文は書かないよね~
そんな長いSELECTが必要になるのは、テーブル構造が問題だね。
Viewとか、Functionに置き換えができないのか、見てみたのですが、
どうしても無理そうでした。(やっぱりテーブルの持ち方が悪い)
そもぞも、バッチで必要なデータに加工すればいいのに・・・
どうしてもオンラインでデータを抜きたいらしい・・・




Last updated 2008.03.13 20:17:09
コメント(4) | コメントを書く

一覧

PR

Calendar

February 2012
SMTWTFS
   1234
567891011
12131415161718
19202122232425
26272829   
<backthis monthnext>

Comments

 ZIGEN@Re:いつも使ってます!!(04/14)ヘタグラマさん こんにちは^^ コ...
 ヘタグラマ@いつも使ってます!!いつも便利に使ってます。 もう手放せ...
 ★みゆきち★@性感エステってもったいないよねムラムラってきたら性感エステに通って...
 ZIGEN_MRe[2]:4000行はないけれど、(03/13)こんにちは、ZIGENです。 そ、そうで...
 松-booleanRe[1]:4000行はないけれど、(03/13)>5万行ですか・・・・・ >そんなに長...

Category

Let's link!

>お気に入りブログに追加
ブログが更新されると
メールでお知らせします

Freepage List

Favorite Blog

松のページブログ 松-booleanさん

Rakuten Profile

設定されていません

 

Powered By 楽天ブログは国内最大級の無料ブログサービスです。楽天・Infoseekと連動した豊富なコンテンツや簡単アフィリエイト機能、フォトアルバムも使えます。デザインも豊富・簡単カスタマイズが可能!

Copyright (c) 1997-2012 Rakuten, Inc. All Rights Reserved.