○ はじめに X ウィンドウシステムに限らず、一般的に GUI アプリケーションは外部からの何らかの働きかけ(イベント)を受けて、それに応じた処理を行うことで動作します。よって、自分がどのようなイベントを必要なのか、どうすれば必要なイベントを受け取ることができるのか、について知る必要があります。 ここでは X ウィンドウシステムにおけるイベント処理について説明していきます。 イベントとは イベントの選択 イベントの読み込み イベントが無い場合の処理 イベント構造体 MappingNotify イベント ○ イベントとは X におけるイベントとは、X サーバからクライアントに送られる情報のことです。イベントは、発生した順番に X サーバからクライアントに非同期でそれぞれのウィンドウごとに送られます。GUI アプリケーションは一般的にイベント駆動型プログラムであり、これらのイベントに応じ
2006/1/2 最終更新 X11 で使用できるフォント一覧については、 「X Window Systemと日本語フォント」 が詳しい (現在アクセスできません) のですが、最近新たにデザインされたビットマップフォントが増えていますので、筆者が知る最新状況を述べてみることにしました。 ここでいう「フリー」とは、個人による入手・私的使用が無償ででき、利用者の制限を行なっていない ということを一応の基準としています (ただし、商用製品の試用版は本リストの対象外です)。再配布やフォントパターンの改変・フォーマット変換などに関して制限のある物がありますので、個々の配布物を見てご確認ください。 単に表にして入手先を並べるだけではなく、各フォントについて、その来歴などを延べようと思いますが、なかなか手が空きません。 最新の情報に追い付いていない所もあります。具体的な指摘をいただければ、早く直せると思い
X のコピー&ペーストのメカニズムは2種類ある。 1.カットバッファ STRING エンコーディングの文字列のみ格納可能。EUC-JP 日本語は使えないっぽい。0番から7番まであるが、通常使われるのは0番のみ。データは X サーバが保持し、アプリが終了しても失われない。 2.セレクション バッファは複数あり、それぞれ名前を持っている。普通使われるのは XA_PRIMARY,XA_SECONDARY, XA_CLIPBOARD。慣習的に、PRIMARY は文字列を選択したとき、CLIPBOARD はユーザが明示的にコピーしたとき使われるらしい。 セレクションは、ペーストするアプリが X サーバを介してコピーしたアプリに問い合わせを行い、データを要求したフォーマットに変換してもらってから受け取る。そのため、コピーした後でそのアプリが終了するとペーストできなくなってしまう。 今やカットバッファは
X-Window X Window System Unixで標準的なウィンドウシステム. XというWindow SystemなのでX-Windowで区切るとつっかかってくるひとがいるかもしれません。 そうね,普段は X Window System って書くけど,WikiName 的に悩んだ挙げ句,こうなりました. 本家 XFree86 The means to an X for Linux: an interview with David Dawes from Free86.org プロジェクト創設者の一人 David Wexelblat 氏に対するインタビュ. Papers and Talks by Keith Packard KDriveの作者でもある Keith Packard 氏の論文やスライド.いろいろ面白そうなものがある. The X Resize and Rotate E
授業を観たい(Flash版授業コンテンツ) プログラミング演習�V 課題1 −X-Windowプログラミングとプロセス通信の基礎− 米倉達広 (2007.4.4 last updated) 目次 はじめに 1. X-Windowの基礎知識 2. ウィンドウマネジャとXクライアント ・・< Short Break 1> 3. X11プログラミングの基本的な考え方(ウィンドウを作る) 4. イベント検出 5. ちょっと進んだイベント駆動型GUIプログラム 6. <中間課題> 7. プロセス間通信(ソケットとは) 8. コネクション型ソケットを用いたチャットプログラム 9. コネクションレス型ソケットを用いたチャットプログラム 10. ソケット関連の関数 11. 同期と非同期 12. 非同期通信とselect関数
Q. ~/.Xresourcesと~/.Xdefaultsって、どう違うんですか? A. ~/.Xdefaults は、xrdb でディスプレイに対してリソースを 登録して「無い」場合に、XToolkitアプリケーションが起動時に サーバリソースデータベースとして読み込むファイルです。 つまり、xrdb -query として、登録済リソースが表示されるような 状況では、~/.Xdefaultsは参照されません。 ですから、Xのリソース設定に関しては (1). ~/.Xresourcesに記述して、~/.xinitrc(~/.xsession)に xrdb -merge $HOME/.Xresources と書く。 (2). ~/.Xdefaultsに記述して、各Xアプリケーション(が使っている ツールキットのライブラリ)に読み込ませる。 のどちらでもいいです。 ただ、(2)の場合、~/.X
The XFree86 Project, Inc7 March 2000 The X Japanese Documentation Project30 March 2000 この文書には、XFree86 4.0 が持っている機能とその現状に関する情報 が書かれています。 1. はじめに 2. X サーバ 2.1. ローダとモジュール 2.2. 設定ファイル 2.3. コマンド行オプション 2.4. XAA 2.5. マルチヘッド 2.6. Xinerama 2.7. XVideo 機能拡張 2.8. DGA バージョン 2 2.9. DDC 2.10. GLX とダイレクトレンダリングインフラストラクチャ (DRI) 2.11. X-Video 機能拡張 (Xv) 2.12. 他の機能拡張 2.13. ドライバ 3. X のライブラリとクライアント 3.1. Xaw 3.2. Xpm 3.
キー入力を受け取る さて,イベントがわかったところで,キー入力のイベントを検出してみます. コマンドラインからC-cで終了させるのではなく,ESCキーが押されたら終了する ことにします. 0001: /* 0002: key.c 0003: gcc key.c -I/usr/X11R6/include -L/usr/X11R6/lib -lX11 0004: */ 0005: 0006: #include <X11/Xlib.h> 0007: #include <X11/keysym.h> 0008: 0009: #define DEFAULT_SIZE 256 0010: 0011: int main( int argc, char *argv[] ) 0012: { 0013: Display *dpy; 0014: int screen; 0015: Window win, root
xmodmap -pke とすると、現在の keycode (キーコード) と keysym (キーシンボル) の対応表が表示される。 % xmodmap -pke keycode 9 = Escape keycode 10 = 1 exclam keycode 11 = 2 at keycode 12 = 3 numbersign keycode 13 = 4 dollar (略) keycode 24 = q Q keycode 25 = w W keycode 26 = e E (略) keycode 100 = Left keycode 102 = Right keycode というのは、キーボード上のキーと一対一に対応している番号で、キーボードが変われば keycode も変わる可能性がある。keysym というのは、そのキーがどういう意味を持つかという論理的な識別子と考えるとよ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く