読者です 読者をやめる 読者になる 読者になる

VizCommand #2 ウィンドウクラス化 & アプリケーションクラス化

VizCommandもクラス化・・・。WinMain.cppは、Application.cppは、で、それ以外は、Aoi、ObjeqtNoteと同じ・・・。表示は変わらず・・・。・ウィンドウクラス化 · bg1bgst333/VizCommand@97ce517 · GitHub

ObjeqtNote #2 ウィンドウクラス化 & アプリケーションクラス化

ObjeqtNoteもクラス化・・・。といっても、Aoiとの違いは、WinMain.cppの、と、Application.cppの、ぐらい・・・。ウィンドウの表示は変わらず・・・。・ウィンドウクラス化 · bg1bgst333/ObjeqtNote@624a719 · GitHub

Aoi #2 ウィンドウクラス化 & アプリケーションクラス化

WinMain.cppだけのウィンドウ表示から、ウィンドウクラスとアプリケーションクラスによるウィンドウ表示に書き換える・・・。まず、Window.hは、今回、ウィンドウの位置とサイズのメンバを追加・・・。 あと、一応コンストラクタも追加・・・。 あとは、ウィ…

VizCommand #1 新生VizCommand & ウィンドウの表示

『VizCommand』も改めて組み直し・・・。 UIの構成が難しいが、機能優先にしたいところ・・・。Win32プロジェクトの空のプロジェクトでWinMain.cppを追加して、とし、バージョン情報も、として、ウィンドウ表示・・・。・新生VizCommand · bg1bgst333/VizCom…

ObjeqtNote #1 新生ObjeqtNote & ウィンドウの表示

『ObjeqtNote』も作り直し・・・。 『Aoi』とどう役割分担するか、まだ悩み中・・・。 こちらはどんどん機能載せていきたい・・・。Win32プロジェクトの空のプロジェクトでWinMain.cppを追加して、と、『Aoi』とほぼ一緒・・・。バージョン情報も、こんな感…

Aoi #1 新生Aoi & ウィンドウの表示

新年(ブログの日付上)1発目は、Application開発の仕切り直しから・・・。テキストエディタ『Aoi』の作り直し・・・。プロジェクトの作成・・・。 gitのレポジトリのトップにプロジェクトを作るように変更・・・。でも変わらず空のプロジェクト・・・。ソース…

VizCommand #11 スケーラブルエディットボックスの作成

改行すると、1行分大きくなり、バックスペースキーを押したときに1行少なくなったら、1行分小さくなるスケーラブルエディットボックスを作る・・・。ScalableEdit.hは、行の高さ、行間、行数をメンバとして持っている・・・。 Createでは、高さを指定する引…

VizCommand #10 エディットコントロールのサブクラス化

エディットコントロールなどの既定のウィンドウクラスからなるウィンドウの場合、サブクラス化でウィンドウプロシージャを差し替えなければ、イベントを拾うことができない・・・。 CWindowを改修して、エディットコントロールのイベントを拾えるようにする…

VizCommand #9 エディットパネルにエディットコントロールの設置

エディットパネルにエディットボックスを設置する・・・。Edit.hは、とりあえず子ウィンドウセット一式を・・・。Edit.cppは、Createで、とりあえずクラス名に"Edit"ウィンドウクラス、スタイルにES_MULTILINEとES_AUTOVSCROLLをセット・・・。 EditPanel.h…

VizCommand #8 ウィンドウリストアイテムの子ウィンドウのサイズをウィンドウリストアイテムのサイズに応じて変化させる.

ウィンドウリストアイテムの子ウィンドウを配置したら、ウィンドウサイズを変えてもサイズを維持するという場合もあるが、変更後のサイズに追随したいというのもあるだろう・・・。 今回は、ウィンドウリストアイテムに比べ、ひとまわり小さい子ウィンドウを…

VizCommand #7 ウィンドウリストアイテムの子ウィンドウの管理

ウィンドウリストアイテムの管理は、CWindowListView(さらにその内部のCWindowListItemsPanel)で行うが、それより下のウィンドウの管理はMainWindow側にしようと思う・・・。これ以上階層化すると大変そうなので・・・。 ウィンドウリストアイテムのハンドル…

VizCommand #6 スクロールバー対応

ウィンドウリストビューにスクロールバーを実装していく・・・。その前に、スクロールでウィンドウリストアイテムを1つずつ動かすのはちょっとパフォーマンス的に微妙なので、WindowListViewとWindowListItemの間にWindowListItemsPanelという新しいクラスを…

VizCommand #5 ウィンドウリストアイテムの削除時に以降のアイテムを上にずらす

挿入時に以降を下にずらす処理はできていたが、削除時に以降を上にずらす処理はできていなかったので、そちらを対応・・・。削除前に削除する要素の高さを保持しておいて、削除したあとに、挿入と同様に後ろの要素を上にずらす・・・。マイナス(-1)、サイズ…

VizCommand #4 ウィンドウリストアイテムの追加と削除

いよいよ、ウィンドウリストビューにアイテムとなるウィンドウを追加していく・・・。まず、新しい項目で、WindowListItem.hを追加・・・。ウィンドウの位置とサイズをメンバに・・・。 あと、ちょっとしたテキスト表示用の文字配列・・・。WindowListItem.c…

TwRIBE #3 子ウィンドウの作成

TwRIBEのほうは、ObjeqtNote、VizCommandと同様に、WindowListViewを追加・・・。違う部分というと、コードネームを"Omiya"から"Minami-Urawa"に変更・・・。 これでZincとコードネームが入れ替わった・・・。 また、PrivateBuildもその後ろに'#'付きで付け…

Haiiro #3 子ウィンドウの作成

Haiiroも子ウィンドウを追加・・・。 ただし、こちらはゲームなので、ゲーム描画の基本となる子ウィンドウGraphicsViewを追加する・・・。新しい項目の、GraphicsView.hを追加・・・。こんな感じ・・・。GraphicsView.cppは、CreateでスタイルをWS_VSCROLLか…

VizCommand #3 子ウィンドウの作成

こちらも、子ウィンドウWindowListViewを追加する・・・。と作成して、コードはObjeqtNoteとほぼ同じ・・・。違いというと、MainWindow.cppで、メニュー関連の処理が無いぐらいかな・・・。 なのでOnCommandもない・・・。まあ、こんな感じ・・・。https://g…

ObjeqtNote #4 子ウィンドウの作成

子ウィンドウを作成し、追加する・・・。 今回は、ウィンドウをアイテムとするリストビューWindowListViewを自作して追加する・・・。新しい項目で、WindowListView.hを追加・・・。子ウィンドウなのでリソースIDを定義・・・。 ハンドラOnCloseと、OnClose…

ObjeqtNote #3 メニューの追加

メニューを追加する・・・。リソースを追加・・・。Menu・・・。新規・・・。開く・・・。上書き保存・・・。名前を付けて保存・・・。区切り線を入れて、アプリケーションの終了・・・。最後にIDR_MENU1をIDR_MAINMENUに変更・・・。ファイルを追加・・・。…

TwRIBE #2 ウィンドウのクラス化

最後にこれもウィンドウのクラス化・・・。ウィンドウクラス名が"TwRIBE_MainWindow"、ウィンドウ名が"TwRIBE"に・・・。 それ以外はVizCommandと同じ・・・。と表示・・・。TwRIBE/winapi/win32_blank/vs14/src/TwRIBE at develop · bg1bgst333/TwRIBE · Gi…

Haiiro #2 ウィンドウのクラス化

こちらもウィンドウのクラス化・・・。ウィンドウクラス名を"Haiiro_MainWindow"、ウィンドウ名を"Haiiro"とする・・・。また、CApplicationのRunは、PeekMessageでメッセージが来ていない時、アイドル状態時の処理OnIdleを実行するようにしている・・・。On…

VizCommand #2 ウィンドウのクラス化

こちらもウィンドウのクラス化・・・。といっても、ウィンドウクラス名が"VizCommand_MainWindow"、ウィンドウ名が"VizCommand"に変わったぐらいで、あとはObjeqtNoteと同じ・・・。という感じで表示・・・。https://github.com/bg1bgst333/VizCommand/tree/…

ObjeqtNote #2 ウィンドウのクラス化

一気にウィンドウのクラス化を進める・・・。ファイルを追加・・・。Window.hから追加・・・。ウィンドウマップ、staticなRegisterClassにウィンドウプロシージャ、Createはいろんな指定ができるようにとりあえず3つ・・・。 ダイナミックウィンドウプロシー…

Zinc #37 DBにブックマーク情報を追加

DBにブックマーク情報を追加する・・・。Classを追加・・・。SQLiteOpenHelperを継承したUrlListDBHelperを追加・・・。改めてDB追加機能を作り直したので、名前はurllist.db、バージョンは1にしている・・・。 ので古い奴は削除してからインストール必須・…

TwRIBE #1 バージョン情報の追加

TwRIBEも・・・。大宮・・・。 (Zincを京浜東北線、こっちを埼京線にしてしまったが、Twitterは水色だから逆だったと後悔・・・。)これでビルド・・・。こうなる・・・。TwRIBE/winapi/win32_blank/vs14/src/TwRIBE at develop · bg1bgst333/TwRIBE · GitHub

Haiiro #1 バージョン情報の追加

灰色もバージョン追加・・・。武蔵丘・・・。 VALUE "PrivateBuild", "1"も追加・・・。これでビルド・・・。こうなる・・・。Haiiro/winapi/win32_blank/vs14/src/Haiiro at develop · bg1bgst333/Haiiro · GitHub

VizCommand #1 バージョン情報の追加

こっちもバージョン情報を追加・・・。Versionで新規作成・・・。こんな感じ・・・。 和光検車区・・・。閉じて、PrivateBuildを1にして追加・・・。これをビルドすると、こうなる・・・。https://github.com/bg1bgst333/VizCommand/tree/develop/winapi/win…

ObjeqtNote #1 バージョン情報の追加

本当に久しぶりに手を付ける・・・。 といっても、バージョン情報を追加するだけ・・・。リソースを追加・・・。Versionを選択・・・。こんな感じ・・・。 これだけだと、PrivateBuild追加できないので、一旦閉じてObjeqtNote.rcを編集・・・。VALUE "Privat…

Zinc #36 ブックマークの追加ダイアログの表示

ブックマーク機能を実装する・・・。 まずは、メニューアイテムのブックマークの追加、そしてそのあとに表示する確認画面としてのブックマークの追加ダイアログ・・・。menu_main.xmlにmenu_item_add_bookmarkを追加・・・。アイテムの表示名は"ブックマーク…

Zinc #35 タブの切り替え

新しいタブを追加できるようにしたので、今度はタブを切り替える機能を実装する・・・。Fragmentを追加・・・。タブを切り替えるUIなのでTabsFragmentとする・・・。Classを追加・・・。タブ一覧はGridViewで表示する・・・。 そのGridViewのアイテムとして…

Zinc #34 新しいタブの追加

最初に表示されるタブでWebブラウジングしている途中で、新しいタブを追加した時の挙動を実装する・・・。まず、strings.xmlで、menu_item_add_tab_textの文字列を"新しいタブの追加"に・・・。あとは、MainActivity.java・・・。Map型のfragmentMapオブジェ…

Zinc #33 プログレスバーの表示

WebViewClientとURLバー、WebChromeClientとプログレスバー、を紐づけてWebページの繊維をブラウザっぽくみせる・・・。Java Classを追加・・・。WebViewClientの派生クラスCustomWebViewClient・・・。コンストラクタにはMainActivityとWebFragmentを渡す・…

Zinc #32 アクションバー(メニュー)にURLバーを表示

今回は、URLバーをアクションバーの上に表示する・・・。まず、Layout resource fileを追加・・・。menu_urlbarという名前にする・・・。また、menu_main.xmlで、このようにする・・・。 app:showAsAction="always"でメニューアイテムはアクションバー上にUI…

Zinc #31 URLのロード

WebViewでURLをロードする・・・。fragment_web.xmlに、WebViewとProgressBarを設置・・・。 ちょっと今回はLinearLayoutとかで区切るのはやめてみる・・・。 重なって表示されるか試したい・・・。 ただ、ProgressBarは今回は使わない・・・。MainActivity.…

Zinc #30 フラグメントの追加

今回からは、基本的にタブブラウザのタブの部分はFragmentTabHostじゃなくて、普通のFragmentをベースにやろうとおもう・・・。 FragmentTabHost、癖が強くて操作するのが難しいし、タブの置き場所も数が増えると限界感じるので・・・。Fragment(Blank)で、…

Zinc #29 プロジェクトの仕切り直し

前回までで、致命的な問題が山積していたので、今回からプロジェクトを仕切り直して、ソースコードを書き直そうとおもう・・・。layoutのxmlは、こんだけあったが、activity_main.xmlを残してそれ以外は全部削除・・・。javaのソースファイルもこんだけあっ…

TwRIBE #0 ウィンドウの表示

最後はTwitterクライアント、TwRIBE・・・。モバイルもやりたいけど、その前にデスクトップでいろいろ試したい・・・。まあ、退路を断って行かないと・・・。Win32・・・。空・・・。新しい項目・・・。WinMain.cpp・・・。として、となる・・・。 しばらく…

Haiiro #0 ウィンドウの表示

Haiiroも手を付ける・・・。ゲームなので、ソースは公開してこうとおもうが、リソースはどうしようか検討中・・・。Win32・・・。空プロ・・・。ソースを追加・・・。WinMain.cpp・・・。でこれに、と書いて、実行すると、と表示される・・・。 前回、前々回…

VizCommand #0 ウィンドウの表示

VizCommandも立ち上げ・・・。びじゅあるなコマンドプロンプトのようなターミナルのような、Ultimate Command Prompt Terminalにしていく予定・・・。で、こっちもウィンドウ表示から・・・。Win32・・・。空プロ・・・。で、WinMain.cppを追加して、とする…

ObjeqtNote #0 ウィンドウの表示

遂に・・・、 今度こそ・・・、 とうとう・・・、 ようやく・・・、ObjeqtNoteの開発に着手し始めた・・・。いろんなファイルをいい感じに表示、編集できるUltimate File Editorを目指してる・・・。で、今回はウィンドウ表示だけ・・・。基幹プロジェクトは…

Zinc #28 簡易的なHTTPリクエスト(AsyncTaskLoaderによる非同期処理)

非同期処理の練習をしたいので、とりあえずHTTPリクエストでソースを取得して表示してみる・・・。 (ソースの表示だったらわざわざHTTPで投げる必要はない・・・。単純にAsyncTaskLoaderの練習・・・。)まずmenu_main.xmlで、action_show_sourceを追加・・・…

Zinc #27 簡易的なWebフィルタリング(WebView.stopLoadingでロードを停止)

簡易的なWebフィルタリングをしてみる・・・。 前回、ロードされるリソースのURLがわかったので、今回は、ロードされるリソースが画像だったらロードを停止する・・・。こんな感じで、Jpeg、PNG、Gifだったらview.stopLoadingでロードを停止・・・。Yahooを…

Zinc #26 ロードされたリソースのURLを表示

jsやcssなどのスクリプト、pngやjpgなどの画像ファイルなど、どんなリソースがロードされているかを調べたい・・・。リソースがロードされた時、WebViewClientのonLoadResourceが呼ばれるので、こんな感じで、CustomWebViewClient.javaのonLoadResourceをオ…

Zinc #25 JavaScriptの有効化

そろそろいい加減JavaScriptを有効化する・・・。 (さんざんYahooで警告が出ていたので・・・。)といってもコードの修正は、WebViewTabFragment.javaの、これだけ・・・。これでYahooを見てみると、Yahooの警告がすっかりなくなって、滑らかなJavaScriptっぽ…

Zinc #24 ショートカットの作成

現在表示しているWebページのショートカットをホーム画面に作成する・・・。まず、menu_main.xmlは、メニューアイテムaction_make_shortcutを追加・・・。strings.xmlで、"ショートカットの作成"という表示名に・・・。MainActivity.javaでは、WebViewのwvか…

Zinc #23 PCサイトブラウザ

表示をPCサイトに切り替えるには、Webアクセス時のUserAgentをPCのブラウザ用にすればいい・・・。ちょっと古いけど、Androidブラウザの「パソコンサイト表示」のユーザーエージェント « kawama.jpここにあるUserAgent、 "Mozilla/5.0 (Windows NT 6.1; WOW6…

Zinc #22 URLバーでGoogle検索

URLバーでGoogle検索できるようにする・・・。URLバーに入力した文字列がURLか文字列(検索文字列)かを判定する方法はいろいろあるだろうが、もっとも緩い基準は「'.'(ドット)が含まれていない、または、' '(スペース)が含まれていれば検索文字列」という結論…

Zinc #21 タブの削除

タブの削除を実装するわけだが、やってみるとこれまでの課題の中では、今のところ一番難しかった・・・。FragmentTabHostやTabWidgetのremove系メソッドでは削除されなかったり、タブだけが消えてフラグメント側は消えていないように見えたり、別のタブを押…

Zinc #20 新しいタブの追加

新しいタブを追加する機能を実装する・・・。まずは、android:id="@+id/action_newtab_add"なるメニューアイテムを追加し、"新しいタブ"という表示名に・・・。MainActivity.javaは、"新しいタブ"を選ぶと、新しいタブが1つ追加される・・・。最初のタブが"…

Zinc #19 タブブラウザの導入

そろそろタブブラウザの導入をしてみる・・・。 これまでアクティビティ中心のアプリケーションになっていたが、今後はフラグメント中心のアプリケーションにしていく・・・。Fragmentを追加・・・。UIのXMLは作るが、メソッドとかはいい・・・。activity_ma…