Inheritance: IDisposable, INotifyPropertyChanged
Ejemplo n.º 1
0
 public BaseKn5FormWrapper(BaseRenderer renderer, string title, int width, int height) : base(renderer, title, width, height) {
     Kn5ObjectRenderer = (IKn5ObjectRenderer)renderer;
     Form.MouseMove += OnMouseMove;
     Form.MouseDown += OnMouseDown;
     Form.MouseUp += OnMouseUp;
     Form.MouseWheel += OnMouseWheel;
 }
Ejemplo n.º 2
0
        public BaseFormWrapper(BaseRenderer renderer, string title, int width, int height) {
            _title = title;

            Form = new RenderForm(title) {
                Width = width,
                Height = height,
                StartPosition = FormStartPosition.CenterScreen
            };

            Renderer = renderer;
            Renderer.Initialize(Form.Handle);

            Renderer.Width = Form.ClientSize.Width;
            Renderer.Height = Form.ClientSize.Height;

            Form.UserResized += OnResize;
            Form.KeyDown += OnKeyDown;
            Form.KeyUp += OnKeyUp;

            Form.GotFocus += OnGotFocus;
            Form.LostFocus += OnLostFocus;

            renderer.Tick += OnTick;
        }
Ejemplo n.º 3
0
            private static LoadedImage LoadImageUsingDirectX(BaseRenderer renderer, byte[] imageData) {
                if (imageData == null || imageData.Length == 0) return null;
                
                try {
                    Format format;
                    var pngData = TextureReader.ToPng(renderer.DeviceContextHolder, imageData, true, out format);

                    var image = new BitmapImage();
                    using (var stream = new MemoryStream(pngData) {
                        Position = 0
                    }) {
                        image.BeginInit();
                        image.CreateOptions = BitmapCreateOptions.PreservePixelFormat;
                        image.CacheOption = BitmapCacheOption.OnLoad;
                        image.UriSource = null;
                        image.StreamSource = stream;
                        image.EndInit();
                    }
                    image.Freeze();

                    return new LoadedImage {
                        Image = image,
                        FormatDescription = format.ToString()
                    };
                } catch (Exception e) {
                    Logging.Warning(e);
                    return null;
                }
            }
Ejemplo n.º 4
0
            public CarTextureDialogViewModel([CanBeNull] BaseRenderer renderer, [CanBeNull] CarSkinObject activeSkin, [NotNull] Kn5 kn5, [NotNull] string textureName) {
                _renderer = renderer;
                _activeSkin = activeSkin;
                _kn5 = kn5;
                TextureName = textureName;

                var format = Regex.Match(textureName, @"(?<=\.)([a-zA-Z]{3,4})$").Value;
                TextureFormat = string.IsNullOrWhiteSpace(format) ? null : format.ToUpperInvariant();

                byte[] data;
                Data = kn5.TexturesData.TryGetValue(textureName, out data) ? data : null;
            }