■■■■■■□■■■■■■□■■■■■■□□□□□■■□■■■■■■
■■□□■■□■■□□■■□■■□□□□□■■■■■■□■■□□□□
■■□□■■□■■□□■■□■■□□□□□■■□□■■□■■■■■■
■■□□■■□■■□□■■□■■□□□□□■■□□■■□□□□□■■
■■□□■■□■■■■■■□■■■■■■□■■■■■■□■■■■■■

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

第2回

第2回、何をしようか迷ったんですが、海外のフォーラム"Lost In The Box"の方で何で「bbLeanのツールバーにtext-shadowを付けないんだ?」って言われたのでコレにしようと思います。標準のツールバーなんて使ってるヤツいるのか?と疑問もあるわけですが、まあ簡単だし最初には丁度いいかなと。
必要なもの
1 MinGW フリーのC/C++コンパイラ
2 ソース(bbLean_mod_060703_src)
3 grep検索できるもの(JGREP2推奨)

前回、MinGWを導入しコンパイル環境を整えたので今回から改造に入ります。
テキストの描写はDrawText()関数を使っているのですが、コレをDrawTextWithShadwo()に置き換えて影を描写します。
DrawTextWithShadowは僕が既に作成済みでBBApi.cppに記述があります。
DrawTextはこんな感じで

DrawText(
HDC hdc,
const char* text,
int textLength, RECT* r,
unsigned int format
)

DrawTextWithShadowは

DrawTextWithShadow(
HDC hdc,
const char* text,
int textLength, RECT* r,
unsigned int format,
COLORREF textColor, //文字の色
COLORREF shadowColor, //影の色
bool shadow //trueなら影描写, falseなら影を描写しない
)

です。
したがってやる事は
  1. DrawText()をDrawTextWithShadow()に置き換える
  2. 文字色、影色を指定する
  3. bool shadowのtrue/falseを指定する
の3つです。


まず、"DrawText"でgrep検索するとDrawTextWithShadowに混じってToolBar.cppの530行目あたりに"DrawText"が見つかると思います。また、SetTextColor()というのがすぐ上にありますね、コレでDrawText()の文字色を指定しているわけです。
SetTextColor()の行をコメントアウトし、
文字色、影色、影のon/offを決めるフラグを入れる変数を定義し、
DrawTextWithShadowに置き換えます。

before
SetTextColor(buf, mStyle.ToolbarLabel.TextColor);
DrawText(buf, Toolbar_WorkspaceName, -1, &r, justify);

after
COLORREF tc, sc; // text color, shadow color
bool shadow; // text-shadow enable/disable
tc = mStyle.ToolbarLabel.TextColor;
sc = mStyle.ToolbarLabel.ShadowColor;
shadow = (sc == CLR_INVALID) ? false : true; //scがなければfalse
DrawTextWithShadow(buf, Toolbar_WorkspaceName, -1, &r, justify, tc, sc, shadow);

これで終わりです

下の方の
// Paint window label background...
// Paint clock background...
の部分もそれぞれ置き換えましょう。ただし、変数定義は上で済んでいるので、その記述は除きます。

(注意)
tc = mStyle.ToolbarLabel.TextColor;
sc = mStyle.ToolbarLabel.ShadowColor;
この記述はbbLeanBar modのためにstyleファイルからToolBarの影色を取得するように既に改変済みなので使えてますが、0から改造する際はstyleファイルからToolBarのshadowColorを取得するような改変も必要になってきます。

テーマ:フリーソフト - ジャンル:コンピュータ

  1. 2006/07/23(日) 17:31:26|
  2. bbLean mod 講座
  3. | トラックバック:0
  4. | コメント:0
<<bbLeanBar mod 060724 | ホーム | 第1回>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバックURLはこちら
http://nocd5.blog59.fc2.com/tb.php/52-ee5a2f95
この記事にトラックバックする(FC2ブログユーザー)
home

プロフィール

Author:nocd5
30歳(男)
会社員

Last.fm



最近の記事

カテゴリー

カレンダー

03 | 2017/03 | 04
Sun Mon Tue Wed Thu Fri Sat
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31 -

最近のコメント

最近のトラックバック

ブロとも申請フォーム

この人とブロともになる

ブログ内検索

Amazonアソシエイト

RSSフィード

リンク

このブログをリンクに追加する

FC2ブログランキング

FC2Blog Ranking

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。