diff options
Diffstat (limited to 'ns/ext/ui-resize')
l--------- | ns/ext/ui-resize/ext.pc.in | 1 | ||||
-rw-r--r-- | ns/ext/ui-resize/manifest.ttl | 9 | ||||
-rw-r--r-- | ns/ext/ui-resize/ui-resize.h | 58 | ||||
-rw-r--r-- | ns/ext/ui-resize/ui-resize.ttl | 43 | ||||
l--------- | ns/ext/ui-resize/waf | 1 | ||||
l--------- | ns/ext/ui-resize/wscript | 1 |
6 files changed, 113 insertions, 0 deletions
diff --git a/ns/ext/ui-resize/ext.pc.in b/ns/ext/ui-resize/ext.pc.in new file mode 120000 index 0000000..1cdad2a --- /dev/null +++ b/ns/ext/ui-resize/ext.pc.in @@ -0,0 +1 @@ +../../../ext.pc.in
\ No newline at end of file diff --git a/ns/ext/ui-resize/manifest.ttl b/ns/ext/ui-resize/manifest.ttl new file mode 100644 index 0000000..ca5cdf9 --- /dev/null +++ b/ns/ext/ui-resize/manifest.ttl @@ -0,0 +1,9 @@ +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . + +<http://lv2plug.in/ns/ext/ui-resize> + a lv2:Specification ; + lv2:minorVersion 0 ; + lv2:microVersion 1 ; + rdfs:seeAlso <ui-resize.ttl> . + diff --git a/ns/ext/ui-resize/ui-resize.h b/ns/ext/ui-resize/ui-resize.h new file mode 100644 index 0000000..cf5ccc6 --- /dev/null +++ b/ns/ext/ui-resize/ui-resize.h @@ -0,0 +1,58 @@ +/* + Copyright 2011 David Robillard <http://drobilla.net> + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + + THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +*/ + +#ifndef LV2_UI_RESIZE_H +#define LV2_UI_RESIZE_H + +#define LV2_UI_RESIZE_URI "http://lv2plug.in/ns/ext/ui-resize" + +typedef void* LV2_UI_Resize_Feature_Data; + +/** + UI Resize Feature. + + This structure may be used in two ways: as a feature passed by the host + (e.g. via the features parameter of LV2UI_Descriptor::instantiate()) or + as a feature exposed by a UI (e.g. via LV2UI_Descriptor::extension_data()). + + In both cases, the URI to be used is + http://lv2plug.in/ns/ext/ui-resize#UIResize +*/ +typedef struct { + + LV2_UI_Resize_Feature_Data data; + + /** + Request or notify a size change. + + When this struct is provided by the host, the UI may call this + function to notify the host that a size change is desired, or notify + the host of the initial size of the UI. + + When this struct is provided by the plugin, the host may call this + function in the UI thread to notify the UI that it should change its + size to the given dimensions. + + @return 0 on success. + */ + int (*ui_resize)(LV2_UI_Resize_Feature_Data data, + int width, + int height); + +} LV2_UI_Resize_Feature; + +#endif /* LV2_UI_RESIZE_H */ + diff --git a/ns/ext/ui-resize/ui-resize.ttl b/ns/ext/ui-resize/ui-resize.ttl new file mode 100644 index 0000000..5e2a5a8 --- /dev/null +++ b/ns/ext/ui-resize/ui-resize.ttl @@ -0,0 +1,43 @@ +# LV2 UI Resize Extension +# Copyright 2011 David Robillard <d@drobilla.net> +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +@prefix uirsz: <http://lv2plug.in/ns/ext/ui-resize#> . +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . +@prefix xsd: <http://www.w3.org/2001/XMLSchema#> . +@prefix doap: <http://usefulinc.com/ns/doap#> . +@prefix foaf: <http://xmlns.com/foaf/0.1/> . + +<http://lv2plug.in/ns/ext/ui-resize> + a lv2:Specification ; + doap:name "LV2 UI Resize Extension" ; + doap:shortdesc "A feature for self-resizing plugin UIs." ; + doap:license <http://opensource.org/licenses/isc-license> ; + lv2:documentation """ +<p>An extension that allows LV2 plugin UIs to notify the host about size +changes, or for the host to notify plugin UIs about size changes.</p> +""" . + +uirsz:UIResize + a lv2:Feature ; + lv2:documentation """ +<p>A feature that allows the UI to notify the host about its current size, or +request a size change. This feature corresponds to the LV2_UI_Resize_Feature +struct, which should be passed with the feature URI +<code>http://lv2plug.in/ns/ext/ui-resize#UIResize</code>. This struct may also +be provided by the UI as extension data using the same URI, in which case it +is used by the host to request that the UI change its size.</p> +""" . diff --git a/ns/ext/ui-resize/waf b/ns/ext/ui-resize/waf new file mode 120000 index 0000000..917d5c5 --- /dev/null +++ b/ns/ext/ui-resize/waf @@ -0,0 +1 @@ +../../../waf
\ No newline at end of file diff --git a/ns/ext/ui-resize/wscript b/ns/ext/ui-resize/wscript new file mode 120000 index 0000000..cf8cbae --- /dev/null +++ b/ns/ext/ui-resize/wscript @@ -0,0 +1 @@ +../../../ext.wscript
\ No newline at end of file |