403Webshell
Server IP : 66.29.132.122  /  Your IP : 18.227.107.104
Web Server : LiteSpeed
System : Linux business142.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
User : admazpex ( 531)
PHP Version : 7.2.34
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /proc/self/root/opt/cloudlinux/venv/lib/python3.11/site-packages/svgwrite/data/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /proc/self/root/opt/cloudlinux/venv/lib/python3.11/site-packages/svgwrite/data/types.py
#!/usr/bin/env python
#coding:utf-8
# Author:  mozman --<mozman@gmx.at>
# Purpose: svg types
# Created: 30.09.2010
# Copyright (C) 2010, Manfred Moitzi
# License: MIT License


class SVGAttribute(object):
    def __init__(self, name, anim, types, const):
        self.name = name
        self._anim = anim
        self._types = types
        self._const = const

    # 'elementname' is ignored, but necessary because of the signatures of
    # the SVGMultiAttribute class methods get_...()

    def get_anim(self, elementname='*'):
        return self._anim

    def get_types(self, elementname='*'):
        return self._types

    def get_const(self, elementname='*'):
        return self._const


class SVGMultiAttribute(object):
    # example: SVGMultiAttribute({'*':SVGAttribute(...), 'text tref':SVGAttribute(...)} )
    # parametr is a dict-like object
    # '*' is the default attribute definition
    # 'text' and 'tref' share the same attribute definition

    def __init__(self, attributes):
        self.name = None
        self._attributes = {}

        for names, attribute in attributes.items():
            for name in names.split():
                name = name.strip()
                self._attributes[name] = attribute
                if not self.name:
                    self.name = attribute.name
                elif self.name != attribute.name:
                    raise ValueError("Different attribute-names for SVGMultiAttribute "\
                                     "(%s != %s)." % (self.name, attribute.name))

        if '*' not in self._attributes and len(self._attributes):
            # if no default attribute definition were given
            # set the first attribute definition as the default attribute definition
            firstkey = sorted(self._attributes.keys())[0]
            self._attributes['*'] = self._attributes[firstkey]

    def get_attribute(self, elementname):
        if elementname in self._attributes:
            return self._attributes[elementname]
        else:
            return self._attributes['*']

    def get_anim(self, elementname='*'):
        attribute = self.get_attribute(elementname)
        return attribute.get_anim()

    def get_types(self, elementname='*'):
        attribute = self.get_attribute(elementname)
        return attribute.get_types()

    def get_const(self, elementname='*'):
        attribute = self.get_attribute(elementname)
        return attribute.get_const()


class SVGElement(object):
    def __init__(self, name, attributes, properties, children):
        self.name = name
        s = set(attributes)
        s.update(properties)
        self.valid_attributes = frozenset(s)
        self.valid_children = frozenset(children)

Youez - 2016 - github.com/yon3zu
LinuXploit