ツリー、ページ
新しいページを作成すると、
CChildView::EnableEditorForNewPage
CSVGCatApp::PasteTemplatePage
ソース
CMainFrame::OnEditPaste_sub
新規ページ作成時のエディタを閉じる
CSVGCatApp::OpenSub
テンプレートをロードする
→ CSVGCatApp::PasteTemplatePage(下記)
新規ファイル
新規ファイル、新規ページ共通
の
page_default.svg
の 1ページ目をコピーします。
それぞれ、そのページのいちばん上のテキストに対してエディタが自動的に開きます。
の 1ページ目を
file_default.svg
の
右クリックで新しいファイルを作成すると、
コピーします。
の 1ページ目をコピーします。
の
new_default.svg
通知領域のアイコンをクリックして新しいファイルを作成すると、
関連
CChildView::EnableEditor
CMainFrame::OnNewPage
CSVGCatApp::NewPage
テンプレートを読み込む
テンプレートファイル名を作成
新規作成とページ・テンプレート適用
→ CSVGCatApp::PasteTemplatePage(下記)
class=title のテキストは、自動的にツリーノードのキャプションに反映します。
CChildView::SyncTitle
CMainFrame::OnDblClickProp
/* 値を設定する */
ソース
直前の選択状態のツリーノード
の検索対象にもなります。
CMainFrame::CMainFrame
m_Tree_DelayedSelectedItem = NULL
CMainFrame::OnTreeSelchanged (最後)
m_Tree_DelayedSelectedItem = tree->GetSelectedItem();
CChildView::SyncEditor
/* タイトルに反映する */
item = frame->m_Tree_DelayedSelectedItem;
ChildView.cpp (10824)
CMainFrame::OnTreeSelchanged
m_Tree_DelayedSelectedItem は、CMainFrame::OnTreeSelchanged 関数が終わるまで、
直前の選択状態のツリーノードです。
それ以外のほとんどの時間は、CTreeCtrl::GetSelectedItem と同じです。
直前の選択状態
現在の選択状態
CMainFrame::MovePage
m_Tree_DelayedSelectedItem = tree->GetSelectedItem();
現在の選択状態
を更新
CChildView::SyncEditor
/* タイトルに反映する */
item = ( frame->m_PrevTreeItem == NULL ) ?
tree->GetSelectedItem() : frame->m_PrevTreeItem;
ChildView.cpp (10824)
CMainFrame::OnTreeSelchanged (同じ関数)
m_PrevTreeItem = NULL;
CMainFrame::OnTreeSelchanged
m_PrevTreeItem = st->itemOld.hItem;
ページを変えたときは Prev
変えないときは SelectedItem
ツリーノードを変更したとき OnTreeSelchanged が呼ばれて、変更前のノード itemOld.hItem を
参照することができます(VC++6 のみ)。別の関数(CChildView::SyncEditor)でも参照することが
できるようにするための変数が、CMainFrame::m_PrevTreeItem です。
CMainFrame::m_PrevTreeItem != NULL の期間は、CMainFrame::OnTreeSelchanged の始めから
終わりまでと、短いです。
前に選択していたノード
に対する処理
廃止
CMainFrame::CMainFrame
m_PrevTreeItem = NULL
CMainFrame::NoTree
CMainFrame::OnSideByTree
CMainFrame::OnMaxTree
ソース
表示非表示をスイッチするボタン
ツリーを一時的に最大表示するボタン
ツリーノードを選択すると、元のサイズに戻る
(ウィンドウ左下)
CMainFrame::m_SplitMode
0=通常表示、+1=非表示、+2=最大表示 (3=1+2)
ここをドラッグすると
幅を調整できます。
CMainFrame::OnTreeSelchanged
ノードをクリックしたら
表示非表示切り替え:
最大表示:
m_wndSplitter.SetColumnInfo
MoveWindow
CMainFrame::OnTreeSelchanged
CMainFrame::OnTreeLButtonDown
CMainFrame::OnTreeBeginDrag
OnTreeDragMove
OnTreeEndDrag
CMainFrame::OnTreeLButtonUp
CMainFrame::OnTreeRClick
SVGCat_Page クラス
ListX_Elem (全頁のリスト構造)
parent, firstChild, next, prev (ツリー構造)
CMainFrame::LoadTree
CMainFrame::Load
/* ツリーを作り直す */
CMainFrame::OnNewPage
CMainFrame::OnNewChildPage
CMainFrame::OnNewPrevPage
(SVGCat_Page*) tree->GetItemData( item )
CTreeCtrl::InsertItem
CSVGCatApp::NewPage
関連
新しいページを作成すると、
をリードします。
左フレーム
ツリーコントロール
GUI との関係:
テンプレートファイル:
→ CTreeCtrl
参考
CMainFrame
CLeftView* CMainFrame::m_Left
メインウィンドウ
CTreeCtrl* tree = &m_Left->GetTreeCtrl();
ツリーアイテム=ページ
ページ
CMainFrame::MovePage