Last change
on this file since 87 was 24, checked in by dai_9181, 18 years ago |
保存されていないドキュメントのタブに(*)をつける機能に対応。
MDITEXTEDITINFOをCMdiTextEditに変更。今後、オブジェクト指向化を進める。
|
File size:
1.2 KB
|
Rev | Line | |
---|
[24] | 1 | #include "common.h"
|
---|
| 2 |
|
---|
| 3 | CMdiTextEdit::CMdiTextEdit( MDIINFO *pMdiInfo ){
|
---|
| 4 | this->pMdiInfo = pMdiInfo;
|
---|
| 5 |
|
---|
| 6 | isModified = false;
|
---|
| 7 |
|
---|
| 8 | BaseNumOfUndoRedo = 0;
|
---|
| 9 |
|
---|
| 10 | pTextEditUndoState = (TEXTEDIT_UNDOSTATE *)HeapAlloc( hHeap, HEAP_ZERO_MEMORY, sizeof( TEXTEDIT_UNDOSTATE ) );
|
---|
| 11 | pTextEditUndoState->NowPos = 0;
|
---|
| 12 | }
|
---|
| 13 | CMdiTextEdit::~CMdiTextEdit(){
|
---|
| 14 | for( int i=0; i<MAX_UNDONUM; i++ ){
|
---|
| 15 | if( pTextEditUndoState->Command[i] ){
|
---|
| 16 | TextEdit_DeleteUndoData( pTextEditUndoState, i );
|
---|
| 17 | }
|
---|
| 18 | }
|
---|
| 19 | HeapDefaultFree( pTextEditUndoState );
|
---|
| 20 | }
|
---|
| 21 |
|
---|
| 22 | void CMdiTextEdit::Modify(){
|
---|
| 23 | //変更時
|
---|
| 24 | isModified = true;
|
---|
| 25 |
|
---|
| 26 | //タブ文字列に変更を示すアスタリスクを付ける
|
---|
| 27 | pobj_MainTab->NofityModifyDocument( pMdiInfo->title );
|
---|
| 28 | }
|
---|
| 29 | void CMdiTextEdit::UnModify(){
|
---|
| 30 | //変更状態解除
|
---|
| 31 | isModified = false;
|
---|
| 32 |
|
---|
| 33 | //アスタリスク表示を解除する
|
---|
| 34 | pobj_MainTab->NofityUnModifyDocument( pMdiInfo->title );
|
---|
| 35 |
|
---|
| 36 | //アンドゥーリドゥーのベース番号を取得
|
---|
| 37 | BaseNumOfUndoRedo = pTextEditUndoState->NowPos;
|
---|
| 38 | }
|
---|
| 39 | bool CMdiTextEdit::IsModified(){
|
---|
| 40 | return isModified;
|
---|
| 41 | }
|
---|
| 42 |
|
---|
| 43 | void CMdiTextEdit::NofityUndoRedoToModify(){
|
---|
| 44 | if( BaseNumOfUndoRedo == pTextEditUndoState->NowPos ){
|
---|
| 45 | //変更なし
|
---|
| 46 | if( IsModified() ){
|
---|
| 47 | UnModify();
|
---|
| 48 | }
|
---|
| 49 | }
|
---|
| 50 | else{
|
---|
| 51 | //変更あり
|
---|
| 52 | if( ! IsModified() ){
|
---|
| 53 | Modify();
|
---|
| 54 | }
|
---|
| 55 | }
|
---|
| 56 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.