Beispiel #1
0
        public void CreateWindow(ChromelyConfiguration hostConfig)
        {
            _hostConfig = hostConfig;
            NativeMethods.ChromelyParam configParam = InitParam(InitCallback,
                                                                CreateCallback,
                                                                MovingCallback,
                                                                ResizeCallback,
                                                                QuitCallback);


            var placement = _hostConfig.HostPlacement;

            configParam.centerscreen = placement.CenterScreen ? 1 : 0;
            configParam.frameless    = placement.Frameless ? 1 : 0;
            configParam.fullscreen   = placement.State == Core.Host.WindowState.Fullscreen ? 1 : 0;
            configParam.noresize     = placement.NoResize ? 1 : 0;
            configParam.nominbutton  = placement.NoMinMaxBoxes ? 1 : 0;
            configParam.nomaxbutton  = placement.NoMinMaxBoxes ? 1 : 0;

            configParam.title = _hostConfig.HostTitle;

            configParam.x      = placement.Left;
            configParam.y      = placement.Top;
            configParam.width  = placement.Width;
            configParam.height = placement.Height;

            NativeMethods.createwindow(ref configParam);
        }
Beispiel #2
0
        public void CreateWindow(IChromelyConfiguration config)
        {
            _config = config;
            NativeMethods.ChromelyParam configParam = InitParam(InitCallback,
                                                                CreateCallback,
                                                                MovingCallback,
                                                                ResizeCallback,
                                                                QuitCallback);


            configParam.centerscreen = _config.WindowCenterScreen ? 1 : 0;
            configParam.frameless    = _config.WindowFrameless ? 1 : 0;
            configParam.fullscreen   = _config.WindowState == Core.Host.WindowState.Fullscreen ? 1 : 0;
            configParam.noresize     = _config.WindowNoResize ? 1 : 0;
            configParam.nominbutton  = _config.WindowNoMinMaxBoxes ? 1 : 0;
            configParam.nomaxbutton  = _config.WindowNoMinMaxBoxes ? 1 : 0;

            configParam.title = _config.WindowTitle;

            configParam.x      = _config.WindowLeft;
            configParam.y      = _config.WindowTop;
            configParam.width  = _config.WindowWidth;
            configParam.height = _config.WindowHeight;

            NativeMethods.createwindow(ref configParam);
        }
Beispiel #3
0
        private static NativeMethods.ChromelyParam InitParam(InitCallbackEvent initCallback,
                                                             CreateCallbackEvent createCallback,
                                                             MovingCallbackEvent movingCallback,
                                                             ResizeCallbackEvent resizeCallback,
                                                             QuitCallbackEvent quitCallback)
        {
            NativeMethods.ChromelyParam configParam = new NativeMethods.ChromelyParam();
            configParam.initCallback   = Marshal.GetFunctionPointerForDelegate(initCallback);
            configParam.createCallback = Marshal.GetFunctionPointerForDelegate(createCallback);
            configParam.movingCallback = Marshal.GetFunctionPointerForDelegate(movingCallback);
            configParam.resizeCallback = Marshal.GetFunctionPointerForDelegate(resizeCallback);
            configParam.exitCallback   = Marshal.GetFunctionPointerForDelegate(quitCallback);

            return(configParam);
        }