diff --git a/help/sakura/res/HLP000268.html b/help/sakura/res/HLP000268.html index 920fe20fe0..7e58dbb427 100644 --- a/help/sakura/res/HLP000268.html +++ b/help/sakura/res/HLP000268.html @@ -75,6 +75,7 @@ + @@ -167,6 +168,7 @@

マクロ専用関数/変数

GetViewLines() :Integer
GetViewColumns() :Integer
CreateMenu( int1 :Integer, str2 :String ) :Integer
+・GetViewTop() :Integer

■ function GetFilename(): String; []
@@ -1095,5 +1097,11 @@

マクロ専用関数/変数

sakura:2.2.0.0以降

- +■ function GetViewTop() :Integer; []
+
+戻り値
+画面に表示されている一番上の行のレイアウト行番号(1開始)を取得します。
+
+sakura:2.4.2.0以降
+
diff --git a/sakura_core/Funccode_x.hsrc b/sakura_core/Funccode_x.hsrc index 0a666a8c7d..43b8d3c440 100644 --- a/sakura_core/Funccode_x.hsrc +++ b/sakura_core/Funccode_x.hsrc @@ -578,7 +578,7 @@ F_ISTEXTSELECTINGLOCK = 40055, // 選択状態のロックを取得 F_GETVIEWLINES = 40056, // ビューの行数取得 F_GETVIEWCOLUMNS = 40057, // ビューの列数取得 F_CREATEMENU = 40058, // メニュー作成 - +F_GETVIEWTOP = 40059, // 画面に表示される一番上の行番号を取得 // = 2005,.01.10 genta ISearch用補助コード // 2007.07.07 genta 16bit以内に収めないと状況コードと衝突するのでコードを変更 diff --git a/sakura_core/macro/CMacro.cpp b/sakura_core/macro/CMacro.cpp index 8ff518726e..2a6c339496 100644 --- a/sakura_core/macro/CMacro.cpp +++ b/sakura_core/macro/CMacro.cpp @@ -2452,6 +2452,12 @@ bool CMacro::HandleFunction(CEditView *View, EFunctionCode ID, const VARIANT *Ar } return false; } + case F_GETVIEWTOP: + { + int nLine = (Int)View->GetTextArea().GetViewTopLine(); + Wrap( &Result )->Receive( nLine + 1 ); + return true; + } default: return false; } diff --git a/sakura_core/macro/CSMacroMgr.cpp b/sakura_core/macro/CSMacroMgr.cpp index 8dc1cc7d76..521b292645 100644 --- a/sakura_core/macro/CSMacroMgr.cpp +++ b/sakura_core/macro/CSMacroMgr.cpp @@ -475,6 +475,7 @@ MacroFuncInfo CSMacroMgr::m_MacroFuncInfoArr[] = {F_GETVIEWLINES, L"GetViewLines", {VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_EMPTY}, VT_I4, NULL }, //ビューの行数取得 {F_GETVIEWCOLUMNS, L"GetViewColumns", {VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_EMPTY}, VT_I4, NULL }, //ビューの列数取得 {F_CREATEMENU, L"CreateMenu", {VT_I4, VT_BSTR, VT_EMPTY, VT_EMPTY}, VT_I4, NULL }, //メニュー作成 + {F_GETVIEWTOP, L"GetViewTop", {VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_EMPTY}, VT_I4, NULL }, //画面に表示される一番上の行番号を取得 // 終端 // Jun. 27, 2002 genta