public SliderSwitchNode(KNXSliderSwitch knx)
            : base(knx)
        {
            this.Name = ImageKey = SelectedImageKey = MyConst.Controls.KnxSliderSwitchType;

            this.ReadAddressId   = knx.ReadAddressId ?? new Dictionary <string, KNXSelectedAddress>();
            this.WriteAddressIds = knx.WriteAddressIds ?? new Dictionary <string, KNXSelectedAddress>();

            this.LeftImage         = knx.LeftImage;
            this.RightImage        = knx.RightImage;
            this.SliderImage       = knx.SliderImage;
            this.IsRelativeControl = (EBool)Enum.ToObject(typeof(EBool), knx.IsRelativeControl);
        }
        public KNXSliderSwitch ToKnx()
        {
            var knx = new KNXSliderSwitch();

            base.ToKnx(knx);

            knx.ReadAddressId   = this.ReadAddressId;
            knx.WriteAddressIds = this.WriteAddressIds;

            knx.LeftImage         = this.LeftImage;
            knx.RightImage        = this.RightImage;
            knx.SliderImage       = this.SliderImage;
            knx.IsRelativeControl = (int)this.IsRelativeControl;

            return(knx);
        }
Beispiel #3
0
        public KNXSliderSwitch ExportTo(BackgroundWorker worker, string dir, Point RelPoint)
        {
            KNXSliderSwitch knx = this.ToKnx(worker);

            knx.Left = this.LocationInPageFact.X - RelPoint.X;
            knx.Top  = this.LocationInPageFact.Y - RelPoint.Y;

            knx.ReadAddressId.Clear();
            knx.WriteAddressIds.Clear();

            knx.LeftImage   = FileHelper.CopyFileSole(Path.Combine(MyCache.ProjImgPath, this.LeftImage), dir);
            knx.RightImage  = FileHelper.CopyFileSole(Path.Combine(MyCache.ProjImgPath, this.RightImage), dir);
            knx.SliderImage = FileHelper.CopyFileSole(Path.Combine(MyCache.ProjImgPath, this.SliderImage), dir);

            return(knx);
        }
Beispiel #4
0
        public SliderSwitchNode(KNXSliderSwitch knx, BackgroundWorker worker)
            : base(knx, worker)
        {
            this.Name = ImageKey = SelectedImageKey = MyConst.Controls.KnxSliderSwitchType;
            SetText(this.Title);

            this.ReadAddressId   = knx.ReadAddressId ?? new Dictionary <string, KNXSelectedAddress>();
            this.WriteAddressIds = knx.WriteAddressIds ?? new Dictionary <string, KNXSelectedAddress>();

            if (ImportedHelper.IsLessThan2_0_3())
            {
                if (!string.IsNullOrEmpty(knx.LeftImage))
                {
                    this.LeftImage = ProjResManager.CopyImageSole(Path.Combine(this.ImagePath, knx.LeftImage));
                }
                if (!string.IsNullOrEmpty(knx.RightImage))
                {
                    this.RightImage = ProjResManager.CopyImageSole(Path.Combine(this.ImagePath, knx.RightImage));
                }
                if (!string.IsNullOrEmpty(knx.SliderImage))
                {
                    this.SliderImage = ProjResManager.CopyImageSole(Path.Combine(this.ImagePath, knx.SliderImage));
                }
            }
            else if (ImportedHelper.IsLessThan2_5_6())
            {
                this.LeftImage   = ProjResManager.CopyImageSole(Path.Combine(this.ImagePath, NAME_LEFTIMAGE));
                this.RightImage  = ProjResManager.CopyImageSole(Path.Combine(this.ImagePath, NAME_RIGHTIMAGE));
                this.SliderImage = ProjResManager.CopyImageSole(Path.Combine(this.ImagePath, NAME_SLIDERIMAGE));
            }
            else
            {
                this.LeftImage   = knx.LeftImage;
                this.RightImage  = knx.RightImage;
                this.SliderImage = knx.SliderImage;
            }

            this.IsRelativeControl = (EBool)Enum.ToObject(typeof(EBool), knx.IsRelativeControl);
            this.Orientation       = (Orientation)Enum.ToObject(typeof(Orientation), knx.Orientation);
            this.SliderWidth       = knx.SliderWidth < MIN_SLDER_WIDTH ? MIN_SLDER_WIDTH : knx.SliderWidth;
        }
Beispiel #5
0
        public SliderSwitchNode(KNXSliderSwitch knx, BackgroundWorker worker, string DirSrcImg)
            : this(knx, worker)
        {
            this.Id = GenId(); // 创建新的Id

            if (ImportedHelper.IsLessThan2_5_6())
            {
                string knxImage     = GetImageName(knx.Id);              // KNX图片资源名称
                string knxImagePath = Path.Combine(DirSrcImg, knxImage); // KNX图片资源路径

                this.LeftImage   = ProjResManager.CopyImageRename(Path.Combine(knxImagePath, NAME_LEFTIMAGE));
                this.RightImage  = ProjResManager.CopyImageRename(Path.Combine(knxImagePath, NAME_RIGHTIMAGE));
                this.SliderImage = ProjResManager.CopyImageRename(Path.Combine(knxImagePath, NAME_SLIDERIMAGE));
            }
            else
            {
                this.LeftImage   = ProjResManager.CopyImageRename(Path.Combine(DirSrcImg, knx.LeftImage));
                this.RightImage  = ProjResManager.CopyImageRename(Path.Combine(DirSrcImg, knx.RightImage));
                this.SliderImage = ProjResManager.CopyImageRename(Path.Combine(DirSrcImg, knx.SliderImage));
            }
        }
Beispiel #6
0
        public KNXSliderSwitch ToKnx(BackgroundWorker worker)
        {
            var knx = new KNXSliderSwitch();

            base.ToKnx(knx, worker);

            knx.ReadAddressId   = this.ReadAddressId;
            knx.WriteAddressIds = this.WriteAddressIds;

            knx.LeftImage   = this.LeftImage;
            knx.RightImage  = this.RightImage;
            knx.SliderImage = this.SliderImage;

            knx.IsRelativeControl = (int)this.IsRelativeControl;
            knx.Orientation       = (int)this.Orientation;
            knx.SliderWidth       = this.SliderWidth;

            MyCache.ValidResImgNames.Add(knx.LeftImage);
            MyCache.ValidResImgNames.Add(knx.RightImage);
            MyCache.ValidResImgNames.Add(knx.SliderImage);

            return(knx);
        }