マイペースなプログラミング日記

DTMやプログラミングにお熱なd-kamiがマイペースに書くブログ

エディタ作成

EditTextで十分だった

シンタックスハイライトを行うエディタを作りたくて自作してたが、それはAndroid標準のEditTextでもできることだった。今まで何をしてきたんだろうという感じだ。

文字入力ができるようになったが

自作エディタで文字入力ができるようになった。しかし、エミュレータでうまく動かない。HTC Desireだとうまく入力できるのになー。もしかして、機種ごとに動作が違ったりして…それだとかなり困る。InputConnectionあたりで何かミスでもしたのかな…しかしソー…

簡易テキストエディタ作成 その12

前回、タッチイベントでキャレットを移動させると思った場所にいかないと書いたが、見落としてる場所があった。ルーラを表示してるのだからルーラの幅を引かないといけないんだった。何をやっているのだろう… private void caretMove(){ int tx = touchX + v…

簡易テキストエディタ作成 その11

タッチイベントでキャレットを動かそうとしたけど、なかなか思った位置にいかないので諦めようかと思う。次は文字入力を頑張る

簡易テキストエディタ作成 その10

前回githubにアップしたが変更点を書いていなかった。追加したのはCaretインタフェースとDefaultCaretクラス。DefaultCaretクラスが実際にキャレットを描画しているクラスとなっている。またDrawPointというクラスを作り、描画する座標(x,y)とドキュメントで…

githubへアップ

そろそろブログにソースコード載せるのも大変になってきたのでgithubにアップしました。正しいコメントをもっと増やしたいhttps://github.com/d-kami/TextEditor

簡易テキストエディタ作成 その9

今回は垂直方向のスクロールバーを追加した。水平方向のスクロールバーとほぼ同じ package text.edit.view; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Rect; import text.edit.info.ViewInfo; import text.e…

簡易テキストエディタ作成 その8

今回は水平方向のスクロールバーを作成した。垂直スクロールバーのことも考え右の方にスペースを空けておいた。 まずはスクロールバー用のインターフェース。スクロールバーを描画するためのdrawメソッドを定義しておく。 package text.edit.view; import an…

簡易テキストエディタ作成 その7

今回はスクロールの制御を行う。スクロールの制御は何回かにわけてエントリを書く予定。まずはスクロール位置の制限をかける。スクロール位置を0以下にしないことと、テキストが表示されないところまでいったら、それ以上スクロールさせないようにする。テキ…

簡易テキストエディタ作成 その6

今回は横スクロールを追加した。横スクロールを追加するにあたって、Ruler、RowRuler、EditorViewを変更した。RowRulerを変更したのは、Canvasのtranslateで描画の位置をづらす方法だと、文字列を描画する位置がマイナスにできないのか、描画の切れ目が不自…

簡易テキストエディタ作成 その5

今回はスクロール機能を実装した。 方向は垂直方向のみ。水平方向へはそのうち実装する予定。変更を加えたのはEditorViewとRowRulerのみ。まずはEditorViewの描画部分から。描画位置drawYをあらかじめ垂直スクロール位置を引いた状態にしておく(drawText内)…

簡易テキストエディタ作成 その4

今回はスクロール機能を実装する予定だったが、予定を変えて少しソースコードの整理をすることにした。まずは定数クラスを作成した。これはViewInfoのキーで使われる文字列を定数にした package text.edit.info; public class ConstName { public static fin…

簡易テキストエディタ作成 その3

今回はとりあえず行ルーラを付けてみた まずtext.edit.infoというパッケージを作成してViewInfoというクラスを作成。Viewのサイズやスクロール位置とかをMapに格納する。 package text.edit.info; import java.util.Map; import java.util.HashMap; public c…

簡易テキストエディタ作成 その2

前回は単純にテキストを表示するだけだったが、今回はキーワードに色を付けて表示するようにした。今回のスクリーンショットを載せる。 今回はTextTokenizerとJavaTokenizerというクラスを作り、前回作ったEditorViewを編集した。プロジェクトのソースコード…

簡易テキストエディタ作成 その1

簡易テキストエディタをソースコードを公開しながら作ってみる。簡易なのでテキストの管理方法とか手抜きだし、それほど難しいことをしたいわけじゃない。とりあえず作成開始。今回はテキストの表示を行うだけのアプリケーションを作成する。まずはテキスト…