forked from mjmvisser/studiolibrary
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
66 lines (55 loc) · 1.93 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# Copyright 2016 by Kurt Rathjen. All Rights Reserved.
#
# Permission to use, modify, and distribute this software and its
# documentation for any purpose and without fee is hereby granted,
# provided that the above copyright notice appear in all copies and that
# both that copyright notice and this permission notice appear in
# supporting documentation, and that the name of Kurt Rathjen
# not be used in advertising or publicity pertaining to distribution
# of the software without specific, written prior permission.
# KURT RATHJEN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
# ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
# KURT RATHJEN BE LIABLE FOR ANY SPECIAL, 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.
import studioqt
import studiolibrary
def main(
name=None,
path=None,
show=True,
plugins=None,
analytics=True,
root=None, # Legacy
**kwargs
):
"""
The main entry point for creating and loading a library.
:type name: str
:type path: str
:type show: bool
:type plugins: list[str]
:type analytics: bool
:type root: str
:type kwargs: dict
:rtype: studiolibrary.Library
"""
studiolibrary.analytics().setEnabled(analytics)
if not name:
library = studiolibrary.Library.default()
else:
library = studiolibrary.Library.instance(name)
if plugins is None:
library.setPlugins(studiolibrary.Library.DEFAULT_PLUGINS)
else:
library.setPlugins(plugins)
if root: # Legacy
path = root
if path:
library.setPath(path)
studiolibrary.enableMayaClosedEvent()
if show:
with studioqt.app():
library.show(**kwargs)
return library