static void OpenFromSelectionGrid() { _mode = ResponsiveMode.SelectionGrid; EditorWindow window = GetWindow(typeof(ResponsiveGUI), false, "ResponsiveGUI"); window.Show(); }
protected override async Task OnAfterRenderAsync(bool firstRender) { if (baseModule == null) { baseModule = await JSRuntime !.InvokeAsync <IJSObjectReference>("import", BasePath); } if (firstRender) { Rectangle?windowRect = await baseModule !.InvokeAsync <Rectangle>("getWindowRect"); foreach (object?item in Enum.GetValues(typeof(ResponsiveMode))) { if (windowRect.Width <= ResponsiveModeUtils.RESPONSIVE_MAX_CONSTRAINT[(int)item]) { CurrentMode = (ResponsiveMode)item; break; } } _resizeEventGuid = Guid.NewGuid().ToString().Replace("-", ""); selfReference = DotNetObjectReference.Create(this); await baseModule.InvokeVoidAsync("registerResizeEvent", selfReference, "OnResizedAsync", _resizeEventGuid); StateHasChanged(); // we will never have window size until after first render, so re-render after this to update the component with ResponsiveMode info. } await base.OnAfterRenderAsync(firstRender); }
static void OpenFromGuiLayout() { _mode = ResponsiveMode.GuiLayout; EditorWindow window = GetWindow(typeof(ResponsiveGUI), false, "ResponsiveGUI"); window.Show(); }
static void OpenFromRawScripts() { _mode = ResponsiveMode.RawScript; EditorWindow window = GetWindow(typeof(ResponsiveGUI), false, "ResponsiveGUI"); window.Show(); }
protected override async Task OnAfterRenderAsync(bool firstRender) { if (firstRender) { _jsAvailable = true; Rectangle?windowRect = await JSRuntime !.InvokeAsync <Rectangle>("FluentUIBaseComponent.getWindowRect"); foreach (object?item in Enum.GetValues(typeof(ResponsiveMode))) { if (windowRect.Width <= ResponsiveModeUtils.RESPONSIVE_MAX_CONSTRAINT[(int)item]) { CurrentMode = (ResponsiveMode)item; break; } } _resizeEventTokenTask = JSRuntime !.InvokeAsync <string>("FluentUIBaseComponent.registerResizeEvent", DotNetObjectReference.Create(this), "OnResizedAsync"); StateHasChanged(); // we will never have window size until after first render, so re-render after this to update the component with ResponsiveMode info. } await base.OnAfterRenderAsync(firstRender); }
public virtual Task OnResizedAsync(double windowWidth, double windowHeight) { ResponsiveMode oldMode = CurrentMode; foreach (object?item in Enum.GetValues(typeof(ResponsiveMode))) { if (windowWidth <= ResponsiveModeUtils.RESPONSIVE_MAX_CONSTRAINT[(int)item]) { CurrentMode = (ResponsiveMode)item; break; } } if (oldMode != CurrentMode) { //Debug.WriteLine($"ResponsiveMode: {CurrentMode}"); StateHasChanged(); } return(Task.CompletedTask); }
protected override async Task OnAfterRenderAsync(bool firstRender) { if (firstRender) { var windowRect = await jSRuntime !.InvokeAsync <Rectangle>("BlazorFluentUiBaseComponent.getWindowRect"); foreach (var item in Enum.GetValues(typeof(ResponsiveMode))) { if (windowRect.width <= ResponsiveModeUtils.RESPONSIVE_MAX_CONSTRAINT[(int)item]) { CurrentMode = (ResponsiveMode)item; break; } } //Debug.WriteLine($"ResponsiveMode: {CurrentMode}"); _resizeRegistration = await jSRuntime !.InvokeAsync <string>("BlazorFluentUiBaseComponent.registerResizeEvent", DotNetObjectReference.Create(this), "OnResizedAsync"); StateHasChanged(); // we will never have window size until after first render, so re-render after this to update the component with ResponsiveMode info. } await base.OnAfterRenderAsync(firstRender); }
public static CssValue ToMinCssValue(this ResponsiveMode responsiveMode) { return(RESPONSIVE_MAX_CONSTRAINT[(int)responsiveMode] + 1); }