def pyDevSetup():
    import os
    import sys
    xbmcRoot = r'C:\Users\Alex Montes Barrios\git\addonDevelopment\xbmc addon development\src\xbmcStubs'
    addonRoot = r'C:\Users\Alex Montes Barrios\AppData\Roaming\Kodi\addons'
    sys.path.insert(0, r'C:\Users\Alex Montes Barrios\git\addonDevelopment\xbmc addon development\src\xbmcUI')
    import KodiAddonImporter as kai
    kai.install_meta(xbmcRoot, addonRoot, hookId = 'pydev_hook', atype = 'kodi')
    import urlresolver
 def runAddon(self, url):
     urlScheme = urlparse.urlparse(url)
     if urlScheme.scheme == 'plugin':             # Plugin diferente
         pluginId, urlArgs = urllib.splitquery(url)
         self.theGlobals['sys'].argv[0] = pluginId
         self.theGlobals['sys'].argv[2] = '?' + (urlArgs or '')
         self.theGlobals['sys'].argv[1] += 1
         self.kodiDirectory = [] 
         actualID = urlScheme.netloc
         addonDir = xbmc.translatePath('special://home/addons/' + actualID)
         if self.addonID != actualID:
             self.addonID = actualID
             self.theGlobals['sys'].modules = newModules(self.theGlobals['sys'].modules)                
             self.sourceCode = self.getCompiledAddonSource(actualID)
         try:
             msg = self.theGlobals['sys'].argv[0] + urllib.unquote(self.theGlobals['sys'].argv[2])
             self.log(msg, xbmc.LOGNONE)
             KodiAddonImporter.install_meta(addonDir, addonRoot, hookId = 'kodi_imports', atype = 'kodi')
             KodiAddonImporter.get_initial_state() 
             exec(self.sourceCode, self.theGlobals)
             KodiAddonImporter.restore_initial_state()
             KodiAddonImporter.remove_meta('kodi_imports')
         except:
             self.logger.exception('')
     else:                                       # Ejecuci�n de media (archivo, etc, etc)
         urlLink, sep, userAgent = url.partition('|')
         self.log('Opening: ' + urlLink, xbmc.LOGNOTICE)
         webbrowser.open(urlLink)
 def runAddon(self, url):
     urlScheme = urlparse.urlparse(url)
     if urlScheme.scheme == 'plugin':  # Plugin diferente
         pluginId, urlArgs = urllib.splitquery(url)
         self.theGlobals['sys'].argv[0] = pluginId
         self.theGlobals['sys'].argv[2] = '?' + (urlArgs or '')
         self.theGlobals['sys'].argv[1] += 1
         self.kodiDirectory = []
         actualID = urlScheme.netloc
         addonDir = xbmc.translatePath('special://home/addons/' + actualID)
         if self.addonID != actualID:
             self.addonID = actualID
             self.theGlobals['sys'].modules = newModules(
                 self.theGlobals['sys'].modules)
             self.sourceCode = self.getCompiledAddonSource(actualID)
         try:
             msg = self.theGlobals['sys'].argv[0] + urllib.unquote(
                 self.theGlobals['sys'].argv[2])
             self.log(msg, xbmc.LOGNONE)
             KodiAddonImporter.install_meta(addonDir,
                                            addonRoot,
                                            hookId='kodi_imports',
                                            atype='kodi')
             KodiAddonImporter.get_initial_state()
             exec(self.sourceCode, self.theGlobals)
             KodiAddonImporter.restore_initial_state()
             KodiAddonImporter.remove_meta('kodi_imports')
         except:
             self.logger.exception('')
     else:  # Ejecuci�n de media (archivo, etc, etc)
         urlLink, sep, userAgent = url.partition('|')
         self.log('Opening: ' + urlLink, xbmc.LOGNOTICE)
         webbrowser.open(urlLink)
import re
import tkMessageBox
import webbrowser
import xml.dom.minidom as minidom
import logging
import Tkinter as tk
import tkFont
import traceback
import menuManagement
import collapsingFrame
import SintaxEditor
from PIL import Image, ImageTk  # @UnresolvedImport
import KodiAddonImporter
xbmcStubsDir = r'C:\Users\Alex Montes Barrios\git\addonDevelopment\xbmc addon development\src\xbmcStubs'
addonRoot = r'C:\Users\Alex Montes Barrios\AppData\Roaming\Kodi\addons'
KodiAddonImporter.install_meta(xbmcStubsDir, hookId = 'xbmc_mock', atype = 'xbmc')
import xbmc, xbmcgui, xbmcaddon, xbmcplugin, xbmcvfs  # @UnresolvedImport


class newModules:
    def __init__(self, aDict):
        self.dict = aDict
        self._initKeys = aDict.keys()
    def clear(self):
        for key in self.dict.keys():
            if key in self._initKeys: continue
            self.dict.pop(key)
        pass
    def __getattr__(self, attr):
        return getattr(self.dict,attr)
import re
import tkMessageBox
import webbrowser
import xml.dom.minidom as minidom
import logging
import Tkinter as tk
import tkFont
import traceback
import menuManagement
import collapsingFrame
import SintaxEditor
from PIL import Image, ImageTk  # @UnresolvedImport
import KodiAddonImporter
xbmcStubsDir = r'C:\Users\Alex Montes Barrios\git\addonDevelopment\xbmc addon development\src\xbmcStubs'
addonRoot = r'C:\Users\Alex Montes Barrios\AppData\Roaming\Kodi\addons'
KodiAddonImporter.install_meta(xbmcStubsDir, hookId='xbmc_mock', atype='xbmc')
import xbmc, xbmcgui, xbmcaddon, xbmcplugin, xbmcvfs  # @UnresolvedImport


class newModules:
    def __init__(self, aDict):
        self.dict = aDict
        self._initKeys = aDict.keys()

    def clear(self):
        for key in self.dict.keys():
            if key in self._initKeys: continue
            self.dict.pop(key)
        pass

    def __getattr__(self, attr):