• R/O
  • HTTP
  • SSH
  • HTTPS

CsWin10Desktop3: Commit

Visual C# 7.0, Windows10 Desktop App


Commit MetaInfo

Revisione75cea8c68f731d268cdd251931b287bf43c0855 (tree)
Time2017-01-09 19:17:57
Authorくまかみ工房 <kumakamikoubou@gmai...>
Commiterくまかみ工房

Log Message

操作コマンドを、単一のストロークで判断する場合のための軽量なオーバーライドを実装。

Change Summary

Incremental Difference

--- a/StrokeStyleT/入力/入力履歴.cs
+++ b/StrokeStyleT/入力/入力履歴.cs
@@ -64,9 +64,10 @@ namespace SST.入力
6464 /// </returns>
6565 /// <remarks>
6666 /// 指定したシーケンスが現在の履歴の一部に見られれば、成立しているとみなす。
67+ /// 履歴内に複数存在している場合は、一番古いストロークシーケンスが対象となる。
6768 /// 成立した場合、そのシーケンスを含め、シーケンスより古い履歴はすべて削除される。
6869 /// </remarks>
69- public bool 操作コマンドが成立している( List<入力種別> 操作コマンドのストロークシーケンス )
70+ public bool 操作コマンドが入力された( List<入力種別> 操作コマンドのストロークシーケンス )
7071 {
7172 int ストローク数 = 操作コマンドのストロークシーケンス.Count;
7273
@@ -104,6 +105,39 @@ namespace SST.入力
104105 return true;
105106 }
106107
108+ /// <summary>
109+ /// 現在の履歴において、指定した操作コマンド(単一ストローク)が成立しているかを確認する。
110+ /// </summary>
111+ /// <param name="操作コマンドのストローク">
112+ /// 確認したい操作コマンドのストローク。
113+ /// </param>
114+ /// <returns>
115+ /// 操作コマンドが成立しているなら true。
116+ /// </returns>
117+ /// <remarks>
118+ /// 指定したストロークが現在の履歴内に見られれば、成立しているとみなす。
119+ /// 履歴内に複数存在している場合は、一番古いストロークが対象となる。
120+ /// 成立した場合、そのシーケンスを含め、シーケンスより古い履歴はすべて削除される。
121+ /// </remarks>
122+ public bool 操作コマンドが入力された( 入力種別 操作コマンドのストローク )
123+ {
124+ int ストローク数 = 1; // 固定。
125+
126+ if( this._履歴リスト.Count < ストローク数 )
127+ return false; // 履歴の長さが足りない。
128+
129+
130+ int 検出位置 = this._履歴リスト.IndexOf( 操作コマンドのストローク );
131+
132+ if( -1 == 検出位置 )
133+ return false; // ストロークが見つからない。
134+
135+ // 見つけたストロークならびにそれより古い履歴を削除する。
136+ this._履歴リスト.RemoveRange( 0, ( 検出位置 + ストローク数 ) );
137+
138+ return true;
139+ }
140+
107141 private const double _連続入力だとみなす最大の間隔sec = 0.5;
108142
109143 private int _最大履歴数;
--- a/StrokeStyleT/入力/入力管理.cs
+++ b/StrokeStyleT/入力/入力管理.cs
@@ -117,7 +117,7 @@ namespace SST.入力
117117 }
118118
119119 /// <summary>
120- /// 現在の入力履歴において、指定した操作コマンド(ストロークシーケンス)が成立しているかを確認する。
120+ /// 現在の履歴において、指定した操作コマンド(ストロークシーケンス)が成立しているかを確認する。
121121 /// </summary>
122122 /// <param name="操作コマンドのストロークシーケンス">
123123 /// 確認したい操作コマンドのストロークシーケンス。
@@ -126,13 +126,34 @@ namespace SST.入力
126126 /// 操作コマンドが成立しているなら true。
127127 /// </returns>
128128 /// <remarks>
129- /// 指定したシーケンスが現在の入力履歴の一部に見られれば、成立しているとみなす。
129+ /// 指定したシーケンスが現在の履歴の一部に見られれば、成立しているとみなす。
130+ /// 履歴内に複数存在している場合は、一番古いストロークシーケンスが対象となる。
130131 /// 成立した場合、そのシーケンスを含め、シーケンスより古い履歴はすべて削除される。
131132 /// </remarks>
132- public bool 操作コマンドが成立している( List<入力種別> 操作コマンドのストロークシーケンス )
133+ public bool 操作コマンドが入力された( List<入力種別> 操作コマンドのストロークシーケンス )
133134 {
134135 // 委譲
135- return this._入力履歴.操作コマンドが成立している( 操作コマンドのストロークシーケンス );
136+ return this._入力履歴.操作コマンドが入力された( 操作コマンドのストロークシーケンス );
137+ }
138+
139+ /// <summary>
140+ /// 現在の履歴において、指定した操作コマンド(単一ストローク)が成立しているかを確認する。
141+ /// </summary>
142+ /// <param name="操作コマンドのストローク">
143+ /// 確認したい操作コマンドのストローク。
144+ /// </param>
145+ /// <returns>
146+ /// 操作コマンドが成立しているなら true。
147+ /// </returns>
148+ /// <remarks>
149+ /// 指定したストロークが現在の履歴内に見られれば、成立しているとみなす。
150+ /// 履歴内に複数存在している場合は、一番古いストロークが対象となる。
151+ /// 成立した場合、そのシーケンスを含め、シーケンスより古い履歴はすべて削除される。
152+ /// </remarks>
153+ public bool 操作コマンドが入力された( 入力種別 操作コマンドのストローク )
154+ {
155+ // 委譲
156+ return this._入力履歴.操作コマンドが入力された( 操作コマンドのストローク );
136157 }
137158
138159 private bool _入力履歴を記録する = true;
Show on old repository browser