def getAddonPathWrapper(name): # Return the fully qualified add-on path and file name if getPlatform() == platforms.WINDOWS: return getAddonPath(True, name).replace("\\", "\\\\") else: return getAddonPath(True, name)
def getSeparatorOutput(): if getPlatform() == platforms.WINDOWS: # Need to double escape Windows as we output this as another slash gets striped as it gets read back in again return "\\\\" else: return "/"
# Get the arguments passed in base_url = sys.argv[0] addon_handle = int(sys.argv[1]) args = sys.argv[2].split("?", ) action = "" params = "" # If an argument has been passed in, the first character will be a ?, so the first list element is empty inc = 0 for token in args: if inc == 1: action = token if inc > 1: params = params + token inc = inc + 1 # Don't seem to need to do this on *nix platforms as the filename will be different if getPlatform() == platforms.WINDOWS: params = params.replace("/", "\\") debugTrace("Parsed arguments to action=" + action + " params=" + params) def topLevel(): # Build the top level menu with URL callbacks to this plugin debugTrace("Displaying the top level menu") url = base_url + "?settings" li = xbmcgui.ListItem("Settings") li.setArt({"icon": getIconPath() + "settings.png"}) xbmcplugin.addDirectoryItem(handle=addon_handle, url=url, listitem=li) url = base_url + "?display" li = xbmcgui.ListItem("Display VPN status") li.setArt({"icon": getIconPath() + "display.png"}) xbmcplugin.addDirectoryItem(handle=addon_handle, url=url, listitem=li)