예제 #1
0
	def __init__(self, label='Choose a preset to add:', specials=None):
		QtGui.QDialog.__init__(self)

		self.label = QtGui.QLabel(label)
		self.label.setWordWrap(True)

		# can't be assed to create a model
		self.chooser = QtGui.QListWidget()

		settings = KP.app.settings
		import mapfile

		if settings.contains('AnimationPresets'):
			self.presetList = mapfile.load(str(settings.value('AnimationPresets').toPyObject()))
			self.presets = mapfile.load(str(settings.value('AnimationPresetData').toPyObject()))

		else:
			self.presetList =  ["Circle", "Wiggle", "Drifting Cloud"]
			self.presets = [   [["Loop", "Sinusoidial", 200.0, "X Position", -200.0, 200.0, 0, 0],
								["Loop", "Cosinoidial", 200.0, "Y Position", -200.0, 200.0, 0, 0]],

							   [["Reversible Loop", "Sinusoidial", 50.0, "Y Scale", 100.0, 120.0, 0, 0],
							    ["Loop", "Cosinoidial", 50.0, "X Scale", 100.0, 90.0, 0, 0],
								["Reversible Loop", "Sinusoidial", 20.0, "Angle", 10.0, -10.0, 0, 0]],

							   [["Loop", "Sinusoidial", 5000.0, "X Position", -400.0, 400.0, 0, 0],
							    ["Loop", "Sinusoidial", 200.0, "Y Position", 10.0, -10.0, 0, 0],
								["Reversible Loop", "Linear", 500.0, "Opacity", 80.0, 40.0, 0, 0]]  ]

			settings.setValue('AnimationPresets', mapfile.dump(self.presetList))
			settings.setValue('AnimationPresetData', mapfile.dump(self.presets))


		self.chooser.addItems(self.presetList)

		self.chooser.currentRowChanged.connect(self.handleCurrentRowChanged)
		self.chooser.itemActivated.connect(self.handleItemActivated)

		self.buttons = QtGui.QDialogButtonBox(
				QtGui.QDialogButtonBox.Ok |
				QtGui.QDialogButtonBox.Cancel)

		self.okButton = self.buttons.button(QtGui.QDialogButtonBox.Ok)
		self.okButton.setEnabled(False)

		self.buttons.accepted.connect(self.accept)
		self.buttons.rejected.connect(self.reject)

		self.layout = QtGui.QVBoxLayout()
		self.layout.addWidget(self.label)
		self.layout.addWidget(self.chooser)
		self.layout.addWidget(self.buttons)
		self.setLayout(self.layout)
예제 #2
0
			def addToPreset(self):
				from dialogs import getTextDialog

				name = getTextDialog('Choose Preset Name', 'Preset name:')
				if name == None: 
					print 'Returning'
					return

				print 'Adding.'
				preset = []
				for row in xrange(self.model.rowCount()):
					listrow = []
					for column in xrange(6):
						item = self.model.item(row, column)
						if (column == 0) or (column == 1) or (column == 2):
							data = str(item.data(Qt.EditRole).toString())
						else:
							data = item.data(Qt.EditRole).toFloat()[0]
							
						listrow.append(data)

					preset.append(listrow)

				settings = KP.app.settings
				import mapfile

				if settings.contains('AnimationPresets'):

					presetList = mapfile.load(str(settings.value('AnimationPresets').toPyObject()))
					presets = mapfile.load(str(settings.value('AnimationPresetData').toPyObject()))

				else:

					presetList = []
					presets = []

				presetList.append(name)
				presets.append(preset)

				settings.setValue('AnimationPresets', mapfile.dump(presetList))
				settings.setValue('AnimationPresetData', mapfile.dump(presets))
예제 #3
0
            raise ParseError(str(error), line_number)
    def regions_callback(mapping, line_number):
        try:
            mapping["regions"] = load_regions(mapping["regions"])
        except KeyError:
            mapping["regions"] = None
        except ParseError, error:
            raise ParseError(str(error), line_number)
    def values_callback(mapping, line_number):
        try:
            mapping["values"] = load_values(mapping["values"])
        except KeyError:
            mapping["values"] = None
    callbacks = {"regions": regions_callback, "squares": squares_callback, "values":
                 values_callback}
    mapping = mapfile.load(string, required, callbacks)
    return Puzzle(mapping["squares"], mapping["regions"], mapping["values"])

def load_regions(string):
    """Parse the given region description.  May raise a ParseError."""
    if len(string) == 0:
        return None
    try:
        if "x" in string:
            rheight, rwidth = string.split("x")
            return int(rheight), int(rwidth)
        return [[int(index) for index in SPACE.split(region.strip())]
                for region in string.split(",")]
    except ValueError, error:
        message = str(error)
        if message == "too many values to unpack":
예제 #4
0
    def __init__(self, label='Choose a preset to add:', specials=None):
        QtWidgets.QDialog.__init__(self)

        self.label = QtWidgets.QLabel(label)
        self.label.setWordWrap(True)

        # can't be assed to create a model
        self.chooser = QtWidgets.QListWidget()

        settings = KP.app.settings
        import mapfile

        if settings.contains('AnimationPresets'):
            self.presetList = mapfile.load(settings.value('AnimationPresets'))
            self.presets = mapfile.load(settings.value('AnimationPresetData'))

        else:
            self.presetList = ["Circle", "Wiggle", "Drifting Cloud"]
            self.presets = [[[
                "Loop", "Sinusoidial", 200.0, "X Position", -200.0, 200.0, 0, 0
            ], [
                "Loop", "Cosinoidial", 200.0, "Y Position", -200.0, 200.0, 0, 0
            ]],
                            [[
                                "Reversible Loop", "Sinusoidial", 50.0,
                                "Y Scale", 100.0, 120.0, 0, 0
                            ],
                             [
                                 "Loop", "Cosinoidial", 50.0, "X Scale", 100.0,
                                 90.0, 0, 0
                             ],
                             [
                                 "Reversible Loop", "Sinusoidial", 20.0,
                                 "Angle", 10.0, -10.0, 0, 0
                             ]],
                            [[
                                "Loop", "Sinusoidial", 5000.0, "X Position",
                                -400.0, 400.0, 0, 0
                            ],
                             [
                                 "Loop", "Sinusoidial", 200.0, "Y Position",
                                 10.0, -10.0, 0, 0
                             ],
                             [
                                 "Reversible Loop", "Linear", 500.0, "Opacity",
                                 80.0, 40.0, 0, 0
                             ]]]

            settings.setValue('AnimationPresets',
                              mapfile.dump(self.presetList))
            settings.setValue('AnimationPresetData',
                              mapfile.dump(self.presets))

        self.chooser.addItems(self.presetList)

        self.chooser.currentRowChanged.connect(self.handleCurrentRowChanged)
        self.chooser.itemActivated.connect(self.handleItemActivated)

        self.buttons = QtWidgets.QDialogButtonBox(
            QtWidgets.QDialogButtonBox.Ok | QtWidgets.QDialogButtonBox.Cancel)

        self.okButton = self.buttons.button(QtWidgets.QDialogButtonBox.Ok)
        self.okButton.setEnabled(False)

        self.buttons.accepted.connect(self.accept)
        self.buttons.rejected.connect(self.reject)

        self.layout = QtWidgets.QVBoxLayout()
        self.layout.addWidget(self.label)
        self.layout.addWidget(self.chooser)
        self.layout.addWidget(self.buttons)
        self.setLayout(self.layout)
예제 #5
0
    if 1:
        sys.argv = [sys.argv[0]] + ["utils/doom.wad", "out.zip"]
    else:
        sys.argv = [sys.argv[0]] + ["utils/doom.wad", "out2.zip"]
    if len(sys.argv) != 3:
        print "usage: %s <iwad> <map file>" % sys.argv[0]
        sys.exit(0)

    hvars.iwad = wad.Wad(sys.argv[1])

    hio.init()
    r_main.init()
    r_cam.init()

    # load into the C rendered
    mapfile.load(sys.argv[2])

    #   console.write("test line 1\n")
    #   console.write("test line 2\n")
    #   console.write("two lines\npart of the 2nd\n")

    #   hio.bind("backquote", console.toggle)
    hio.bind("escape", _quit)
    hio.bind("f", _showFPS)
    hio.bind("g", hio.toggleGrab)
    hio.bind("x", _debug)
    hio.bind("k", _debug2)
    hio.bind("c", hvars.c_api.ClearScreen)

    frame_start = hio.milliSeconds()
    while not hvars.do_quit:
예제 #6
0
파일: heng.py 프로젝트: fielder/heng
    if 1:
        sys.argv = [sys.argv[0]] + ["utils/doom.wad", "out.zip"]
    else:
        sys.argv = [sys.argv[0]] + ["utils/doom.wad", "out2.zip"]
    if len(sys.argv) != 3:
        print "usage: %s <iwad> <map file>" % sys.argv[0]
        sys.exit(0)

    hvars.iwad = wad.Wad(sys.argv[1])

    hio.init()
    r_main.init()
    r_cam.init()

    # load into the C rendered
    mapfile.load(sys.argv[2])

#   console.write("test line 1\n")
#   console.write("test line 2\n")
#   console.write("two lines\npart of the 2nd\n")

#   hio.bind("backquote", console.toggle)
    hio.bind("escape", _quit)
    hio.bind("f", _showFPS)
    hio.bind("g", hio.toggleGrab)
    hio.bind("x", _debug)
    hio.bind("k", _debug2)
    hio.bind("c", hvars.c_api.ClearScreen)

    frame_start = hio.milliSeconds()
    while not hvars.do_quit:
예제 #7
0
 def __deepcopy__(self, memo):
     return mapfile.load(mapfile.dump(self))