X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=wizard%2Fqvariant_converter.py;h=85fec2c0f21b7fcb0c36c782b0789b1b8f456068;hb=57dfb183e24175bc782647d4e6aebe31063f3881;hp=d1854bfff7b1ed3a675ff2ded0c9158747d2e3af;hpb=a4df604eb0061ccfcea861f5a0d836a0885ef9fd;p=bertos.git diff --git a/wizard/qvariant_converter.py b/wizard/qvariant_converter.py index d1854bff..85fec2c0 100644 --- a/wizard/qvariant_converter.py +++ b/wizard/qvariant_converter.py @@ -1,56 +1,47 @@ #!/usr/bin/env python # encoding: utf-8 # -# Copyright 2009 Develer S.r.l. (http://www.develer.com/) -# All rights reserved. +# This file is part of BeRTOS. +# +# Bertos 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 St, Fifth Floor, Boston, MA 02110-1301 USA +# +# As a special exception, you may use this file as part of a free software +# library without restriction. Specifically, if other files instantiate +# templates or use macros or inline functions from this file, or you compile +# this file and link it with other files to produce an executable, this +# file does not by itself cause the resulting executable to be covered by +# the GNU General Public License. This exception does not however +# invalidate any other reasons why the executable file might be covered by +# the GNU General Public License. +# +# Copyright 2008 Develer S.r.l. (http://www.develer.com/) # -# $Id:$ # # Author: Lorenzo Berni # -from PyQt4.QtCore import * - -def getString(qvariant): - string = unicode(qvariant.toString()) - return string - -def convertString(string): - return QVariant(string) - -def getStringList(qvariant): - string_list = [unicode(string) for string in qvariant.toStringList()] - return string_list - -def convertStringList(string_list): - return QVariant(string_list) - -def getStringDict(qvariant): - dict_str_str = {} - for key, value in qvariant.toMap().items(): - dict_str_str[unicode(key)] = unicode(value.toString()) - return dict_str_str - -def convertStringDict(string_dict): - result_dict = {} - for key, value in string_dict.items(): - result_dict[QString(key)] = QVariant(value) - return QVariant(result_dict) - -def getBool(qvariant): - return qvariant.toBool() - -def convertBool(boolean): - return QVariant(boolean) - -def getDict(qvariant): - dict_str_variant = {} - for key, value in qvariant.toMap().items(): - dict_str_variant[unicode(key)] = value - return dict_str_variant - -def convertDict(dict_str_variant): - result_dict = {} - for key, value in dict_str_variant.items(): - result_dict[QString(key)] = QVariant(value) - return result_dict \ No newline at end of file +from PyQt4.QtCore import PYQT_VERSION_STR + +# Choose the right version of the qvariant_converter module. It's awful, +# I know, but this is the only solution in order to mantain compatibility +# with older PyQt4 version. +if PYQT_VERSION_STR <= "4.4.3": + from qvariant_converter_old import * +elif "4.4.3" < PYQT_VERSION_STR < "4.5": + from qvariant_converter_4_4 import * +elif "4.5" <= PYQT_VERSION_STR < "4.6": + from qvariant_converter_4_5 import * +else: + from qvariant_converter_4_6 import *