テキストボックスやコンボボックスを持つツールバーを作成するチュートリアルをやってみた。
DeveloperGuide
http://wiki.services.openoffice.org/wiki/Framework/Article/Generic_UNO_Interfaces_for_complex_toolbar_controls
SDKのexampleの中に対応するサンプルソースがある(example\cpp\complextoolbarcontrols)。C++で実装してある。
http://hermione.s41.xrea.com/pukiwiki/index.php?Extensions%2FComplexToolbar
Pythonで実装してある。
C++, Pythonともによく知らないので、サンプルコードを流用してイベントを拾ったら、OpenOffice BasicのマクロにDispatchしてしまえば、簡単に面白いツールが作れると思う(DeveloperGuideのサンプルならBaseDispatch#dispatch内で)。
2011年6月4日土曜日
2011年6月3日金曜日
OpenOffice > Basic > 選択された文字列を取得
'文字列を取得する
'Calcの場合は選択されているセルの文字列
'Writerの場合は選択されている文字列
'Calcのセル内で選択されている文字のみを抽出する機能はない
Function GetSelectedText
controller = ThisComponent.CurrentController
selection = controller.getSelection()
iName = selection.ImplementationName
If iName="SwXTextRanges" Then
GetSelectedText = selection.getbyindex(0).String
ElseIf iName="ScCellObj" Then
GetSelectedText = selection.String
Else
GetSelectedText = ""
End If
End Function
'Calcの場合は選択されているセルの文字列
'Writerの場合は選択されている文字列
'Calcのセル内で選択されている文字のみを抽出する機能はない
Function GetSelectedText
controller = ThisComponent.CurrentController
selection = controller.getSelection()
iName = selection.ImplementationName
If iName="SwXTextRanges" Then
GetSelectedText = selection.getbyindex(0).String
ElseIf iName="ScCellObj" Then
GetSelectedText = selection.String
Else
GetSelectedText = ""
End If
End Function
vim ctags
- タグファイルの設定:set tags=tagfile1,tagfile2...
- タグジャンプするCtr + ]
- 元の位置に戻るCtr + t
- タグファイルの作成(vimのコマンドではない)ctags -R -f outputfile_name search_directory_path例 ctags -R -f c:\tags c:\project1\src-R 再帰
2011年6月2日木曜日
OpenOffice > Python > Eclipseでデバッグ
OpenOfficeのPythonマクロをEclipseでデバッグする方法
EclipseにPydevプラグインをインストールし、Pydevプラグインの機能であるデバッグサーバーを使用することでリモートデバッグできる。あくまでもサーバーであるため、シグナルを送るのはクライアントであるPythonマクロということになる。つまりPythonマクロにサーバーにリクエストを送るためのコードを埋めこまなくてはならない。(Eclipse上でブレイクポイントも貼っても意味が無い。)
参考
http://pydev.org/manual_adv_remote_debugger.html
EclipseにPydevプラグインをインストールし、Pydevプラグインの機能であるデバッグサーバーを使用することでリモートデバッグできる。あくまでもサーバーであるため、シグナルを送るのはクライアントであるPythonマクロということになる。つまりPythonマクロにサーバーにリクエストを送るためのコードを埋めこまなくてはならない。(Eclipse上でブレイクポイントも貼っても意味が無い。)
参考
http://pydev.org/manual_adv_remote_debugger.html
vim 基本
- ディレクトリの移動
:cd directory - ファイルを開く
:e filename
- バッファを切り替える
:b filename - 次のバッファ
:bn - 前のバッファ
:bp
- ファイルの先頭に移動
gg - ファイルの末尾に移動
G
- 直前の操作を取り消す(アンドゥ)
u - リドゥ
Ctr + r
- 上書きモードに移行する
R
- 行をコピー(ヤンク)
yy - 貼りつけ(ヤンクしたものを)
p - 選択範囲をクリップボードにコピー
Ctr + Insert - クリップボードから貼りつけ
Shift + Insert
登録:
投稿 (Atom)