diff --git a/src/ifcblenderexport/blenderbim/__init__.py b/src/ifcblenderexport/blenderbim/__init__.py index 714914829c..e2109129a3 100644 --- a/src/ifcblenderexport/blenderbim/__init__.py +++ b/src/ifcblenderexport/blenderbim/__init__.py @@ -106,6 +106,7 @@ if bpy is not None: operator.ExecuteIfcDiff, operator.AssignContext, operator.SetViewPreset1, + operator.OpenUpstream, operator.Uninstall, prop.BcfTopic, prop.BcfTopicLabel, diff --git a/src/ifcblenderexport/blenderbim/operator.py b/src/ifcblenderexport/blenderbim/operator.py index 4c7d9ba7be..54a5b15b68 100644 --- a/src/ifcblenderexport/blenderbim/operator.py +++ b/src/ifcblenderexport/blenderbim/operator.py @@ -1399,6 +1399,23 @@ class SetViewPreset1(bpy.types.Operator): return {'FINISHED'} +class OpenUpstream(bpy.types.Operator): + bl_idname = 'bim.open_upstream' + bl_label = 'Open Upstream Reference' + page: bpy.props.StringProperty() + + def execute(self, context): + if self.page == 'home': + webbrowser.open('https://blenderbim.org/') + elif self.page == 'docs': + webbrowser.open('https://blenderbim.org/docs/') + elif self.page == 'wiki': + webbrowser.open('https://wiki.osarch.org/') + elif self.page == 'community': + webbrowser.open('https://community.osarch.org/') + return {'FINISHED'} + + class Uninstall(bpy.types.Operator): bl_idname = 'bim.uninstall' bl_label = 'Uninstall BlenderBIM' diff --git a/src/ifcblenderexport/blenderbim/ui.py b/src/ifcblenderexport/blenderbim/ui.py index 0f9b949178..c523300c19 100644 --- a/src/ifcblenderexport/blenderbim/ui.py +++ b/src/ifcblenderexport/blenderbim/ui.py @@ -794,4 +794,10 @@ class BIM_ADDON_preferences(bpy.types.AddonPreferences): def draw(self, context): layout = self.layout row = layout.row() + row.operator('bim.open_upstream', text='Visit Homepage').page = 'home' + row.operator('bim.open_upstream', text='Visit Documentation').page = 'docs' + row = layout.row() + row.operator('bim.open_upstream', text='Visit Wiki').page = 'wiki' + row.operator('bim.open_upstream', text='Visit Community').page = 'community' + row = layout.row() row.operator('bim.uninstall')