示例#1
0
        /// <summary>
        ///     フォームの初期化
        /// </summary>
        private void InitForm()
        {
            // ウィンドウの位置
            Location = HoI2EditorController.Settings.ScenarioEditor.Location;
            Size = HoI2EditorController.Settings.ScenarioEditor.Size;

            // 技術ツリーパネル
            _techTreePanelController = new TechTreePanelController(techTreePictureBox) { ApplyItemStatus = true };
            _techTreePanelController.ItemMouseClick += OnTechTreeItemMouseClick;
            _techTreePanelController.QueryItemStatus += OnQueryTechTreeItemStatus;

            // マップパネル
            _mapPanelController = new MapPanelController(provinceMapPanel, provinceMapPictureBox);

            // ユニットツリー
            _unitTreeController = new UnitTreeController(unitTreeView);

            // コントローラ
            _controller = new ScenarioEditorController(this, _mapPanelController, _unitTreeController);
        }
示例#2
0
        /// <summary>
        ///     ユニットツリーのノード選択時の処理
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnUnitTreeAfterSelect(object sender, UnitTreeController.UnitTreeViewEventArgs e)
        {
            // ボタンの状態を更新する
            oobAddUnitButton.Enabled = e.CanAddUnit;
            oobAddDivisionButton.Enabled = e.CanAddDivision;
            bool selected = (e.Unit != null) || (e.Division != null);
            oobCloneButton.Enabled = selected;
            oobRemoveButton.Enabled = selected;
            TreeNode parent = e.Node.Parent;
            if (selected && (parent != null))
            {
                int index = parent.Nodes.IndexOf(e.Node);
                int bottom = parent.Nodes.Count - 1;
                oobTopButton.Enabled = index > 0;
                oobUpButton.Enabled = index > 0;
                oobDownButton.Enabled = index < bottom;
                oobBottomButton.Enabled = index < bottom;
            }
            else
            {
                oobTopButton.Enabled = false;
                oobUpButton.Enabled = false;
                oobDownButton.Enabled = false;
                oobBottomButton.Enabled = false;
            }

            if (e.Unit != null)
            {
                UpdateOobUnitItems(e.Unit);
                EnableOobUnitItems();
            }
            else
            {
                DisableOobUnitItems();
                ClearOobUnitItems();
            }

            if (e.Division != null)
            {
                UpdateOobDivisionItems(e.Division);
                EnableOobDivisionItems();
            }
            else
            {
                DisableOobDivisionItems();
                ClearOobDivisionItems();
            }
        }
 /// <summary>
 ///     コンストラクタ
 /// </summary>
 /// <param name="form">シナリオエディタのフォーム</param>
 /// <param name="mapPanelController">マップパネルのコントローラ</param>
 /// <param name="unitTreeController">ユニットツリーのコントローラ</param>
 public ScenarioEditorController(ScenarioEditorForm form, MapPanelController mapPanelController,
     UnitTreeController unitTreeController)
 {
     _form = form;
     _mapPanelController = mapPanelController;
     _unitTreeController = unitTreeController;
 }