예제 #1
0
        /// <summary>
        /// 描画用コンストラクター
        /// </summary>
        /// <param name="mgrObject">ScheduleManagerオブジェクト</param>
        /// <param name="Graphics">Graphicsオブジェクト</param>
        public ScheduleDrawComponent(mgrSchedule mgrObject, Graphics g, Size imgSize)
        {
            this.CalcData(mgrObject);

            //描画の初期設定
            Common.ApplyHighQualityDrawing(g);

            //背景と外枠を描画
            g.FillRectangle(Brushes.White, 0, 0, imgSize.Width, imgSize.Height);
            g.DrawRectangle(ScheduleDrawComponent.TaskFramePen, 1, 1, imgSize.Width - 2, imgSize.Height - 2);
        }
예제 #2
0
        /// <summary>
        /// 必要情報を算出します。
        /// </summary>
        /// <param name="mgrObject">ScheduleManagerオブジェクト</param>
        private void CalcData(mgrSchedule mgrObject)
        {
            this.StartDate = mgrObject.GetFirstStartTaskDate();
            this.EndDate   = mgrObject.GetLastEndTaskDate();

            //縦軸を算出
            foreach (var item in mgrObject.Sections)
            {
                this.HeightCount++;
                foreach (var sub in item.Workers)
                {
                    this.HeightCount++;
                }
            }

            //横軸を算出
            if (mgrObject.Tasks.Count > 0)
            {
                this.WidthCount = (this.EndDate - this.StartDate).Days;
            }
        }
예제 #3
0
        public DateTime EndDate;                //プロジェクトの終了日

        /// <summary>
        /// 情報取得用コンストラクター
        /// </summary>
        /// <param name="mgrObject">ScheduleManagerオブジェクト</param>
        public ScheduleDrawComponent(mgrSchedule mgrObject)
        {
            this.CalcData(mgrObject);
        }