CraftLaunch
MainWindow Class Reference

メインウインドウ More...

Public Member Functions

def subThreadCall (self, func, arg, cancel_func=None, cancel_func_arg=(), raise_error=False, print_traceback=False)
 サブスレッドで処理を実行する More...
 
def subProcessCall (self, cmd, cwd=None, env=None, enable_cancel=False)
 コンソールプログラムをサブプロセスとして実行する More...
 
def commandLine (self, title, text="", selection=None, auto_complete=False, autofix_list=None, update_handler=None, candidate_handler=None, candidate_remove_handler=None, status_handler=None, keydown_handler=None, char_handler=None, enter_handler=None, escape_handler=None)
 コマンドラインで文字列を入力する More...
 
def resetPos (self)
 ウインドウ位置を初期化する More...
 
def configure (self)
 設定を読み込む More...
 
def command_Edit (self, info)
 ファイルをテキストエディタで編集する More...
 
def command_ContextMenu (self, info)
 コンテキストメニューを開く More...
 
def command_Quit (self, info)
 終了する More...
 
def command_MusicList (self, info)
 音楽プレイヤのファイルリストを開く More...
 
def command_MusicPlay (self, info)
 音楽の再生を開始する More...
 
def command_MusicStop (self, info)
 音楽の再生を停止する More...
 
def ShellExecuteCommand (self, verb, filename, param, directory, swmode=None)
 アプリケーションやファイルの起動を行うコマンドオブジェクトを生成する More...
 
def UrlCommand (self, url, encoding="utf8")
 URLを開くコマンドオブジェクトを生成する More...
 
def command_History (self, info)
 コマンド履歴リストを開く More...
 
def command_RemoveHistory (self, info)
 入力中の文字列をコマンド履歴から削除する More...
 
def command_CommandList (self, info)
 コマンドのリストを開く More...
 
def command_ConfigMenu (self, info)
 設定メニューを開く More...
 
def command_Reload (self, info)
 設定ファイルをリロードする More...
 
def command_ConsoleOpen (self, info)
 コンソールウインドウを開く More...
 
def command_ConsoleClose (self, info)
 コンソールウインドウを閉じる More...
 
def command_ConsoleToggle (self, info)
 コンソールウインドウの表示状態をトグルで切り替える More...
 
def command_AutoCompleteOn (self, info)
 自動補完をOnにする More...
 
def command_AutoCompleteOff (self, info)
 自動補完をOffにする More...
 
def command_AutoCompleteToggle (self, info)
 自動補完のOn/Offをトグルで切り替える More...
 
def command_About (self, info)
 CraftLaunchのバージョン情報を表示する More...
 

Detailed Description

メインウインドウ

CraftLaunchのメインウインドウを表すクラスです。

設定ファイル config.py の configure() に渡される window 引数は、MainWindow クラスのオブジェクトです。 CraftLaunch のさまざまな機能が、MainWindowのメソッドとして提供されています。

Member Function Documentation

◆ subThreadCall()

def subThreadCall (   self,
  func,
  arg,
  cancel_func = None,
  cancel_func_arg = (),
  raise_error = False,
  print_traceback = False 
)

サブスレッドで処理を実行する

Parameters
self-
funcサブスレッドで実行する呼び出し可能オブジェクト
arg引数 func に渡す引数
cancel_funcESCキーが押されたときのキャンセル処理
cancel_func_arg引数 cancel_func に渡す引数
raise_error引数 func のなかで例外が発生したときに、それを raise するか
print_traceback引数 func のなかで例外が発生したときに、エラー発生位置を詳細に出力するか

メインスレッドのユーザインタフェイスの更新を止めずに、サブスレッドの中で任意の処理を行うための関数です。

この関数のなかでは、引数 func をサブスレッドで呼び出しながら、メインスレッドでメッセージループを回します。 返値には、引数 func の返値がそのまま返ります。

ファイルのコピーや画像のデコードなどの、比較的時間のかかる処理は、メインスレッドではなくサブスレッドの中で処理するように心がけるべきです。 さもないと、メインスレッドがブロックし、ウインドウの再描画などが長時間されないままになるといった弊害が発生します。

◆ subProcessCall()

def subProcessCall (   self,
  cmd,
  cwd = None,
  env = None,
  enable_cancel = False 
)

コンソールプログラムをサブプロセスとして実行する

Parameters
self-
cmdコマンドと引数のシーケンス
cwdサブプロセスのカレントディレクトリ
envサブプロセスの環境変数
enable_cancelTrue:ESCキーでキャンセルする False:ESCキーでキャンセルしない

任意のコンソールプログラムを、CraftLaunchのサブプロセスとして実行し、そのプログラムの出力を、コンソールウインドウにリダイレクトします。

引数 cmd には、サブプロセスとして実行するプログラムと引数をリスト形式で渡します。
例: [ "subst", "R:", "//remote-machine/public/" ]

◆ commandLine()

def commandLine (   self,
  title,
  text = "",
  selection = None,
  auto_complete = False,
  autofix_list = None,
  update_handler = None,
  candidate_handler = None,
  candidate_remove_handler = None,
  status_handler = None,
  keydown_handler = None,
  char_handler = None,
  enter_handler = None,
  escape_handler = None 
)

コマンドラインで文字列を入力する

Parameters
self-
titleコマンド入力欄の左側に表示されるタイトル文字列
textコマンド入力欄の初期文字列
selectionコマンド入力欄の初期選択範囲
auto_complete自動補完を有効にするか
autofix_list入力確定をする文字のリスト
update_handlerコマンド入力欄の変更があったときに通知を受けるためのハンドラ
candidate_handler補完候補を列挙するためのハンドラ
candidate_remove_handler補完候補を削除するためのハンドラ
status_handlerコマンド入力欄の右側に表示されるステータス文字列を返すためのハンドラ
keydown_handlerコマンド入力欄でキー入力が行われたときのハンドラ
char_handlerコマンド入力欄で文字入力が行われたときのハンドラ
enter_handlerコマンド入力欄でEnterキーが押されたときのハンドラ
escape_handlerコマンド入力欄でEscapeキーが押されたときのハンドラ
Returns
入力された文字列

コマンド入力欄で任意の文字列の入力を受け付けるための関数です。 コマンドを解釈/実行するのは、このメソッドの呼び出し元の役割です。

◆ resetPos()

def resetPos (   self)

ウインドウ位置を初期化する

Parameters
self-

ウインドウ位置を、設定メニューの [表示位置の保存] で保存されたウインドウ位置にリセットします。

◆ configure()

def configure (   self)

設定を読み込む

キーマップや command_list などをリセットした上で、config,py を再読み込みします。

◆ command_Edit()

def command_Edit (   self,
  info 
)

ファイルをテキストエディタで編集する

MainWindow.editor に設定されたテキストエディタを使って、引数に与えられたファイルを開きます。

◆ command_ContextMenu()

def command_ContextMenu (   self,
  info 
)

コンテキストメニューを開く

引数に与えられたファイルに関して、コンテキストメニューを開きます。

◆ command_Quit()

def command_Quit (   self,
  info 
)

終了する

CraftLaunch を終了します。

◆ command_MusicList()

def command_MusicList (   self,
  info 
)

音楽プレイヤのファイルリストを開く

◆ command_MusicPlay()

def command_MusicPlay (   self,
  info 
)

音楽の再生を開始する

◆ command_MusicStop()

def command_MusicStop (   self,
  info 
)

音楽の再生を停止する

◆ ShellExecuteCommand()

def ShellExecuteCommand (   self,
  verb,
  filename,
  param,
  directory,
  swmode = None 
)

アプリケーションやファイルの起動を行うコマンドオブジェクトを生成する

Parameters
self-
verb操作
filename操作対象のファイル
param操作のパラメータ
directory既定のディレクトリ
swmode表示状態

指定されたプログラムを起動するコマンドオブジェクトを生成し、返します。

引数verbには、実行する操作を文字列で渡します。指定可能な文字列は対象によって異なりますが、一般的には次のような操作が指定可能です。

open ファイルを開きます。またはプログラムを起動します。 edit ファイルを編集します。 properties ファイルのプロパティを表示します。

引数swmodeには、以下のいずれかの文字列(またはNone)を渡します。

"normal"または""またはNone アプリケーションを通常の状態で起動します。 "maximized" アプリケーションを最大化状態で起動します。 "minimized" アプリケーションを最小化状態で起動します。

引数の意味の詳細については、以下の解説を参照してください。 http://msdn.microsoft.com/ja-jp/library/cc422072.aspx

プログラムの起動は、サブスレッドの中で行われます。

◆ UrlCommand()

def UrlCommand (   self,
  url,
  encoding = "utf8" 
)

URLを開くコマンドオブジェクトを生成する

Parameters
self-
urlURL
encodingURLの文字列のエンコーディング

◆ command_History()

def command_History (   self,
  info 
)

コマンド履歴リストを開く

◆ command_RemoveHistory()

def command_RemoveHistory (   self,
  info 
)

入力中の文字列をコマンド履歴から削除する

◆ command_CommandList()

def command_CommandList (   self,
  info 
)

コマンドのリストを開く

◆ command_ConfigMenu()

def command_ConfigMenu (   self,
  info 
)

設定メニューを開く

◆ command_Reload()

def command_Reload (   self,
  info 
)

設定ファイルをリロードする

◆ command_ConsoleOpen()

def command_ConsoleOpen (   self,
  info 
)

コンソールウインドウを開く

◆ command_ConsoleClose()

def command_ConsoleClose (   self,
  info 
)

コンソールウインドウを閉じる

◆ command_ConsoleToggle()

def command_ConsoleToggle (   self,
  info 
)

コンソールウインドウの表示状態をトグルで切り替える

◆ command_AutoCompleteOn()

def command_AutoCompleteOn (   self,
  info 
)

自動補完をOnにする

◆ command_AutoCompleteOff()

def command_AutoCompleteOff (   self,
  info 
)

自動補完をOffにする

◆ command_AutoCompleteToggle()

def command_AutoCompleteToggle (   self,
  info 
)

自動補完のOn/Offをトグルで切り替える

◆ command_About()

def command_About (   self,
  info 
)

CraftLaunchのバージョン情報を表示する