def pasteItem(self, cut_copy_buffer, menu, file_id = None): try: path = self.getPath(menu) util.fillKeyFile(cut_copy_buffer, dict(Hidden=False, NoDisplay=False)) name = util.getNameFromKeyFile(cut_copy_buffer) if file_id is None: file_id = util.getUniqueFileId(name.replace(os.sep, '-'), '.desktop') out_path = os.path.join(util.getUserItemPath(), file_id) contents, length = cut_copy_buffer.to_data() f = open(out_path, 'w') f.write(contents) f.close() menu_xml = self.getXmlMenu(path, self.dom.documentElement, self.dom) self.addXmlFilename(menu_xml, self.dom, file_id, 'Include') self.addXmlTextElement(menu_xml, 'AppDir', util.getUserItemPath(), self.dom) self.save() return True except: return False