タグ

ブックマーク / kaiseh.hatenadiary.org (5)

  • SwingコンポーネントをXPathで操作する - kaisehのブログ

    フレームやダイアログの中から特定の条件を満たすコンポーネントを見つけたり、トラバースできると便利だと思い、JDOMをベースにして以下のプログラムを作ってみました。 SwingDOMBuilder SwingPath Swingのコンポーネント階層をDOMに変換して、XPathを使えるようにするというものです。 使用例としては、メニュー項目をルックアップして実行したり ((JMenuItem) SwingPath.selectSingleComponent( frame, "//JMenuItem[@text='上書き保存']")).doClick(); ボタンを全てdisabledにしたり for (Component c : SwingPath.selectComponents(dialog, "//JButton")) { c.setEnabled(false); } といったことがで

    SwingコンポーネントをXPathで操作する - kaisehのブログ
    t-wada
    t-wada 2009/02/18
    これはアツい! Swing でも jQuery の selector みたいな使い方ができそう。
  • はてな村の勢力地図『HatenarMaps』を大幅リニューアルしました - kaisehのブログ

    はてなダイアリーの上位ブロガーと人気エントリーを地図化したサイト、HatenarMapsを大幅にリニューアルしました。いろいろと新機能を追加しましたので、順に紹介します。 ※過去のHatenarMapsについてはこちらのエントリーをご覧ください。 新機能1: 人口を最大3000人に 今まで、HatenarMapsの収容ユーザ数は最大1000人でしたが、これを最大3000人に大幅増員しました。TopHatenarでブックマーク数が3000位以内にランクしていて、かつブックマークにタグが一定量以上付いているユーザが対象になります。 以下の画像を見ると分かるように、非常に人口密度が高くなりました。 新機能2: ブックマークコメントのビーム(?)表示 特定の領土をクリックすると、そこに対して書かれたブックマークコメントが、コメント投稿主からビームのようにアニメーションで飛んできます。 新機能3:

    はてな村の勢力地図『HatenarMaps』を大幅リニューアルしました - kaisehのブログ
    t-wada
    t-wada 2008/12/24
    ブコメが飛んでくるのは面白い。こういうのも情報視覚化のスパイスなのか。
  • Q for Eclipse(q4e)使ってみた - kaisehのブログ

    最近気になっていたMavenプラグインです。 Google Code Archive - Long-term storage for Google Code Project Hosting. プロジェクトに追加されるメニューはこんな感じ。 "View dependencies"をクリックすると、こんなDependency Graphも描いてくれます。ただPOMの依存関係って、ネットワーク図にする意味があまり無いような…。普通にツリー表示して欲しいです。 m2eclipseよりは明らかに軽くて機能的にも良さそうなので、しばらく使ってみます。

    Q for Eclipse(q4e)使ってみた - kaisehのブログ
  • 要素の挿入、削除、ランダムアクセスが全部高速なリストを作った - kaisehのブログ

    スキップリスト(Skip List)は1990年に発表された比較的新しいアルゴリズムで、要素の挿入や削除、検索を平衡木と同等のパフォーマンスで実行可能なリスト構造です。 Skip Listは連結リストの多層構成になっています。路線に例えると、最下層のリンクは各駅停車のように、全要素を結んでいます。一方、上層のリンクは急行や特急のように、途中の要素をスキップするようになっています。この路線を特急→急行→…→各駅と乗り継ぐことで、目的の要素に高速に到達できる仕組みです。もっと詳しい解説はこちらやこちらにあります。 で、ここからが題です。Skip Listの実装はいくつも出ているんですが、Sorted Listとしての実装ばかりで、要素を任意順序で格納できてランダムアクセス(indexを指定してのアクセス)可能なSkip Listが見つからなかったので、自分で作ってみました。 通常のSkip

    要素の挿入、削除、ランダムアクセスが全部高速なリストを作った - kaisehのブログ
    t-wada
    t-wada 2008/01/05
  • DAOの作成の簡略化 - kaisehのブログ

    S2Daoでは非常に簡単にDAOを作成することができますが、Genericsでさらに簡略化を図ってみました。 public abstract class Entity implements Serializable { // annotation for S2Dao public static final String id_ID = "identity"; private Long id; public Long getId() { return this.id; } public void setId(Long id) { this.id = id; } }まず上のようにEntityクラスを用意し、全てのエンティティの基底クラスとします。全テーブルがIDというartificial keyを持つことを前提にしています。 次に、DAOの基底インターフェイスを作成します。 public in

    DAOの作成の簡略化 - kaisehのブログ
  • 1