From c152fb22e6fcec996d3f98c661b18dd9664f9f86 Mon Sep 17 00:00:00 2001 From: "ali.jafargholi" Date: Wed, 26 Sep 2018 21:51:09 -0400 Subject: [PATCH] initial commit --- .gitignore | 223 ++++++++++++++++++++++++++++++++++ LICENSE | 146 ++++++++++++++++++++++ README.md | 3 + app.py | 38 ++++++ icon_256.png | Bin 0 -> 31092 bytes info.yml | 39 ++++++ python/__init__.py | 11 ++ python/app/__init__.py | 11 ++ python/app/dialog.py | 152 +++++++++++++++++++++++ python/app/ui/__init__.py | 10 ++ python/app/ui/dialog.py | 72 +++++++++++ python/app/ui/resources_rc.py | 20 +++ resources/build_resources.sh | 44 +++++++ resources/dialog.ui | 116 ++++++++++++++++++ resources/resources.qrc | 5 + resources/sg_logo.png | Bin 0 -> 6544 bytes style.qss | 21 ++++ 17 files changed, 911 insertions(+) create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 README.md create mode 100644 app.py create mode 100644 icon_256.png create mode 100644 info.yml create mode 100644 python/__init__.py create mode 100644 python/app/__init__.py create mode 100644 python/app/dialog.py create mode 100644 python/app/ui/__init__.py create mode 100644 python/app/ui/dialog.py create mode 100644 python/app/ui/resources_rc.py create mode 100755 resources/build_resources.sh create mode 100644 resources/dialog.ui create mode 100644 resources/resources.qrc create mode 100644 resources/sg_logo.png create mode 100644 style.qss diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0127b5a --- /dev/null +++ b/.gitignore @@ -0,0 +1,223 @@ +# Created by .ignore support plugin (hsz.mobi) +### JetBrains template +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/dictionaries +.idea/**/shelf + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# CMake +cmake-build-debug/ +cmake-build-release/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests +### Python template +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +### macOS template +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk +### Linux template +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* +### Windows template +# Windows thumbnail cache files +Thumbs.db +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..5172753 --- /dev/null +++ b/LICENSE @@ -0,0 +1,146 @@ +SHOTGUN PIPELINE TOOLKIT SOURCE CODE LICENSE + +Version: 7/07/2013 + +Shotgun Software Inc. ("Company") provides the Shotgun Pipeline Toolkit, +software, including source code, in this package or repository folder (the +"Shotgun Toolkit Code") subject to your acceptance of and compliance with +the following terms and conditions (the "License Terms"). By accessing, +downloading, copying, using or modifying any of the Shotgun Toolkit Code, +you agree to these License Terms. + +Eligibility + +The following license to the Shotgun Toolkit Code is valid only if and while +you are a customer of Company in good standing with either: (a) a current, +paid-up (or free-for-evaluation) subscription or fixed-term license for +Company's Shotgun Platform; or (b) a perpetual license and current, paid-up +maintenance and support contract for the Shotgun Platform. + +Shotgun Toolkit Code License + +Subject to the eligibility criteria above and your compliance with these +License Terms, Company grants to you a non-exclusive, limited license to +reproduce, use, and make derivative works of (including by compiling object +code versions of) the Shotgun Toolkit Code solely for your non-commercial or +internal business purposes in connection with your authorized use of the +Shotgun Platform. + +Company reserves all rights in the Shotgun Toolkit Code not expressly granted +above. These License Terms do not grant or require Company to grant, by +implication, estoppel, or otherwise, any other licenses or rights with respect +to the Shotgun Toolkit Code or any of Company's other software or intellectual +property rights. You agree not to take any action with respect to the Shotgun +Toolkit Code that is not expressly authorized above. + +You must keep intact (and, in the case of copies, reproduce) all copyright +and other proprietary notices, including all references to and copies of these +License Terms, as originally included on, in, or with the Shotgun Toolkit +Code. You must ensure that all derivative works you make of the Shotgun +Toolkit Code contain or are accompanied by comparable and conspicuous notices +that the underlying Shotgun Toolkit Code is the confidential information of +Company and is subject to Company's copyrights and these License Terms. + +No Redistribution or Disclosure + +You acknowledge that the Shotgun Toolkit Code is and contains proprietary and +trade-secret information of Company. You may not distribute, disclose to any +third party, operate for the benefit of third parties (for example, on a +hosted basis), or otherwise commercially exploit the Shotgun Toolkit Code or +any portion or derivative work thereof without Company's separate and express +written consent. For purposes of this restriction, third parties do not +include your employees or agents acting on your behalf who are bound to abide +by these License Terms. + +No Warranties or Support + +The Shotgun Toolkit Code is provided "AS IS" and with all faults. Company +makes no warranties whatsoever, whether express, implied, or otherwise, +concerning the Shotgun Toolkit Code. Company has no obligation to provide +maintenance or technical support for the Shotgun Toolkit Code (unless +otherwise expressly agreed in a separate written agreement between you and +Company). + +Liability + +You agree to be solely responsible for your use and modifications of the +Shotgun Toolkit Code, and for any harm or liability arising out of such use +or modifications, including but not limited to any liability for infringement +of third-party intellectual property rights. + +To the fullest extent permitted under applicable law, you agree that: (a) +Company will not be liable under these License Terms or otherwise for any +direct, indirect, incidental, special, consequential, or exemplary damages, +including but not limited to damages for loss of profits, goodwill, use, data +or other intangible losses, in relation to the Shotgun Toolkit Code or your +use or inability to use the Shotgun Toolkit Code, even if Company has been +advised of the possibility of such damages; and (b) in any event, Company's +aggregate liability under these License Terms or in connection with the +Shotgun Toolkit Code, regardless of the form of action and under any theory +(whether in contract, tort, statutory, or otherwise), will not exceed the +greater of $50 or the amount (if any) that you actually paid for access to +the Shotgun Toolkit Code. + +Ownership + +Company retains sole and exclusive ownership of the Shotgun Toolkit Code and +all copyright and other intellectual property rights therein. You will own any +derivative works you make to the Shotgun Toolkit Code, subject to: (a) the +preceding sentence; and (b) the provisions below regarding ownership of any +code you elect to contribute to Company. + +Contributions + +The following terms apply to any derivative works of the Shotgun Toolkit Code +(or any other materials) that you choose to contribute to Company. + +For good and valuable consideration, receipt of which is acknowledged, you +hereby transfer and assign to Company your entire right, title, and interest +(including all rights under copyright) in: (a) any software code, +documentation, and/or other materials that you deliver to Company for +inclusion in, improvement of, use with, or documentation of Company's software +program(s), including but not limited to any code, documentation, and/or other +materials identified in a contribution form you submit to Company in an +applicable form designated by Company; and (b) any future revisions of such +code, documentation, and/or other materials that you make hereafter. The code, +documentation, other materials, and future revisions described above are +collectively referred to below as the "Contribution." + +As used below, the "Company Programs" means and includes the Company software +program(s) identified on any contribution form you submit to Company, and any +other software into which Company incorporates or with which Company uses or +distributes the Contribution or any version or portion thereof. + +Company grants you a non-exclusive right to continue to modify, make +derivative works of, reproduce, and use the Contribution for your +non-commercial or internal business purposes, and to further Company's +development of Company Programs. This grant does not: (a) limit Company's +rights, (b) grant you any rights with respect to the Company Programs; nor +(c) permit you to distribute, operate for the benefit of third parties (for +example, on a hosted basis), or otherwise commercially exploit the +Contribution. + +You acknowledge that if Company elects to distribute the Contribution or any +version or portion thereof, it may do so on any basis that it chooses +(including under any proprietary or open-source licensing terms), without +further compensation to you. + +You agree that if you have or acquire hereafter any patent or interface +copyright or other intellectual property interest dominating the Contribution +or any Company Programs (or use thereof), such dominating interest will not be +used to undermine the effect of the assignment set forth above. Accordingly, +Company and its direct and indirect licensees are licensed to make, use, sell, +distribute, and otherwise exploit, in the Company Programs and their future +versions and derivative works, without royalty or limitation, the subject +matter of the dominating interest. This license provision will be binding on +you and on any assignees of, or other successors to, the dominating interest. + +You hereby represent and warrant that you are the sole copyright holder for +the Contribution and that you have the right and power to enter into this +contract. You shall indemnify and hold harmless Company and its officers, +employees, and agents against any and all claims, actions or damages +(including attorney's reasonable fees) asserted by or paid to any party on +account of a breach or alleged breach of the foregoing warranty. You make no +other express or implied warranty (including without limitation any warranty +of merchantability or fitness for a particular purpose) regarding the +Contribution. \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..24c6345 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# Bug-Reporter App +A Shotgun app for submit ticket for reporting bugs and request. + diff --git a/app.py b/app.py new file mode 100644 index 0000000..d6ed97d --- /dev/null +++ b/app.py @@ -0,0 +1,38 @@ +# Copyright (c) 2013 Shotgun Software Inc. +# +# CONFIDENTIAL AND PROPRIETARY +# +# This work is provided "AS IS" and subject to the Shotgun Pipeline Toolkit +# Source Code License included in this distribution package. See LICENSE. +# By accessing, using, copying or modifying this work you indicate your +# agreement to the Shotgun Pipeline Toolkit Source Code License. All rights +# not expressly granted therein are reserved by Shotgun Software Inc. + + +from sgtk.platform import Application + +class BugReporter(Application): + """ + An App that can be used to submit a bug ticket to support team in Shotgun. + """ + def init_app(self): + """ + Called as the application is being initialized + """ + # first, we use the special import_module command to access the app module + # that resides inside the python folder in the app. This is where the actual UI + # and business logic of the app is kept. By using the import_module command, + # toolkit's code reload mechanism will work properly. + app_payload = self.import_module("app") + + # now register a *command*, which is normally a menu entry of some kind on a Shotgun + # menu (but it depends on the engine). The engine will manage this command and + # whenever the user requests the command, it will call out to the callback. + + # first, set up our callback, calling out to a method inside the app module contained + # in the python folder of the app + menu_callback = lambda : app_payload.dialog.show_dialog(self) + + # now register the command with the engine + self.engine.register_command("Report Bugs!", menu_callback) + diff --git a/icon_256.png b/icon_256.png new file mode 100644 index 0000000000000000000000000000000000000000..cbef9e60ae68bb8645de84a30be02247582af549 GIT binary patch literal 31092 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%0DiYFWiZa=`pDLV%yBK)y`RSv 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 Building " $2 + + # compile ui to python + $1 $2 > $UI_PYTHON_PATH/$3.py + + # replace PySide imports with tank.platform.qt and remove line containing Created by date + sed -i "" -e "s/from PySide import/from tank.platform.qt import/g" -e "/# Created:/d" $UI_PYTHON_PATH/$3.py +} + +function build_ui { + build_qt "pyside-uic --from-imports" "$1.ui" "$1" +} + +function build_res { + build_qt "pyside-rcc" "$1.qrc" "$1_rc" +} + + +# build UI's: +echo "building user interfaces..." +build_ui dialog +# add any additional .ui files you want converted here! + +# build resources +echo "building resources..." +build_res resources \ No newline at end of file diff --git a/resources/dialog.ui b/resources/dialog.ui new file mode 100644 index 0000000..b41ad93 --- /dev/null +++ b/resources/dialog.ui @@ -0,0 +1,116 @@ + + + Dialog + + + + 0 + 0 + 431 + 392 + + + + Report a bug! + + + + + + + + Subject: + + + + + + + + + + + + 0 + + + + + CC: + + + + + + + + + + 0 + 1 + + + + + + + + 5 + + + 0 + + + + + + 50 + 50 + + + + + 50 + 50 + + + + border: 1px solid grey + + + + + + Qt::AlignCenter + + + + + + + + 16777215 + 16777215 + + + + Take a screenshot! + + + + + + + + + QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + + + + + + + diff --git a/resources/resources.qrc b/resources/resources.qrc new file mode 100644 index 0000000..87cde17 --- /dev/null +++ b/resources/resources.qrc @@ -0,0 +1,5 @@ + + + sg_logo.png + + diff --git a/resources/sg_logo.png b/resources/sg_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..69308db43baf64d5c1bc8b0b8d9973833e4a7f24 GIT binary patch literal 6544 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

xml=p^cGP=LkS7 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