[Bf-extensions-cvs] [e5f4185] blender-v3.0-release: Remove Hastebin add-on

Dalai Felinto noreply at git.blender.org
Wed Nov 24 11:06:59 CET 2021


Commit: e5f4185b914fdeb7b9092d49f65de7b34407b807
Author: Dalai Felinto
Date:   Wed Nov 24 11:02:17 2021 +0100
Branches: blender-v3.0-release
https://developer.blender.org/rBACe5f4185b914fdeb7b9092d49f65de7b34407b807

Remove Hastebin add-on

Due to the revised add-on policy add-ons such as this
should not be shipped with Blender since it needs to
connect to an external commercial service.

===================================================================

D	text_editor_hastebin.py

===================================================================

diff --git a/text_editor_hastebin.py b/text_editor_hastebin.py
deleted file mode 100644
index 73029b8..0000000
--- a/text_editor_hastebin.py
+++ /dev/null
@@ -1,171 +0,0 @@
-# ##### 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 #####
-
-bl_info = {
-    "name": "hastebin",
-    "author": "Dalai Felinto (dfelinto)",
-    "version": (0, 8),
-    "blender": (2, 80, 0),
-    "location": "Text editor > Properties panel",
-    "description": "Send your selection or text to hastebin.com",
-    "doc_url": "http://wiki.blender.org/index.php/Extensions:2.6/Py/"
-        "Scripts/Text_Editor/hastebin",
-    "tracker_url": "https://developer.blender.org/maniphest/task/edit/form/2/",
-    "category": "Development"}
-
-
-import bpy
-
-class TEXT_PT_hastebin(bpy.types.Panel):
-    bl_space_type = 'TEXT_EDITOR'
-    bl_region_type = 'UI'
-    bl_label = "hastebin.com"
-    bl_category = 'Dev'
-    bl_options = {'DEFAULT_CLOSED'}
-
-    def draw(self, context):
-        layout = self.layout
-        layout.operator("text.hastebin", icon='URL')
-        layout.prop(context.scene, "use_webbrowser")
-
-
-class TEXT_OT_hastebin(bpy.types.Operator):
-    """"""
-    bl_idname = "text.hastebin"
-    bl_label = "hastebin.com"
-    bl_description = "Send the current text or selection to http://hastebin.com"
-
-    @classmethod
-    def poll(cls, context):
-        if context.area.type != 'TEXT_EDITOR':
-            return False
-        else:
-            return context.space_data.text != None
-
-    def invoke(self, context, event):
-        import webbrowser
-        st = context.space_data
-
-        # get the selected text
-        text = self.get_selected_text(st.text)
-        # if no text is selected send the whole file
-        if text is None: text = st.text.as_string()
-
-        # send the text and receive the returned page
-        page = self.send_text(text)
-
-        if page is None:
-            return {'CANCELLED'}
-
-        # store the link in the clipboard
-        bpy.context.window_manager.clipboard = page
-
-        if context.scene.use_webbrowser:
-            try:
-                webbrowser.open_new_tab(page)
-            except:
-                self.report({'WARNING'}, "Error in opening the page %s." % (page))
-
-        return {'FINISHED'}
-
-    def send_text(self, text):
-        """"""
-        import requests
-        base_url = "https://hastebin.com"
-
-        try:
-            response = requests.post(base_url + "/documents", text)
-            final_url = "%s/%s" % (base_url, response.json()['key'])
-
-        except requests.exceptions.SSLError:
-            self.report({'ERROR'}, "Error with SSL authorization, requires a more recent Blender")
-            return None
-
-        except:
-            self.report({'ERROR'}, "Error in sending the text to the server.")
-            return None
-
-        else:
-            return final_url
-
-    def get_selected_text(self, text):
-        """"""
-        current_line = text.current_line
-        select_end_line = text.select_end_line
-
-        current_character = text.current_character
-        select_end_character = text.select_end_character
-
-        # if there is no selected text return None
-        if current_line == select_end_line:
-            if current_character == select_end_character:
-                return None
-            else:
-                return current_line.body[min(current_character,select_end_character):max(current_character,select_end_character)]
-
-        text_return = None
-        writing = False
-        normal_order = True # selection from top to bottom
-
-        for line in text.lines:
-            if not writing:
-                if line == current_line:
-                    text_return = current_line.body[current_character:] + "\n"
-                    writing = True
-                    continue
-                elif line == select_end_line:
-                    text_return =  select_end_line.body[select_end_character:] + "\n"
-                    writing = True
-                    normal_order = False
-                    continue
-            else:
-                if normal_order:
-                    if line == select_end_line:
-                        text_return += select_end_line.body[:select_end_character]
-                        break
-                    else:
-                        text_return += line.body + "\n"
-                        continue
-                else:
-                    if line == current_line:
-                        text_return += current_line.body[:current_character]
-                        break
-                    else:
-                        text_return += line.body + "\n"
-                        continue
-
-        return text_return
-
-
-def register():
-    bpy.types.Scene.use_webbrowser = bpy.props.BoolProperty(
-        name='Launch Browser',
-        description='Opens the page with the submitted text',
-        default=True)
-
-    bpy.utils.register_class(TEXT_PT_hastebin)
-    bpy.utils.register_class(TEXT_OT_hastebin)
-
-
-def unregister():
-    del bpy.types.Scene.use_webbrowser
-    bpy.utils.unregister_class(TEXT_PT_hastebin)
-    bpy.utils.unregister_class(TEXT_OT_hastebin)
-
-if __name__ == "__main__":
-    register()



More information about the Bf-extensions-cvs mailing list