AutoShade
非アクティブウィンドウ自動シェード
初出:2009年02/20 更新:2009年06/14
概要
AutoShadeは非アクティブなウィンドウを自動的にシェード状態(タイトルバーだけ見える状態)/半透明にするソフトウェアです。
狭い画面に沢山のウィンドウを開く場合に、スペースを有効利用できます。
ウィンドウを処理対象とするか否かは、タイトルやウィンドウクラス名などを元に制御できます。
シェード状態のウィンドウ(タイトルバー)は常に最前面に表示され、アクティブになると元の大きさに戻ります。 シェード, 半透明, 最前面に表示はそれぞれ独立に設定できるため、単に半透明化するだけということも可能です。
正規表現(re)などのPython 2.6モジュールは、Python自体がシステムにインストールされている場合のみ使用可能です。
動作環境
- Windows XP (32bit) 以上
- Visual C++ 2008 再配布パッケージ (MSVCP90.DLL)
- v1.01以下、またはPythonの標準モジュールなどを使用する場合は、Python 2.6
スクリーンショット
| 2つのウィンドウがシェード+半透明化しているところ |
|---|
![]() |
ダウンロード
| ファイル | バージョン | 日付 |
|---|---|---|
| AutoShade-1.02.zip | v1.02 | 20090423 |
| AutoShade-1.01.zip | v1.01 | 20090313 |
| AutoShade-1.00.zip | v1.00 | 20090306 |
| AutoShade-0.01.zip | v0.01 beta | 20090221 |
| AutoShade-0.00.zip | v0.00 beta | 20090220 |
設定スクリプトAutoShade.py
起動時に呼ばれるconfigure()にて、
- ウィンドウがシェード対象か判定する関数のリスト
- 未管理ウィンドウ発見時に管理下に置くか判定するaddWindowコールバック
- 管理下のウィンドウが破棄される時に呼ばれるremoveWindowコールバック
- ウィンドウがシェードされる前に呼ばれるshadeWindowコールバック
- シェード状態のウィンドウが解除される前に呼ばれるunshadeWindowコールバック
- ウィンドウアクティブ化の処理を行うactivateWindowコールバック
- ウィンドウ非アクティブ化の処理を行うunactivateWindowコールバック
更新履歴
- v1.02 20090423
- Python2.6 reのない環境でロードに失敗する問題の修正
- v1.01 20090313
- 半透明化解除時にWS_EX_LAYEREDを元に戻す
- v1.00 20090306
- activate/unactivate時の処理をPythonコールバックとして外部化
ウィンドウ半透明化 - v0.01 beta 20090221
- add/remove/shade/unshade時のコールバック
- v0.00 beta 20090220
- βバージョン公開
余談/今後の開発方針
このアプリケーションは
- PythonのC++への組み込み
- boost::spiritを利用したINIファイルread/write
- 処理対象ウィンドウでも、一時的に非アクティブになってもシェードしない(ロック)機能
- マウスカーソルをタイトルバーに載せると一時的にシェード解除する機能
手動シェードは、手元では
- AutoHotKey で Win+S をウィンドウシェードに設定
- マウ筋 で Win+S を送出するジェスチャ割り当て
似たような構成要素からなるutsとの統合も視野に入れています。また、現在はconfigure()の返すシェード可能を判定する呼び出し可能オブジェクトを用いていますが、重複する機能であるaddWindowに集約し、checkCallableは廃止するかもしれません。
掲載
- 2009 4/27 晋遊舎 iP! 2009年6月号 「最新フリーソフトライブラリ」
- 2009 5/16 三才ブックス ゲームラボ 2009年6月号 「PCフリーソフト情報局」
- 2009 5/27 株式会社アスペクト Windowsフリーソフト パーフェクト

