独自のXcursorテーマを作成する予定です。既存のテーマを見ている間、奇妙な名前が見つかりました08e8e1c95fe2fc01f976f1e063a24ccd
。たとえば、この名前を含むコードスニペットを見つけました。
https://vimsky.com/examples/detail/cpp-ex---QHash-reserve-method.html
コメントによると、ハードコーディングされたMD5ハッシュのようです。しかし、このハッシュ値を生成できませんでした。どのプログラムにこれらの名前が必要ですか?私のシステムにインストールされているすべてのテーマはこの名前へのシンボリックリンクですが、それに関するドキュメントは見つかりません。
size_bdiag
上右/下左ペインのサイズ変更と、上size_fdiag
左/下右ペインのサイズ変更という2つのカーソルもあります。しかし、私はこれらの名前の意味を理解できません。 「diag」は「対角線」を意味するかもしれませんが、「b」と「f」が何を意味するのかはまだ推測できません。何度も検索しましたが、文書が見つかりませんでした。話しませんか?原作者が私にいたずらを打つのだろうか?
答え1
これマニュアルページハッシュの使い方を説明してください。
voidXcursorImageHash( Ximage*イメージ, 署名されていない文字ハッシュ[XCURSOR_BITMAP_HASH_SIZE]) 環境が変わったときに表示する画像のハッシュを計算します。 XCURSOR_DISCOVER変数を設定します。
そして
CursorXcursorTryShapeBitmapCursor( *dpyマーク、 ピクセル画像ソース、 ピックスマップマスク、 XColor*フォアグラウンド、 Xカラー*背景、 符号なし整数 x, 符号なし整数型y) モニターがARGBまたはテーマをサポートしている場合は、ロードしてみてください。 ソースパラメータをカーソルとして使用してXcursorのキャッシュに入ります。 ピクセル画像ID。ソースがキャッシュに存在しない可能性があります。カーソル ハッシュ値を使用して目的の画像を識別します。
これソースコードmd5などを使用しないと説明します。
/* *ハッシュ値を計算します。うん、使ってもいいと思います。 *より強力なハッシュ関数ですが、MD5とSHA1の両方 *このためには時間とスペースが少し高価ですが、 *カーソルは通常弱いほど小さいです。 *ハッシュはこれを区別するのに十分です。 */
あいまいなニーモニックについて、Xマウスカーソルの楽しみ、特にleft_ptr_watchいくつかの図があります:
「fdiag」は矢印の付いたバックスラッシュ状の記号です。
「bdiag」は矢印の付いたスラッシュ状の記号です。
しかし、これは単なるイメージのセットです。 Xカーソル名(次に定義)ヘッドファイル) は、さまざまな画像セットの Xcursor API で使用され、一部は元の X-cursor 画像とまったく関係ありません.たとえば、bdiag / fdiagはQt名として表示され、これはX名です(ymmv- Qtソースコードを読むのに役立ちます):
Qt::SizeBDiagCursor
到着BOTTOM_LEFT_CORNER
Qt::SizeFDiagCursor
到着BOTTOM_RIGHT_CORNER
右側の名前はXソースコードの定義に対応します。
#XC_bottom_left_corner 定義 12 #defineXC_bottom_right_corner 14
決めるどこbdiag/fdiag 名の由来については調査が必要です。 Qt開発者はそれを覚えているかもしれませんが、そうではないかもしれません。これQCursorクラスリファレンス次の名前を示しますibeam
(Xソースにはありませんが、XViewから来ることができます)。xterm
)。 xtermマニュアルページXカーソル名のリストがあり、「ibam」への言及はありません。