wxruby3-mdap 1.0.0.pre.rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,248 @@
1
+ # Copyright (c) 2023 M.J.N. Corino, The Netherlands
2
+ #
3
+ # This software is released under the MIT license.
4
+
5
+
6
+ module Wx
7
+
8
+ module MDAP
9
+
10
+ # Material Design art provider class.
11
+ #
12
+ # This derived {https://mcorino.github.io/wxRuby3/Wx/ArtProvider.html Wx::ArtProvider} class implements all
13
+ # required overrides to support the full functionality of `Wx::ArtProvider` to access a set of Material Design
14
+ # SVG Art consisting of nearly 9000 images distributed over 11 lists from Fluent UI, Font Awesome, Material Design
15
+ # and Simple Icons collections (see the {file:README.md} for more information).<br>
16
+ #
17
+ # ## Identifying art resources
18
+ #
19
+ # Each list from these collections has been mapped to a distinct Art Client id and for each image a distinct
20
+ # Art id has been defined.<br>
21
+ # See {Wx::MDAP here} for all defined Art (Client) id constants.<br>
22
+ #
23
+ # ## Art overviews
24
+ #
25
+ # Overviews of the available icons for the various Art Client id/Art id combinations can be found at the
26
+ # following locations:
27
+ #
28
+ # - {file:FLUENT_UI-Art.md Fluent UI art}
29
+ # - {file:FONT_AWESOME-Art.md Font Awesome art}
30
+ # - {file:MATERIAL_DESIGN-Art.md Material Design art}
31
+ # - {file:SIMPLE_ICONS-Art.md Simple Icons art}
32
+ #
33
+ # ## Extensions
34
+ #
35
+ # The MaterialDesignArtProvider class provides a number of extensions to customize the default colour and default
36
+ # size for MaterialDesignArtProvider returned images as well a mapping scheme for standard wxRuby3 Art (Client) ids
37
+ # to MaterialDesignArtProvider specific ids.
38
+ #
39
+ # ### Managing Art colour
40
+ #
41
+ # By default MaterialDesignArtProvider will return images in the colour as defined in the original SVG which is
42
+ # usually BLACK.
43
+ # This can be overridden by using either of 2 methods; {.use_art_colour} and/or {.with_art_colour}.
44
+ #
45
+ # ### Managing Art size
46
+ #
47
+ # When requesting images from MaterialDesignArtProvider with `Wx::DEFAULT_SIZE` by default the size used will be
48
+ # derived from {https://mcorino.github.io/wxRuby3/Wx/ArtProvider.html#get_native_size_hint-class_method Wx::ArtProvider.get_native_size_hint}.
49
+ # In case this returns `Wx::DEFAULT_SIZE` itself the default will be `Wx::Size.new(24,24)`.
50
+ # This can be overridden by using {.set_default_size}. Use {.get_default_size} to see what the current default size
51
+ # will be.
52
+ #
53
+ # ### Mapping standard wxRuby3 Art ids
54
+ #
55
+ # MaterialDesignArtProvider implements a **fixed** mapping scheme for mapping standard wxRuby3 Art ids (like
56
+ # `Wx::ART_ERROR`, `Wx::FILE_SAVE`, `Wx::ART_FOLDER` etc.) to MaterialDesignArtProvider Art ids (defined in {Wx::MDAP}).
57
+ # An overview of this mapping scheme can be found {file:STANDARD-Art-Mappings.md here}.<br>
58
+ # In addition to that MaterialDesignArtProvider implements a customizable mapping scheme for mapping standard
59
+ # wxRuby3 Art Client ids (like `Wx::ART_MENU`, `Wx::ART_TOOLBAR`, `Wx::ART_OTHER` etc.) to MaterialDesignArtProvider
60
+ # Art Client ids (defined in {Wx::MDAP}).
61
+ # By default all standard Art Client ids are mapped to {Wx::MDAP::ART_FLUENT_UI_REGULAR}. This can be overridden by
62
+ # using {.map_std_client_id}.
63
+ #
64
+ class MaterialDesignArtProvider < Wx::ArtProvider
65
+
66
+ class << self
67
+
68
+ private
69
+
70
+ # Returns the current default Material Design Art colour
71
+ # (default `nil` meaning to use the SVG images 'as-is')
72
+ def art_colour
73
+ @art_colour
74
+ end
75
+
76
+ # (Re)Sets the default Material Design Art colour
77
+ def set_art_colour(colour)
78
+ @art_colour = if colour.is_a?(Wx::Colour)
79
+ colour
80
+ else
81
+ colour ? Wx::Colour.new(colour) : nil
82
+ end
83
+ end
84
+
85
+ # Returns the registry of the default sizes for each Material Design Art client
86
+ def default_sizes
87
+ @def_sizes ||= {}
88
+ end
89
+
90
+ # Returns a list of the standard wxRuby3 Art Client ids
91
+ def std_client_ids
92
+ @std_client_ids ||= [
93
+ Wx::ART_TOOLBAR,
94
+ Wx::ART_MENU,
95
+ Wx::ART_BUTTON,
96
+ Wx::ART_FRAME_ICON,
97
+ Wx::ART_CMN_DIALOG,
98
+ Wx::ART_HELP_BROWSER,
99
+ Wx::ART_MESSAGE_BOX,
100
+ Wx::ART_OTHER]
101
+ end
102
+
103
+ # Returns the registry mapping standard wxRuby3 Art Client ids to Material Design Art Client ids.
104
+ # If no mapping specified the default mapping will be {Wx::MDAP::ART_FLUENT_UI_REGULAR}
105
+ def std_client_id_map
106
+ @std_client_id_map ||= ::Hash.new(Wx::MDAP::ART_FLUENT_UI_REGULAR)
107
+ end
108
+
109
+ public
110
+
111
+ # Sets the active colour to use for created MaterialDesign art.
112
+ # By default the colour is `nil` (which is equivalent to :BLACK).
113
+ # @param [Wx::Colour,String,Symbol,nil] colour
114
+ def use_art_colour(colour)
115
+ set_art_colour(colour)
116
+ end
117
+
118
+ # Sets the active colour to use for created MaterialDesign art in the scope of the given block.
119
+ # After the block returns the colour is restored to it's setting from before the block.
120
+ # @param [Wx::Colour,String,Symbol,nil] colour
121
+ def with_art_colour(colour)
122
+ prev_colour = art_colour
123
+ begin
124
+ set_art_colour(colour)
125
+ yield if block_given?
126
+ ensure
127
+ set_art_colour(prev_colour)
128
+ end
129
+ end
130
+
131
+ # Returns the default art size for the given (standard or Material Design) Art Client id.
132
+ # By default will derive default from {Wx::ArtProvider.get_native_size_hint}.
133
+ # @param [String] client Art Client id
134
+ # @return [Wx::size]
135
+ def get_default_size(client)
136
+ raise ArgumentError, "Invalid art client id [#{client}]" unless std_client_ids.include?(client) || MDAP.has_art_client_id?(client)
137
+ unless default_sizes.has_key?(client)
138
+ def_sz = Wx::ArtProvider.get_native_size_hint(client)
139
+ default_sizes[client] = (def_sz == Wx::DEFAULT_SIZE ? Wx::Size.new(24,24) : def_sz)
140
+ end
141
+ default_sizes[client]
142
+ end
143
+
144
+ # Sets the default art size for the given (standard or Material Design) Art Client id.
145
+ # @param [String] client Art Client id
146
+ # @param [Wx::Size,Array(Integer,Integer)] size
147
+ def set_default_size(client, size)
148
+ raise ArgumentError, "Invalid art client id [#{client}]" unless std_client_ids.include?(client) || MDAP.has_art_client_id?(client)
149
+ default_sizes[client] = size.to_size
150
+ end
151
+
152
+ # Sets the MDAP client id to use when a std wxRuby3 ClientArtId is passed to {MaterialDesignArtProvider}.
153
+ # By default the alternative id used for any standard id is {Wx::MDAP::ART_FLUENT_UI_REGULAR}.
154
+ # The `std_client_id` passed should be one of:
155
+ #
156
+ # - {Wx::ART_TOOLBAR}
157
+ # - {Wx::ART_MENU}
158
+ # - {Wx::ART_BUTTON}
159
+ # - {Wx::ART_FRAME_ICON}
160
+ # - {Wx::ART_CMN_DIALOG}
161
+ # - {Wx::ART_HELP_BROWSER}
162
+ # - {Wx::ART_MESSAGE_BOX}
163
+ # - {Wx::ART_OTHER}
164
+ #
165
+ # The `md_client_id` passed should be one of:
166
+ #
167
+ # - {Wx::MDAP::ART_FLUENT_UI_REGULAR}
168
+ # - {Wx::MDAP::ART_FLUENT_UI_FILLED}
169
+ # - {Wx::MDAP::ART_FONT_AWESOME_REGULAR}
170
+ # - {Wx::MDAP::ART_FONT_AWESOME_SOLID}
171
+ # - {Wx::MDAP::ART_MATERIAL_DESIGN_FILLED}
172
+ # - {Wx::MDAP::ART_MATERIAL_DESIGN_OUTLINED}
173
+ # - {Wx::MDAP::ART_MATERIAL_DESIGN_ROUND}
174
+ # - {Wx::MDAP::ART_MATERIAL_DESIGN_SHARP}
175
+ # - {Wx::MDAP::ART_MATERIAL_DESIGN_TWO_TONE}
176
+ #
177
+ # @param [String] std_client_id the standard client id to map
178
+ # @param [String] md_client_id the alternative Material Design client id to use
179
+ def map_std_client_id(std_client_id, md_client_id)
180
+ raise ArgumentError, "Invalid standard art client id [#{std_client_id}]" unless std_client_ids.include?(std_client_id)
181
+ raise ArgumentError, "Invalid Material Design art client id [#{md_client_id}]" unless MDAP.has_art_client_id?(md_client_id)
182
+ std_client_id_map[std_client_id] = md_client_id
183
+ end
184
+
185
+ # @api private
186
+ def resolve_client_id(client_id)
187
+ std_client_ids.include?(client_id) ? std_client_id_map[client_id] : client_id
188
+ end
189
+
190
+ end
191
+
192
+ protected
193
+
194
+ def create_bitmap(id, client, size)
195
+ # create bundle and get bitmap from it
196
+ bundle = create_bitmap_bundle(id, client, size)
197
+ return Wx::NULL_BITMAP unless bundle.ok?
198
+ bmp = bundle.get_bitmap(size)
199
+ bmp.ok? ? bmp : Wx::NULL_BITMAP
200
+ end
201
+
202
+ def create_bitmap_bundle(id, client, size)
203
+ size = size.to_size # make sure to have a Wx::Size
204
+ # handle this **before** resolving the client id
205
+ size = MaterialDesignArtProvider.get_default_size(client) if size == Wx::DEFAULT_SIZE
206
+ # handle standard wxRuby3 client id mapping (if any)
207
+ client = MaterialDesignArtProvider.resolve_client_id(client)
208
+ art_path = MDAP.get_art_for(client, id)
209
+ return Wx::NULL_BITMAP unless art_path
210
+ if (art_clr = MaterialDesignArtProvider.__send__(:art_colour))
211
+ svg_data = change_svg_colour(File.read(art_path), art_clr)
212
+ Wx::BitmapBundle.from_svg(svg_data, size)
213
+ else
214
+ # create bundle
215
+ Wx::BitmapBundle.from_svg_file(art_path, size)
216
+ end
217
+ end
218
+
219
+ def create_icon_bundle(id, client)
220
+ bundle = create_bitmap_bundle(id, client, size = MaterialDesignArtProvider.get_default_size(client))
221
+ Wx::IconBundle.new(bundle.get_icon(size))
222
+ end
223
+
224
+ private
225
+
226
+ # @api private
227
+ FILL_RE = /fill="#(?:[0-9a-fA-F]{3,4}){1,2}"/
228
+ # @api private
229
+ PATH_RE = /<path\s/
230
+
231
+ def change_svg_colour(svg_data, colour)
232
+ # see if we can replace the path colours
233
+ rc = svg_data.gsub!(FILL_RE, "fill=\"#{colour.get_as_string(Wx::C2S_HTML_SYNTAX)}\"")
234
+ # if any replaced we're done
235
+ return svg_data if rc
236
+ # insert colour to every <path ...>
237
+ svg_data.gsub!(PATH_RE, "<path fill=\"#{colour.get_as_string(Wx::C2S_HTML_SYNTAX)}\"")
238
+ svg_data
239
+ end
240
+
241
+ end
242
+
243
+ end
244
+
245
+ # Import MaterialDesignArtProvider in Wx namespace if possible
246
+ MaterialDesignArtProvider = MDAP::MaterialDesignArtProvider unless Wx.const_defined?(:MaterialDesignArtProvider)
247
+
248
+ end
@@ -0,0 +1,12 @@
1
+ # Copyright (c) 2023 M.J.N. Corino, The Netherlands
2
+ #
3
+ # This software is released under the MIT license.
4
+
5
+
6
+ module Wx
7
+ module MDAP
8
+
9
+ VERSION = '1.0.0-rc.1'
10
+
11
+ end
12
+ end
data/lib/wx/mdap.rb ADDED
@@ -0,0 +1,10 @@
1
+ # Copyright (c) 2023 M.J.N. Corino, The Netherlands
2
+ #
3
+ # This software is released under the MIT license.
4
+
5
+
6
+ require 'wx/core'
7
+
8
+ require 'wx/mdap/version'
9
+ require 'wx/mdap/art'
10
+ require 'wx/mdap/provider'
@@ -0,0 +1,91 @@
1
+
2
+ div.wxrb-note {
3
+ background: #f7f7f9;
4
+ border-left: .6em solid #f3ba6f;
5
+ border-radius: 3px;
6
+ margin: 14px;
7
+ padding-left: 14px;
8
+ padding-top: 10px;
9
+ padding-bottom: 10px;
10
+ }
11
+
12
+ div.wxrb-remark {
13
+ background: #f7f7f9;
14
+ border-left: .6em solid #f6f4ab;
15
+ border-radius: 3px;
16
+ margin: 14px;
17
+ padding-left: 14px;
18
+ padding-top: 10px;
19
+ padding-bottom: 10px;
20
+ }
21
+
22
+ div.wxrb-note p,
23
+ div.wxrb-remark p {
24
+ margin: 0;
25
+ }
26
+
27
+ div.wxrb-logo {
28
+ float: right;
29
+ padding-top: 12px;
30
+ }
31
+
32
+ div.wxrb-logo img {
33
+ vertical-align: middle;
34
+ }
35
+
36
+ div.wxrb-logo span.wxrb-name {
37
+ font-size: large;
38
+ font-weight: bold;
39
+ margin-left: 10px;
40
+ }
41
+
42
+ div.wxrb-logo span.wxrb-name a {
43
+ color: black;
44
+ }
45
+
46
+ div.wxrb-logo span.wxrb-version {
47
+ font-size: medium;
48
+ font-weight: normal;
49
+ margin-left: 10px;
50
+ }
51
+
52
+ div.wxrb-logo table {
53
+ display: inline;
54
+ }
55
+
56
+ div.wxrb-logo table td {
57
+ margin: 0;
58
+ }
59
+
60
+ .discussion div.note {
61
+ background: #f7f7f9;
62
+ border-left: .6em solid #f3ba6f;
63
+ margin: 14px;
64
+ }
65
+
66
+ .tags span.wxrb-require {
67
+ border-radius: 5px;
68
+ border: 1px solid #E1E1E8;
69
+ padding: 0px 3px 0px 3px;
70
+ background: #f3ba6f;
71
+ font-weight: bold;
72
+ font-size: 0.9em;
73
+ }
74
+
75
+ #filecontents {
76
+ margin-right: 340px;
77
+ }
78
+
79
+ #filecontents blockquote {
80
+ border-left: .5em solid #e0e0e0;
81
+ margin: 10px;
82
+ padding-left: 10px;
83
+ }
84
+
85
+ #toc {
86
+ position: fixed;
87
+ overflow-y: scroll;
88
+ overflow-x: hidden;
89
+ top: 1em;
90
+ bottom: 0;
91
+ }
@@ -0,0 +1,38 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
5
+ <meta charset="<%= charset %>" />
6
+ <% stylesheets_full_list.each do |stylesheet| %>
7
+ <link rel="stylesheet" href="<%= mtime_url(stylesheet) %>" type="text/css" media="screen" />
8
+ <% end %>
9
+
10
+ <% javascripts_full_list.each do |javascript| %>
11
+ <script type="text/javascript" charset="utf-8" src="<%= mtime_url(javascript) %>"></script>
12
+ <% end %>
13
+
14
+ <title><%= @list_title %></title>
15
+ <base id="base_target" target="_parent" />
16
+ </head>
17
+ <body>
18
+ <div id="content">
19
+ <div class="fixed_header">
20
+ <%= logo_and_version %>
21
+ <h1 id="full_list_header"><%= @list_title %></h1>
22
+ <div id="full_list_nav">
23
+ <% menu_lists.each do |list| %>
24
+ <span><a target="_self" href="<%= url_for_list list[:type] %>">
25
+ <%= list[:title] %>
26
+ </a></span>
27
+ <% end %>
28
+ </div>
29
+
30
+ <div id="search">Search: <input type="text" /></div>
31
+ </div>
32
+
33
+ <ul id="full_list" class="<%= @list_class || @list_type %>">
34
+ <%= erb "full_list_#{@list_type}" %>
35
+ </ul>
36
+ </div>
37
+ </body>
38
+ </html>
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ def init
4
+ # It seems YARD messes things up so that a lot of classes, modules and constants are not properly
5
+ # registered in their enclosing namespaces.
6
+ # This hack makes sure that if that is the case we fix that here.
7
+ all_objects = Registry.all(:class, :constant, :module, :method)
8
+ all_objects.each do |c|
9
+ if (ns = c.namespace)
10
+ unless ns.children.any? { |nsc| nsc.path == c.path }
11
+ ns.children << c # class/module/constant/method missing from child list of enclosing namespace -> add here
12
+ end
13
+ end
14
+ if (ns = Registry[c.namespace.path])
15
+ unless ns.children.any? { |nsc| nsc.path == c.path }
16
+ ns.children << c # class/module/constant/method missing from child list of enclosing namespace -> add here
17
+ end
18
+ end
19
+ end
20
+ super
21
+ end
22
+
23
+ def stylesheets_full_list
24
+ super + %w(css/wxruby3.css)
25
+ end
26
+
27
+ def logo_and_version
28
+ wxver = Registry['Wx::MDAP::VERSION']
29
+ <<~__HTML
30
+ <div class='wxrb-logo'>
31
+ <img src='art/logo.svg' height='38'/>
32
+ <table><tbody>
33
+ <tr><td><span class='wxrb-name'><a href="https://github.com/mcorino/wxRuby3-MaterialDesignArtProvider">wxRuby3 MaterialDesignArtProvider</a></span></td></tr>
34
+ <tr><td><span class='wxrb-version'>Version: #{::Kernel.eval(wxver.value)}</span></td></tr>
35
+ </tbody></table>
36
+ </div>
37
+ __HTML
38
+ end
@@ -0,0 +1,5 @@
1
+
2
+ def stylesheets
3
+ # Load the existing stylesheets while appending the custom one
4
+ super + %w(css/wxruby3.css)
5
+ end
@@ -0,0 +1,10 @@
1
+ <% if object.has_tag?(:wxrb_require) %>
2
+ <p class="tag_title">Requires:</p>
3
+ <ul class="wxrb-require">
4
+ <% wxruby_requires.each do |req| %>
5
+ <li><div class='inline'>
6
+ <%= req.join(' or ') %>
7
+ </div></li>
8
+ <% end %>
9
+ </ul>
10
+ <% end %>
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ def wxrb_require
4
+ erb('wxrb_require')
5
+ end
6
+
7
+ def wxruby_requires
8
+ object.tags(:wxrb_require).inject([]) do |list, tag|
9
+ tag.text.split(',').each do |feature|
10
+ list << feature.split('|').collect do |s|
11
+ s.split('&').collect { |ss| %Q[<span class="wxrb-require">#{ss.strip}</span>] }.join('&amp;')
12
+ end
13
+ end
14
+ list
15
+ end
16
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module YARD
4
+ module RelativeMarkdownLinks
5
+ # Current version of the yard-relative_markdown_links gem.
6
+ VERSION = "0.4.1"
7
+ end
8
+ end
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "nokogiri"
4
+ require "uri"
5
+ require "yard"
6
+ require_relative 'relative_markdown_links/version'
7
+
8
+ module YARD # rubocop:disable Style/Documentation
9
+ # GitHub and YARD render Markdown files differently. In particular, relative
10
+ # links between Markdown files that work in GitHub don't work in YARD.
11
+ # For example, if you have `[hello](FOO.md)` in your README, YARD renders it
12
+ # as `<a href="FOO.md">hello</a>`, creating a broken link in your docs.
13
+ #
14
+ # With this plugin enabled, you'll get `<a href="file.FOO.html">hello</a>`
15
+ # instead, which correctly links through to the rendered HTML file.
16
+ module RelativeMarkdownLinks
17
+ # Resolves relative links from Markdown files.
18
+ # @param [String] text the HTML fragment in which to resolve links.
19
+ # @return [String] HTML with relative links to extra files converted to `{file:}` links.
20
+ def resolve_links(text)
21
+ html = Nokogiri::HTML.fragment(text)
22
+ html.css("a[href]").each do |link|
23
+ begin
24
+ href = URI(link["href"])
25
+ rescue
26
+ return super(text)
27
+ end
28
+
29
+ if href.relative? && options.files
30
+ fnames = options.files.map(&:filename)
31
+ if fnames.include?(href.path)
32
+ link.replace "{file:#{href} #{link.inner_html}}"
33
+ elsif href.path.end_with?('_md.html') && (fname = fnames.find {|fnm| fnm.end_with?(href.path.sub(/_md.html\Z/, '.md')) })
34
+ link.replace "{file:#{fname}#{href.fragment ? "##{fragment_to_yard(href.fragment)}" : ''} #{link.inner_html}}"
35
+ end
36
+ end
37
+ end
38
+ super(html.to_s)
39
+ end
40
+
41
+ # this does not work with mixed case labels but is good enough for us
42
+ def fragment_to_yard(s)
43
+ s.start_with?('label-') ? s : "label-#{s.gsub('-', '+').capitalize}"
44
+ end
45
+
46
+ end
47
+
48
+ Templates::Template.extra_includes << RelativeMarkdownLinks
49
+ end
@@ -0,0 +1,5 @@
1
+
2
+ YARD::Tags::Library.define_tag("Requirements", :wxrb_require)
3
+ YARD::Tags::Library.visible_tags.place(:wxrb_require).before(:author)
4
+
5
+ YARD::Templates::Engine.register_template_path File.join(__dir__, 'templates')
@@ -0,0 +1,4 @@
1
+ # frozen_string_literal: true
2
+ # Adapted from the 'yard-relative_markdown_links' gem; Copyright © 2018 Andrew Haines
3
+
4
+ require_relative 'yard/relative_markdown_links'
metadata ADDED
@@ -0,0 +1,87 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: wxruby3-mdap
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0.pre.rc.1
5
+ platform: ruby
6
+ authors:
7
+ - Martin Corino
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2024-05-26 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: wxruby3
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 1.0.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 1.0.0
27
+ description: wxRuby3/MDAP is a pure Ruby library providing a custom ArtProvider for
28
+ using MaterialDesign bitmaps and icons in wxRuby3
29
+ email: mcorino@m2c-software.nl
30
+ executables: []
31
+ extensions: []
32
+ extra_rdoc_files: []
33
+ files:
34
+ - ".yardopts"
35
+ - Apache2.0-LICENSE
36
+ - CC01.0-LICENSE.md
37
+ - CCBY4.0-LICENSE
38
+ - CREDITS.md
39
+ - LICENSE
40
+ - README.md
41
+ - assets/logo.svg
42
+ - lib/wx/mdap.rb
43
+ - lib/wx/mdap/art.rb
44
+ - lib/wx/mdap/provider.rb
45
+ - lib/wx/mdap/version.rb
46
+ - rakelib/yard/templates/default/fulldoc/html/css/wxruby3.css
47
+ - rakelib/yard/templates/default/fulldoc/html/full_list.erb
48
+ - rakelib/yard/templates/default/fulldoc/html/setup.rb
49
+ - rakelib/yard/templates/default/layout/html/setup.rb
50
+ - rakelib/yard/templates/default/tags/html/wxrb_require.erb
51
+ - rakelib/yard/templates/default/tags/setup.rb
52
+ - rakelib/yard/yard-custom-templates.rb
53
+ - rakelib/yard/yard-relative_markdown_links.rb
54
+ - rakelib/yard/yard/relative_markdown_links.rb
55
+ - rakelib/yard/yard/relative_markdown_links/version.rb
56
+ homepage: https://github.com/mcorino/wxRuby3-MaterialDesignArtProvider
57
+ licenses:
58
+ - MIT
59
+ metadata:
60
+ bug_tracker_uri: https://github.com/mcorino/wxRuby3-MaterialDesignArtProvider/issues
61
+ documentation_uri: https://mcorino.github.io/wxRuby3-MaterialDesignArtProvider
62
+ homepage_uri: https://github.com/mcorino/wxRuby3-MaterialDesignArtProvider
63
+ github_repo: https://github.com/mcorino/wxRuby3-MaterialDesignArtProvider
64
+ post_install_message: |2
65
+
66
+ wxRuby3/MDAP has been successfully installed.
67
+
68
+ Have fun using wxRuby3/MDAP.
69
+ rdoc_options: []
70
+ require_paths:
71
+ - lib
72
+ required_ruby_version: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: '2.5'
77
+ required_rubygems_version: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ requirements: []
83
+ rubygems_version: 3.5.9
84
+ signing_key:
85
+ specification_version: 4
86
+ summary: wxRuby3 Material Design Art Provider
87
+ test_files: []