タブに×ボタンを追加します。
Request/282 http://sakura.qp.land.to/?Request%2F282
たまにマウスドライバが細工して中ボタンが効かないことがあるんですよね。。。
・共通設定タブバーに「閉じるボタン」オプションを追加。
・上記オプションがONのときタブをオーナードローします。
・オーナードロー状態ではフォントがMS UIゴシックではなくなります。
・タブを3つ以上開き、アクティブじゃないタブの×をクリックすると、別のタブがアクティブになることがあります。
タブのオーナードローについて、以下を参考にしました。
http://www.koders.com/cpp/fidB5F0276280688AAB3A117DAA61E6FEC605AE33F6.aspx?s=cdef%3Agzip
不具合を修正しました
New_TabCloseButton_U2.patch
・アクティブじゃないタブを閉じると別のタブがアクティブになるのを修正
・等幅でない場合タブ名の後ろに空白を足して×のスペースを確保するのをやめて、TabCtrl_SetPaddingを使うようにする
・オーナードローの描画位置を微調整
・(Chg) オーナードローでない時も、タブバーのフォントはMSゴシック固定ではなく、メニューのフォントに合わせるようにしました
U3.patch
・conflict修正
・MinGW対応 WINVER=501になりました。
・タブバーのフォント指定に従う修正
閉じるボタン表示時にタブフォントが適用されないのを修正
新しいリビジョンに対応
Windows Vista 以降では3D枠が表示されてしまうのを修正(ExcludeClipRectを呼ぶようにした)
参考:http://emule-gifc.googlecode.com/svn-history/r39/trunk/srchybrid/ButtonsTabCtrl.cpp
これをまってました。
あの3Dエッジって消せるんですね。
mingwでWINVER=0x501も0x500に戻して、HTHEMEを定義するようにしました。
uxtheme.hをincludeするのをやめました。
windows 7のテーマ表示で確認しました。
ところで、manifestがなくてテーマが無効になっているときもテーマONで描画されてしまうようです。
・makefileの_WIN32_IEが0x500になってたのを修正
・テーマの判断を便利なIsVisualStyle()に変更
manifestがないとき、ちゃんと古い表示になりました。
MinGW32/MinGW-W64では
vsstyle.hを拾ってくる必要があります。
WineについてるのでOKです。
リビジョン3124でコミットしました