Skip to content
This repository has been archived by the owner on Jun 6, 2023. It is now read-only.
/ OlibUI Public archive

OlibUI - dynamic user interface for AvaloniaUI

License

Notifications You must be signed in to change notification settings

Onebeld/OlibUI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nuget GitHub Nuget GitHub repo size

This project is very outdated. Consider using PleasantUI.

OlibUI

OlibUI - dynamic user interface for AvaloniaUI. The main advantages of this library are: runtime skinning and localization. At the moment, some controls are not supported, but you can already use it.

Over the years I have been improving my design. This library was part of several of my programs. With the release of OlibUI 2.0, you can install and create applications with this design. The design was first used on OlibKey, a password manager. After stopping the development of this program, I wanted to keep the name, design and logo. Why not OlibUI 1.0? First of all, rethinking my concept to design and delivering it as a separate library.

Installation

Installation via command line:

dotnet add package OlibUI --version 2.2.0

Installation using a package manager:

Install-Package OlibUI -Version 2.2.0

Inserting into .csproj PackageReference:

<PackageReference Include="OlibUI" Version="2.2.0" />

Installation with Visual Studio:

Preparation

The library can work without a default theme. Therefore, we just connect OlibUI. You also need to connect the theme. In this case, we connect "Dazzling", there are only 5 of them.

<Application xmlns="https://github.com/avaloniaui"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             x:Class="YourApp.App">
  <Application.Styles>
    <StyleInclude Source="avares://OlibUI/OlibUI.xaml"/>
    <StyleInclude Source="avares://OlibUI/Themes/Dazzling.axaml"/>
  </Application.Styles> 
</Application>

OlibUI supports dynamic localization. If you will not be translating your application into other languages, add this line to App.axaml:

<StyleInclude Source="avares://OlibUI/Assets/Local/Lang.en.axaml"/>

After connecting, you can change the window to the one that comes with OlibUI:

<OlibWindow xmlns="https://github.com/avaloniaui"
                 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                 xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
                 x:Class="YourApp.MainWindow"
                 WindowStartupLocation="CenterScreen"
                 TransparencyLevelHint="AcrylicBlur"
                 WindowButtons="All">
</OlibWindow>
using Avalonia.Markup.Xaml;
using OlibUI.Windows;

namespace YourApp
{
    public class MainWindow : OlibWindow
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void InitializeComponent()
        {
            AvaloniaXamlLoader.Load(this);
        }
    }
}

Screenshots

These are examples of what your application might look like.

Regul

Credits