forked from bartvdbraak/blender
bd3ec60651
The 'Add' menu in the node editor now has an option 'Search' at the top, which opens a separate popup for searching node types by name. The operator for this is implemented completely in Python (this could also be done for the regular menu-based Add options in the future). There are a few necessary extensions to the RNA as well: * The View2D struct in regions is now exposed. Currently only contains converter functions for coordinates from the region to the view (i.e. scrolled and zoomed view space). Used for converting mouse location to node space. * The SpaceNode exposes the existing 'cursor_location' for operators to store mouse position beyond invoke calls. Not used for anything else (transforms) so far. * The edit_tree in SpaceNode is also exposed, this is needed for operators to work correctly inside node groups.
62 lines
1.6 KiB
Python
62 lines
1.6 KiB
Python
# ##### BEGIN GPL LICENSE BLOCK #####
|
|
#
|
|
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU General Public License
|
|
# as published by the Free Software Foundation; either version 2
|
|
# of the License, or (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#,
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software Foundation,
|
|
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
#
|
|
# ##### END GPL LICENSE BLOCK #####
|
|
|
|
# <pep8 compliant>
|
|
|
|
if "bpy" in locals():
|
|
from imp import reload as _reload
|
|
for val in _modules_loaded.values():
|
|
_reload(val)
|
|
_modules = (
|
|
"add_mesh_torus",
|
|
"anim",
|
|
"clip",
|
|
"console",
|
|
"image",
|
|
"mesh",
|
|
"node",
|
|
"object_align",
|
|
"object",
|
|
"object_randomize_transform",
|
|
"object_quick_effects",
|
|
"presets",
|
|
"screen_play_rendered_anim",
|
|
"sequencer",
|
|
"uvcalc_follow_active",
|
|
"uvcalc_lightmap",
|
|
"uvcalc_smart_project",
|
|
"vertexpaint_dirt",
|
|
"view3d",
|
|
"wm",
|
|
)
|
|
__import__(name=__name__, fromlist=_modules)
|
|
_namespace = globals()
|
|
_modules_loaded = {name: _namespace[name] for name in _modules}
|
|
del _namespace
|
|
|
|
|
|
import bpy
|
|
|
|
|
|
def register():
|
|
bpy.utils.register_module(__name__)
|
|
|
|
|
|
def unregister():
|
|
bpy.utils.unregister_module(__name__)
|