public ScLayerLayoutViewerDoubleScreenViewport(ScMgr scmgr = null)
            : base(scmgr)
        {
            screen1 = new ScLayerLayoutViewerScreen(scmgr);
            screen1.UserLayerValueChangedEvent     += Screen_UserLayerValueChangedEvent;
            screen1.ViewerItemMouseEnterEvent      += Screen_ViewerItemMouseEnterEvent;
            screen1.ViewerItemMouseDownEvent       += Screen_ViewerItemMouseDownEvent;
            screen1.ViewerItemMouseLeaveEvent      += Screen_ViewerItemMouseLeaveEvent;
            screen1.ViewerItemMouseDoubleDownEvent += Screen_ViewerItemMouseDoubleDownEvent;
            screen1.Visible = false;
            //screen1.D2DPaint += Screen1_D2DPaint;
            Add(screen1);

            screen2 = new ScLayerLayoutViewerScreen(scmgr);
            screen2.UserLayerValueChangedEvent     += Screen_UserLayerValueChangedEvent;
            screen2.ViewerItemMouseEnterEvent      += Screen_ViewerItemMouseEnterEvent;
            screen2.ViewerItemMouseDownEvent       += Screen_ViewerItemMouseDownEvent;
            screen2.ViewerItemMouseLeaveEvent      += Screen_ViewerItemMouseLeaveEvent;
            screen2.ViewerItemMouseDoubleDownEvent += Screen_ViewerItemMouseDoubleDownEvent;
            screen2.Visible = false;
            // screen2.D2DPaint += Screen2_D2DPaint;
            Add(screen2);

            //
            SizeChanged += ScLayoutLayoutViewerDoubleScreenViewport_SizeChanged;
        }
Пример #2
0
 public void InvalidateGlobalRect(RectangleF globalRect)
 {
     if (scMgr != null && suspendLayoutCount == 0)
     {
         ScMgr.Refresh(globalRect);
     }
 }
Пример #3
0
        public ScButton(ScMgr scmgr = null)
            : base(scmgr)
        {
            D2DPaint += ScButton_D2DPaint;


            shadow = new ScShadow(scmgr);
            shadow.CornersRadius = 6;
            shadow.ShadowRadius  = 3;
            shadow.ShadowColor   = Color.FromArgb(15, 0, 0, 0);
            ShadowLayer          = shadow;


            this.MouseDown  += ScButton_MouseDown;
            this.MouseUp    += ScButton_MouseUp;
            this.MouseEnter += ScButton_MouseEnter;
            this.MouseLeave += ScButton_MouseLeave;

            this.D2DPaint += ScButton_D2DPaint;


            scAnim = new ScAnimation(this, animMS, true);
            scAnim.AnimationEvent += ScAnim_AnimationEvent;

            scFontColorAnim = new ScAnimation(this, animMS, true);
            scFontColorAnim.AnimationEvent += ScFontColorAnim_AnimationEvent;


            IsUseOrgHitGeometry = false;

            SizeChanged     += ScButton_SizeChanged;
            LocationChanged += ScButton_LocationChanged;
        }
Пример #4
0
Файл: ScTab.cs Проект: lypvc/Sc
        public ScTab(ScMgr scMgr)
            : base(scMgr)
        {
            IsUseDebugPanitCode          = true;
            scTabHead                    = new ScTabHeader(ScMgr);
            scTabHead.SelectedItemEvent += ScTabHead_SelectedItemEvent;

            scTabHead.IsUseDebugPanitCode = true;

            tabHeadBox = new ScLayer(scMgr);
            tabHeadBox.Add(scTabHead);
            Add(tabHeadBox);



            tabBodyBox = new ScLayer(scMgr);
            Add(tabBodyBox);

            tabBodyBox.D2DPaint += TabBodyBox_D2DPaint;

            tabBodyBox.MouseEnter += TabBodyBox_MouseEnter;
            tabBodyBox.MouseLeave += TabBodyBox_MouseLeave;

            SizeChanged += ScTabEx_SizeChanged;
        }
Пример #5
0
        public ScTabHeaderPevNextBtn(ScMgr scMgr)
            : base(scMgr)
        {
            prePlane = new ScPanel();
            Add(prePlane);

            nextPlane = new ScPanel();
            Add(nextPlane);

            prePlane.D2DPaint += PrePlane_D2DPaint;

            prePlane.MouseEnter += PrePlane_MouseEnter;
            prePlane.MouseDown  += PrePlane_MouseDown;
            prePlane.MouseLeave += PrePlane_MouseLeave;
            prePlane.MouseUp    += PrePlane_MouseUp;

            nextPlane.D2DPaint += NextPlane_D2DPaint;

            nextPlane.MouseEnter += NextPlane_MouseEnter;
            nextPlane.MouseDown  += NextPlane_MouseDown;
            nextPlane.MouseLeave += NextPlane_MouseLeave;
            nextPlane.MouseUp    += NextPlane_MouseUp;

            SizeChanged += ScTabHeaderPevNextBtn_SizeChanged;
        }
Пример #6
0
 public void Update()
 {
     if (scMgr != null && suspendLayoutCount == 0)
     {
         ScMgr.Update();
     }
 }
Пример #7
0
        public ScTextView(ScMgr scmgr = null)
            : base(scmgr)
        {
            foreFont.FamilyName = "宋体";
            foreFont.Size       = 24;
            foreFont.Style      = SharpDX.DirectWrite.FontStyle.Normal;
            foreColor           = Color.Red;

            LostFocus      += TxtView_LostFocus;
            GotFocus       += TxtView_GotFocus;
            MouseDown      += ScTextView_MouseDown;
            MouseMove      += TxtView_MouseMove;
            MouseUp        += ScTextView_MouseUp;
            KeyDown        += TxtView_KeyDown;
            KeyUp          += ScTextView_KeyUp;
            D2DPaint       += TxtView_D2DPaint;
            CharEvent      += TxtView_CharEvent;
            ImeStringEvent += TxtView_ImeStringEvent;

            Cursor       = Cursors.IBeam;
            IsHitThrough = true;


            //
            scAnim = new ScAnimation(this, -1, true);
            scAnim.AnimationEvent += ScAnim_AnimationEvent;
            scAnim.DurationMS      = 500;


            ReBulid += ScTextView_ReBulid;
        }
Пример #8
0
        public ScGridViewCoreContainer(ScMgr scmgr)
            : base(scmgr)
        {
            IsUseDebugPanitCode = true;

            seletorScreen      = new ScLayer(scmgr);
            seletorScreen.Name = "seletorScreen";
            seletorScreen.IsUseDebugPanitCode = true;

            gridViewPack      = new ScLayer(scmgr);
            gridViewPack.Name = "gridViewPack";
            gridViewPack.IsUseDebugPanitCode = true;
            Add(gridViewPack);

            gridViewCore      = new ScGridViewCore(scmgr);
            gridViewCore.Name = "gridViewCore";
            gridViewCore.IsUseDebugPanitCode             = true;
            gridViewCore.ItemDirectClipLayer             = seletorScreen;
            gridViewCore.HeaderItemValueChangedEvent    += GridViewContainer_HeaderItemValueChangedEvent;
            gridViewCore.ContentSizeChangedEvent        += GridViewContainer_ContentSizeChangedEvent;
            gridViewCore.HeaderItemHitEvent             += GridViewContainer_HeaderItemHitEvent;
            gridViewCore.CreateHeaderItemDataLayerEvent += GridViewContainer_CreateHeaderItemDataLayerEvent;
            gridViewCore.CreateDataItemDataLayerEvent   += GridViewContainer_CreateDataItemDataLayerEvent;
            gridViewCore.ItemDataSetValueEvent          += GridViewContainer_ItemDataSetValueEvent;
            gridViewCore.UserLayerValueChangedEvent     += GridViewContainer_UserLayerValueChangedEvent;
            gridViewCore.ViewerItemMouseEnterEvent      += GridViewContainer_ViewerItemMouseEnterEvent;
            gridViewCore.ViewerItemMouseDownEvent       += GridViewContainer_ViewerItemMouseDownEvent;
            gridViewCore.ViewerItemMouseLeaveEvent      += GridViewContainer_ViewerItemMouseLeaveEvent;
            gridViewCore.ViewerItemMouseDoubleDownEvent += GridViewContainer_ViewerItemMouseDoubleDownEvent;

            gridViewPack.Add(gridViewCore);

            Add(seletorScreen);


            //
            scrollBarVertical = new ScScrollBarEx(scmgr);
            scrollBarVertical.ScrollOrientation = ScScrollOrientation.VERTICAL_SCROLL;
            scrollBarVertical.Visible           = false;
            scrollBarVertical.SliderMoveEvent  += ScrollBarVertical_SliderMoveEvent;
            Add(scrollBarVertical);

            scrollBarHorizontal = new ScScrollBarEx(scmgr);
            scrollBarHorizontal.ScrollOrientation = ScScrollOrientation.HORIZONTAL_SCROLL;
            scrollBarHorizontal.Visible           = false;
            scrollBarHorizontal.SliderMoveEvent  += ScrollBarHorizontal_SliderMoveEvent;
            Add(scrollBarHorizontal);


            //
            shadow = new ScShadow(scmgr);
            shadow.CornersRadius = ShadowCornersRadius;
            shadow.ShadowRadius  = ShadowRange;
            shadow.ShadowColor   = ShadowColor;
            ShadowLayer          = shadow;

            SizeChanged     += ScGridView_SizeChanged;
            LocationChanged += ScGridView_LocationChanged;
            D2DPaint        += ScGridView_D2DPaint;
        }
Пример #9
0
 public void Invalidate(RectangleF rc)
 {
     if (scMgr != null && suspendLayoutCount == 0)
     {
         rc = TransLocalToGlobal(rc);
         ScMgr.Refresh(rc);
     }
 }
Пример #10
0
 public ScTab(ScMgr scMgr, float w, float h, int itemWidth, int upOrBottom, bool hideTabHeight)
     : base(scMgr)
 {
     this.upOrBottom    = upOrBottom;
     this.hideTabHeight = hideTabHeight;
     this.itemWidth     = itemWidth;
     Init(w, h);
 }
Пример #11
0
        void RunGDIPaint(ScGraphics g)
        {
            ScMgr scmgr = root.layer.ScMgr;

            scmgr.ClearBitmapRect(root.clipRect);
            GDIPaint(g, root);
            DrawChildNodeGDI(root, g);
        }
Пример #12
0
        ScLayer CreateItemControlField(ScMgr scmgr, ColumnSetting columnSetting)
        {
            ScLabel label = new ScLabel(scmgr);

            label.Dock      = ScDockStyle.Fill;
            label.ForeFont  = new D2DFont("微软雅黑", 12, SharpDX.DirectWrite.FontWeight.Regular);
            label.ForeColor = Color.FromArgb(255, 58, 166, 254);
            return(label);
        }
Пример #13
0
        public ScLayer(ScMgr scmgr = null)
        {
            ScMgr   = scmgr;
            Opacity = 1.0f;

            MouseEnter += ScControl_MouseEnter;
            MouseLeave += ScControl_MouseLeave;

            visableAnim = new ScAnimation(this, VisibleAnimMS, true);
            visableAnim.AnimationEvent += VisibleAnim_AnimationEvent;
        }
Пример #14
0
        public ScLabelCheckBox(ScMgr scmgr = null)
            : base(scmgr)
        {
            CheckBox = new ScCheckBox(scmgr);
            Add(CheckBox);

            Label = new ScLabel(scmgr);
            Add(Label);

            SizeChanged += ScLabelCheckBox_SizeChanged;
        }
Пример #15
0
        public void Refresh()
        {
            if (scMgr != null && suspendLayoutCount == 0)
            {
                ScMgr.Refresh(drawBox);
            }

            if (ShadowLayer != null)
            {
                ShadowLayer.Refresh();
            }
        }
Пример #16
0
        public ScScrollBarSliderEx(ScMgr scmgr)
            : base(scmgr)
        {
            D2DPaint += ScScrollBarSlider_D2DPaint;

            MouseEnter += ScScrollBarSlider_MouseEnter;
            MouseDown  += ScScrollBarSlider_MouseDown;
            MouseLeave += ScScrollBarSlider_MouseLeave;
            MouseUp    += ScScrollBarSlider_MouseUp;

            scAnim = new ScAnimation(this, 100, true);
            scAnim.AnimationEvent += ScAnim_AnimationEvent;
        }
Пример #17
0
        public ScPanel(ScMgr scmgr = null)
            : base(scmgr)
        {
            ScShadow shadow = new ScShadow(scmgr);

            shadow.CornersRadius = 4;
            shadow.ShadowRadius  = 5;
            shadow.ShadowColor   = Color.FromArgb(25, 0, 0, 0);
            ShadowLayer          = shadow;

            LocationChanged += ScPanel_LocationChanged;
            SizeChanged     += ScPanel_SizeChanged;
            D2DPaint        += ScPanel_D2DPaint;
        }
Пример #18
0
        ScLayer CreateHeaderControlField(ScMgr scmgr, ColumnSetting columnSetting)
        {
            ScLabel label = new ScLabel(scmgr);

            label.Dock     = ScDockStyle.Fill;
            label.ForeFont = new D2DFont("微软雅黑", 12, SharpDX.DirectWrite.FontWeight.Bold);

            if (!columnSetting.columnBaseInfo.isHideName)
            {
                label.Text = columnSetting.columnBaseInfo.displayName;
            }

            return(label);
        }
Пример #19
0
        public ScLayerControl(ScMgr scMgr)
        {
            this.scMgr = scMgr;



            SetStyle(ControlStyles.UserPaint, true);
            SetStyle(ControlStyles.AllPaintingInWmPaint, true); // 禁止擦除背景.

            if (scMgr.GraphicsType == GraphicsType.GDIPLUS)
            {
                SetStyle(ControlStyles.DoubleBuffer, true);  // 双缓冲
            }
            m_hImc = ImmGetContext(this.Handle);
        }
Пример #20
0
        public ScGridView(ScMgr scmgr)
            : base(scmgr)
        {
            CreateHeaderItemDataLayerEvent += GridView_CreateHeaderItemDataLayerEvent;
            CreateDataItemDataLayerEvent   += GridView_CreateDataItemDataLayerEvent;
            ItemDataSetValueEvent          += GridView_ItemDataSetValueEvent;
            ViewerItemMouseDownEvent       += GridView_ViewerItemMouseDownEvent;

            //
            // keyboardHook.KeyDown += KeyboardHook_KeyDown;
            // keyboardHook.KeyUp += KeyboardHook_KeyUp;

            //  mouseHook.Start();
            // keyboardHook.Start();
        }
Пример #21
0
        public ScCheckBox(ScMgr scmgr = null)
            : base(scmgr)
        {
            DrawCheckLayer = new ScLayer(scmgr);
            Add(DrawCheckLayer);

            DrawCheckLayer.D2DPaint += DrawCheckLayer_D2DPaint;

            SizeChanged += ScCheckBox_SizeChanged;
            D2DPaint    += ScCheckBox_D2DPaint;
            MouseDown   += ScCheckBox_MouseDown;
            MouseUp     += ScCheckBox_MouseUp;
            MouseEnter  += ScCheckBox_MouseEnter;
            MouseLeave  += ScCheckBox_MouseLeave;
        }
Пример #22
0
        public ScTabHeaderItem(ScMgr scmgr = null)
            : base(scmgr)
        {
            this.MouseDown  += SimpleTabHeadItem_MouseDown;
            this.MouseEnter += ScTabHeadItem_MouseEnter;
            this.MouseLeave += ScTabHeadItem_MouseLeave;

            this.D2DPaint += ScTabHeadItem_D2DPaint;

            scAnim = new ScAnimation(this, 50, true);
            scAnim.AnimationEvent += ScAnim_AnimationEvent;

            IsUseOrgHitGeometry = false;

            SizeChanged += ScTabHeaderItem_SizeChanged;
        }
Пример #23
0
        public ScTabHeadItem(ScMgr scMgr, ScTabHead scTabHead)
            : base(scMgr)
        {
            this.scTabHead   = scTabHead;
            this.MouseDown  += SimpleTabHeadItem_MouseDown;
            this.MouseEnter += ScTabHeadItem_MouseEnter;
            this.MouseLeave += ScTabHeadItem_MouseLeave;

            this.D2DPaint += ScTabHeadItem_D2DPaint;
            this.GDIPaint += ScTabHeadItem_GDIPaint;

            scAnim = new ScAnimation(this, 50, true);
            scAnim.AnimationEvent += ScAnim_AnimationEvent;

            IsUseOrgHitGeometry = false;
        }
Пример #24
0
        public ScTextBoxEx(ScMgr scmgr = null)
            : base(scmgr)
        {
            Type = "ScTextBoxEx";

            textBox           = new ScTextViewBoxEx(scmgr);
            textBox.ForeColor = Color.Black;
            textBox.TextViewLostFocusEvent += TextBox_TextViewLostFocusEvent;
            Add(textBox);

            SizeChanged += ScTextBox_SizeChanged;
            D2DPaint    += ScTextBoxEx_D2DPaint;

            textBox.TextViewKeyDownEvent += TextBox_TextViewKeyDownEvent;
            textBox.ValueChangedEvent    += TextBox_ValueChangedEvent;
        }
Пример #25
0
        public ScTextBox(ScMgr scmgr = null)
            : base(scmgr)
        {
            Type = "ScTextBoxEx";

            textBox           = new ScTextViewBox(scmgr);
            textBox.ForeColor = Color.Black;
            ForeFont          = new D2DFont("微软雅黑", 12, SharpDX.DirectWrite.FontWeight.Regular);
            textBox.TextViewLostFocusEvent += TextBox_TextViewLostFocusEvent;
            Add(textBox);

            SizeChanged += ScTextBox_SizeChanged;
            D2DPaint    += ScTextBoxEx_D2DPaint;

            textBox.TextViewKeyDownEvent += TextBox_TextViewKeyDownEvent;
            textBox.ValueChangedEvent    += TextBox_ValueChangedEvent;
        }
Пример #26
0
        public ScDrawNode ReCreateReDrawTree(ScLayer rootLayer, Rectangle refreshArea)
        {
            if (rootLayer.Visible == false)
            {
                return(null);
            }

            scmgr = rootLayer.ScMgr;

            RectangleF clipRect = new RectangleF(refreshArea.X, refreshArea.Y, refreshArea.Width, refreshArea.Height);

            root = _AddChildReDrawScLayer(null, clipRect, new List <ScLayer> {
                rootLayer
            });

            return(root);
        }
Пример #27
0
        public ScScrollBarEx(ScMgr scmgr = null)
            : base(scmgr)
        {
            Name = "scrollBar";

            slider      = new ScScrollBarSliderEx(scmgr);
            slider.Name = "slider";
            Add(slider);

            MouseMove        += ScScrollBar_MouseMove;
            slider.MouseDown += Slider_MouseDown;

            SizeChanged += ScScrollBar_SizeChanged;


            IsHitThrough = false;
        }
Пример #28
0
        public ScTextViewBoxEx(ScMgr scmgr = null)
            : base(scmgr)
        {
            textView = new ScTextViewEx(scmgr);
            textView.IsMultipleRow = false;
            Add(textView);

            MouseMove   += TextBox_MouseMove;
            MouseDown   += TextBox_MouseDown;
            SizeChanged += ScTextViewBoxEx_SizeChanged;

            textView.CursorPositionEvent       += TextView_CursorPositionEvent;
            textView.KeyDown                   += TextView_KeyDown;
            textView.TextViewLostFocusEvent    += TextView_TextViewLostFocusEvent;
            textView.TextViewValueChangedEvent += TextView_TextViewValueChangedEvent;

            IsHitThrough = true;
        }
Пример #29
0
        public int ComputeSelfLayout()
        {
            int ret;

            if (ScMgr == null ||
                parent == null ||
                parent.globalMatrix == null ||
                ScMgr.GetRootLayer() == null)
            {
                return(-1);
            }

            ReleaseSelfTransformInfo();

            ret = _ComputeSelfLayout();

            return(ret);
        }
Пример #30
0
        public ScTextBox(ScMgr scMgr = null)
        {
            Type = "ScTextBox";

            this.ScMgr = scMgr;

            textBox           = new ScTextViewBox(scMgr);
            textBox.ForeColor = Color.Black;
            textBox.ForeFont  = new Font("微软雅黑", 12);
            Add(textBox);

            SizeChanged += ScTextBox_SizeChanged;
            GDIPaint    += ScTextBox_GDIPaint;

            textBox.TextViewKeyDownEvent += TextBox_TextViewKeyDownEvent;

            textBox.ValueChangedEvent += TextBox_ValueChangedEvent;
        }