プログラミング・メモプログラミング・メモ2015年04月2015年04月30日サクラエディタのマクロ作ってみたMacのCotEditorのマクロ作ってみた。タブ区切りのテキストをHTMLのtableタグに変換するで、CotEditor用にマクロ作ったんだが、Windowsのサクラエディタのマクロでも作って見た。サクラエディタのマクロはJScript、VBScript、PPAとか使えるけど、JScriptを使うことにする。JScriptには、Editorオブジェクトが提供されていて、それのメソッドを呼び出すことで操作する。APIを使ってみるメッセージをWebブラウザの外部に表示するAPIだ。説明する前にTypeScriptを使うので、型定義ファイルを示しとく。NotificationOptions);}このAPI、IEでサポートしてないものだからだと思うが、型定義ファイルが用意されていない。Notification;}が必要だ。{alert("通知に対応してない");}で判定する。メッセージを出す場合、ユーザから許可を得ているか、得ていないなら許可を得なければなりません。許可を得ているかどうかは、Notification.requestPermissionプロパティが、"granted"でないと許可を得てないので許可を得るようにする。status;}});}こんな感じ。3000);};こんな感じ。自動的に消えないのでsetTimeoutで3秒後に閉じるようにしている。Windowsでマルチタッチ別のブログで公開してたものです。一部をこっちのブログに移行しようと手動で(^^;)移行したものです。前にWPFでマルチタッチを試してみたのと同様のWindowsストアアプリを試しに作ってみた。Windowsストアアプリを新規作成して、canvasを張り付けてPointerPressed、PointerMoved、PointerReleasedイベントを取るようにする。これらのイベントでマウス、ペン、タッチのイベントが発生する。イベントで渡されるPointerRoutedEventArgsのGetCurrentPointでPointerPointを取得してそのPointerDeviceのPointerDeviceTypeプロパティでマウス、ペン、タッチの区別ができる。複数タッチを区別するのはPointerPointのPointerIdプロパティで行う。Windowsでマルチタッチ別のブログで公開してたものです。一部をこっちのブログに移行しようと手動で(^^;)移行したものです。Windowsでマルチタッチ試してみた。Windos8以降だとWindowsストア向けに作れば対応できる。(Windowsストア向けは、まだ調べてない)WPFアプリのプロジェクトを新規作成してCanvasを貼り付けて、TouchDown、TouchMove、TouchUpイベントを取ればマルチタッチが取れるようになる。これらのイベントはマウスのMouseDown、MouseMove、MouseUpイベントのタッチ版のようなものだ。複数のタッチ(指)を認識するには、タッチイベントで渡されるTouchEventArgsのTouchDeviceのIdで複数の指を識別する。複数のタッチそれぞれにIDがふられてそれぞれイベントが発生することになる。サンプルは、タッチしたところに赤丸(かなり大きいが(^^;))とIDが表示されるようになっている。ついでにマウスイベント、スタイラス(デジタイザペン)でも円を描画するようにしてる。マウスは青丸で押してるボタンを表示する。スタイラスは緑丸とIDを表示し、円は筆圧によって大きさが変わるようになっている。これでわかるのが、タッチするとスタイラス、マウスのイベントが、スタイラスで画面を触るとマウスのイベントが発生する。この辺はそれぞれのEventArgsのhandledプロパティにtrueを設定すると発生しなくなるが、タッチ、スタイラスとも長押しすると右ボタンを押したマウスイベントは発生するようなので都合が悪い場合はなんか別の方法で回避しないといけない。(簡単な方法があるかは調べてないので不明)サンプル:TestMultiTouchWPF.zip全体を見ないとわからない部分もあるんだが、サンプルからタッチ関係のイベント部分を抜き取ったものものせとく。別のブログで公開してたものです。一部をこっちのブログに移行しようと手動で(^^;)移行したものです。JavaでPSGぽい音を出すサンプルです。タイトルでJava8って書いてるけど、古いのでもいけると思います。}}まっ、見ればわかると思いますが、最初のほうでCDと同等の音質でデータラインを取得して、そこに440Hzの矩形波のデータを用意して書き込んでる。このfreqの値を変えると音程が変更でき、volを変更すると音量が変わる。和音の出し方は別の音程の波形データを加算するだけでOK。オーバーフローしないようにしないといけない。ROMイメージを作ってみる。ファイルオープンダイアログを出す。