Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mcorino/wxruby3-materialdesignartprovider
MaterialDesign Art Provider for wxRuby3
https://github.com/mcorino/wxruby3-materialdesignartprovider
cross-platform cross-platform-gui gtk gtk3 gui linux mac osx ruby win32 windows wxruby wxruby3
Last synced: 2 months ago
JSON representation
MaterialDesign Art Provider for wxRuby3
- Host: GitHub
- URL: https://github.com/mcorino/wxruby3-materialdesignartprovider
- Owner: mcorino
- License: mit
- Created: 2024-03-24T15:44:11.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2024-05-16T14:25:56.000Z (7 months ago)
- Last Synced: 2024-05-17T14:32:39.941Z (7 months ago)
- Topics: cross-platform, cross-platform-gui, gtk, gtk3, gui, linux, mac, osx, ruby, win32, windows, wxruby, wxruby3
- Language: C++
- Homepage: https://github.com/mcorino/wxRuby3-MaterialDesignArtProvider
- Size: 7.57 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![License](https://img.shields.io/badge/license-MIT-yellowgreen.svg)](LICENSE)
[![Gem Version](https://badge.fury.io/rb/wxruby3-mdap.svg)](https://badge.fury.io/rb/wxruby3-mdap)
[![Documentation](https://img.shields.io/badge/docs-pages-blue.svg)](https://mcorino.github.io/wxRuby3-MaterialDesignArtProvider)# Material Design Art Provider for wxRuby3
This custom Art Provider was inspired by [wxMaterialDesignArtProvider](https://github.com/perazz/wxMaterialDesignArtProvider)
but rewritten in pure Ruby for use with [wxRuby3](https://github.com/mcorino/wxRuby3).
See the [License](#license) section below to see where the original icons were taken from.![screenshots](assets/readme-screenshots.png)
## Installing
wxRuby3-MaterialDesignArtProvider is distributed as a Ruby gem on [RubyGems](https://rubygems.org/). This gem can also
be downloaded from the release assets on [Github](https://github.com/mcorino/wxRuby3-MaterialDesignArtProvider/releases).Installing the gem requires no additional installation steps and/or additional software to be installed except for a
supported version of the Ruby interpreter. So the following command is all it takes to install:```shell
gem install wxruby3-mdap
```## Using
To add [Wx::MDAP::MaterialDesignArtProvider](https://mcorino.github.io/wxRuby3-MaterialDesignArtProvider/Wx/MDAP/MaterialDesignArtProvider.html)
to your project you first need to `require` it like this:```ruby
require 'wx' # make sure the wxRuby3 libraries have been loaded
require 'wx/mdap' # now load the wxRuby3-MaterialDesignArtProvider library
```Next, before you load images through [Wx::ArtProvider](https://mcorino.github.io/wxRuby3/Wx/ArtProvider.html) register
the [Wx::MDAP::MaterialDesignArtProvider](https://mcorino.github.io/wxRuby3-MaterialDesignArtProvider/Wx/MDAP/MaterialDesignArtProvider.html) like this:```ruby
Wx::ArtProvider.push(Wx::MDAP::MaterialDesignArtProvider.new)
# You can in fact normally also reference the class as `Wx::MaterialDesignArtProvider` (unless the constant
# `Wx::MaterialDesignArtProvider` was already defined before requiring 'wx/mdap').
```Now that the new art provider has been installed the new Material Design art ids can be used. Constants for these are
all defined in the `Wx::MDAP` module as 'Wx::MDAP::ART_*ICON_NAME*' (see [here](https://mcorino.github.io/wxRuby3-MaterialDesignArtProvider/Wx/MDAP.html)).
Many of these art ids are available under most of the various client ids (also defined [here](https://mcorino.github.io/wxRuby3-MaterialDesignArtProvider/Wx/MDAP.html))
while others are only available under some client ids (as can be seen in the documentation).
The client ids each correspond to a different collection in the full dataset:- **Material Design** art
- `Wx::MDAP::ART_MATERIAL_DESIGN_FILLED`
- `Wx::MDAP::ART_MATERIAL_DESIGN_OUTLINE`
- `Wx::MDAP::ART_MATERIAL_DESIGN_ROUND`
- `Wx::MDAP::ART_MATERIAL_DESIGN_SHARP`
- `Wx::MDAP::ART_MATERIAL_DESIGN_TWO_TONE`
- **Font Awesome** art
- `Wx::MDAP::ART_FONT_AWESOME_SOLID`
- `Wx::MDAP::ART_FONT_AWESOME_REGULAR`
- `Wx::MDAP::ART_FONT_AWESOME_BRANDS`
- **Fluent UI** art
- `Wx::MDAP::ART_FLUENT_UI_FILLED`
- `Wx::MDAP::ART_FLUENT_UI_REGULAR`
- **Simple Icons** art
- `Wx::MDAP::ART_SIMPLE_ICONS_ICONS`Of these collections, `Wx::MDAP::ART_FONT_AWESOME_BRANDS` and `Wx::MDAP::ART_SIMPLE_ICONS_ICONS` are the odd
ones out as these do not contain any action/function icons but rather brand/logo icons.### Extensions
wxRuby3-MaterialDesignArtProvider offers several extensions to improve options for using the Material Design art:
1. `Wx::MDAP::MaterialDesignArtProvider` supports mapping of standard wxRuby3 Art (Client) ids to Material Design ids so
you can transparently switch standard art;
2. `Wx::MDAP::MaterialDesignArtProvider` supports using custom colors with Material Design art;
3. `Wx::MDAP::MaterialDesignArtProvider` supports using custom default sizes with Material Design art.See [Wx::MDAP::MaterialDesignArtProvider](https://mcorino.github.io/wxRuby3-MaterialDesignArtProvider/Wx/MDAP/MaterialDesignArtProvider.html)
for details concerning these extensions.### Example
For more details and a working example of how to use [Wx::MDAP::MaterialDesignArtProvider](https://mcorino.github.io/wxRuby3-MaterialDesignArtProvider/Wx/MDAP/MaterialDesignArtProvider.html)
see [here](USAGE.md).## License
- FontAwesome icons from the FontAwesome 6 SVG set are subject to the [CC BY 4.0 License](CCBY4.0-LICENSE)
(the included icons have been copied from https://github.com/FortAwesome/Font-Awesome)
- MaterialDesign icons are created by Google and subject to the [Apache 2.0 License](Apache2.0-LICENSE)
(the included SVG icons have been copied from https://github.com/marella/material-design-icons)
- SimpleIcons are subject to the [CC0 1.0 License](CC01.0-LICENSE.md)
(the included icons haven been copied from https://github.com/simple-icons/simple-icons)
- FluentUI icons are subject to the [MIT License](LICENSE)
(included SVG icons taken from [FluentUI icons](https://github.com/microsoft/fluentui-system-icons))The wxRuby3 MaterialDesignArtProvider library itself is released under the [MIT License](LICENSE).