Commit ff32e977 authored by Claudio Valerio's avatar Claudio Valerio

Merge remote-tracking branch 'remotes/origin/Sankore-1.40'

Conflicts:
	src/board/UBBoardView.cpp
	src/domain/UBGraphicsItemDelegate.cpp
	src/domain/UBGraphicsItemDelegate.h
	src/domain/UBGraphicsPixmapItem.h
	src/domain/UBGraphicsVideoItem.cpp
parents 07985398 15bd1121
...@@ -1420,17 +1420,17 @@ var sankoreLang = { ...@@ -1420,17 +1420,17 @@ var sankoreLang = {
} }
}, },
"fr":{ "fr":{
"capital":"Capital ville", "capital":"Capitale",
"europe":"l'Europe", "europe":"Europe",
"asia":"l'Asie", "asia":"Asie",
"north_america":"l'Amérique du Nord", "north_america":"Amérique du Nord",
"south_america":"l'Amérique du Sud", "south_america":"Amérique du Sud",
"oceania":"l'Océanie", "oceania":"Océanie",
"africa":"l'Afrique", "africa":"Afrique",
"eurasia": "Eurasie", "eurasia": "Eurasie",
"MA":{ "MA":{
"city":"Rabat", "city":"Rabat",
"country":"le Maroc" "country":"Maroc"
}, },
"DZ":{ "DZ":{
"city":"Alger", "city":"Alger",
...@@ -1438,15 +1438,15 @@ var sankoreLang = { ...@@ -1438,15 +1438,15 @@ var sankoreLang = {
}, },
"TN":{ "TN":{
"city":"Tunis", "city":"Tunis",
"country":"la Tunisie" "country":"Tunisie"
}, },
"LY":{ "LY":{
"city":"Tripoli", "city":"Tripoli",
"country":"La Libye" "country":"Libye"
}, },
"EG":{ "EG":{
"city":"Le Caire", "city":"Le Caire",
"country":"l'Égypte" "country":"Égypte"
}, },
"Sahara_occidental":{ "Sahara_occidental":{
"city":"", "city":"",
...@@ -1481,12 +1481,12 @@ var sankoreLang = { ...@@ -1481,12 +1481,12 @@ var sankoreLang = {
"country":"Djibouti" "country":"Djibouti"
}, },
"ET":{ "ET":{
"city":"Addis Ababa", "city":"Addis-Abeba",
"country":"Ethiopie" "country":"Ethiopie"
}, },
"SO":{ "SO":{
"city":"Mogadiscio", "city":"Mogadiscio",
"country":"Somalia" "country":"Somalie"
}, },
"KE":{ "KE":{
"city":"Nairobi", "city":"Nairobi",
...@@ -1494,7 +1494,7 @@ var sankoreLang = { ...@@ -1494,7 +1494,7 @@ var sankoreLang = {
}, },
"UG":{ "UG":{
"city":"Kampala", "city":"Kampala",
"country":"l'Ouganda" "country":"Ouganda"
}, },
"CD":{ "CD":{
"city":"Kinshasa", "city":"Kinshasa",
...@@ -1510,10 +1510,10 @@ var sankoreLang = { ...@@ -1510,10 +1510,10 @@ var sankoreLang = {
}, },
"NG":{ "NG":{
"city":"Abuja", "city":"Abuja",
"country":"Nigeria" "country":"Nigéria"
}, },
"BJ":{ "BJ":{
"city":"Porto Novo", "city":"Porto-Novo",
"country":"Bénin" "country":"Bénin"
}, },
"TG":{ "TG":{
...@@ -1526,15 +1526,15 @@ var sankoreLang = { ...@@ -1526,15 +1526,15 @@ var sankoreLang = {
}, },
"CI":{ "CI":{
"city":"Yamoussoukro", "city":"Yamoussoukro",
"country":"La Côte d'Ivoire" "country":"Côte d'Ivoire"
}, },
"BF":{ "BF":{
"city":"Ouagadougou", "city":"Ouagadougou",
"country":"Burkina Faso" "country":"Burkina Faso"
}, },
"LR":{ "LR":{
"city":"Monravia", "city":"Monrovia",
"country":"Le Libéria" "country":"Libéria"
}, },
"SL":{ "SL":{
"city":"Freetown", "city":"Freetown",
...@@ -1546,7 +1546,7 @@ var sankoreLang = { ...@@ -1546,7 +1546,7 @@ var sankoreLang = {
}, },
"GW":{ "GW":{
"city":"Bissau", "city":"Bissau",
"country":"La Guinée-Bissau" "country":"Guinée-Bissau"
}, },
"SN":{ "SN":{
"city":"Dakar", "city":"Dakar",
...@@ -1574,7 +1574,7 @@ var sankoreLang = { ...@@ -1574,7 +1574,7 @@ var sankoreLang = {
}, },
"GQ":{ "GQ":{
"city":"Malabo", "city":"Malabo",
"country":"La Guinée Equatoriale" "country":"Guinée Equatoriale"
}, },
"TZ":{ "TZ":{
"city":"Dodoma", "city":"Dodoma",
...@@ -1605,12 +1605,12 @@ var sankoreLang = { ...@@ -1605,12 +1605,12 @@ var sankoreLang = {
"country":"Botswana" "country":"Botswana"
}, },
"NA":{ "NA":{
"city":"Windhoec", "city":"Windhoek",
"country":"Namibie" "country":"Namibie"
}, },
"ZA":{ "ZA":{
"city":"Pretoria", "city":"Pretoria",
"country":"l'Afrique du Sud" "country":"Afrique du Sud"
}, },
"LS":{ "LS":{
"city":"Maseru", "city":"Maseru",
...@@ -1641,7 +1641,7 @@ var sankoreLang = { ...@@ -1641,7 +1641,7 @@ var sankoreLang = {
"country":"Paraguay" "country":"Paraguay"
}, },
"BO":{ "BO":{
"city":"La Paz", "city":"Sucre",
"country":"Bolivie" "country":"Bolivie"
}, },
"BR":{ "BR":{
...@@ -1654,7 +1654,7 @@ var sankoreLang = { ...@@ -1654,7 +1654,7 @@ var sankoreLang = {
}, },
"EC":{ "EC":{
"city":"Quito", "city":"Quito",
"country":"L'Equateur" "country":"Equateur"
}, },
"CO":{ "CO":{
"city":"Bogota", "city":"Bogota",
...@@ -1662,7 +1662,7 @@ var sankoreLang = { ...@@ -1662,7 +1662,7 @@ var sankoreLang = {
}, },
"VE":{ "VE":{
"city":"Caracas", "city":"Caracas",
"country":"Venezuela" "country":"Vénézuéla"
}, },
"GY":{ "GY":{
"city":"Georgetown", "city":"Georgetown",
...@@ -1673,7 +1673,7 @@ var sankoreLang = { ...@@ -1673,7 +1673,7 @@ var sankoreLang = {
"country":"Suriname" "country":"Suriname"
}, },
"GF":{ "GF":{
"city":"Paris", "city":"Cayenne",
"country":"Guyane française" "country":"Guyane française"
}, },
"CA":{ "CA":{
...@@ -1682,14 +1682,14 @@ var sankoreLang = { ...@@ -1682,14 +1682,14 @@ var sankoreLang = {
}, },
"GL":{ "GL":{
"city":"Nuuk", "city":"Nuuk",
"country":"Greenland" "country":"Grnland"
}, },
"US":{ "US":{
"city":"Washington", "city":"Washington",
"country":"Les États-Unis d'Amérique" "country":"États-Unis d'Amérique"
}, },
"MX":{ "MX":{
"city":"Mexique", "city":"Mexico",
"country":"Mexique" "country":"Mexique"
}, },
"CU":{ "CU":{
...@@ -1701,7 +1701,7 @@ var sankoreLang = { ...@@ -1701,7 +1701,7 @@ var sankoreLang = {
"country":"Haïti" "country":"Haïti"
}, },
"DO":{ "DO":{
"city":"Santo Domingo", "city":"Saint-Domingue",
"country":"République Dominicaine" "country":"République Dominicaine"
}, },
"JM":{ "JM":{
...@@ -1721,8 +1721,8 @@ var sankoreLang = { ...@@ -1721,8 +1721,8 @@ var sankoreLang = {
"country":"Belize" "country":"Belize"
}, },
"SV":{ "SV":{
"city":"Salvador", "city":"San Salvador",
"country":"San Salvador" "country":"Salvador"
}, },
"HN":{ "HN":{
"city":"Tegucigalpa", "city":"Tegucigalpa",
...@@ -1734,7 +1734,7 @@ var sankoreLang = { ...@@ -1734,7 +1734,7 @@ var sankoreLang = {
}, },
"CR":{ "CR":{
"city":"San José", "city":"San José",
"country":"Costa-Rica" "country":"Costa Rica"
}, },
"PA":{ "PA":{
"city":"Panama", "city":"Panama",
...@@ -1746,11 +1746,11 @@ var sankoreLang = { ...@@ -1746,11 +1746,11 @@ var sankoreLang = {
}, },
"NZ":{ "NZ":{
"city":"Wellington", "city":"Wellington",
"country":"New Zealand" "country":"Nouvelle-Zélande"
}, },
"PG":{ "PG":{
"city":"Port Moresby", "city":"Port Moresby",
"country":"La Papouasie-Nouvelle-Guinée" "country":"Papouasie-Nouvelle-Guinée"
}, },
"ID":{ "ID":{
"city":"Jakarta", "city":"Jakarta",
...@@ -1765,7 +1765,7 @@ var sankoreLang = { ...@@ -1765,7 +1765,7 @@ var sankoreLang = {
"country":"Vanuatu" "country":"Vanuatu"
}, },
"NC":{ "NC":{
"city":"Paris", "city":"Nouméa",
"country":"Nouvelle-Calédonie" "country":"Nouvelle-Calédonie"
}, },
"AL":{ "AL":{
...@@ -1774,10 +1774,10 @@ var sankoreLang = { ...@@ -1774,10 +1774,10 @@ var sankoreLang = {
}, },
"DE":{ "DE":{
"city":"Berlin", "city":"Berlin",
"country":"l'Allemagne" "country":"Allemagne"
}, },
"AD":{ "AD":{
"city":"Andorre la Vieille", "city":"Andorre-la-Vieille",
"country":"Andorre" "country":"Andorre"
}, },
"AM":{ "AM":{
...@@ -1785,7 +1785,7 @@ var sankoreLang = { ...@@ -1785,7 +1785,7 @@ var sankoreLang = {
"country":"Arménie" "country":"Arménie"
}, },
"AT":{ "AT":{
"city":"Vienna", "city":"Vienne",
"country":"Autriche" "country":"Autriche"
}, },
"AZ":{ "AZ":{
...@@ -1802,11 +1802,11 @@ var sankoreLang = { ...@@ -1802,11 +1802,11 @@ var sankoreLang = {
}, },
"BA":{ "BA":{
"city":"Sarajevo", "city":"Sarajevo",
"country":"Bosnie" "country":"Bosnie-Herzégovine"
}, },
"BG":{ "BG":{
"city":"Sofia", "city":"Sofia",
"country":"La Bulgarie" "country":"Bulgarie"
}, },
"CY":{ "CY":{
"city":"Nicosie", "city":"Nicosie",
...@@ -1817,16 +1817,16 @@ var sankoreLang = { ...@@ -1817,16 +1817,16 @@ var sankoreLang = {
"country":"Croatie" "country":"Croatie"
}, },
"DK":{ "DK":{
"city":"De Copenhague", "city":"Copenhague",
"country":"Danemark" "country":"Danemark"
}, },
"ES":{ "ES":{
"city":"Madrid", "city":"Madrid",
"country":"L'Espagne" "country":"Espagne"
}, },
"EE":{ "EE":{
"city":"Tallinn", "city":"Tallinn",
"country":"Estonia" "country":"Estonie"
}, },
"FI":{ "FI":{
"city":"Helsinki", "city":"Helsinki",
...@@ -1838,7 +1838,7 @@ var sankoreLang = { ...@@ -1838,7 +1838,7 @@ var sankoreLang = {
}, },
"GE":{ "GE":{
"city":"Tbilissi", "city":"Tbilissi",
"country":"Georgia" "country":"Géorgie"
}, },
"EL":{ "EL":{
"city":"Athènes", "city":"Athènes",
...@@ -1850,11 +1850,11 @@ var sankoreLang = { ...@@ -1850,11 +1850,11 @@ var sankoreLang = {
}, },
"IE":{ "IE":{
"city":"Dublin", "city":"Dublin",
"country":"L'Irlande" "country":"Irlande"
}, },
"IS":{ "IS":{
"city":"Reykjavik", "city":"Reykjavik",
"country":"L'île" "country":"Islande"
}, },
"IT":{ "IT":{
"city":"Rome", "city":"Rome",
...@@ -1878,7 +1878,7 @@ var sankoreLang = { ...@@ -1878,7 +1878,7 @@ var sankoreLang = {
}, },
"MK":{ "MK":{
"city":"Skopje", "city":"Skopje",
"country":"Macedoine" "country":"Macédoine"
}, },
"MT":{ "MT":{
"city":"La Valette", "city":"La Valette",
...@@ -1886,7 +1886,7 @@ var sankoreLang = { ...@@ -1886,7 +1886,7 @@ var sankoreLang = {
}, },
"MD":{ "MD":{
"city":"Chisinau", "city":"Chisinau",
"country":"La Moldavie" "country":"Moldavie"
}, },
"MC":{ "MC":{
"city":"Monaco", "city":"Monaco",
...@@ -1902,14 +1902,14 @@ var sankoreLang = { ...@@ -1902,14 +1902,14 @@ var sankoreLang = {
}, },
"NL":{ "NL":{
"city":"Amsterdam", "city":"Amsterdam",
"country":"Pays Bas" "country":"Pays-Bas"
}, },
"PL":{ "PL":{
"city":"Varsovie", "city":"Varsovie",
"country":"La Pologne" "country":"Pologne"
}, },
"PT":{ "PT":{
"city":"De Lisbonne", "city":"Lisbonne",
"country":"Portugal" "country":"Portugal"
}, },
"CZ":{ "CZ":{
...@@ -1921,7 +1921,7 @@ var sankoreLang = { ...@@ -1921,7 +1921,7 @@ var sankoreLang = {
"country":"Roumanie" "country":"Roumanie"
}, },
"UK":{ "UK":{
"city":"London", "city":"Londres",
"country":"Royaume-Uni" "country":"Royaume-Uni"
}, },
"SM":{ "SM":{
...@@ -1934,7 +1934,7 @@ var sankoreLang = { ...@@ -1934,7 +1934,7 @@ var sankoreLang = {
}, },
"SK":{ "SK":{
"city":"Bratislava", "city":"Bratislava",
"country":"Slovakia" "country":"Slovaquie"
}, },
"SI":{ "SI":{
"city":"Ljubljana", "city":"Ljubljana",
...@@ -1946,18 +1946,18 @@ var sankoreLang = { ...@@ -1946,18 +1946,18 @@ var sankoreLang = {
}, },
"CH":{ "CH":{
"city":"Berne", "city":"Berne",
"country":"La Suisse" "country":"Suisse"
}, },
"TR":{ "TR":{
"city":"Ankara", "city":"Ankara",
"country":"La Turquie" "country":"Turquie"
}, },
"UA":{ "UA":{
"city":"Kiev", "city":"Kiev",
"country":"Ukraine" "country":"Ukraine"
}, },
"VA":{ "VA":{
"city":"Vatican", "city":"Cité du Vatican",
"country":"Vatican" "country":"Vatican"
}, },
"AF":{ "AF":{
...@@ -1966,23 +1966,23 @@ var sankoreLang = { ...@@ -1966,23 +1966,23 @@ var sankoreLang = {
}, },
"SA":{ "SA":{
"city":"Riyad", "city":"Riyad",
"country":"L'Arabie Saoudite" "country":"Arabie Saoudite"
}, },
"BH":{ "BH":{
"city":"Manama", "city":"Manama",
"country":"Bahrein" "country":"Bahreïn"
}, },
"BD":{ "BD":{
"city":"Dacca", "city":"Dacca",
"country":"Bangladesh" "country":"Bangladesh"
}, },
"BT":{ "BT":{
"city":"Thimphu", "city":"Thimphou",
"country":"Bhoutan" "country":"Bhoutan"
}, },
"BN":{ "BN":{
"city":"Andar Seri Begawan", "city":"Bandar Seri Begawan",
"country":"Brunei" "country":"Bruneï"
}, },
"KH":{ "KH":{
"city":"Phnom Penh", "city":"Phnom Penh",
...@@ -1994,27 +1994,27 @@ var sankoreLang = { ...@@ -1994,27 +1994,27 @@ var sankoreLang = {
}, },
"KP":{ "KP":{
"city":"Pyongyang", "city":"Pyongyang",
"country":"La Corée du Nord" "country":"Corée du Nord"
}, },
"KR":{ "KR":{
"city":"Seoul", "city":"Séoul",
"country":"La Corée du Sud" "country":"Corée du Sud"
}, },
"AE":{ "AE":{
"city":"Abu Dhabi", "city":"Abou Dabi",
"country":"Emirats Arabes Unis" "country":"Emirats Arabes Unis"
}, },
"IN":{ "IN":{
"city":"Delhi", "city":"New Delhi",
"country":"L'Inde" "country":"Inde"
}, },
"IR":{ "IR":{
"city":"Téhéran", "city":"Téhéran",
"country":"L'Iran" "country":"Iran"
}, },
"IQ":{ "IQ":{
"city":"Bagdad", "city":"Bagdad",
"country":"L'Irak" "country":"Irak"
}, },
"IL":{ "IL":{
"city":"Jérusalem", "city":"Jérusalem",
...@@ -2026,23 +2026,23 @@ var sankoreLang = { ...@@ -2026,23 +2026,23 @@ var sankoreLang = {
}, },
"JO":{ "JO":{
"city":"Amman", "city":"Amman",
"country":"Jordan" "country":"Jordanie"
}, },
"KZ":{ "KZ":{
"city":"Astana", "city":"Astana",
"country":"Kazakhstan" "country":"Kazakhstan"
}, },
"KG":{ "KG":{
"city":"Bishkek", "city":"Bichkek",
"country":"Kirghizstan" "country":"Kirghizistan"
}, },
"KW":{ "KW":{
"city":"Koweit", "city":"Koweït",
"country":"Koweit" "country":"Koweït"
}, },
"LA":{ "LA":{
"city":"Laos", "city":"Vientiane",
"country":"Vientiane" "country":"Laos"
}, },
"LB":{ "LB":{
"city":"Beyrouth", "city":"Beyrouth",
...@@ -2050,10 +2050,10 @@ var sankoreLang = { ...@@ -2050,10 +2050,10 @@ var sankoreLang = {
}, },
"MY":{ "MY":{
"city":"Kuala Lumpur", "city":"Kuala Lumpur",
"country":"La Malaisie" "country":"Malaisie"
}, },
"MV":{ "MV":{
"city":"Male", "city":"Malé",
"country":"Maldives" "country":"Maldives"
}, },
"MN":{ "MN":{
...@@ -2062,14 +2062,14 @@ var sankoreLang = { ...@@ -2062,14 +2062,14 @@ var sankoreLang = {
}, },
"MM":{ "MM":{
"city":"Naypyidaw", "city":"Naypyidaw",
"country":"Myanmar" "country":"Birmanie"
}, },
"NP":{ "NP":{
"city":"Katmandou", "city":"Katmandou",
"country":"Népal" "country":"Népal"
}, },
"OM":{ "OM":{
"city":"Muscat", "city":"Mascate",
"country":"Oman" "country":"Oman"
}, },
"UZ":{ "UZ":{
...@@ -2078,56 +2078,55 @@ var sankoreLang = { ...@@ -2078,56 +2078,55 @@ var sankoreLang = {
}, },
"PK":{ "PK":{
"city":"Islamabad", "city":"Islamabad",
"country":"Le Pakistan" "country":"Pakistan"
}, },
"PH":{ "PH":{
"city":"Manille", "city":"Manille",
"country":"Philippines" "country":"Philippines"
}, },
"QA":{ "QA":{
"city":"De Doha", "city":"Doha",
"country":"Qatar" "country":"Qatar"
}, },
"RU":{ "RU":{
"city":"Moscou", "city":"Moscou",
"country":"La Russie" "country":"Russie"
}, },
"SG":{ "SG":{
"city":"Singapour", "city":"Singapour",
"country":"Singapour" "country":"Singapour"
}, },
"LK":{ "LK":{
"city":"Colombo", "city":"Sri Jayawardenapura",
"country":"Sri Lanka" "country":"Sri Lanka"
}, },
"SY":{ "SY":{
"city":"Damask", "city":"Damas",
"country":"La Syrie" "country":"Syrie"
}, },
"TJ":{ "TJ":{
"city":"Douchanbé", "city":"Douchanbé",
"country":"Tajikistan" "country":"Tadjikistan"
}, },
"TH":{ "TH":{
"city":"Bangkok", "city":"Bangkok",
"country":"Thailande" "country":"Thaïlande"
}, },
"TL":{ "TL":{
"city":"Dili", "city":"Dili",
"country":"Le Timor-oriental" "country":"Timor-oriental"
}, },
"TM":{ "TM":{
"city":"Achkhabad", "city":"Achgabat",
"country":"Turkménistan" "country":"Turkménistan"
}, },
"VN":{ "VN":{
"city":"Hanoï", "city":"Hanoï",
"country":"Viet Nam" "country":"Vietnam"
}, },
"YE":{ "YE":{
"city":"Sana", "city":"Sanaa",
"country":"Yémen" "country":"Yémen"
} }
} }
}; };
...@@ -632,7 +632,6 @@ function onDropTarget(obj, event) { ...@@ -632,7 +632,6 @@ function onDropTarget(obj, event) {
} }
textData = stringToXML(textData); textData = stringToXML(textData);
var tmp = textData.getElementsByTagName("path")[0].firstChild.textContent; var tmp = textData.getElementsByTagName("path")[0].firstChild.textContent;
tmp = tmp.substr(1, tmp.length);
var tmp_img = $("<img/>").attr("src", tmp); var tmp_img = $("<img/>").attr("src", tmp);
$(obj).append(tmp_img); $(obj).append(tmp_img);
setTimeout(function(){ setTimeout(function(){
......
...@@ -717,7 +717,6 @@ function onDropTarget(obj, event) { ...@@ -717,7 +717,6 @@ function onDropTarget(obj, event) {
} }
textData = stringToXML(textData); textData = stringToXML(textData);
var tmp = textData.getElementsByTagName("path")[0].firstChild.textContent; var tmp = textData.getElementsByTagName("path")[0].firstChild.textContent;
tmp = tmp.substr(1, tmp.length);
var tmp_img = $("<img/>").attr("src", tmp); var tmp_img = $("<img/>").attr("src", tmp);
$(obj).append(tmp_img); $(obj).append(tmp_img);
setTimeout(function(){ setTimeout(function(){
......
...@@ -623,7 +623,6 @@ function onDropTarget(obj, event) { ...@@ -623,7 +623,6 @@ function onDropTarget(obj, event) {
textData = stringToXML(textData); textData = stringToXML(textData);
if(textData.getElementsByTagName("ready")[0].firstChild.textContent == "true"){ if(textData.getElementsByTagName("ready")[0].firstChild.textContent == "true"){
var tmp = textData.getElementsByTagName("path")[0].firstChild.textContent; var tmp = textData.getElementsByTagName("path")[0].firstChild.textContent;
tmp = tmp.substr(1, tmp.length);
var img_block = $("<div class='img_block' style='text-align: center;'>"); var img_block = $("<div class='img_block' style='text-align: center;'>");
$("<div class='close_img'>").appendTo(img_block); $("<div class='close_img'>").appendTo(img_block);
$("<input type='hidden' value='" + $(obj).find("input[name='mask']").val() + "'/>").appendTo(img_block); $("<input type='hidden' value='" + $(obj).find("input[name='mask']").val() + "'/>").appendTo(img_block);
......
...@@ -472,7 +472,6 @@ function onDropTarget(obj, event) { ...@@ -472,7 +472,6 @@ function onDropTarget(obj, event) {
textData = stringToXML(textData); textData = stringToXML(textData);
var tmp = textData.getElementsByTagName("path")[0].firstChild.textContent; var tmp = textData.getElementsByTagName("path")[0].firstChild.textContent;
var tmp_type = textData.getElementsByTagName("type")[0].firstChild.textContent; var tmp_type = textData.getElementsByTagName("type")[0].firstChild.textContent;
tmp = tmp.substr(1, tmp.length);
if(tmp_type.substr(0, 5) == "audio"){ if(tmp_type.substr(0, 5) == "audio"){
var audio_block = $("<div class='audio_block'>").draggable().appendTo($(obj)); var audio_block = $("<div class='audio_block'>").draggable().appendTo($(obj));
audio_block.css("position","absolute").css("top",event.clientY).css("left",event.clientX); audio_block.css("position","absolute").css("top",event.clientY).css("left",event.clientX);
......
...@@ -399,7 +399,6 @@ function onDropTarget(obj, event) { ...@@ -399,7 +399,6 @@ function onDropTarget(obj, event) {
} }
textData = stringToXML(textData); textData = stringToXML(textData);
var tmp = textData.getElementsByTagName("path")[0].firstChild.textContent; var tmp = textData.getElementsByTagName("path")[0].firstChild.textContent;
tmp = tmp.substr(1, tmp.length);
//alert(textData.getElementsByTagName("type")[0].firstChild.textContent + " | " + textData.getElementsByTagName("path")[0].firstChild.textContent); //alert(textData.getElementsByTagName("type")[0].firstChild.textContent + " | " + textData.getElementsByTagName("path")[0].firstChild.textContent);
var tmp_img = $("<img/>").attr("src", tmp); var tmp_img = $("<img/>").attr("src", tmp);
//alert(1) //alert(1)
......
...@@ -381,7 +381,6 @@ function onDropAudio(obj, event) { ...@@ -381,7 +381,6 @@ function onDropAudio(obj, event) {
var tmp_type = textData.getElementsByTagName("type")[0].firstChild.textContent; var tmp_type = textData.getElementsByTagName("type")[0].firstChild.textContent;
if(tmp_type.substr(0, 5) == "audio"){ if(tmp_type.substr(0, 5) == "audio"){
var audio_block = $(obj).find(".audio_block"); var audio_block = $(obj).find(".audio_block");
tmp = tmp.substr(1, tmp.length);
$(obj).find("audio").remove(); $(obj).find("audio").remove();
audio_block.find(":first-child").removeClass("stop").addClass("play"); audio_block.find(":first-child").removeClass("stop").addClass("play");
var source = $("<source/>").attr("src", tmp); var source = $("<source/>").attr("src", tmp);
......
...@@ -359,7 +359,6 @@ function onDropTarget(obj, event) { ...@@ -359,7 +359,6 @@ function onDropTarget(obj, event) {
textData = stringToXML(textData); textData = stringToXML(textData);
var tmp = textData.getElementsByTagName("path")[0].firstChild.textContent; var tmp = textData.getElementsByTagName("path")[0].firstChild.textContent;
var tmp_type = textData.getElementsByTagName("type")[0].firstChild.textContent; var tmp_type = textData.getElementsByTagName("type")[0].firstChild.textContent;
tmp = tmp.substr(1, tmp.length);
if(tmp_type.substr(0, 5) == "audio"){ if(tmp_type.substr(0, 5) == "audio"){
var img_tmp = $("<div class='img_block'>").insertBefore($(obj).find(".add_img")); var img_tmp = $("<div class='img_block'>").insertBefore($(obj).find(".add_img"));
var audio_block = $("<div class='audio_block'>").appendTo(img_tmp) var audio_block = $("<div class='audio_block'>").appendTo(img_tmp)
......
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.0"
id="Layer_1"
x="0px"
y="0px"
width="116.314px"
height="116.314px"
viewBox="0 0 116.314 116.314"
enable-background="new 0 0 116.314 116.314"
xml:space="preserve"
sodipodi:version="0.32"
inkscape:version="0.46"
sodipodi:docname="red_square_rnd.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"><metadata
id="metadata7161"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs7159"><inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 58.157001 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="116.314 : 58.157001 : 1"
inkscape:persp3d-origin="58.157001 : 38.771334 : 1"
id="perspective7163" />
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_1_"
id="linearGradient7681"
gradientUnits="userSpaceOnUse"
x1="2.1924"
y1="56.8423"
x2="110.7549"
y2="56.8423" />
<linearGradient
id="SVGID_1_"
gradientUnits="userSpaceOnUse"
x1="2.1924"
y1="56.8423"
x2="110.7549"
y2="56.8423">
<stop
offset="0"
style="stop-color:#FF897A"
id="stop7152" />
<stop
offset="1"
style="stop-color:#FF3400"
id="stop7154" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_1_"
id="linearGradient7687"
gradientUnits="userSpaceOnUse"
x1="2.1924"
y1="56.8423"
x2="110.7549"
y2="56.8423" />
</defs><sodipodi:namedview
inkscape:window-height="970"
inkscape:window-width="1680"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
guidetolerance="10.0"
gridtolerance="10.0"
objecttolerance="10.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
showgrid="false"
inkscape:zoom="4.1611499"
inkscape:cx="11.054637"
inkscape:cy="58.157001"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:current-layer="Layer_1" />
<g
id="g7690">
<path
style="opacity:0.25;fill-rule:evenodd"
id="path7147"
d="M 5.887,31.278 C 5.887,16.869 17.566,5.19 31.975,5.19 L 88.364,5.19 C 102.772,5.19 114.45,16.869 114.45,31.278 L 114.45,87.666 C 114.45,102.074 102.772,113.754 88.364,113.754 L 31.975,113.754 C 17.566,113.754 5.887,102.074 5.887,87.666 L 5.887,31.278 z"
clip-rule="evenodd" /><path
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-opacity:1;fill-opacity:1"
id="path7156"
d="M 2.192,28.648 C 2.192,14.239 13.87,2.56 28.28,2.56 L 84.669,2.56 C 99.077,2.56 110.755,14.239 110.755,28.648 L 110.755,85.036 C 110.755,99.444 99.077,111.124 84.669,111.124 L 28.28,111.124 C 13.87,111.124 2.192,99.444 2.192,85.036 L 2.192,28.648 z"
clip-rule="evenodd" /></g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.0"
id="Layer_1"
x="0px"
y="0px"
width="116.314px"
height="116.314px"
viewBox="0 0 116.314 116.314"
enable-background="new 0 0 116.314 116.314"
xml:space="preserve"
sodipodi:version="0.32"
inkscape:version="0.46"
sodipodi:docname="red_square.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"><metadata
id="metadata6561"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs6559"><inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 58.157001 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="116.314 : 58.157001 : 1"
inkscape:persp3d-origin="58.157001 : 38.771334 : 1"
id="perspective6563" />
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_1_"
id="linearGradient6572"
gradientUnits="userSpaceOnUse"
x1="2.1914001"
y1="56.8423"
x2="110.7539"
y2="56.8423" />
<linearGradient
id="SVGID_1_"
gradientUnits="userSpaceOnUse"
x1="2.1914001"
y1="56.8423"
x2="110.7539"
y2="56.8423">
<stop
offset="0"
style="stop-color:#FF897A"
id="stop6552" />
<stop
offset="1"
style="stop-color:#FF3400"
id="stop6554" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_1_"
id="linearGradient6578"
gradientUnits="userSpaceOnUse"
x1="2.1914001"
y1="56.8423"
x2="110.7539"
y2="56.8423" />
</defs><sodipodi:namedview
inkscape:window-height="970"
inkscape:window-width="1680"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
guidetolerance="10.0"
gridtolerance="10.0"
objecttolerance="10.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
showgrid="false"
inkscape:zoom="4.1611499"
inkscape:cx="11.054637"
inkscape:cy="58.157001"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:current-layer="Layer_1" />
<g
id="g7090">
<rect
style="opacity:0.25;fill-rule:evenodd"
id="rect6547"
height="108.563"
width="108.563"
clip-rule="evenodd"
y="5.1900001"
x="5.8860002" /><rect
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;fill-opacity:1;stroke-opacity:1"
id="rect6556"
height="108.563"
width="108.562"
clip-rule="evenodd"
y="2.5610001"
x="2.191" /></g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.0"
id="Layer_1"
x="0px"
y="0px"
width="96.661px"
height="119.096px"
viewBox="0 0 96.661 119.096"
enable-background="new 0 0 96.661 119.096"
xml:space="preserve"
sodipodi:version="0.32"
inkscape:version="0.46"
sodipodi:docname="red_arrow_down.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"><metadata
id="metadata4418"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs4416"><inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 59.548 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="96.661003 : 59.548 : 1"
inkscape:persp3d-origin="48.330502 : 39.698667 : 1"
id="perspective4420" />
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient4429"
gradientUnits="userSpaceOnUse"
x1="2.6235001"
y1="58.913601"
x2="90.977997"
y2="58.913601" />
<linearGradient
id="SVGID_2_"
gradientUnits="userSpaceOnUse"
x1="2.6235001"
y1="58.913601"
x2="90.977997"
y2="58.913601">
<stop
offset="0"
style="stop-color:#FFFFFF"
id="stop4411" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient4434"
gradientUnits="userSpaceOnUse"
x1="2.6235001"
y1="58.913601"
x2="90.977997"
y2="58.913601" />
</defs><sodipodi:namedview
inkscape:window-height="669"
inkscape:window-width="640"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
guidetolerance="10.0"
gridtolerance="10.0"
objecttolerance="10.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
showgrid="false"
inkscape:zoom="4.0639484"
inkscape:cx="48.330502"
inkscape:cy="59.548"
inkscape:window-x="92"
inkscape:window-y="92"
inkscape:current-layer="Layer_1" />
<g
id="g4438">
<path
style="opacity:0.25;fill-rule:evenodd"
id="path4404"
d="M 36.043,64.812 L 36.043,8.574 C 36.043,7.337 37.129,6.249 38.368,6.249 L 63.62,6.249 C 64.856,6.249 65.946,7.337 65.946,8.574 L 65.946,64.812 L 92.092,64.812 C 94.583,64.812 95.484,66.802 93.838,68.673 L 52.242,116.013 C 51.277,117.112 49.711,117.112 48.746,116.013 L 7.151,68.674 C 5.506,66.803 6.406,64.813 8.897,64.813 L 36.043,64.813 L 36.043,64.812 z"
clip-rule="evenodd" /><path
style="fill:url(#linearGradient4434);fill-rule:evenodd;stroke:#000000"
id="path4413"
d="M 32.349,62.183 L 32.349,5.944 C 32.349,4.707 33.435,3.619 34.673,3.619 L 59.925,3.619 C 61.161,3.619 62.251,4.707 62.251,5.944 L 62.251,62.182 L 88.397,62.182 C 90.889,62.182 91.79,64.172 90.143,66.043 L 48.547,113.383 C 47.582,114.482 46.016,114.482 45.051,113.383 L 3.457,66.044 C 1.812,64.173 2.711,62.183 5.203,62.183 L 32.349,62.183 z"
clip-rule="evenodd" /></g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.0"
id="Layer_1"
x="0px"
y="0px"
width="119.268px"
height="96.873px"
viewBox="0 0 119.268 96.873"
enable-background="new 0 0 119.268 96.873"
xml:space="preserve"
sodipodi:version="0.32"
inkscape:version="0.46"
sodipodi:docname="red_arrow_right.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"><metadata
id="metadata4600"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs4598"><inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 48.436501 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="119.268 : 48.436501 : 1"
inkscape:persp3d-origin="59.633999 : 32.291 : 1"
id="perspective4602" />
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient4611"
gradientUnits="userSpaceOnUse"
x1="2.8101001"
y1="47.8018"
x2="113.3979"
y2="47.8018" />
<linearGradient
id="SVGID_2_"
gradientUnits="userSpaceOnUse"
x1="2.8101001"
y1="47.8018"
x2="113.3979"
y2="47.8018">
<stop
offset="0"
style="stop-color:#FFFFFF"
id="stop4593" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient4616"
gradientUnits="userSpaceOnUse"
x1="2.8101001"
y1="47.8018"
x2="113.3979"
y2="47.8018" />
</defs><sodipodi:namedview
inkscape:window-height="669"
inkscape:window-width="640"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
guidetolerance="10.0"
gridtolerance="10.0"
objecttolerance="10.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
showgrid="false"
inkscape:zoom="4.745615"
inkscape:cx="59.633999"
inkscape:cy="48.436501"
inkscape:window-x="184"
inkscape:window-y="184"
inkscape:current-layer="Layer_1" />
<g
id="g4620">
<path
style="opacity:0.25;fill-rule:evenodd"
id="path4586"
d="M 65.069,64.885 L 8.831,64.885 C 7.593,64.885 6.505,63.797 6.505,62.559 L 6.505,37.307 C 6.505,36.07 7.593,34.982 8.831,34.982 L 65.069,34.982 L 65.069,8.834 C 65.069,6.341 67.057,5.443 68.93,7.086 L 116.27,48.685 C 117.368,49.65 117.368,51.214 116.27,52.179 L 68.93,93.776 C 67.057,95.422 65.069,94.521 65.069,92.031 L 65.069,64.885 z"
clip-rule="evenodd" /><path
style="fill:url(#linearGradient4616);fill-rule:evenodd;stroke:#000000"
id="path4595"
d="M 61.375,62.255 L 5.136,62.255 C 3.898,62.255 2.81,61.167 2.81,59.929 L 2.81,34.677 C 2.81,33.44 3.898,32.352 5.136,32.352 L 61.375,32.352 L 61.375,6.204 C 61.375,3.711 63.363,2.813 65.235,4.456 L 112.575,46.055 C 113.673,47.02 113.673,48.584 112.575,49.549 L 65.235,91.147 C 63.363,92.793 61.375,91.892 61.375,89.402 L 61.375,62.255 z"
clip-rule="evenodd" /></g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.0"
id="Layer_1"
x="0px"
y="0px"
width="119.268px"
height="96.873px"
viewBox="0 0 119.268 96.873"
enable-background="new 0 0 119.268 96.873"
xml:space="preserve"
sodipodi:version="0.32"
inkscape:version="0.46"
sodipodi:docname="red_arrow_left.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"><metadata
id="metadata4509"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs4507"><inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 48.436501 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="119.268 : 48.436501 : 1"
inkscape:persp3d-origin="59.633999 : 32.291 : 1"
id="perspective4511" />
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient4520"
gradientUnits="userSpaceOnUse"
x1="2.8104999"
y1="47.8018"
x2="113.3989"
y2="47.8018" />
<linearGradient
id="SVGID_2_"
gradientUnits="userSpaceOnUse"
x1="2.8104999"
y1="47.8018"
x2="113.3989"
y2="47.8018">
<stop
offset="0"
style="stop-color:#FFFFFF"
id="stop4502" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient4525"
gradientUnits="userSpaceOnUse"
x1="2.8104999"
y1="47.8018"
x2="113.3989"
y2="47.8018" />
</defs><sodipodi:namedview
inkscape:window-height="669"
inkscape:window-width="640"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
guidetolerance="10.0"
gridtolerance="10.0"
objecttolerance="10.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
showgrid="false"
inkscape:zoom="4.745615"
inkscape:cx="59.633999"
inkscape:cy="48.436501"
inkscape:window-x="138"
inkscape:window-y="138"
inkscape:current-layer="Layer_1" />
<g
id="g4529">
<path
style="opacity:0.25;fill-rule:evenodd"
id="path4495"
d="M 58.528,35.98 L 114.769,35.98 C 116.005,35.98 117.093,37.066 117.093,38.305 L 117.093,63.558 C 117.093,64.793 116.005,65.883 114.769,65.883 L 58.528,65.883 L 58.528,92.03 C 58.528,94.52 56.54,95.421 54.668,93.775 L 7.328,52.179 C 6.231,51.216 6.231,49.65 7.328,48.685 L 54.668,7.086 C 56.54,5.443 58.528,6.341 58.528,8.834 L 58.528,35.98 L 58.528,35.98 z"
clip-rule="evenodd" /><path
style="fill:url(#linearGradient4525);fill-rule:evenodd;stroke:#000000"
id="path4504"
d="M 54.833,33.351 L 111.074,33.351 C 112.311,33.351 113.399,34.437 113.399,35.676 L 113.399,60.929 C 113.399,62.164 112.311,63.254 111.074,63.254 L 54.833,63.254 L 54.833,89.401 C 54.833,91.891 52.845,92.792 50.974,91.146 L 3.633,49.549 C 2.536,48.586 2.536,47.02 3.633,46.055 L 50.974,4.456 C 52.845,2.813 54.833,3.711 54.833,6.204 L 54.833,33.351 z"
clip-rule="evenodd" /></g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.0"
id="Layer_1"
x="0px"
y="0px"
width="96.661px"
height="119.096px"
viewBox="0 0 96.661 119.096"
enable-background="new 0 0 96.661 119.096"
xml:space="preserve"
sodipodi:version="0.32"
inkscape:version="0.46"
sodipodi:docname="red_arrow_up.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"><metadata
id="metadata4711"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs4709"><inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 59.548 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="96.661003 : 59.548 : 1"
inkscape:persp3d-origin="48.330502 : 39.698667 : 1"
id="perspective4713" />
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient4722"
gradientUnits="userSpaceOnUse"
x1="2.6229999"
y1="58.913601"
x2="90.977997"
y2="58.913601" />
<linearGradient
id="SVGID_2_"
gradientUnits="userSpaceOnUse"
x1="2.6229999"
y1="58.913601"
x2="90.977997"
y2="58.913601">
<stop
offset="0"
style="stop-color:#FFFFFF"
id="stop4704" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient4727"
gradientUnits="userSpaceOnUse"
x1="2.6229999"
y1="58.913601"
x2="90.977997"
y2="58.913601" />
</defs><sodipodi:namedview
inkscape:window-height="669"
inkscape:window-width="640"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
guidetolerance="10.0"
gridtolerance="10.0"
objecttolerance="10.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
showgrid="false"
inkscape:zoom="4.0639484"
inkscape:cx="48.330502"
inkscape:cy="59.548"
inkscape:window-x="394"
inkscape:window-y="149"
inkscape:current-layer="Layer_1" />
<g
id="g4731">
<path
style="opacity:0.25;fill-rule:evenodd"
id="path4697"
d="M 64.949,58.272 L 64.949,114.512 C 64.949,115.748 63.86,116.838 62.623,116.838 L 37.371,116.838 C 36.133,116.838 35.045,115.748 35.045,114.512 L 35.045,58.272 L 8.898,58.272 C 6.407,58.272 5.505,56.283 7.152,54.413 L 48.749,7.072 C 49.713,5.973 51.278,5.973 52.242,7.072 L 93.84,54.413 C 95.484,56.283 94.585,58.272 92.092,58.272 L 64.949,58.272 z"
clip-rule="evenodd" /><path
style="fill:url(#linearGradient4727);fill-rule:evenodd;stroke:#000000"
id="path4706"
d="M 61.253,55.643 L 61.253,111.883 C 61.253,113.119 60.165,114.209 58.927,114.209 L 33.675,114.209 C 32.437,114.209 31.349,113.119 31.349,111.883 L 31.349,55.643 L 5.203,55.643 C 2.713,55.643 1.81,53.654 3.457,51.784 L 45.054,4.442 C 46.017,3.343 47.583,3.343 48.546,4.442 L 90.146,51.783 C 91.789,53.653 90.89,55.642 88.398,55.642 L 61.253,55.642 L 61.253,55.643 z"
clip-rule="evenodd" /></g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="97.773px" height="118.167px" viewBox="0 0 97.773 118.167" enable-background="new 0 0 97.773 118.167"
xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M36.547,64.229V7.991c0-1.237,1.086-2.325,2.325-2.325h25.252
c1.236,0,2.326,1.088,2.326,2.325v56.238h26.146c2.491,0,3.392,1.99,1.746,3.861l-41.596,47.34c-0.965,1.099-2.531,1.099-3.496,0
L7.655,68.09c-1.645-1.871-0.745-3.861,1.746-3.861H36.547z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M36.547,64.229V7.991c0-1.237,1.086-2.325,2.325-2.325h25.252
c1.236,0,2.326,1.088,2.326,2.325v56.238h26.146c2.491,0,3.392,1.99,1.746,3.861l-41.596,47.34c-0.965,1.099-2.531,1.099-3.496,0
L7.655,68.09c-1.645-1.871-0.745-3.861,1.746-3.861H36.547z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="3.2305" y1="58.5679" x2="91.5854" y2="58.5679">
<stop offset="0" style="stop-color:#7CD4FF"/>
<stop offset="1" style="stop-color:#3777AE"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#194E6A" d="M32.956,61.836V5.598
c0-1.236,1.086-2.324,2.326-2.324h25.252c1.236,0,2.326,1.088,2.326,2.324v56.238h26.146c2.49,0,3.391,1.99,1.746,3.861
l-41.596,47.34c-0.965,1.1-2.531,1.1-3.496,0L4.063,65.698c-1.645-1.871-0.744-3.861,1.746-3.861H32.956z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="3.2305" y1="58.5679" x2="91.5854" y2="58.5679">
<stop offset="0" style="stop-color:#7CD4FF"/>
<stop offset="1" style="stop-color:#3777AE"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#194E6A" d="M32.956,61.836V5.598
c0-1.236,1.086-2.324,2.326-2.324h25.252c1.236,0,2.326,1.088,2.326,2.324v56.238h26.146c2.49,0,3.391,1.99,1.746,3.861
l-41.596,47.34c-0.965,1.1-2.531,1.1-3.496,0L4.063,65.698c-1.645-1.871-0.744-3.861,1.746-3.861H32.956z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="121.085px" height="95.54px" viewBox="0 0 121.085 95.54" enable-background="new 0 0 121.085 95.54" xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M65.925,64.1H9.687c-1.238,0-2.326-1.088-2.326-2.326V36.522
c0-1.237,1.088-2.325,2.326-2.325h56.239V8.049c0-2.493,1.988-3.391,3.861-1.748l47.34,41.599c1.098,0.965,1.098,2.529,0,3.494
l-47.34,41.598c-1.873,1.646-3.861,0.745-3.861-1.745V64.1z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M65.925,64.1H9.687c-1.238,0-2.326-1.088-2.326-2.326V36.522
c0-1.237,1.088-2.325,2.326-2.325h56.239V8.049c0-2.493,1.988-3.391,3.861-1.748l47.34,41.599c1.098,0.965,1.098,2.529,0,3.494
l-47.34,41.598c-1.873,1.646-3.861,0.745-3.861-1.745V64.1z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="3.77" y1="47.2549" x2="114.3589" y2="47.2549">
<stop offset="0" style="stop-color:#7CD4FF"/>
<stop offset="1" style="stop-color:#3777AE"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#194E6A" d="M62.334,61.707H6.096
c-1.238,0-2.326-1.088-2.326-2.326V34.129c0-1.236,1.088-2.324,2.326-2.324h56.239V5.657c0-2.492,1.988-3.391,3.861-1.748
l47.34,41.6c1.098,0.965,1.098,2.529,0,3.494L66.196,90.6c-1.873,1.645-3.861,0.744-3.861-1.746V61.707z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="3.77" y1="47.2549" x2="114.3589" y2="47.2549">
<stop offset="0" style="stop-color:#7CD4FF"/>
<stop offset="1" style="stop-color:#3777AE"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#194E6A" d="M62.334,61.707H6.096
c-1.238,0-2.326-1.088-2.326-2.326V34.129c0-1.236,1.088-2.324,2.326-2.324h56.239V5.657c0-2.492,1.988-3.391,3.861-1.748
l47.34,41.6c1.098,0.965,1.098,2.529,0,3.494L66.196,90.6c-1.873,1.645-3.861,0.744-3.861-1.746V61.707z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="121.085px" height="95.54px" viewBox="0 0 121.085 95.54" enable-background="new 0 0 121.085 95.54" xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M59.385,35.196h56.24c1.236,0,2.324,1.086,2.324,2.325v25.253
c0,1.235-1.088,2.325-2.324,2.325h-56.24v26.147c0,2.49-1.988,3.391-3.86,1.745L8.184,51.395c-1.097-0.963-1.097-2.53,0-3.495
l47.34-41.599c1.872-1.643,3.86-0.745,3.86,1.748V35.196z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M59.385,35.196h56.24c1.236,0,2.324,1.086,2.324,2.325v25.253
c0,1.235-1.088,2.325-2.324,2.325h-56.24v26.147c0,2.49-1.988,3.391-3.86,1.745L8.184,51.395c-1.097-0.963-1.097-2.53,0-3.495
l47.34-41.599c1.872-1.643,3.86-0.745,3.86,1.748V35.196z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="3.771" y1="47.2554" x2="114.3589" y2="47.2554">
<stop offset="0" style="stop-color:#7CD4FF"/>
<stop offset="1" style="stop-color:#3777AE"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#194E6A" d="M55.794,32.803h56.24
c1.237,0,2.325,1.086,2.325,2.326v25.252c0,1.236-1.088,2.326-2.325,2.326h-56.24v26.146c0,2.49-1.988,3.391-3.86,1.746
L4.593,49.002c-1.097-0.963-1.097-2.529,0-3.494l47.34-41.6c1.872-1.643,3.86-0.744,3.86,1.748V32.803z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="3.771" y1="47.2554" x2="114.3589" y2="47.2554">
<stop offset="0" style="stop-color:#7CD4FF"/>
<stop offset="1" style="stop-color:#3777AE"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#194E6A" d="M55.794,32.803h56.24
c1.237,0,2.325,1.086,2.325,2.326v25.252c0,1.236-1.088,2.326-2.325,2.326h-56.24v26.146c0,2.49-1.988,3.391-3.86,1.746
L4.593,49.002c-1.097-0.963-1.097-2.529,0-3.494l47.34-41.6c1.872-1.643,3.86-0.744,3.86,1.748V32.803z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="97.773px" height="118.167px" viewBox="0 0 97.773 118.167" enable-background="new 0 0 97.773 118.167"
xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M65.453,57.689v56.24c0,1.236-1.089,2.326-2.326,2.326H37.875
c-1.238,0-2.326-1.09-2.326-2.326v-56.24H9.402c-2.491,0-3.393-1.989-1.746-3.859L49.252,6.489c0.964-1.099,2.529-1.099,3.493,0
L94.344,53.83c1.644,1.87,0.745,3.859-1.748,3.859H65.453z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M65.453,57.689v56.24c0,1.236-1.089,2.326-2.326,2.326H37.875
c-1.238,0-2.326-1.09-2.326-2.326v-56.24H9.402c-2.491,0-3.393-1.989-1.746-3.859L49.252,6.489c0.964-1.099,2.529-1.099,3.493,0
L94.344,53.83c1.644,1.87,0.745,3.859-1.748,3.859H65.453z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="3.231" y1="58.5684" x2="91.5854" y2="58.5684">
<stop offset="0" style="stop-color:#7CD4FF"/>
<stop offset="1" style="stop-color:#3777AE"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#194E6A" d="M61.862,55.297v56.24
c0,1.236-1.09,2.326-2.326,2.326H34.284c-1.238,0-2.326-1.09-2.326-2.326v-56.24H5.811c-2.492,0-3.393-1.99-1.746-3.859
L45.661,4.096c0.965-1.098,2.529-1.098,3.494,0l41.598,47.342c1.645,1.869,0.746,3.859-1.748,3.859H61.862z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="3.231" y1="58.5684" x2="91.5854" y2="58.5684">
<stop offset="0" style="stop-color:#7CD4FF"/>
<stop offset="1" style="stop-color:#3777AE"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#194E6A" d="M61.862,55.297v56.24
c0,1.236-1.09,2.326-2.326,2.326H34.284c-1.238,0-2.326-1.09-2.326-2.326v-56.24H5.811c-2.492,0-3.393-1.99-1.746-3.859
L45.661,4.096c0.965-1.098,2.529-1.098,3.494,0l41.598,47.342c1.645,1.869,0.746,3.859-1.748,3.859H61.862z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="96.402px" height="118.167px" viewBox="0 0 96.402 118.167" enable-background="new 0 0 96.402 118.167"
xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M35.026,63.52V7.282c0-1.237,1.086-2.325,2.325-2.325h25.251
c1.236,0,2.326,1.088,2.326,2.325V63.52h26.146c2.491,0,3.392,1.99,1.746,3.861l-41.596,47.34c-0.965,1.1-2.531,1.1-3.496,0
L6.133,67.381C4.489,65.51,5.388,63.52,7.879,63.52H35.026z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M35.026,63.52V7.282c0-1.237,1.086-2.325,2.325-2.325h25.251
c1.236,0,2.326,1.088,2.326,2.325V63.52h26.146c2.491,0,3.392,1.99,1.746,3.861l-41.596,47.34c-0.965,1.1-2.531,1.1-3.496,0
L6.133,67.381C4.489,65.51,5.388,63.52,7.879,63.52H35.026z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="3.3823" y1="59.4331" x2="91.9873" y2="59.4331">
<stop offset="0" style="stop-color:#BEBEBE"/>
<stop offset="1" style="stop-color:#6A6A6A"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#414141" d="M33.191,62.711V6.313
c0-1.24,1.09-2.332,2.334-2.332h25.322c1.24,0,2.332,1.092,2.332,2.332v56.398h26.221c2.5,0,3.402,1.996,1.752,3.873
l-41.714,47.473c-0.967,1.104-2.537,1.104-3.506,0L4.218,66.584c-1.65-1.877-0.748-3.873,1.75-3.873H33.191z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="3.3823" y1="59.4331" x2="91.9873" y2="59.4331">
<stop offset="0" style="stop-color:#BEBEBE"/>
<stop offset="1" style="stop-color:#6A6A6A"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#414141" d="M33.191,62.711V6.313
c0-1.24,1.09-2.332,2.334-2.332h25.322c1.24,0,2.332,1.092,2.332,2.332v56.398h26.221c2.5,0,3.402,1.996,1.752,3.873
l-41.714,47.473c-0.967,1.104-2.537,1.104-3.506,0L4.218,66.584c-1.65-1.877-0.748-3.873,1.75-3.873H33.191z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="118.344px" height="94.854px" viewBox="0 0 118.344 94.854" enable-background="new 0 0 118.344 94.854"
xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M64.195,63.032H7.956c-1.237,0-2.325-1.088-2.325-2.326V35.454
c0-1.237,1.088-2.325,2.325-2.325h56.239V6.981c0-2.493,1.988-3.391,3.861-1.748l47.34,41.599c1.098,0.965,1.098,2.529,0,3.494
l-47.34,41.598c-1.873,1.646-3.861,0.745-3.861-1.745V63.032z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M64.195,63.032H7.956c-1.237,0-2.325-1.088-2.325-2.326V35.454
c0-1.237,1.088-2.325,2.325-2.325h56.239V6.981c0-2.493,1.988-3.391,3.861-1.748l47.34,41.599c1.098,0.965,1.098,2.529,0,3.494
l-47.34,41.598c-1.873,1.646-3.861,0.745-3.861-1.745V63.032z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="2.7588" y1="47.7617" x2="113.6621" y2="47.7617">
<stop offset="0" style="stop-color:#BEBEBE"/>
<stop offset="1" style="stop-color:#6A6A6A"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#414141" d="M61.49,62.254H5.092
c-1.241,0-2.333-1.09-2.333-2.332V34.599c0-1.24,1.092-2.332,2.333-2.332H61.49V6.046c0-2.5,1.994-3.4,3.872-1.754l47.475,41.717
c1.101,0.969,1.101,2.537,0,3.503L65.362,91.229c-1.878,1.65-3.872,0.748-3.872-1.75V62.254z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="2.7588" y1="47.7617" x2="113.6621" y2="47.7617">
<stop offset="0" style="stop-color:#BEBEBE"/>
<stop offset="1" style="stop-color:#6A6A6A"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#414141" d="M61.49,62.254H5.092
c-1.241,0-2.333-1.09-2.333-2.332V34.599c0-1.24,1.092-2.332,2.333-2.332H61.49V6.046c0-2.5,1.994-3.4,3.872-1.754l47.475,41.717
c1.101,0.969,1.101,2.537,0,3.503L65.362,91.229c-1.878,1.65-3.872,0.748-3.872-1.75V62.254z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="118.344px" height="94.854px" viewBox="0 0 118.344 94.854" enable-background="new 0 0 118.344 94.854"
xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M57.918,34.128h56.24c1.236,0,2.324,1.086,2.324,2.325v25.252
c0,1.235-1.088,2.325-2.324,2.325h-56.24v26.147c0,2.49-1.988,3.391-3.86,1.745L6.717,50.326c-1.097-0.963-1.097-2.529,0-3.494
l47.34-41.599c1.872-1.643,3.86-0.745,3.86,1.748V34.128z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M57.918,34.128h56.24c1.236,0,2.324,1.086,2.324,2.325v25.252
c0,1.235-1.088,2.325-2.324,2.325h-56.24v26.147c0,2.49-1.988,3.391-3.86,1.745L6.717,50.326c-1.097-0.963-1.097-2.529,0-3.494
l47.34-41.599c1.872-1.643,3.86-0.745,3.86,1.748V34.128z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="2.4966" y1="47.7617" x2="113.3994" y2="47.7617">
<stop offset="0" style="stop-color:#BEBEBE"/>
<stop offset="1" style="stop-color:#6A6A6A"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#414141" d="M54.668,33.269h56.4
c1.24,0,2.331,1.09,2.331,2.332v25.324c0,1.24-1.091,2.332-2.331,2.332h-56.4v26.223c0,2.498-1.994,3.4-3.871,1.75L3.322,49.512
c-1.1-0.964-1.1-2.535,0-3.503L50.797,4.292c1.877-1.646,3.871-0.746,3.871,1.754V33.269z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="2.4966" y1="47.7617" x2="113.3994" y2="47.7617">
<stop offset="0" style="stop-color:#BEBEBE"/>
<stop offset="1" style="stop-color:#6A6A6A"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#414141" d="M54.668,33.269h56.4
c1.24,0,2.331,1.09,2.331,2.332v25.324c0,1.24-1.091,2.332-2.331,2.332h-56.4v26.223c0,2.498-1.994,3.4-3.871,1.75L3.322,49.512
c-1.1-0.964-1.1-2.535,0-3.503L50.797,4.292c1.877-1.646,3.871-0.746,3.871,1.754V33.269z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="96.402px" height="118.167px" viewBox="0 0 96.402 118.167" enable-background="new 0 0 96.402 118.167"
xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M64.151,56.98v56.241c0,1.236-1.089,2.326-2.326,2.326H36.573
c-1.238,0-2.326-1.09-2.326-2.326V56.98H8.101c-2.491,0-3.393-1.989-1.746-3.859L47.951,5.78c0.964-1.099,2.529-1.099,3.493,0
l41.599,47.341c1.644,1.87,0.745,3.859-1.748,3.859H64.151z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M64.151,56.98v56.241c0,1.236-1.089,2.326-2.326,2.326H36.573
c-1.238,0-2.326-1.09-2.326-2.326V56.98H8.101c-2.491,0-3.393-1.989-1.746-3.859L47.951,5.78c0.964-1.099,2.529-1.099,3.493,0
l41.599,47.341c1.644,1.87,0.745,3.859-1.748,3.859H64.151z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="3.1616" y1="59.4341" x2="91.7666" y2="59.4341">
<stop offset="0" style="stop-color:#BEBEBE"/>
<stop offset="1" style="stop-color:#6A6A6A"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#414141" d="M61.958,56.153v56.401
c0,1.24-1.092,2.332-2.332,2.332H34.302c-1.242,0-2.332-1.092-2.332-2.332V56.153H5.749c-2.498,0-3.402-1.994-1.752-3.869
L45.712,4.808c0.967-1.102,2.537-1.102,3.504,0l41.717,47.477c1.648,1.875,0.746,3.869-1.754,3.869H61.958z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="3.1616" y1="59.4341" x2="91.7666" y2="59.4341">
<stop offset="0" style="stop-color:#BEBEBE"/>
<stop offset="1" style="stop-color:#6A6A6A"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#414141" d="M61.958,56.153v56.401
c0,1.24-1.092,2.332-2.332,2.332H34.302c-1.242,0-2.332-1.092-2.332-2.332V56.153H5.749c-2.498,0-3.402-1.994-1.752-3.869
L45.712,4.808c0.967-1.102,2.537-1.102,3.504,0l41.717,47.477c1.648,1.875,0.746,3.869-1.754,3.869H61.958z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="96.661px" height="119.096px" viewBox="0 0 96.661 119.096" enable-background="new 0 0 96.661 119.096"
xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M36.043,64.812V8.574c0-1.237,1.086-2.325,2.325-2.325h25.252
c1.236,0,2.326,1.088,2.326,2.325v56.238h26.146c2.491,0,3.392,1.99,1.746,3.861l-41.596,47.34c-0.965,1.099-2.531,1.099-3.496,0
L7.151,68.674c-1.645-1.871-0.745-3.861,1.746-3.861H36.043z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M36.043,64.812V8.574c0-1.237,1.086-2.325,2.325-2.325h25.252
c1.236,0,2.326,1.088,2.326,2.325v56.238h26.146c2.491,0,3.392,1.99,1.746,3.861l-41.596,47.34c-0.965,1.099-2.531,1.099-3.496,0
L7.151,68.674c-1.645-1.871-0.745-3.861,1.746-3.861H36.043z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="2.6235" y1="58.9136" x2="90.978" y2="58.9136">
<stop offset="0" style="stop-color:#FF897A"/>
<stop offset="1" style="stop-color:#FF3400"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#6F0000" d="M32.349,62.183V5.944
c0-1.237,1.086-2.325,2.324-2.325h25.252c1.236,0,2.326,1.088,2.326,2.325v56.238h26.146c2.492,0,3.393,1.99,1.746,3.861
l-41.596,47.34c-0.965,1.099-2.531,1.099-3.496,0L3.457,66.044c-1.645-1.871-0.746-3.861,1.746-3.861H32.349z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="2.6235" y1="58.9136" x2="90.978" y2="58.9136">
<stop offset="0" style="stop-color:#FF897A"/>
<stop offset="1" style="stop-color:#FF3400"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#6F0000" d="M32.349,62.183V5.944
c0-1.237,1.086-2.325,2.324-2.325h25.252c1.236,0,2.326,1.088,2.326,2.325v56.238h26.146c2.492,0,3.393,1.99,1.746,3.861
l-41.596,47.34c-0.965,1.099-2.531,1.099-3.496,0L3.457,66.044c-1.645-1.871-0.746-3.861,1.746-3.861H32.349z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="119.268px" height="96.873px" viewBox="0 0 119.268 96.873" enable-background="new 0 0 119.268 96.873"
xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M65.069,64.885H8.831c-1.238,0-2.326-1.088-2.326-2.326V37.307
c0-1.237,1.088-2.325,2.326-2.325h56.238V8.834c0-2.493,1.988-3.391,3.861-1.748l47.34,41.599c1.098,0.965,1.098,2.529,0,3.494
L68.93,93.776c-1.873,1.646-3.861,0.745-3.861-1.745V64.885z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M65.069,64.885H8.831c-1.238,0-2.326-1.088-2.326-2.326V37.307
c0-1.237,1.088-2.325,2.326-2.325h56.238V8.834c0-2.493,1.988-3.391,3.861-1.748l47.34,41.599c1.098,0.965,1.098,2.529,0,3.494
L68.93,93.776c-1.873,1.646-3.861,0.745-3.861-1.745V64.885z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="2.8101" y1="47.8018" x2="113.3979" y2="47.8018">
<stop offset="0" style="stop-color:#FF897A"/>
<stop offset="1" style="stop-color:#FF3400"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#6F0000" d="M61.375,62.255H5.136
c-1.238,0-2.326-1.088-2.326-2.326V34.677c0-1.237,1.088-2.325,2.326-2.325h56.239V6.204c0-2.493,1.988-3.391,3.86-1.748
l47.34,41.599c1.098,0.965,1.098,2.529,0,3.494l-47.34,41.598c-1.872,1.646-3.86,0.745-3.86-1.745V62.255z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="2.8101" y1="47.8018" x2="113.3979" y2="47.8018">
<stop offset="0" style="stop-color:#FF897A"/>
<stop offset="1" style="stop-color:#FF3400"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#6F0000" d="M61.375,62.255H5.136
c-1.238,0-2.326-1.088-2.326-2.326V34.677c0-1.237,1.088-2.325,2.326-2.325h56.239V6.204c0-2.493,1.988-3.391,3.86-1.748
l47.34,41.599c1.098,0.965,1.098,2.529,0,3.494l-47.34,41.598c-1.872,1.646-3.86,0.745-3.86-1.745V62.255z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="119.268px" height="96.873px" viewBox="0 0 119.268 96.873" enable-background="new 0 0 119.268 96.873"
xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M58.528,35.98h56.241c1.236,0,2.324,1.086,2.324,2.325v25.253
c0,1.235-1.088,2.325-2.324,2.325H58.528v26.147c0,2.49-1.988,3.391-3.86,1.745L7.328,52.179c-1.097-0.963-1.097-2.529,0-3.494
l47.34-41.599c1.872-1.643,3.86-0.745,3.86,1.748V35.98z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M58.528,35.98h56.241c1.236,0,2.324,1.086,2.324,2.325v25.253
c0,1.235-1.088,2.325-2.324,2.325H58.528v26.147c0,2.49-1.988,3.391-3.86,1.745L7.328,52.179c-1.097-0.963-1.097-2.529,0-3.494
l47.34-41.599c1.872-1.643,3.86-0.745,3.86,1.748V35.98z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="2.8105" y1="47.8018" x2="113.3989" y2="47.8018">
<stop offset="0" style="stop-color:#FF897A"/>
<stop offset="1" style="stop-color:#FF3400"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#6F0000" d="M54.833,33.351h56.241
c1.237,0,2.325,1.086,2.325,2.325v25.253c0,1.235-1.088,2.325-2.325,2.325H54.833v26.147c0,2.49-1.988,3.391-3.859,1.745
L3.633,49.549c-1.097-0.963-1.097-2.529,0-3.494L50.974,4.456c1.871-1.643,3.859-0.745,3.859,1.748V33.351z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="2.8105" y1="47.8018" x2="113.3989" y2="47.8018">
<stop offset="0" style="stop-color:#FF897A"/>
<stop offset="1" style="stop-color:#FF3400"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#6F0000" d="M54.833,33.351h56.241
c1.237,0,2.325,1.086,2.325,2.325v25.253c0,1.235-1.088,2.325-2.325,2.325H54.833v26.147c0,2.49-1.988,3.391-3.859,1.745
L3.633,49.549c-1.097-0.963-1.097-2.529,0-3.494L50.974,4.456c1.871-1.643,3.859-0.745,3.859,1.748V33.351z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="96.661px" height="119.096px" viewBox="0 0 96.661 119.096" enable-background="new 0 0 96.661 119.096"
xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M64.949,58.272v56.24c0,1.236-1.089,2.326-2.326,2.326H37.371
c-1.238,0-2.326-1.09-2.326-2.326v-56.24H8.898c-2.491,0-3.393-1.989-1.746-3.859L48.749,7.072c0.964-1.099,2.529-1.099,3.493,0
L93.84,54.413c1.644,1.87,0.745,3.859-1.748,3.859H64.949z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M64.949,58.272v56.24c0,1.236-1.089,2.326-2.326,2.326H37.371
c-1.238,0-2.326-1.09-2.326-2.326v-56.24H8.898c-2.491,0-3.393-1.989-1.746-3.859L48.749,7.072c0.964-1.099,2.529-1.099,3.493,0
L93.84,54.413c1.644,1.87,0.745,3.859-1.748,3.859H64.949z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="2.623" y1="58.9136" x2="90.978" y2="58.9136">
<stop offset="0" style="stop-color:#FF897A"/>
<stop offset="1" style="stop-color:#FF3400"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#6F0000" d="M61.253,55.643v56.24
c0,1.236-1.088,2.326-2.326,2.326H33.675c-1.238,0-2.326-1.09-2.326-2.326v-56.24H5.203c-2.49,0-3.393-1.989-1.746-3.859
L45.054,4.442c0.963-1.099,2.529-1.099,3.492,0l41.6,47.341c1.643,1.87,0.744,3.859-1.748,3.859H61.253z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="2.623" y1="58.9136" x2="90.978" y2="58.9136">
<stop offset="0" style="stop-color:#FF897A"/>
<stop offset="1" style="stop-color:#FF3400"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#6F0000" d="M61.253,55.643v56.24
c0,1.236-1.088,2.326-2.326,2.326H33.675c-1.238,0-2.326-1.09-2.326-2.326v-56.24H5.203c-2.49,0-3.393-1.989-1.746-3.859
L45.054,4.442c0.963-1.099,2.529-1.099,3.492,0l41.6,47.341c1.643,1.87,0.744,3.859-1.748,3.859H61.253z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="97.774px" height="116.878px" viewBox="0 0 97.774 116.878" enable-background="new 0 0 97.774 116.878"
xml:space="preserve">
<g>
<path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#595959" d="M34.752,61.478V5.239
c0-1.237,1.086-2.325,2.325-2.325H62.33c1.236,0,2.326,1.088,2.326,2.325v56.239h26.146c2.491,0,3.392,1.99,1.746,3.861
l-41.596,47.34c-0.965,1.098-2.531,1.098-3.496,0L5.86,65.339c-1.645-1.871-0.745-3.861,1.746-3.861H34.752z"/>
<path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#595959" d="M34.752,61.478V5.239
c0-1.237,1.086-2.325,2.325-2.325H62.33c1.236,0,2.326,1.088,2.326,2.325v56.239h26.146c2.491,0,3.392,1.99,1.746,3.861
l-41.596,47.34c-0.965,1.098-2.531,1.098-3.496,0L5.86,65.339c-1.645-1.871-0.745-3.861,1.746-3.861H34.752z"/>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="116.463px" height="93.249px" viewBox="0 0 116.463 93.249" enable-background="new 0 0 116.463 93.249"
xml:space="preserve">
<g>
<path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#595959" d="M61.819,60.847H5.581
c-1.238,0-2.326-1.088-2.326-2.326V33.268c0-1.237,1.088-2.325,2.326-2.325h56.238V4.795c0-2.493,1.988-3.391,3.861-1.748
l47.34,41.599c1.098,0.965,1.098,2.529,0,3.495L65.68,89.738c-1.873,1.646-3.861,0.745-3.861-1.745V60.847z"/>
<path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#595959" d="M61.819,60.847H5.581
c-1.238,0-2.326-1.088-2.326-2.326V33.268c0-1.237,1.088-2.325,2.326-2.325h56.238V4.795c0-2.493,1.988-3.391,3.861-1.748
l47.34,41.599c1.098,0.965,1.098,2.529,0,3.495L65.68,89.738c-1.873,1.646-3.861,0.745-3.861-1.745V60.847z"/>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="116.463px" height="93.249px" viewBox="0 0 116.463 93.249" enable-background="new 0 0 116.463 93.249"
xml:space="preserve">
<g>
<path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#595959" d="M55.279,31.942h56.24
c1.236,0,2.324,1.086,2.324,2.325v25.253c0,1.235-1.088,2.325-2.324,2.325h-56.24v26.147c0,2.49-1.988,3.391-3.86,1.745
L4.078,48.141c-1.097-0.963-1.097-2.53,0-3.495l47.34-41.599c1.872-1.643,3.86-0.745,3.86,1.748V31.942z"/>
<path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#595959" d="M55.279,31.942h56.24
c1.236,0,2.324,1.086,2.324,2.325v25.253c0,1.235-1.088,2.325-2.324,2.325h-56.24v26.147c0,2.49-1.988,3.391-3.86,1.745
L4.078,48.141c-1.097-0.963-1.097-2.53,0-3.495l47.34-41.599c1.872-1.643,3.86-0.745,3.86,1.748V31.942z"/>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="97.774px" height="116.878px" viewBox="0 0 97.774 116.878" enable-background="new 0 0 97.774 116.878"
xml:space="preserve">
<g>
<path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#595959" d="M63.658,54.937v56.24
c0,1.236-1.089,2.326-2.326,2.326H36.08c-1.238,0-2.326-1.09-2.326-2.326v-56.24H7.607c-2.491,0-3.393-1.989-1.746-3.859
L47.458,3.737c0.964-1.099,2.529-1.099,3.493,0l41.599,47.341c1.644,1.87,0.745,3.859-1.748,3.859H63.658z"/>
<path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#595959" d="M63.658,54.937v56.24
c0,1.236-1.089,2.326-2.326,2.326H36.08c-1.238,0-2.326-1.09-2.326-2.326v-56.24H7.607c-2.491,0-3.393-1.989-1.746-3.859
L47.458,3.737c0.964-1.099,2.529-1.099,3.493,0l41.599,47.341c1.644,1.87,0.745,3.859-1.748,3.859H63.658z"/>
</g>
</svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.0"
id="Layer_1"
x="0px"
y="0px"
width="128.846px"
height="122.544px"
viewBox="0 0 128.846 122.544"
enable-background="new 0 0 128.846 122.544"
xml:space="preserve"
sodipodi:version="0.32"
inkscape:version="0.46"
sodipodi:docname="red_star_rnd.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"><metadata
id="metadata8407"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs8405"><inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 61.271999 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="128.84599 : 61.271999 : 1"
inkscape:persp3d-origin="64.422997 : 40.848 : 1"
id="perspective8409" />
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_1_"
id="linearGradient8932"
gradientUnits="userSpaceOnUse"
x1="2.4384999"
y1="60.637699"
x2="123.3472"
y2="60.637699" /><linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient8934"
gradientUnits="userSpaceOnUse"
x1="2.4384999"
y1="60.637699"
x2="123.3472"
y2="60.637699" />
<linearGradient
id="SVGID_1_"
gradientUnits="userSpaceOnUse"
x1="2.4384999"
y1="60.637699"
x2="123.3472"
y2="60.637699">
<stop
offset="0"
style="stop-color:#FF897A"
id="stop8391" />
<stop
offset="1"
style="stop-color:#FF3400"
id="stop8393" />
</linearGradient>
<linearGradient
id="SVGID_2_"
gradientUnits="userSpaceOnUse"
x1="2.4384999"
y1="60.637699"
x2="123.3472"
y2="60.637699">
<stop
offset="0"
style="stop-color:#FF897A"
id="stop8398" />
<stop
offset="1"
style="stop-color:#FF3400"
id="stop8400" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient8943"
gradientUnits="userSpaceOnUse"
x1="2.4384999"
y1="60.637699"
x2="123.3472"
y2="60.637699" /><linearGradient
inkscape:collect="always"
xlink:href="#SVGID_1_"
id="linearGradient8946"
gradientUnits="userSpaceOnUse"
x1="2.4384999"
y1="60.637699"
x2="123.3472"
y2="60.637699" />
</defs><sodipodi:namedview
inkscape:window-height="970"
inkscape:window-width="1680"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
guidetolerance="10.0"
gridtolerance="10.0"
objecttolerance="10.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
showgrid="false"
inkscape:zoom="3.9496018"
inkscape:cx="14.797741"
inkscape:cy="61.271999"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:current-layer="Layer_1" />
<g
id="g8950">
<path
style="opacity:0.25;fill-rule:evenodd"
id="path8384"
d="M 66.588,97.681 L 36.828,119.302 C 31.108,123.457 25.637,119.483 27.819,112.756 L 39.187,77.774 L 9.43,56.153 C 3.71,51.996 5.799,45.565 12.87,45.563 L 49.653,45.562 L 61.02,10.582 C 63.205,3.855 69.967,3.855 72.154,10.582 L 83.522,45.562 L 120.303,45.563 C 127.374,45.565 129.465,51.996 123.744,56.153 L 93.989,77.774 L 105.352,112.756 C 107.539,119.483 102.066,123.457 96.345,119.302 L 66.588,97.681 z"
clip-rule="evenodd" /><path
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;fill-opacity:1;stroke-opacity:1"
id="path8395"
d="M 62.894,95.051 L 33.134,116.672 C 27.413,120.827 21.943,116.853 24.124,110.126 L 35.493,75.144 L 5.736,53.523 C 0.015,49.366 2.105,42.935 9.175,42.933 L 45.958,42.932 L 57.325,7.952 C 59.511,1.225 66.272,1.225 68.46,7.952 L 79.827,42.932 L 116.608,42.933 C 123.68,42.935 125.77,49.366 120.049,53.523 L 90.294,75.144 L 101.657,110.126 C 103.843,116.853 98.37,120.827 92.649,116.672 L 62.894,95.051 z"
clip-rule="evenodd" /></g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.0"
id="Layer_1"
x="0px"
y="0px"
width="128.846px"
height="122.544px"
viewBox="0 0 128.846 122.544"
enable-background="new 0 0 128.846 122.544"
xml:space="preserve"
sodipodi:version="0.32"
inkscape:version="0.46"
sodipodi:docname="red_star.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"><metadata
id="metadata7779"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs7777"><inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 61.271999 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="128.84599 : 61.271999 : 1"
inkscape:persp3d-origin="64.422997 : 40.848 : 1"
id="perspective7781" />
<linearGradient
inkscape:collect="always"
xlink:href="#SVGID_1_"
id="linearGradient8304"
gradientUnits="userSpaceOnUse"
x1="2.8438001"
y1="60.637699"
x2="122.9438"
y2="60.637699" /><linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient8306"
gradientUnits="userSpaceOnUse"
x1="2.8438001"
y1="60.637699"
x2="122.9438"
y2="60.637699" />
<linearGradient
id="SVGID_1_"
gradientUnits="userSpaceOnUse"
x1="2.8438001"
y1="60.637699"
x2="122.9438"
y2="60.637699">
<stop
offset="0"
style="stop-color:#FF897A"
id="stop7763" />
<stop
offset="1"
style="stop-color:#FF3400"
id="stop7765" />
</linearGradient>
<linearGradient
id="SVGID_2_"
gradientUnits="userSpaceOnUse"
x1="2.8438001"
y1="60.637699"
x2="122.9438"
y2="60.637699">
<stop
offset="0"
style="stop-color:#FF897A"
id="stop7770" />
<stop
offset="1"
style="stop-color:#FF3400"
id="stop7772" />
</linearGradient>
</defs><sodipodi:namedview
inkscape:window-height="970"
inkscape:window-width="1680"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
guidetolerance="10.0"
gridtolerance="10.0"
objecttolerance="10.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
showgrid="false"
inkscape:zoom="3.9496018"
inkscape:cx="14.797741"
inkscape:cy="61.271999"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:current-layer="Layer_1" />
<g
id="g8318">
<polygon
style="opacity:0.25;fill-rule:evenodd"
id="polygon7756"
points="103.702,120.378 66.588,93.416 29.475,120.378 43.65,76.75 6.538,49.786 52.411,49.784 66.588,6.157 80.766,49.784 126.637,49.786 89.526,76.75 103.702,120.378 "
clip-rule="evenodd" /><polygon
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-opacity:1;fill-opacity:1"
id="polygon7767"
points="100.006,117.749 62.895,90.786 25.779,117.749 39.955,74.121 2.844,47.156 48.717,47.154 62.895,3.527 77.071,47.154 122.944,47.156 85.831,74.121 100.006,117.749 "
clip-rule="evenodd" /></g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="129.314px" height="122.966px" viewBox="0 0 129.314 122.966" enable-background="new 0 0 129.314 122.966"
xml:space="preserve">
<g>
<g opacity="0.25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M66.77,97.773l-29.76,21.621c-5.72,4.155-11.191,0.181-9.009-6.546L39.37,77.866
L9.612,56.245c-5.72-4.157-3.631-10.588,3.44-10.59l36.783-0.001l11.367-34.98c2.185-6.727,8.947-6.727,11.134,0l11.368,34.98
l36.781,0.001c7.071,0.002,9.162,6.433,3.441,10.59L94.17,77.866l11.363,34.982c2.187,6.727-3.286,10.701-9.007,6.546
L66.77,97.773z"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M66.77,97.773l-29.76,21.621c-5.72,4.155-11.191,0.181-9.009-6.546L39.37,77.866
L9.612,56.245c-5.72-4.157-3.631-10.588,3.44-10.59l36.783-0.001l11.367-34.98c2.185-6.727,8.947-6.727,11.134,0l11.368,34.98
l36.781,0.001c7.071,0.002,9.162,6.433,3.441,10.59L94.17,77.866l11.363,34.982c2.187,6.727-3.286,10.701-9.007,6.546
L66.77,97.773z"/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="2.7236" y1="60.9683" x2="123.6333" y2="60.9683">
<stop offset="0" style="stop-color:#7CD4FF"/>
<stop offset="1" style="stop-color:#3777AE"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#194E6A" d="M63.178,95.382l-29.76,21.621
c-5.719,4.154-11.191,0.18-9.008-6.547l11.367-34.982L6.02,53.853c-5.719-4.156-3.631-10.588,3.441-10.59h36.783l11.367-34.98
c2.184-6.727,8.947-6.727,11.133,0l11.369,34.98h36.781c7.07,0.002,9.162,6.434,3.441,10.59L90.579,75.474l11.363,34.982
c2.188,6.727-3.285,10.701-9.006,6.547L63.178,95.382z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="2.7236" y1="60.9683" x2="123.6333" y2="60.9683">
<stop offset="0" style="stop-color:#7CD4FF"/>
<stop offset="1" style="stop-color:#3777AE"/>
</linearGradient>
<path fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#194E6A" d="M63.178,95.382l-29.76,21.621
c-5.719,4.154-11.191,0.18-9.008-6.547l11.367-34.982L6.02,53.853c-5.719-4.156-3.631-10.588,3.441-10.59h36.783l11.367-34.98
c2.184-6.727,8.947-6.727,11.133,0l11.369,34.98h36.781c7.07,0.002,9.162,6.434,3.441,10.59L90.579,75.474l11.363,34.982
c2.188,6.727-3.285,10.701-9.006,6.547L63.178,95.382z"/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="129.314px" height="122.966px" viewBox="0 0 129.314 122.966" enable-background="new 0 0 129.314 122.966"
xml:space="preserve">
<g>
<g opacity="0.25">
<polygon fill-rule="evenodd" clip-rule="evenodd" points="103.883,120.471 66.771,93.508 29.657,120.471 43.833,76.843
6.72,49.878 52.593,49.876 66.771,6.249 80.948,49.876 126.82,49.878 89.708,76.843 "/>
<polygon fill-rule="evenodd" clip-rule="evenodd" points="103.883,120.471 66.771,93.508 29.657,120.471 43.833,76.843
6.72,49.878 52.593,49.876 66.771,6.249 80.948,49.876 126.82,49.878 89.708,76.843 "/>
</g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="3.1284" y1="60.9678" x2="123.228" y2="60.9678">
<stop offset="0" style="stop-color:#7CD4FF"/>
<stop offset="1" style="stop-color:#3777AE"/>
</linearGradient>
<polygon fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_1_)" stroke="#194E6A" points="100.292,118.078 63.179,91.115
26.066,118.078 40.242,74.451 3.128,47.486 49.001,47.484 63.179,3.857 77.357,47.484 123.228,47.486 86.117,74.451 "/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="3.1284" y1="60.9678" x2="123.228" y2="60.9678">
<stop offset="0" style="stop-color:#7CD4FF"/>
<stop offset="1" style="stop-color:#3777AE"/>
</linearGradient>
<polygon fill-rule="evenodd" clip-rule="evenodd" fill="url(#SVGID_2_)" stroke="#194E6A" points="100.292,118.078 63.179,91.115
26.066,118.078 40.242,74.451 3.128,47.486 49.001,47.484 63.179,3.857 77.357,47.484 123.228,47.486 86.117,74.451 "/>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="125.75px" height="122.047px" viewBox="0 0 125.75 122.047" enable-background="new 0 0 125.75 122.047"
xml:space="preserve">
<g>
<path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#595959" d="M63.193,95.206l-29.76,21.621
c-5.72,4.155-11.191,0.181-9.009-6.546l11.368-34.982L6.035,53.678c-5.72-4.157-3.631-10.588,3.44-10.59l36.783-0.001l11.367-34.98
c2.185-6.727,8.947-6.727,11.133,0l11.368,34.98l36.781,0.001c7.071,0.002,9.162,6.433,3.441,10.59L90.593,75.298l11.363,34.982
c2.187,6.727-3.286,10.701-9.007,6.546L63.193,95.206z"/>
<path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#595959" d="M63.193,95.206l-29.76,21.621
c-5.72,4.155-11.191,0.181-9.009-6.546l11.368-34.982L6.035,53.678c-5.72-4.157-3.631-10.588,3.44-10.59l36.783-0.001l11.367-34.98
c2.185-6.727,8.947-6.727,11.133,0l11.368,34.98l36.781,0.001c7.071,0.002,9.162,6.433,3.441,10.59L90.593,75.298l11.363,34.982
c2.187,6.727-3.286,10.701-9.007,6.546L63.193,95.206z"/>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="125.75px" height="122.047px" viewBox="0 0 125.75 122.047" enable-background="new 0 0 125.75 122.047"
xml:space="preserve">
<g>
<polygon fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#595959" points="100.306,117.904 63.194,90.941
26.08,117.904 40.255,74.275 3.143,47.311 49.016,47.309 63.194,3.682 77.371,47.309 123.243,47.311 86.13,74.275 "/>
<polygon fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#595959" points="100.306,117.904 63.194,90.941
26.08,117.904 40.255,74.275 3.143,47.311 49.016,47.309 63.194,3.682 77.371,47.309 123.243,47.311 86.13,74.275 "/>
</g>
</svg>
...@@ -52,6 +52,8 @@ static QString tIwb = "iwb"; ...@@ -52,6 +52,8 @@ static QString tIwb = "iwb";
static QString tMeta = "meta"; static QString tMeta = "meta";
static QString tPage = "page"; static QString tPage = "page";
static QString tPageset = "pageset"; static QString tPageset = "pageset";
static QString tG = "g";
static QString tSwitch = "switch";
static QString tPolygon = "polygon"; static QString tPolygon = "polygon";
static QString tPolyline = "polyline"; static QString tPolyline = "polyline";
static QString tRect = "rect"; static QString tRect = "rect";
...@@ -62,7 +64,7 @@ static QString tTspan = "tspan"; ...@@ -62,7 +64,7 @@ static QString tTspan = "tspan";
static QString tBreak = "tbreak"; static QString tBreak = "tbreak";
static QString tImage = "image"; static QString tImage = "image";
static QString tFlash = "flash"; static QString tFlash = "flash";
static QString tAudio = "audio"; static QString tAudio = "a";
static QString tVideo = "video"; static QString tVideo = "video";
//attribute names definition //attribute names definition
...@@ -161,6 +163,31 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parse() ...@@ -161,6 +163,31 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parse()
return result; return result;
} }
bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseGSection(const QDomElement &element)
{
QDomElement currentSvgElement = element.firstChildElement();
while (!currentSvgElement.isNull()) {
if (!parseSvgElement(currentSvgElement))
return false;
currentSvgElement = currentSvgElement.nextSiblingElement();
}
return true;
}
bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgSwitchSection(const QDomElement &element)
{
QDomElement currentSvgElement = element.firstChildElement();
while (!currentSvgElement.isNull()) {
if (parseSvgElement(currentSvgElement))
return true;
}
return false;
}
bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgRect(const QDomElement &element) bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgRect(const QDomElement &element)
{ {
qreal x1 = element.attribute(aX).toDouble(); qreal x1 = element.attribute(aX).toDouble();
...@@ -175,7 +202,12 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgRect(const QDomElement &elem ...@@ -175,7 +202,12 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgRect(const QDomElement &elem
QColor fillColor = !textFillColor.isNull() ? colorFromString(textFillColor) : QColor(); QColor fillColor = !textFillColor.isNull() ? colorFromString(textFillColor) : QColor();
QColor strokeColor = !textStrokeColor.isNull() ? colorFromString(textStrokeColor) : QColor(); QColor strokeColor = !textStrokeColor.isNull() ? colorFromString(textStrokeColor) : QColor();
int strokeWidth = !textStrokeWidth.isNull() ? textStrokeWidth.toInt() : 0; int strokeWidth = textStrokeWidth.toInt();
x1 -= strokeWidth/2;
y1 -= strokeWidth/2;
width += strokeWidth;
height += strokeWidth;
//init svg generator with temp file //init svg generator with temp file
QSvgGenerator *generator = createSvgGenerator(width, height); QSvgGenerator *generator = createSvgGenerator(width, height);
...@@ -204,13 +236,13 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgRect(const QDomElement &elem ...@@ -204,13 +236,13 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgRect(const QDomElement &elem
UBGraphicsSvgItem *svgItem = mCurrentScene->addSvg(QUrl::fromLocalFile(generator->fileName())); UBGraphicsSvgItem *svgItem = mCurrentScene->addSvg(QUrl::fromLocalFile(generator->fileName()));
QTransform transform; QTransform transform;
QString textTransform = element.attribute(aTransform); QString textTransform = element.attribute(aTransform);
bool hastransform = false;
svgItem->resetTransform();
if (!textTransform.isNull()) { if (!textTransform.isNull()) {
transform = transformFromString(textTransform); transform = transformFromString(textTransform, svgItem);
hastransform = true;
} }
repositionSvgItem(svgItem, width, height, x1, y1, hastransform, transform); repositionSvgItem(svgItem, width, height, x1, y1, transform);
hashSceneItem(element, svgItem); hashSceneItem(element, svgItem);
delete generator; delete generator;
...@@ -249,13 +281,14 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgEllipse(const QDomElement &e ...@@ -249,13 +281,14 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgEllipse(const QDomElement &e
UBGraphicsSvgItem *svgItem = mCurrentScene->addSvg(QUrl::fromLocalFile(generator->fileName())); UBGraphicsSvgItem *svgItem = mCurrentScene->addSvg(QUrl::fromLocalFile(generator->fileName()));
QTransform transform; QTransform transform;
QString textTransform = element.attribute(aTransform); QString textTransform = element.attribute(aTransform);
bool hastransform = false;
svgItem->resetTransform();
if (!textTransform.isNull()) { if (!textTransform.isNull()) {
transform = transformFromString(textTransform); transform = transformFromString(textTransform, svgItem);
hastransform = true;
} }
repositionSvgItem(svgItem, rx * 2, ry * 2, cx - rx , cy - ry, hastransform, transform);
repositionSvgItem(svgItem, rx * 2, ry * 2, cx - 2*rx, cy+ry, transform);
hashSceneItem(element, svgItem); hashSceneItem(element, svgItem);
delete generator; delete generator;
...@@ -306,7 +339,7 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgPolygon(const QDomElement &e ...@@ -306,7 +339,7 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgPolygon(const QDomElement &e
QColor strokeColor = !strokeColorText.isEmpty() ? colorFromString(strokeColorText) : QColor(); QColor strokeColor = !strokeColorText.isEmpty() ? colorFromString(strokeColorText) : QColor();
QColor fillColor = !fillColorText.isEmpty() ? colorFromString(fillColorText) : QColor(); QColor fillColor = !fillColorText.isEmpty() ? colorFromString(fillColorText) : QColor();
int strokeWidth = strokeWidthText.toInt() > 0 ? strokeWidthText.toInt() : 0; int strokeWidth = strokeWidthText.toDouble();
QPen pen; QPen pen;
pen.setColor(strokeColor); pen.setColor(strokeColor);
...@@ -332,12 +365,12 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgPolygon(const QDomElement &e ...@@ -332,12 +365,12 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgPolygon(const QDomElement &e
UBGraphicsSvgItem *svgItem = mCurrentScene->addSvg(QUrl::fromLocalFile(generator->fileName())); UBGraphicsSvgItem *svgItem = mCurrentScene->addSvg(QUrl::fromLocalFile(generator->fileName()));
QTransform transform; QTransform transform;
QString textTransform = element.attribute(aTransform); QString textTransform = element.attribute(aTransform);
bool hastransform = false;
svgItem->resetTransform();
if (!textTransform.isNull()) { if (!textTransform.isNull()) {
transform = transformFromString(textTransform); transform = transformFromString(textTransform, svgItem);
hastransform = true;
} }
repositionSvgItem(svgItem, width + 10, height + 10, x1 - 5, y1 - 5, hastransform, transform); repositionSvgItem(svgItem, width +strokeWidth, height + strokeWidth, x1 - strokeWidth/2 + transform.m31(), y1 + strokeWidth/2 + transform.m32(), transform);
hashSceneItem(element, svgItem); hashSceneItem(element, svgItem);
delete generator; delete generator;
...@@ -387,7 +420,10 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgPolyline(const QDomElement & ...@@ -387,7 +420,10 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgPolyline(const QDomElement &
QString strokeWidthText = element.attribute(aStrokewidth); QString strokeWidthText = element.attribute(aStrokewidth);
QColor strokeColor = !strokeColorText.isEmpty() ? colorFromString(strokeColorText) : QColor(); QColor strokeColor = !strokeColorText.isEmpty() ? colorFromString(strokeColorText) : QColor();
int strokeWidth = strokeWidthText.toInt() > 0 ? strokeWidthText.toInt() : 0; int strokeWidth = strokeWidthText.toDouble();
width += strokeWidth;
height += strokeWidth;
QPen pen; QPen pen;
pen.setColor(strokeColor); pen.setColor(strokeColor);
...@@ -398,7 +434,7 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgPolyline(const QDomElement & ...@@ -398,7 +434,7 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgPolyline(const QDomElement &
painter.begin(generator); //drawing to svg tmp file painter.begin(generator); //drawing to svg tmp file
painter.translate(pen.widthF() / 2 - x1, pen.widthF() / 2 - y1); painter.translate(pen.widthF()/2 - x1, pen.widthF()/2- y1);
painter.setPen(pen); painter.setPen(pen);
painter.drawPolyline(polygon); painter.drawPolyline(polygon);
...@@ -408,12 +444,12 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgPolyline(const QDomElement & ...@@ -408,12 +444,12 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgPolyline(const QDomElement &
UBGraphicsSvgItem *svgItem = mCurrentScene->addSvg(QUrl::fromLocalFile(generator->fileName())); UBGraphicsSvgItem *svgItem = mCurrentScene->addSvg(QUrl::fromLocalFile(generator->fileName()));
QTransform transform; QTransform transform;
QString textTransform = element.attribute(aTransform); QString textTransform = element.attribute(aTransform);
bool hastransform = false;
svgItem->resetTransform();
if (!textTransform.isNull()) { if (!textTransform.isNull()) {
transform = transformFromString(textTransform); transform = transformFromString(textTransform, svgItem);
hastransform = true;
} }
repositionSvgItem(svgItem, width + 10, height + 10, x1 - 5, y1 - 5, hastransform, transform); repositionSvgItem(svgItem, width +strokeWidth, height + strokeWidth, x1 + transform.m31() - strokeWidth/2, y1 + transform.m32() + strokeWidth/2, transform);
hashSceneItem(element, svgItem); hashSceneItem(element, svgItem);
delete generator; delete generator;
...@@ -537,7 +573,6 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgText(const QDomElement &elem ...@@ -537,7 +573,6 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgText(const QDomElement &elem
// remember if text area has transform // remember if text area has transform
// QString transformString; // QString transformString;
QTransform transform = fontTransform; QTransform transform = fontTransform;
bool hasTransform = !fontTransform.isIdentity();
QRectF lastDrawnTextBoundingRect; QRectF lastDrawnTextBoundingRect;
//parse text area tags //parse text area tags
...@@ -552,7 +587,8 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgText(const QDomElement &elem ...@@ -552,7 +587,8 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgText(const QDomElement &elem
//add resulting svg file to scene //add resulting svg file to scene
UBGraphicsSvgItem *svgItem = mCurrentScene->addSvg(QUrl::fromLocalFile(generator->fileName())); UBGraphicsSvgItem *svgItem = mCurrentScene->addSvg(QUrl::fromLocalFile(generator->fileName()));
repositionSvgItem(svgItem, width, height, x, y, hasTransform, transform); svgItem->resetTransform();
repositionSvgItem(svgItem, width, height, x + transform.m31(), y + transform.m32(), transform);
hashSceneItem(element, svgItem); hashSceneItem(element, svgItem);
delete generator; delete generator;
...@@ -659,10 +695,10 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgTextarea(const QDomElement & ...@@ -659,10 +695,10 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgTextarea(const QDomElement &
QTransform transform; QTransform transform;
QString textTransform = element.attribute(aTransform); QString textTransform = element.attribute(aTransform);
bool hastransform = false;
svgItem->resetTransform();
if (!textTransform.isNull()) { if (!textTransform.isNull()) {
transform = transformFromString(textTransform); transform = transformFromString(textTransform, svgItem);
hastransform = true;
} }
//by default all the textAreas are not editable //by default all the textAreas are not editable
...@@ -671,7 +707,7 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgTextarea(const QDomElement & ...@@ -671,7 +707,7 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgTextarea(const QDomElement &
curDelegate->setEditable(false); curDelegate->setEditable(false);
} }
repositionSvgItem(svgItem, width, height, x, y, hastransform, transform); repositionSvgItem(svgItem, width, height, x + transform.m31(), y + transform.m32(), transform);
hashSceneItem(element, svgItem); hashSceneItem(element, svgItem);
return true; return true;
...@@ -703,12 +739,12 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgImage(const QDomElement &ele ...@@ -703,12 +739,12 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgImage(const QDomElement &ele
UBGraphicsPixmapItem *pixItem = mCurrentScene->addPixmap(pix); UBGraphicsPixmapItem *pixItem = mCurrentScene->addPixmap(pix);
QTransform transform; QTransform transform;
QString textTransform = element.attribute(aTransform); QString textTransform = element.attribute(aTransform);
bool hastransform = false;
pixItem->resetTransform();
if (!textTransform.isNull()) { if (!textTransform.isNull()) {
transform = transformFromString(textTransform); transform = transformFromString(textTransform, pixItem);
hastransform = true;
} }
repositionSvgItem(pixItem, width, height, x, y, hastransform, transform); repositionSvgItem(pixItem, width, height, x + transform.m31(), y + transform.m32(), transform);
hashSceneItem(element, pixItem); hashSceneItem(element, pixItem);
return true; return true;
...@@ -745,10 +781,12 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgFlash(const QDomElement &ele ...@@ -745,10 +781,12 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgFlash(const QDomElement &ele
QTransform transform; QTransform transform;
QString textTransform = element.attribute(aTransform); QString textTransform = element.attribute(aTransform);
flashItem->resetTransform();
if (!textTransform.isNull()) { if (!textTransform.isNull()) {
transform = transformFromString(textTransform); transform = transformFromString(textTransform, flashItem);
} }
repositionSvgItem(flashItem, width, height, x, y, true, transform); repositionSvgItem(flashItem, width, height, x + transform.m31(), y + transform.m32(), transform);
hashSceneItem(element, flashItem); hashSceneItem(element, flashItem);
return true; return true;
...@@ -756,32 +794,42 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgFlash(const QDomElement &ele ...@@ -756,32 +794,42 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgFlash(const QDomElement &ele
bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgAudio(const QDomElement &element) bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgAudio(const QDomElement &element)
{ {
qreal x = element.attribute(aX).toDouble(); QDomElement parentOfAudio = element.firstChild().toElement();
qreal y = element.attribute(aY).toDouble();
qreal width = element.attribute(aWidth).toDouble(); qreal x = parentOfAudio.attribute(aX).toDouble();
qreal height = element.attribute(aHeight).toDouble(); qreal y = parentOfAudio.attribute(aY).toDouble();
QString itemRefPath = element.attribute(aHref); QString itemRefPath = element.attribute(aHref);
QUrl urlPath; QUrl concreteUrl;
if (!itemRefPath.isNull()) { if (!itemRefPath.isNull()) {
QString videoPath = pwdContent + "/" + itemRefPath; QString audioPath = pwdContent + "/" + itemRefPath;
if (!QFile::exists(videoPath)) { if (!QFile::exists(audioPath)) {
qDebug() << "can't load file" << pwdContent + "/" + itemRefPath << "maybe file corrupted"; qDebug() << "can't load file" << pwdContent + "/" + itemRefPath << "maybe file corrupted";
return false; return false;
} }
urlPath = QUrl::fromLocalFile(videoPath); concreteUrl = QUrl::fromLocalFile(audioPath);
} }
UBGraphicsAudioItem *audioItem = mCurrentScene->addAudio(urlPath, false); QUuid uuid = QUuid::createUuid();
#ifdef Q_WS_X11
concreteUrl = QUrl::fromLocalFile(mCurrentScene->document()->persistencePath() + "/" + UBPersistenceManager::persistenceManager()
->addAudioFileToDocument(mCurrentScene->document(), concreteUrl.toLocalFile(), uuid));
#else
concreteUrl = QUrl::fromLocalFile(UBPersistenceManager::persistenceManager()
->addAudioFileToDocument(mCurrentScene->document(), concreteUrl.toLocalFile(), uuid));
#endif
UBGraphicsAudioItem *audioItem = mCurrentScene->addAudio(concreteUrl, false);
QTransform transform; QTransform transform;
QString textTransform = element.attribute(aTransform); QString textTransform = parentOfAudio.attribute(aTransform);
bool hastransform = false;
audioItem->resetTransform();
if (!textTransform.isNull()) { if (!textTransform.isNull()) {
transform = transformFromString(textTransform); transform = transformFromString(textTransform, audioItem);
hastransform = true;
} }
repositionSvgItem(audioItem, width, height, x, y, hastransform, transform); repositionSvgItem(audioItem, audioItem->boundingRect().width(), audioItem->boundingRect().height(), x + transform.m31(), y + transform.m32(), transform);
hashSceneItem(element, audioItem); hashSceneItem(element, audioItem);
return true; return true;
...@@ -793,31 +841,38 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgVideo(const QDomElement &ele ...@@ -793,31 +841,38 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgVideo(const QDomElement &ele
if (parseSvgFlash(element)) return true; if (parseSvgFlash(element)) return true;
else return false; else return false;
} }
qreal x = element.attribute(aX).toDouble(); qreal x = element.attribute(aX).toDouble();
qreal y = element.attribute(aY).toDouble(); qreal y = element.attribute(aY).toDouble();
qreal width = element.attribute(aWidth).toDouble();
qreal height = element.attribute(aHeight).toDouble();
QUrl urlPath; QUrl concreteUrl;
if (!itemRefPath.isNull()) { if (!itemRefPath.isNull()) {
QString videoPath = pwdContent + "/" + itemRefPath; QString videoPath = pwdContent + "/" + itemRefPath;
if (!QFile::exists(videoPath)) { if (!QFile::exists(videoPath)) {
qDebug() << "can't load file" << pwdContent + "/" + itemRefPath << "maybe file corrupted"; qDebug() << "can't load file" << pwdContent + "/" + itemRefPath << "maybe file corrupted";
return false; return false;
} }
urlPath = QUrl::fromLocalFile(videoPath); concreteUrl = QUrl::fromLocalFile(videoPath);
} }
UBGraphicsVideoItem *videoItem = mCurrentScene->addVideo(urlPath, false); QUuid uuid = QUuid::createUuid();
#ifdef Q_WS_X11
concreteUrl = QUrl::fromLocalFile(mCurrentScene->document()->persistencePath() + "/" + UBPersistenceManager::persistenceManager()
->addVideoFileToDocument(mCurrentScene->document(), concreteUrl.toLocalFile(), uuid));
#else
concreteUrl = QUrl::fromLocalFile(UBPersistenceManager::persistenceManager()
->addVideoFileToDocument(mCurrentScene->document(), concreteUrl.toLocalFile(), uuid));
#endif
UBGraphicsVideoItem *videoItem = mCurrentScene->addVideo(concreteUrl, false);
QTransform transform; QTransform transform;
QString textTransform = element.attribute(aTransform); QString textTransform = element.attribute(aTransform);
bool hastransform = false;
videoItem->resetTransform();
if (!textTransform.isNull()) { if (!textTransform.isNull()) {
transform = transformFromString(textTransform); transform = transformFromString(textTransform, videoItem);
hastransform = true;
} }
repositionSvgItem(videoItem, width, height, x - 5, y - 5, hastransform, transform); repositionSvgItem(videoItem, videoItem->boundingRect().width(), videoItem->boundingRect().height(), x + transform.m31(), y + transform.m32(), transform);
hashSceneItem(element, videoItem); hashSceneItem(element, videoItem);
return true; return true;
...@@ -847,7 +902,9 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgElement(const QDomElement &p ...@@ -847,7 +902,9 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseSvgElement(const QDomElement &p
return false; return false;
} }
if (tagName == tRect && !parseSvgRect(parent)) return false; if (tagName == tG && !parseGSection(parent)) return false;
else if (tagName == tSwitch && !parseSvgSwitchSection(parent)) return false;
else if (tagName == tRect && !parseSvgRect(parent)) return false;
else if (tagName == tEllipse && !parseSvgEllipse(parent)) return false; else if (tagName == tEllipse && !parseSvgEllipse(parent)) return false;
else if (tagName == tPolygon && !parseSvgPolygon(parent)) return false; else if (tagName == tPolygon && !parseSvgPolygon(parent)) return false;
else if (tagName == tPolyline && !parseSvgPolyline(parent)) return false; else if (tagName == tPolyline && !parseSvgPolyline(parent)) return false;
...@@ -984,7 +1041,7 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseDoc() ...@@ -984,7 +1041,7 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::parseDoc()
void UBCFFSubsetAdaptor::UBCFFSubsetReader::repositionSvgItem(QGraphicsItem *item, qreal width, qreal height, void UBCFFSubsetAdaptor::UBCFFSubsetReader::repositionSvgItem(QGraphicsItem *item, qreal width, qreal height,
qreal x, qreal y, qreal x, qreal y,
bool useTransform, QTransform &transform) QTransform &transform)
{ {
//First using viebox coordinates, then translate them to scene coordinates //First using viebox coordinates, then translate them to scene coordinates
...@@ -996,29 +1053,32 @@ void UBCFFSubsetAdaptor::UBCFFSubsetReader::repositionSvgItem(QGraphicsItem *ite ...@@ -996,29 +1053,32 @@ void UBCFFSubsetAdaptor::UBCFFSubsetReader::repositionSvgItem(QGraphicsItem *ite
qreal fullScaleX = mVBTransFactor * xScale; qreal fullScaleX = mVBTransFactor * xScale;
qreal fullScaleY = mVBTransFactor * yScale; qreal fullScaleY = mVBTransFactor * yScale;
if (useTransform) { //if rotation or translation specified
QPointF oldVector((x - transform.dx()), (y - transform.dy())); QPointF oldVector((x - transform.dx()), (y - transform.dy()));
QTransform rTransform(transform.m11(), transform.m12(), transform.m21(), transform.m22(), 0, 0); QTransform rTransform;
QPointF newVector = rTransform.map(oldVector); QPointF newVector = rTransform.map(oldVector);
item->setTransform(rTransform.scale(fullScaleX, fullScaleY)); QRectF sr = mCurrentScene->sceneRect();
item->setPos((x - mViewBoxCenter.x() + (newVector - oldVector).x()) * mVBTransFactor, QRectF sr1 = mCurrentSceneRect;
(y - mViewBoxCenter.y() + (newVector - oldVector).y()) * mVBTransFactor); QRectF sr2 = mCurrentScene->normalizedSceneRect();
} else { //item is't rotated or translated
item->setTransform(QTransform(fullScaleX, 0, 0, fullScaleY, 0, 0)); QTransform tr = item->sceneTransform();
itemBounds = item->boundingRect(); item->setTransform(rTransform.scale(fullScaleX, fullScaleY), true);
item->setPos((int)((x - mViewBoxCenter.x()) * mVBTransFactor), tr = item->sceneTransform();
(int)((y - mViewBoxCenter.y()) * mVBTransFactor)); QPoint pos ((int)((x + mShiftVector.x() + (newVector - oldVector).x()) * mVBTransFactor), (int)((y +mShiftVector.y() + (newVector - oldVector).y()) * mVBTransFactor));
} item->setPos(pos);
} }
bool UBCFFSubsetAdaptor::UBCFFSubsetReader::createNewScene() bool UBCFFSubsetAdaptor::UBCFFSubsetReader::createNewScene()
{ {
mCurrentScene = UBPersistenceManager::persistenceManager()->createDocumentSceneAt(mProxy, mProxy->pageCount()); mCurrentScene = UBPersistenceManager::persistenceManager()->createDocumentSceneAt(mProxy, mProxy->pageCount());
mCurrentScene->setURStackEnable(false); mCurrentScene->setURStackEnable(false);
mCurrentSceneRect = mCurrentScene->normalizedSceneRect(); mCurrentScene->setSceneRect(mViewBox);
mVBTransFactor = qMin(mCurrentSceneRect.width() / mViewPort.width(), if ((mCurrentScene->sceneRect().topLeft().x() >= 0) || (mCurrentScene->sceneRect().topLeft().y() >= 0)) {
mCurrentSceneRect.height() / mViewPort.height()); mShiftVector = -mViewBox.center();
}
mCurrentSceneRect = mViewBox;
mVBTransFactor = qMin(mCurrentScene->normalizedSceneRect().width() / mViewPort.width(),
mCurrentScene->normalizedSceneRect().height() / mViewPort.height());
return true; return true;
} }
...@@ -1046,6 +1106,7 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::persistScenes() ...@@ -1046,6 +1106,7 @@ bool UBCFFSubsetAdaptor::UBCFFSubsetReader::persistScenes()
qDebug() << "can't allocate scene, loading failed"; qDebug() << "can't allocate scene, loading failed";
return false; return false;
} }
UBSvgSubsetAdaptor::persistScene(mProxy, mCurrentScene, i); UBSvgSubsetAdaptor::persistScene(mProxy, mCurrentScene, i);
UBGraphicsScene *tmpScene = UBSvgSubsetAdaptor::loadScene(mProxy, i); UBGraphicsScene *tmpScene = UBSvgSubsetAdaptor::loadScene(mProxy, i);
tmpScene->setModified(true); tmpScene->setModified(true);
...@@ -1085,45 +1146,63 @@ QColor UBCFFSubsetAdaptor::UBCFFSubsetReader::colorFromString(const QString& clr ...@@ -1085,45 +1146,63 @@ QColor UBCFFSubsetAdaptor::UBCFFSubsetReader::colorFromString(const QString& clr
return QColor(clrString); return QColor(clrString);
} }
QTransform UBCFFSubsetAdaptor::UBCFFSubsetReader::transformFromString(const QString trString) QTransform UBCFFSubsetAdaptor::UBCFFSubsetReader::transformFromString(const QString trString, QGraphicsItem *item)
{ {
qreal dxr = 0.0;
qreal dyr = 0.0;
qreal dx = 0.0; qreal dx = 0.0;
qreal dy = 0.0; qreal dy = 0.0;
qreal angle = 0.0; qreal angle = 0.0;
QTransform tr;
foreach(QString trStr, trString.split(" ", QString::SkipEmptyParts))
{
//check pattern for strings like 'rotate(10)' //check pattern for strings like 'rotate(10)'
QRegExp regexp("rotate\\( *([-+]{0,1}[0-9]*\\.{0,1}[0-9]*) *\\)"); QRegExp regexp("rotate\\( *([-+]{0,1}[0-9]*\\.{0,1}[0-9]*) *\\)");
if (regexp.exactMatch(trString)) { if (regexp.exactMatch(trStr)) {
angle = regexp.capturedTexts().at(1).toDouble(); angle = regexp.capturedTexts().at(1).toDouble();
} else { if (item)
{
item->setTransformOriginPoint(QPointF(0, 0));
item->rotate(angle);
}
continue;
};
//check pattern for strings like 'rotate(10,20,20)' or 'rotate(10.1,10.2,34.2)' //check pattern for strings like 'rotate(10,20,20)' or 'rotate(10.1,10.2,34.2)'
regexp.setPattern("rotate\\( *([-+]{0,1}[0-9]*\\.{0,1}[0-9]*) *, *([-+]{0,1}[0-9]*\\.{0,1}[0-9]*) *, *([-+]{0,1}[0-9]*\\.{0,1}[0-9]*) *\\)"); regexp.setPattern("rotate\\( *([-+]{0,1}[0-9]*\\.{0,1}[0-9]*) *, *([-+]{0,1}[0-9]*\\.{0,1}[0-9]*) *, *([-+]{0,1}[0-9]*\\.{0,1}[0-9]*) *\\)");
if (regexp.exactMatch(trString)) { if (regexp.exactMatch(trStr)) {
angle = regexp.capturedTexts().at(1).toDouble(); angle = regexp.capturedTexts().at(1).toDouble();
dx = regexp.capturedTexts().at(2).toDouble(); dxr = regexp.capturedTexts().at(2).toDouble();
dy = regexp.capturedTexts().at(3).toDouble(); dyr = regexp.capturedTexts().at(3).toDouble();
if (item)
{
item->setTransformOriginPoint(QPointF(dxr, dyr)-item->pos());
item->rotate(angle);
} }
continue;
} }
//check pattern for strings like 'translate(11.0, 12.34)' //check pattern for strings like 'translate(11.0, 12.34)'
regexp.setPattern("translate\\( *([-+]{0,1}[0-9]*\\.{0,1}[0-9]*) *,*([-+]{0,1}[0-9]*\\.{0,1}[0-9]*)*\\)"); regexp.setPattern("translate\\( *([-+]{0,1}[0-9]*\\.{0,1}[0-9]*) *,*([-+]{0,1}[0-9]*\\.{0,1}[0-9]*)*\\)");
if (regexp.exactMatch(trString)) { if (regexp.exactMatch(trStr)) {
dx = regexp.capturedTexts().at(1).toDouble(); dx = regexp.capturedTexts().at(1).toDouble();
dy = regexp.capturedTexts().at(2).toDouble(); dy = regexp.capturedTexts().at(2).toDouble();
tr.translate(dx,dy);
continue;
} }
}
return QTransform().translate(dx, dy).rotate(angle); return tr;
} }
bool UBCFFSubsetAdaptor::UBCFFSubsetReader::getViewBoxDimenstions(const QString& viewBox) bool UBCFFSubsetAdaptor::UBCFFSubsetReader::getViewBoxDimenstions(const QString& viewBox)
{ {
//check pattern for strings like 'rotate(10)' QStringList capturedTexts = viewBox.split(" ", QString::SkipEmptyParts);
QRegExp regexp("([0-9]+) ([0-9]+) ([0-9]+) ([0-9]+)"); if (capturedTexts.count())
if (regexp.exactMatch(viewBox))
{ {
int capturesCount = regexp.capturedTexts().count(); if (4 == capturedTexts.count())
if (capturesCount == 5 && regexp.capturedTexts().at(0).length() == viewBox.length())
{ {
mViewBox = QRectF(0, 0, regexp.capturedTexts().at(3).toDouble(), regexp.capturedTexts().at(4).toDouble()); mViewBox = QRectF(capturedTexts.at(0).toDouble(), capturedTexts.at(1).toDouble(), capturedTexts.at(2).toDouble(), capturedTexts.at(3).toDouble());
mViewPort = mViewBox; mViewPort = mViewBox;
mViewPort.translate(- mViewPort.center()); mViewPort.translate(- mViewPort.center());
mViewBoxCenter.setX(mViewBox.width() / 2); mViewBoxCenter.setX(mViewBox.width() / 2);
......
...@@ -65,6 +65,7 @@ private: ...@@ -65,6 +65,7 @@ private:
qreal mVBTransFactor; qreal mVBTransFactor;
QPointF mViewBoxCenter; QPointF mViewBoxCenter;
QSize mSize; QSize mSize;
QPointF mShiftVector;
private: private:
QDomDocument mDOMdoc; QDomDocument mDOMdoc;
...@@ -85,6 +86,8 @@ private: ...@@ -85,6 +86,8 @@ private:
bool parseIwbMeta(const QDomElement &element); bool parseIwbMeta(const QDomElement &element);
bool parseSvg(const QDomElement &svgSection); bool parseSvg(const QDomElement &svgSection);
inline bool parseGSection(const QDomElement &element);
inline bool parseSvgSwitchSection(const QDomElement &element);
inline bool parseSvgRect(const QDomElement &element); inline bool parseSvgRect(const QDomElement &element);
inline bool parseSvgEllipse(const QDomElement &element); inline bool parseSvgEllipse(const QDomElement &element);
inline bool parseSvgPolygon(const QDomElement &element); inline bool parseSvgPolygon(const QDomElement &element);
...@@ -123,9 +126,9 @@ private: ...@@ -123,9 +126,9 @@ private:
// helper methods // helper methods
void repositionSvgItem(QGraphicsItem *item, qreal width, qreal height, void repositionSvgItem(QGraphicsItem *item, qreal width, qreal height,
qreal x, qreal y, qreal x, qreal y,
bool useTransform, QTransform &transform); QTransform &transform);
QColor colorFromString(const QString& clrString); QColor colorFromString(const QString& clrString);
QTransform transformFromString(const QString trString); QTransform transformFromString(const QString trString, QGraphicsItem *item = 0);
bool getViewBoxDimenstions(const QString& viewBox); bool getViewBoxDimenstions(const QString& viewBox);
QSvgGenerator* createSvgGenerator(qreal width, qreal height); QSvgGenerator* createSvgGenerator(qreal width, qreal height);
bool getTempFileName(); bool getTempFileName();
......
...@@ -369,7 +369,8 @@ UBGraphicsScene* UBSvgSubsetAdaptor::UBSvgSubsetReader::loadScene() ...@@ -369,7 +369,8 @@ UBGraphicsScene* UBSvgSubsetAdaptor::UBSvgSubsetReader::loadScene()
// introduced in UB 4.0 // introduced in UB 4.0
QStringRef svgViewBox = mXmlReader.attributes().value(nsSvg, "viewBox"); QStringRef svgViewBox = mXmlReader.attributes().value("viewBox");
if (!svgViewBox.isNull()) if (!svgViewBox.isNull())
{ {
......
...@@ -534,7 +534,7 @@ void UBWidgetUniboardAPI::ProcessDropEvent(QDropEvent *event) ...@@ -534,7 +534,7 @@ void UBWidgetUniboardAPI::ProcessDropEvent(QDropEvent *event)
} }
} }
} }
qDebug() << destFileName;
QString mimeText = createMimeText(downloaded, contentType, destFileName); QString mimeText = createMimeText(downloaded, contentType, destFileName);
dropMimeData.setData(tMimeText, mimeText.toAscii()); dropMimeData.setData(tMimeText, mimeText.toAscii());
...@@ -623,7 +623,7 @@ QString UBWidgetUniboardAPI::createMimeText(bool downloaded, const QString &mime ...@@ -623,7 +623,7 @@ QString UBWidgetUniboardAPI::createMimeText(bool downloaded, const QString &mime
} }
QString relatedFileName = fileName; QString relatedFileName = fileName;
relatedFileName = relatedFileName.remove(mGraphicsWidget->getOwnFolder().toLocalFile()); relatedFileName = relatedFileName.remove(mGraphicsWidget->getOwnFolder().toLocalFile() + "/");
writer.writeTextElement(tPath, relatedFileName); //writing path to created object writer.writeTextElement(tPath, relatedFileName); //writing path to created object
} }
......
...@@ -436,7 +436,6 @@ void UBBoardView::mousePressEvent (QMouseEvent *event) ...@@ -436,7 +436,6 @@ void UBBoardView::mousePressEvent (QMouseEvent *event)
|| movingItem->type() == UBGraphicsTriangle::Type || movingItem->type() == UBGraphicsTriangle::Type
|| movingItem == this->scene()->backgroundObject() || movingItem == this->scene()->backgroundObject()
|| movingItem->group()) || movingItem->group())
{ {
movingItem = NULL; movingItem = NULL;
QGraphicsView::mousePressEvent (event); QGraphicsView::mousePressEvent (event);
......
...@@ -236,7 +236,7 @@ void UBGraphicsItemDelegate::setMimeData(QMimeData *mimeData) ...@@ -236,7 +236,7 @@ void UBGraphicsItemDelegate::setMimeData(QMimeData *mimeData)
bool UBGraphicsItemDelegate::mouseMoveEvent(QGraphicsSceneMouseEvent *event) bool UBGraphicsItemDelegate::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
{ {
if(NULL != mMimeData) if((NULL != mMimeData) && ((event->pos() - mDragStartPosition).manhattanLength() < QApplication::startDragDistance()))
{ {
QDrag* mDrag = new QDrag(event->widget()); QDrag* mDrag = new QDrag(event->widget());
mDrag->setMimeData(mMimeData); mDrag->setMimeData(mMimeData);
...@@ -255,8 +255,8 @@ bool UBGraphicsItemDelegate::mouseMoveEvent(QGraphicsSceneMouseEvent *event) ...@@ -255,8 +255,8 @@ bool UBGraphicsItemDelegate::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
event->accept(); event->accept();
return true; return true;
} }
else
return false; return true;
} }
bool UBGraphicsItemDelegate::weelEvent(QGraphicsSceneWheelEvent *event) bool UBGraphicsItemDelegate::weelEvent(QGraphicsSceneWheelEvent *event)
......
...@@ -109,11 +109,6 @@ void UBGraphicsVideoItem::showOnDisplayChanged(bool shown) ...@@ -109,11 +109,6 @@ void UBGraphicsVideoItem::showOnDisplayChanged(bool shown)
void UBGraphicsVideoItem::mousePressEvent(QGraphicsSceneMouseEvent *event) void UBGraphicsVideoItem::mousePressEvent(QGraphicsSceneMouseEvent *event)
{ {
// QDrag* mDrag = new QDrag(event->widget());
// QMimeData* pMime = new QMimeData();
// mDrag->setMimeData(pMime);
// mDrag->start();
mShouldMove = (event->buttons() & Qt::LeftButton); mShouldMove = (event->buttons() & Qt::LeftButton);
mMousePressPos = event->scenePos(); mMousePressPos = event->scenePos();
mMouseMovePos = mMousePressPos; mMouseMovePos = mMousePressPos;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment