ZIGENのプラグイン開発 for Eclipse

ZIGENのプラグイン開発 for Eclipse

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

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

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

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

outline.gif

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


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

・OutlineViewのContextMenuが出ない

右クリックでContextMenu自体が出ないため、拡張ポイントを定義しても
何も表示されないのです。

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

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


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


# キーバインドが入れ替わらない。という意味です。


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

  void setGlobalActionForResultView(IActionBars bars) {

    bars.clearGlobalActionHandlers();


    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
コメントを書く


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
X

PR

×

Calendar

Comments

名前なし@ Re:テーブルのデータをエクセル風に編集できない?(03/27) ExcelでOracle,MySQLのデータを取得/更新…
ZIGEN@ Re:いつも使ってます!!(04/14) ヘタグラマさん こんにちは^^ コメ…
ヘタグラマ@ いつも使ってます!! いつも便利に使ってます。 もう手放せな…
★みゆきち★@ 性感エステってもったいないよね ムラムラってきたら性感エステに通ってた…
ZIGEN_M @ Re[2]:4000行はないけれど、(03/13) こんにちは、ZIGENです。 そ、そうです…

Category

Profile

ZIGEN_M

ZIGEN_M


© Rakuten Group, Inc.
X
Mobilize your Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: