[[PSS/ロードマップ/実装済み機能]] #contents -Pss本体のレジストリに、 ユーザ名、 ログファイルのパス名 の2つを追加する。 -Pss本体の初回起動時に、ユーザ名を設定できるようにする。 -回答時にログをとる。 -- PdbLogInfo li_ を CTransDlg が持ち、ログ本体 log_ は CPssApp が持つ。 -- 回答開始時に li_.startTimer() -- 終了時に --- li_.endTimer() --- li_.setParam(...) --- log_.get... = li_; を行って完了。その後、書き出しをやればOK -Pssのメイン画面にユーザ名を表示する。 -Pssのメイン画面で回答情報を参照できるようにする。 (2002-02-18) -メニューにヘルプとReadmeへのリンクを追加。それと、ショートカット、問題一覧、練習開始。 --予定の機能として、淡色で「グラフ」も追加。 - 履歴消去ボタンの設置 - 履歴の消去がなんかおかしい。「失敗しました」というメッセージが出る。フォルダを含むとおかしいようだ。 -- 解決:ul.nLog() を消去後にも評価していたので、成功時にも失敗のメッセージが出ていた。 - バグ:Pssの回答画面で %xx が展開されないようだ。 (2002-02-20) - フォルダ選択時にメニューの淡色表示 -- PssEditorでは実現済み。ぱくるだけ。 - 履歴で、〜秒を適時 〜分〜秒 や 〜時間〜分〜秒 に変更。 - 問題一覧画面 -- ファイル出力時のファイル名をセクション名にする。 -- セクション名とセクションパスを表示。あわよくば、リストの最初に追加したり、ファイルに記録したり。 - 初回のユーザ名入力画面で、ログファイル中のユーザ名を選択できるようにする。 (2002-02-20) - ユーザの変更コマンド -- コンボボックスかな。それともメニューか。ボタンでもいい。オプション画面の中だとわかりにくいけど、それもあり。 - ユーザ名を設定できるようにする。 この際、ユーザ名は古いユーザ名から置き換える形にすること。つまり、次のような画面構成。 >>[Halts] -> [takke] (2002-02-21) - 右クリックの「Preview」→日本語 - オプションでログファイル名の変更。 (2002-03-02) - セクション・フォルダ名の変更 - (PssEditor) 切り取り、コピー、貼り付けの実装 (2002-03-08) - 入力速度 on Pss (2002-03-10) - 問題毎の回答履歴 -- Mutex による回答処理とPssEditorの排他制御 --- つまり、回答処理中にはPssEditorを起動できず、PssEditorの起動中には回答処理を行えないようにする。 (2002-03-10) - 問題毎の回答履歴 -- PdbQuestionLog の設計・実装 (2002-03-16) - 備考 -- PssEditor の詳細情報に備考の項目を実装 -- Pss本体の問題集ツリーの下に備考表示領域を新設 (2002-03-21) - 履歴とPssEditorの同期。 -- セクション名の変更または移動時 --- OldName -> NewName で履歴を変更。renameSection メソッドで行う。 -- フォルダ名の変更または移動時 --- 変更前のフォルダ名を含む履歴要素を探し、それらのフォルダ名を新しいフォルダ名に変更する。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 本体の履歴の出力タイミングを、''回答処理終了後''に変更する。 --- 現在は''Pss終了後''なので、同時にPssEditorが起動していた場合は、PssEditorでの履歴の変更を上書きしてしまうため。 (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 対応の比較処理をインプリメントすれば直るでしょう。 - <<自作問題集>> フォルダをエクスポート出来ない。 - %ad も展開。 (2002-03-30) - '','' のバグ - Pss の履歴領域のサイズ変更 -- 問題毎履歴で、問題だけじゃなく、解答も表示。 (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-20) (2002-05-21) - 任意の回の履歴を削除できるように。 - 最初の再回答カウントダウン開始までに待ち時間を設ける。