PSS/ロードマップ/実装済み機能
ユーザ名、
ログファイルのパス名
の2つを追加する。
- Pss本体の初回起動時に、ユーザ名を設定できるようにする。
- 回答時にログをとる。
- PdbLogInfo li_ を CTransDlg が持ち、ログ本体 log_ は CPssApp が持つ。
- 回答開始時に li_.startTimer()
- 終了時に
- li_.endTimer()
- li_.setParam(...)
- log_.get... = li_;
を行って完了。その後、書き出しをやればOK
- Pssのメイン画面で回答情報を参照できるようにする。
(2002-02-18)
- メニューにヘルプとReadmeへのリンクを追加。それと、ショートカット、問題一覧、練習開始。
- 履歴の消去がなんかおかしい。「失敗しました」というメッセージが出る。フォルダを含むとおかしいようだ。
- 解決:ul.nLog() を消去後にも評価していたので、成功時にも失敗のメッセージが出ていた。
- バグ:Pssの回答画面で %xx が展開されないようだ。
(2002-02-20)
- 履歴で、〜秒を適時 〜分〜秒 や 〜時間〜分〜秒 に変更。
- 問題一覧画面
- ファイル出力時のファイル名をセクション名にする。
- セクション名とセクションパスを表示。あわよくば、リストの最初に追加したり、ファイルに記録したり。
- 初回のユーザ名入力画面で、ログファイル中のユーザ名を選択できるようにする。
(2002-02-20)
- ユーザの変更コマンド
- コンボボックスかな。それともメニューか。ボタンでもいい。オプション画面の中だとわかりにくいけど、それもあり。
この際、ユーザ名は古いユーザ名から置き換える形にすること。つまり、次のような画面構成。
[Halts] -> [takke]
(2002-02-21)
(2002-03-02)
(2002-03-08)
(2002-03-10)
(2002-03-10)
(2002-03-16)
- 備考
- PssEditor の詳細情報に備考の項目を実装
- Pss本体の問題集ツリーの下に備考表示領域を新設
(2002-03-21)
- 履歴とPssEditorの同期。
- セクション名の変更または移動時
- フォルダ名の変更または移動時
- 変更前のフォルダ名を含む履歴要素を探し、それらのフォルダ名を新しいフォルダ名に変更する。renameFolder メソッドで行う。
- セクションの削除時
- セクション名を含む履歴要素を削除。deleteSection
- フォルダの削除時
- フォルダ名を含む履歴要素を全て削除。deleteFolder
PdbLogManager に、変更前パス->変更後パスの変換メソッドを用意する。
bool PdbLogManager::renameFolder( oldname, newname )
bool PdbLogManager::renameSection( oldname, newname )
フォルダ名を含むという事象は、履歴要素名をstrLogElementとすると、
bool isContainFolder( strLogElement ){
if( strLogElement.substr(0,strFolder.size()) == strFolder &&
strLogElement.at(strFolder.size()) == '/' )
{
return true;
}
return false;
}
である。
- 行の挿入・削除・変更時
- レジストリから「選択中のセクション名」を取得する。そのセクション名と編集中のセクション名が一致し、かつ、Pss本体が『回答中』であれば(Mutexにより検出)、行の挿入・削除を不可能にする。但し、変更は可能とする。すなわち、F3、F4(とそれに該当するコマンド)のみを使用不可にするということである。
- 上記条件を満たさない場合は、排他処理を行わず、以下のそれぞれの処理を行う。履歴に対する各処理は、その瞬間に一気に行う。
- Pss 本体の履歴の出力タイミングを、回答処理終了後に変更する。
(2002-03-24)
- 行の挿入時
- 履歴内の全ユーザのそのセクションに対して、対応する行の挿入を行う。全ユーザという点に注意。
- 行の削除時
- 履歴内の全ユーザのそのセクションに対して、対応する行の削除を行う。
- 行データの変更時(問題データ/解答データの変更時)
- 履歴内の全ユーザのそのセクションに対して、対応する行の履歴データを削除する。
PdbLogManager に、行指向のAPIを用意する。
bool PdbLogManager::insertLine( szSectionPath, i )
bool PdbLogManager::deleteLine( szSectionPath, i )
bool PdbLogManager::modifyLine( szSectionPath, i )
- \\ -> \n 変換などが失敗するバグ
- "才能" -> "才能n" : 能 の2バイト目が \ と同じコードである。ま、Shift-JIS 対応の比較処理をインプリメントすれば直るでしょう。
- <<自作問題集>> フォルダをエクスポート出来ない。
(2002-03-30)
(2002-03-30)
(2002-04-04)
- 「前回の続き」をデフォルトに。これはもちろん「乱数の種の保存」方式のレジューム機能の実装によるものである。
- 代わりに、指定した問題だけを回答する機能を付ける。
(2002-04-07)
(2002-04-08)
- 全て回答した場合のみ、回答済み数を更新(増加)する。
(2002-04-11)
(2002-04-17)
- オプション設定で効果音を無しにしても、次に起動するとデフォルト効果音が設定されてしまう。
(2002-04-18)
(2002-04-21)
- 「前回間違えた問題をもう一度回答」ボタンを追加。
- 専用のデータ構造を実装せねば。
- 「選択」としては実装したが、ボタンの追加がまだ。早くしなきゃ。これが終わればv3.2.0リリース。
- 結局、「前回間違えた問題を選択」ボタンと「選択した問題を覚える」を組み合わせることにした。あと数日中にv3.2.0リリースだね。
(2002-04-29)
- オプション画面の変更
- MozillaやHidemaru、VS.netのように、「左にツリー、右に設定画面」というインターフェースにしたい。タブ形式は古いだろう(笑)(2002-04-22)
(2002-05-02)
- オプション画面を F12 で。
- ユーザ管理画面を F11 で。
(2002-05-04)
- 他アプリケーションからPssをアクティブにすると、タブが隠れるバグ
- 最近は発生しない。いつの間にか直ったのだろうか・・・。(2002-04-18)
(2002-05-05)
- スキンの変更をメニュー形式で選べるように。
- ほぼ実装完了。次はスキン情報の表示だ。(2002-05-03)
- もういい(笑)。(2002-05-05)
(2002-05-11)
- 問題集毎に「回答開始のメッセージ」を設定できるようにする。
(2002-05-14)
- 回答開始までに制限時間を設ける
- さらに、一定時間後にヒントを表示する機能も付ける。
(2002-05-17)
- メイン画面の高速化
- 問題集変更時の画面のちらつきを抑える。
- 問題集データの問題毎履歴リストへのロードタイミングを、タブ変更時にする。
(2002-05-20)
- そろそろショートカットの乱数による再実装を開始するべし。
- ユーザ名を指定できるように。
- 「正解率が低い問題を優先して出題」できるようにすべし。
(2002-05-21)
- 最初の再回答カウントダウン開始までに待ち時間を設ける。