Pcbnew: Add a minimal test for illegal chars in footprints libname (like space and dir separtor)
Also a minor cosmetic enhancement
This commit is contained in:
parent
926dec84a5
commit
4a26d543d5
|
@ -338,6 +338,7 @@ set( BMAPS_MID
|
|||
library_browse
|
||||
library_update
|
||||
library
|
||||
library_table
|
||||
libview
|
||||
lines90
|
||||
load_module_board
|
||||
|
|
|
@ -0,0 +1,131 @@
|
|||
|
||||
/* Do not modify this file, it was automatically generated by the
|
||||
* PNG2cpp CMake script, using a *.png file as input.
|
||||
*/
|
||||
|
||||
#include <bitmaps.h>
|
||||
|
||||
static const unsigned char png[] = {
|
||||
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
|
||||
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
|
||||
0xce, 0x00, 0x00, 0x07, 0x23, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0x9d, 0x96, 0x7b, 0x54, 0xd3,
|
||||
0xe7, 0x19, 0xc7, 0xdb, 0xd5, 0xe3, 0x15, 0xaa, 0x56, 0xc5, 0xaa, 0xd8, 0xd3, 0xa1, 0x96, 0xe3,
|
||||
0xac, 0x1b, 0xab, 0x0e, 0x37, 0xaa, 0xc7, 0x3f, 0x56, 0x0f, 0x1e, 0x14, 0x87, 0xce, 0xb5, 0x74,
|
||||
0x55, 0xab, 0xab, 0x07, 0x44, 0x01, 0x15, 0xbc, 0x50, 0x04, 0x8b, 0xee, 0x0c, 0x25, 0x45, 0x24,
|
||||
0x96, 0x06, 0x42, 0x0c, 0x98, 0x18, 0x48, 0x0c, 0x01, 0x12, 0x08, 0xb9, 0x10, 0x48, 0x42, 0x82,
|
||||
0x5c, 0xe4, 0x96, 0x04, 0x85, 0x04, 0x73, 0xbf, 0x08, 0xed, 0x8a, 0xd5, 0x01, 0x56, 0x87, 0xc9,
|
||||
0xb3, 0xe7, 0x65, 0xc5, 0x23, 0xa5, 0x87, 0xda, 0xfe, 0xce, 0x79, 0xc8, 0x8f, 0x5f, 0x9e, 0xf7,
|
||||
0xf7, 0x79, 0x9f, 0xdb, 0xf7, 0xcd, 0x4b, 0x00, 0xf0, 0xd2, 0xb8, 0xe1, 0x35, 0x6f, 0xce, 0x9c,
|
||||
0x39, 0x54, 0xb4, 0xf7, 0xf0, 0xfe, 0x57, 0xcf, 0x7f, 0xf7, 0x73, 0x0c, 0xaf, 0xe5, 0xfe, 0xfe,
|
||||
0xfe, 0xa7, 0xe6, 0xcd, 0x9b, 0x97, 0xf4, 0xec, 0x19, 0xf9, 0x33, 0x73, 0xe6, 0xcc, 0xa0, 0xd9,
|
||||
0xb3, 0x67, 0x47, 0xa1, 0xc3, 0xda, 0x90, 0x90, 0x90, 0x2f, 0xa3, 0xa3, 0xa3, 0xe9, 0xe8, 0x94,
|
||||
0x3d, 0x7d, 0xfa, 0xf4, 0xb7, 0x7f, 0x26, 0xe0, 0x0d, 0x04, 0x9c, 0x5e, 0xb6, 0x6c, 0x19, 0xed,
|
||||
0xe0, 0xc1, 0x83, 0x37, 0xe6, 0xce, 0x9d, 0x5b, 0xbe, 0x60, 0xc1, 0x82, 0x14, 0x7c, 0x3e, 0x67,
|
||||
0xcc, 0x01, 0x23, 0xf8, 0x7b, 0x78, 0x78, 0x78, 0xf1, 0xf2, 0xe5, 0xcb, 0x59, 0x6b, 0xd7, 0xae,
|
||||
0xed, 0xac, 0xa8, 0xa8, 0x50, 0xde, 0xc0, 0x2b, 0x2c, 0x2c, 0x8c, 0x86, 0x8e, 0x69, 0xe8, 0xf8,
|
||||
0xfa, 0x0b, 0x00, 0x52, 0x96, 0x2e, 0x5d, 0x5a, 0x1c, 0x17, 0x17, 0xa7, 0xcc, 0xcc, 0xcc, 0xbc,
|
||||
0x93, 0x9a, 0x9a, 0x6a, 0xda, 0xb0, 0x61, 0x83, 0x3e, 0x30, 0x30, 0x90, 0x4e, 0xd6, 0x3f, 0x03,
|
||||
0x15, 0x15, 0x15, 0xb1, 0xac, 0x56, 0xeb, 0x8d, 0x23, 0x47, 0x8e, 0xf4, 0x96, 0x95, 0x95, 0x59,
|
||||
0xd2, 0xd3, 0xd3, 0xed, 0x74, 0x3a, 0xbd, 0xe7, 0xe2, 0xc5, 0x8b, 0x75, 0xb8, 0xc3, 0xfc, 0x59,
|
||||
0xb3, 0x66, 0x85, 0xfe, 0x08, 0xe0, 0x65, 0x7c, 0xfe, 0x57, 0xdc, 0x4c, 0xc5, 0x81, 0x03, 0x07,
|
||||
0x6e, 0x23, 0xc0, 0x74, 0xee, 0xdc, 0x39, 0x47, 0x61, 0x61, 0xa1, 0x43, 0x22, 0x91, 0x98, 0x63,
|
||||
0x62, 0x62, 0xba, 0x83, 0x83, 0x83, 0x69, 0xe8, 0xb7, 0x78, 0x12, 0xe8, 0xe8, 0xd1, 0xa3, 0x7d,
|
||||
0xcd, 0xcd, 0xcd, 0xae, 0x5b, 0xb7, 0x6e, 0x39, 0x79, 0x3c, 0x9e, 0x13, 0x17, 0x59, 0xaf, 0x5c,
|
||||
0xb9, 0x62, 0x5c, 0xb3, 0x66, 0x4d, 0xf5, 0xfc, 0xf9, 0xf3, 0xa3, 0x9f, 0x83, 0xf8, 0x63, 0xba,
|
||||
0x19, 0xa1, 0xa1, 0xa1, 0xfa, 0x9c, 0x9c, 0x1c, 0x13, 0x9b, 0xcd, 0xb6, 0x17, 0x14, 0x14, 0xb8,
|
||||
0xa4, 0x52, 0xa9, 0x0d, 0xcd, 0x8e, 0x9b, 0xb5, 0x13, 0xd0, 0xaa, 0x55, 0xab, 0x08, 0x28, 0x60,
|
||||
0x12, 0xe8, 0xc4, 0x89, 0x13, 0xbd, 0x7d, 0x7d, 0x7d, 0xe6, 0x9e, 0x9e, 0x1e, 0x2b, 0x01, 0x8a,
|
||||
0xc5, 0x62, 0xb7, 0x40, 0x20, 0x70, 0x96, 0x97, 0x97, 0x9b, 0xb0, 0x7e, 0x7a, 0x3f, 0x3f, 0xbf,
|
||||
0xdd, 0xb8, 0xf0, 0x55, 0xfc, 0x94, 0xed, 0xdd, 0xbb, 0xd7, 0x58, 0x53, 0x53, 0x63, 0x66, 0x32,
|
||||
0x99, 0x4e, 0x04, 0xb9, 0xf0, 0xde, 0x51, 0x57, 0x57, 0x67, 0xd3, 0x6a, 0xb5, 0x66, 0x5c, 0x67,
|
||||
0x8e, 0x8d, 0x8d, 0x35, 0xac, 0x5c, 0xb9, 0x92, 0x80, 0x16, 0x4d, 0x00, 0xd9, 0x6c, 0xb6, 0x31,
|
||||
0x10, 0x01, 0xb4, 0xb7, 0xb7, 0x3b, 0x4c, 0x26, 0x93, 0xe5, 0xce, 0x9d, 0x3b, 0x56, 0xdc, 0xa1,
|
||||
0xa7, 0xa4, 0xa4, 0xc4, 0xa3, 0x54, 0x2a, 0xcd, 0x2b, 0x56, 0xac, 0xe8, 0x41, 0xff, 0x6e, 0x7c,
|
||||
0x89, 0x51, 0xa1, 0x50, 0x58, 0x30, 0x9a, 0x7b, 0xb8, 0x09, 0x27, 0x7e, 0x67, 0x25, 0x80, 0xda,
|
||||
0xda, 0x5a, 0x9b, 0x50, 0x28, 0x74, 0x61, 0x36, 0xec, 0x87, 0x0e, 0x1d, 0x32, 0x04, 0x05, 0x05,
|
||||
0x11, 0xd0, 0xc2, 0x09, 0x20, 0x87, 0xc3, 0xc1, 0x1b, 0x8f, 0x88, 0xcf, 0xe7, 0xbb, 0x55, 0x2a,
|
||||
0x95, 0x9b, 0x40, 0x7b, 0x7b, 0x7b, 0x2d, 0x1a, 0x8d, 0xc6, 0x75, 0x91, 0x42, 0x79, 0x5c, 0x23,
|
||||
0x95, 0x78, 0x8b, 0xae, 0x5d, 0xf3, 0x52, 0xf3, 0xbe, 0x18, 0xce, 0xce, 0xce, 0x1e, 0x20, 0x11,
|
||||
0xa8, 0xd5, 0x6a, 0x0b, 0x79, 0x39, 0x36, 0x91, 0x2b, 0x3f, 0x3f, 0xdf, 0x83, 0x91, 0x59, 0x2b,
|
||||
0x2b, 0x85, 0x96, 0xcc, 0x4b, 0xb4, 0x07, 0xe1, 0xdb, 0x77, 0x0a, 0x27, 0x81, 0x9c, 0x4e, 0x27,
|
||||
0x6f, 0x3c, 0xa2, 0xd6, 0xd6, 0x56, 0x67, 0x55, 0x55, 0x95, 0x13, 0x17, 0x3b, 0xc9, 0x3d, 0x31,
|
||||
0x99, 0x5c, 0xd6, 0x5f, 0x56, 0x2e, 0xf0, 0xe2, 0x86, 0xe0, 0xee, 0xdd, 0xbb, 0x40, 0xbf, 0xca,
|
||||
0x78, 0x44, 0x00, 0xc4, 0x0f, 0xd7, 0xbb, 0x18, 0x0c, 0x86, 0xb3, 0xba, 0xba, 0xda, 0x21, 0x10,
|
||||
0x54, 0x7a, 0x8a, 0x38, 0xc2, 0xc7, 0xaa, 0x36, 0x23, 0x30, 0x79, 0xd5, 0xff, 0xc9, 0xb8, 0x90,
|
||||
0x17, 0x33, 0x09, 0x94, 0x9c, 0x9c, 0x3c, 0x16, 0x91, 0xd1, 0x68, 0xb4, 0x90, 0x97, 0x63, 0x54,
|
||||
0x2e, 0x0e, 0x87, 0xe3, 0x6e, 0x6b, 0x6b, 0xb3, 0x63, 0x6a, 0xdc, 0x59, 0x14, 0xca, 0x60, 0x55,
|
||||
0x75, 0xb5, 0xcf, 0x6c, 0x36, 0x83, 0x52, 0xa5, 0xf2, 0x72, 0xb9, 0x5c, 0x77, 0x5e, 0x5e, 0x9e,
|
||||
0x1b, 0x33, 0xe0, 0x1a, 0x83, 0xd6, 0xc8, 0x3c, 0x7c, 0x51, 0xfd, 0x93, 0x9b, 0x3a, 0x0b, 0x68,
|
||||
0xd1, 0xd4, 0x1d, 0x7d, 0x90, 0x4b, 0x2f, 0x55, 0x4c, 0x02, 0x25, 0x25, 0x25, 0xf5, 0x8e, 0x47,
|
||||
0xa0, 0xd7, 0xeb, 0x6d, 0x57, 0x8b, 0x8b, 0x86, 0x54, 0x6a, 0x95, 0x87, 0xc5, 0x62, 0xf5, 0x63,
|
||||
0x8a, 0xec, 0x58, 0x93, 0x01, 0xd6, 0x75, 0xb6, 0xd7, 0xe3, 0xf1, 0x00, 0xd6, 0x10, 0xb2, 0x28,
|
||||
0x59, 0xf7, 0x09, 0xa0, 0xa1, 0xa1, 0xc1, 0x42, 0x8c, 0xcd, 0x15, 0x0e, 0x6b, 0x3a, 0x4d, 0x50,
|
||||
0xdb, 0x64, 0x80, 0xda, 0x9b, 0x7a, 0x84, 0x70, 0xbe, 0xdd, 0x1a, 0x15, 0xf5, 0xe6, 0x04, 0x90,
|
||||
0xdb, 0xed, 0xe6, 0x1d, 0x3f, 0x7e, 0x7c, 0x2c, 0x22, 0x6c, 0x4f, 0x17, 0xb3, 0xa8, 0xe8, 0xdf,
|
||||
0xfa, 0x6e, 0x83, 0xef, 0x06, 0x9f, 0xff, 0xdf, 0xa6, 0xa6, 0x26, 0x52, 0x83, 0x7b, 0x18, 0xd1,
|
||||
0x88, 0xa1, 0xbb, 0xdb, 0xf7, 0xf0, 0xe1, 0x43, 0xd0, 0xe9, 0xf5, 0x3e, 0x91, 0x48, 0xe4, 0x24,
|
||||
0xdd, 0x46, 0x60, 0xc5, 0xc5, 0xc5, 0x9e, 0x82, 0x62, 0xde, 0x63, 0x79, 0x43, 0x1b, 0x08, 0x15,
|
||||
0x8d, 0xc0, 0x11, 0x48, 0x46, 0xb7, 0x6e, 0xdb, 0x59, 0x43, 0xa4, 0x6d, 0x02, 0x08, 0x77, 0xc9,
|
||||
0x25, 0x20, 0x12, 0x0d, 0xa9, 0x13, 0x16, 0xda, 0x2d, 0x57, 0xd4, 0x7a, 0x5d, 0x2e, 0x17, 0xa8,
|
||||
0x1a, 0xd4, 0x5e, 0x89, 0x4c, 0x3a, 0x6a, 0x30, 0x18, 0x7c, 0xd8, 0x9d, 0x80, 0xa3, 0x00, 0xd8,
|
||||
0x24, 0x40, 0x2f, 0x2c, 0x1c, 0xc1, 0x56, 0xb6, 0x63, 0xfa, 0x5c, 0x57, 0x59, 0xbc, 0x47, 0x72,
|
||||
0x55, 0x13, 0xf0, 0x85, 0xb2, 0xa7, 0x4c, 0x36, 0xff, 0x51, 0xc6, 0x3f, 0x29, 0x9e, 0x25, 0x4b,
|
||||
0x96, 0x14, 0x20, 0x68, 0xee, 0x04, 0x50, 0x7f, 0x7f, 0x3f, 0x37, 0x31, 0x31, 0xd1, 0xd8, 0xd5,
|
||||
0xd5, 0x65, 0x27, 0x51, 0xe9, 0x74, 0x3a, 0x3b, 0xa6, 0xe9, 0xbb, 0x81, 0x81, 0x01, 0xb8, 0x7f,
|
||||
0xff, 0x3e, 0x0c, 0x0e, 0x0e, 0x3e, 0x33, 0xb5, 0xba, 0x01, 0x2a, 0x85, 0x55, 0xd0, 0x6b, 0x34,
|
||||
0xfa, 0x72, 0xa9, 0xd4, 0x61, 0x26, 0x8b, 0x3f, 0x52, 0xaf, 0x69, 0xf1, 0x55, 0x8a, 0xeb, 0x9e,
|
||||
0x8a, 0xc4, 0xd2, 0x7b, 0xa5, 0xa5, 0xa5, 0x36, 0x7c, 0x97, 0xee, 0x7b, 0xd0, 0xab, 0x93, 0x40,
|
||||
0xa8, 0x0c, 0xbd, 0xa4, 0xf0, 0x28, 0x75, 0xfd, 0x24, 0xaa, 0xdb, 0xb7, 0x6f, 0x5b, 0x4b, 0xb8,
|
||||
0xdc, 0xef, 0x9a, 0x5b, 0x5b, 0xbc, 0x36, 0xbb, 0x1d, 0xd4, 0x0d, 0x0d, 0x5e, 0x09, 0xb6, 0xb8,
|
||||
0x4e, 0x67, 0x00, 0x8d, 0xb6, 0x09, 0xaa, 0x6b, 0x14, 0x20, 0x14, 0xd7, 0x01, 0x81, 0x54, 0xc9,
|
||||
0x54, 0x4f, 0xaf, 0x16, 0xb1, 0xbf, 0x21, 0x29, 0x24, 0x32, 0x76, 0xec, 0xd8, 0xb1, 0xae, 0xc5,
|
||||
0x8b, 0x17, 0x13, 0x90, 0xff, 0x24, 0x50, 0x42, 0x42, 0x82, 0x91, 0xa4, 0xae, 0xa5, 0xa5, 0xc5,
|
||||
0x86, 0x43, 0xe7, 0xc6, 0xb4, 0x78, 0xc8, 0xff, 0x1d, 0x1d, 0x1d, 0xf6, 0xf2, 0x8a, 0x8a, 0xaf,
|
||||
0x33, 0x2f, 0x64, 0x7e, 0xfd, 0xee, 0xa6, 0x4d, 0x43, 0x35, 0x52, 0xe9, 0xd3, 0xe6, 0x96, 0x76,
|
||||
0xe0, 0x0a, 0xc4, 0x04, 0x02, 0x12, 0x85, 0x06, 0x2e, 0x53, 0x69, 0xc3, 0x64, 0x50, 0x49, 0xcd,
|
||||
0xb0, 0x79, 0xec, 0x04, 0x14, 0x10, 0x10, 0x40, 0x44, 0xd5, 0x6f, 0x02, 0x68, 0x68, 0x68, 0x88,
|
||||
0x83, 0xb2, 0xd2, 0x93, 0x92, 0x92, 0x62, 0x44, 0xdd, 0x72, 0x90, 0x21, 0x45, 0xd0, 0xd8, 0x9c,
|
||||
0x8c, 0xeb, 0x5f, 0x6e, 0x6e, 0x6e, 0xff, 0x6f, 0xfe, 0xb0, 0x65, 0x64, 0xcf, 0xa7, 0xd7, 0x1e,
|
||||
0xa5, 0x65, 0x73, 0x7c, 0x4a, 0x6d, 0x2b, 0x42, 0xb4, 0xc0, 0xaf, 0xac, 0x83, 0x4e, 0x5d, 0x97,
|
||||
0x37, 0xfb, 0xd2, 0xa5, 0x41, 0x54, 0x6e, 0xcb, 0xbe, 0x7d, 0xfb, 0x4c, 0x28, 0xc8, 0x37, 0xbf,
|
||||
0x07, 0xfd, 0xff, 0x98, 0x40, 0xdd, 0x7a, 0x3f, 0x2a, 0x2a, 0x8a, 0x89, 0xc5, 0x67, 0x3d, 0x79,
|
||||
0xf2, 0x84, 0x85, 0x6d, 0x2d, 0xa0, 0x52, 0xa9, 0x1a, 0x74, 0x36, 0xe2, 0xa4, 0xdb, 0x50, 0x56,
|
||||
0xdc, 0x38, 0x4b, 0x1e, 0xac, 0x99, 0x2d, 0xfa, 0x18, 0x75, 0x78, 0xdf, 0x79, 0xa1, 0x8f, 0x5a,
|
||||
0xd1, 0x0d, 0x7b, 0x32, 0x84, 0x90, 0x7a, 0x59, 0x00, 0x22, 0xb1, 0x1a, 0x1a, 0xb4, 0x3a, 0xa8,
|
||||
0xad, 0xeb, 0x04, 0x6d, 0x63, 0xe3, 0x68, 0xf2, 0xc9, 0x93, 0x1d, 0x28, 0x3f, 0xec, 0xc8, 0xc8,
|
||||
0x48, 0xda, 0x8c, 0x19, 0x33, 0x18, 0x08, 0x9a, 0x31, 0xae, 0xc4, 0x7e, 0xd3, 0xa6, 0x4d, 0x0b,
|
||||
0x5f, 0xb4, 0x68, 0x51, 0x1a, 0x42, 0x0b, 0x37, 0x6e, 0xdc, 0x48, 0x43, 0x79, 0xb9, 0xd6, 0xd8,
|
||||
0xd8, 0x58, 0x92, 0x95, 0x95, 0xd5, 0x14, 0x1f, 0x1f, 0x6f, 0xc2, 0xe8, 0x1c, 0xfb, 0x53, 0x0a,
|
||||
0x86, 0xe3, 0x3e, 0x57, 0xf8, 0xf6, 0x5c, 0x50, 0xc2, 0xae, 0xf4, 0x6a, 0xf8, 0xcb, 0xa7, 0x22,
|
||||
0x88, 0x4c, 0x64, 0x8c, 0x8a, 0xaa, 0xaa, 0x46, 0x95, 0xea, 0x2e, 0xa8, 0x57, 0x75, 0x81, 0x4c,
|
||||
0x81, 0x40, 0x85, 0xe2, 0x41, 0x44, 0x44, 0x44, 0x12, 0xbe, 0xf7, 0x6d, 0xb4, 0xd7, 0x9e, 0x9d,
|
||||
0xb0, 0x3f, 0x38, 0x63, 0x5e, 0x41, 0x0b, 0x46, 0xe0, 0x07, 0x0b, 0x17, 0x2e, 0xa4, 0xa0, 0x88,
|
||||
0x16, 0xe0, 0xd9, 0x24, 0xde, 0xf2, 0x51, 0xfa, 0x37, 0x87, 0x2f, 0x2b, 0xbd, 0x04, 0x92, 0x90,
|
||||
0x23, 0x83, 0x4d, 0xff, 0xb8, 0x02, 0x91, 0x27, 0x05, 0x10, 0xb2, 0xe3, 0xf4, 0x83, 0xf5, 0xeb,
|
||||
0xd7, 0xab, 0x51, 0x2d, 0xbe, 0x95, 0x2b, 0x3a, 0x41, 0xae, 0xe8, 0x42, 0xeb, 0x06, 0xa9, 0x5c,
|
||||
0xee, 0x3e, 0x75, 0xe6, 0xd4, 0xfa, 0x09, 0x47, 0xf9, 0x54, 0xe6, 0xff, 0xc6, 0x86, 0x75, 0xbf,
|
||||
0xdb, 0x75, 0xde, 0x18, 0x43, 0x91, 0x8f, 0xfe, 0xab, 0xa4, 0x13, 0x3e, 0x63, 0xa8, 0x21, 0xec,
|
||||
0xe3, 0x1c, 0xd8, 0x8e, 0x90, 0xdf, 0xee, 0x3c, 0x3f, 0xf2, 0x5a, 0xc0, 0x32, 0x72, 0x02, 0xcf,
|
||||
0x4f, 0x4b, 0x4b, 0xdb, 0x2a, 0x95, 0xc9, 0xfa, 0xc5, 0xd2, 0x4e, 0xa8, 0x91, 0xe9, 0x30, 0xb2,
|
||||
0x6e, 0x6c, 0x7f, 0xa1, 0x1d, 0x95, 0xe6, 0xad, 0x9f, 0x04, 0xad, 0xde, 0x9d, 0xbb, 0xe3, 0xbd,
|
||||
0x84, 0xeb, 0xd6, 0xb3, 0xac, 0x4e, 0x10, 0x68, 0xac, 0x70, 0x96, 0xd9, 0x08, 0x7f, 0xda, 0x9b,
|
||||
0x0d, 0xdb, 0x4e, 0x08, 0xe0, 0x9d, 0xf7, 0xb3, 0x1e, 0xf8, 0x05, 0xae, 0x0b, 0x79, 0xde, 0xff,
|
||||
0xf4, 0x99, 0x33, 0x91, 0x12, 0xa9, 0x74, 0x40, 0x24, 0x6e, 0x07, 0x41, 0xe5, 0x2d, 0xc0, 0x79,
|
||||
0x04, 0x9c, 0xc3, 0x9e, 0x8c, 0x8c, 0x8c, 0x69, 0x53, 0x82, 0xc2, 0x3e, 0x61, 0x68, 0x18, 0xd2,
|
||||
0x3e, 0xa8, 0xef, 0xf2, 0xc0, 0x27, 0x94, 0x7a, 0x78, 0x77, 0x7f, 0x2e, 0x6c, 0x4d, 0x2e, 0x83,
|
||||
0xd0, 0x8f, 0xf3, 0x9d, 0x41, 0xdb, 0x29, 0x81, 0x3f, 0xb6, 0xe6, 0x74, 0x7a, 0xea, 0x6e, 0xb1,
|
||||
0x44, 0x32, 0x80, 0x02, 0x0c, 0x38, 0x4b, 0x63, 0xc2, 0x9b, 0x7c, 0x32, 0xf9, 0xc3, 0x29, 0x41,
|
||||
0x7f, 0xdc, 0x4f, 0x67, 0x27, 0xd1, 0x9a, 0x60, 0xd7, 0x59, 0x09, 0x6c, 0x8e, 0xa1, 0xc3, 0xe6,
|
||||
0xf8, 0x52, 0xd8, 0x72, 0x94, 0xd7, 0x1f, 0xb4, 0x23, 0x7b, 0xf5, 0x54, 0xeb, 0x52, 0xd3, 0x53,
|
||||
0x3f, 0x14, 0x54, 0x94, 0x7f, 0x85, 0x87, 0x21, 0xb0, 0x39, 0x9c, 0xaf, 0x0e, 0x1f, 0x3e, 0xfc,
|
||||
0xfa, 0x94, 0xa0, 0x95, 0x3b, 0x3e, 0x0f, 0x8e, 0x38, 0x5e, 0xe2, 0xd8, 0x8d, 0x1d, 0xb6, 0x29,
|
||||
0xee, 0x3a, 0x6c, 0x4b, 0x11, 0xfb, 0x56, 0xff, 0xed, 0x0b, 0xda, 0x8b, 0xfc, 0xf4, 0xc2, 0x4e,
|
||||
0xfd, 0x35, 0xa6, 0xf2, 0xb3, 0xd8, 0xc4, 0xd8, 0x55, 0x2f, 0xd4, 0x0c, 0x6f, 0xed, 0xbc, 0xb4,
|
||||
0x79, 0xdd, 0x9e, 0x2f, 0x55, 0x7f, 0x8e, 0x2f, 0x71, 0xfc, 0xfe, 0xa3, 0x02, 0xe9, 0x9b, 0x11,
|
||||
0x17, 0xa6, 0xff, 0x92, 0x1f, 0x95, 0xff, 0x03, 0x8b, 0xa9, 0x94, 0x7e, 0x43, 0x32, 0xbc, 0xfa,
|
||||
0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
|
||||
};
|
||||
|
||||
const BITMAP_OPAQUE library_table_xpm[1] = {{ png, sizeof( png ), "library_table_xpm" }};
|
||||
|
||||
//EOF
|
|
@ -0,0 +1,956 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<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"
|
||||
width="48"
|
||||
height="48"
|
||||
id="svg2"
|
||||
inkscape:version="0.48.2 r9819"
|
||||
sodipodi:docname="library_table.svg">
|
||||
<metadata
|
||||
id="metadata166">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1280"
|
||||
inkscape:window-height="977"
|
||||
id="namedview164"
|
||||
showgrid="false"
|
||||
inkscape:zoom="6.9532166"
|
||||
inkscape:cx="47.631222"
|
||||
inkscape:cy="0.72269904"
|
||||
inkscape:window-x="-4"
|
||||
inkscape:window-y="-4"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg2" />
|
||||
<defs
|
||||
id="defs4">
|
||||
<inkscape:perspective
|
||||
sodipodi:type="inkscape:persp3d"
|
||||
inkscape:vp_x="0 : 24 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_z="48 : 24 : 1"
|
||||
inkscape:persp3d-origin="24 : 16 : 1"
|
||||
id="perspective51" />
|
||||
<linearGradient
|
||||
id="linearGradient6881-1">
|
||||
<stop
|
||||
id="stop6883-0"
|
||||
style="stop-color:#ffffff;stop-opacity:1"
|
||||
offset="0" />
|
||||
<stop
|
||||
id="stop6885-3"
|
||||
style="stop-color:#ffffff;stop-opacity:0"
|
||||
offset="1" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
x1="14.462892"
|
||||
y1="12.284524"
|
||||
x2="34.534348"
|
||||
y2="39.684914"
|
||||
id="linearGradient4064"
|
||||
xlink:href="#linearGradient3264-3"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.92673346,0,0,0.8449938,4.7270711,52.187103)" />
|
||||
<linearGradient
|
||||
id="linearGradient3264-3">
|
||||
<stop
|
||||
id="stop3266-9"
|
||||
style="stop-color:#c9c9c9;stop-opacity:1"
|
||||
offset="0" />
|
||||
<stop
|
||||
id="stop3276-4"
|
||||
style="stop-color:#f8f8f8;stop-opacity:1"
|
||||
offset="0.25" />
|
||||
<stop
|
||||
id="stop3272-8"
|
||||
style="stop-color:#e2e2e2;stop-opacity:1"
|
||||
offset="0.5" />
|
||||
<stop
|
||||
id="stop3274-1"
|
||||
style="stop-color:#b0b0b0;stop-opacity:1"
|
||||
offset="0.75" />
|
||||
<stop
|
||||
id="stop3268-2"
|
||||
style="stop-color:#c9c9c9;stop-opacity:1"
|
||||
offset="1" />
|
||||
</linearGradient>
|
||||
<radialGradient
|
||||
id="a"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
cy="39.125"
|
||||
cx="24.812"
|
||||
gradientTransform="matrix(1,0,0,0.37456,0,24.47)"
|
||||
r="17.688">
|
||||
<stop
|
||||
offset="0"
|
||||
id="stop3115" />
|
||||
<stop
|
||||
stop-opacity="0"
|
||||
offset="1"
|
||||
id="stop3117" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
id="radialGradient3213"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
cy="39.125"
|
||||
cx="24.812"
|
||||
gradientTransform="matrix(1,0,0,0.37456,0,24.47)"
|
||||
r="17.688">
|
||||
<stop
|
||||
offset="0"
|
||||
id="stop3215" />
|
||||
<stop
|
||||
stop-opacity="0"
|
||||
offset="1"
|
||||
id="stop3217" />
|
||||
</radialGradient>
|
||||
<linearGradient
|
||||
id="i"
|
||||
y2="6.7758002"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x2="20.631001"
|
||||
gradientTransform="matrix(0.87827,0,0,0.87827,56.157,5.6701)"
|
||||
y1="42.254002"
|
||||
x1="19.648001">
|
||||
<stop
|
||||
stop-color="#b6b6b6"
|
||||
offset="0"
|
||||
id="stop3120" />
|
||||
<stop
|
||||
stop-color="#f2f2f2"
|
||||
offset=".5"
|
||||
id="stop3122" />
|
||||
<stop
|
||||
stop-color="#fafafa"
|
||||
offset=".67613"
|
||||
id="stop3124" />
|
||||
<stop
|
||||
stop-color="#d8d8d8"
|
||||
offset=".84052"
|
||||
id="stop3126" />
|
||||
<stop
|
||||
stop-color="#f2f2f2"
|
||||
offset=".875"
|
||||
id="stop3128" />
|
||||
<stop
|
||||
stop-color="#dbdbdb"
|
||||
offset="1"
|
||||
id="stop3130" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="j"
|
||||
y2="-4.3003001"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x2="25.291"
|
||||
gradientTransform="matrix(0.87827,0,0,0.87827,43.255,-36.26)"
|
||||
y1="-3.6324"
|
||||
x1="50.153">
|
||||
<stop
|
||||
stop-color="#fff"
|
||||
offset="0"
|
||||
id="stop3133"
|
||||
style="stop-color:#4754ba;stop-opacity:1;" />
|
||||
<stop
|
||||
offset="1"
|
||||
id="stop3135" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="k"
|
||||
y2="6.6286001"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x2="37.535"
|
||||
gradientTransform="matrix(0.87827,0,0,0.87827,56.467,6.2911)"
|
||||
y1="13.603"
|
||||
x1="38.228001">
|
||||
<stop
|
||||
stop-color="#98a0a9"
|
||||
offset="0"
|
||||
id="stop3138" />
|
||||
<stop
|
||||
stop-color="#c3d0dd"
|
||||
offset="1"
|
||||
id="stop3140" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="l"
|
||||
y2="9.6569004"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x2="40.859001"
|
||||
gradientTransform="translate(53.62,0.70241)"
|
||||
y1="19.822001"
|
||||
x1="31.177">
|
||||
<stop
|
||||
stop-color="#fff"
|
||||
offset="0"
|
||||
id="stop3143" />
|
||||
<stop
|
||||
stop-color="#fff"
|
||||
stop-opacity="0"
|
||||
offset="1"
|
||||
id="stop3145" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="m"
|
||||
y2="39.443001"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x2="16.915001"
|
||||
gradientTransform="matrix(0.87827,0,0,0.87827,56.157,5.6701)"
|
||||
y1="32.284"
|
||||
x1="9.7503004">
|
||||
<stop
|
||||
stop-color="#3465a4"
|
||||
offset="0"
|
||||
id="stop3148" />
|
||||
<stop
|
||||
stop-color="#9fbce1"
|
||||
offset="0"
|
||||
id="stop3150" />
|
||||
<stop
|
||||
stop-color="#6b95ca"
|
||||
offset="0"
|
||||
id="stop3152" />
|
||||
<stop
|
||||
stop-color="#3d6aa5"
|
||||
offset=".75"
|
||||
id="stop3154" />
|
||||
<stop
|
||||
stop-color="#386eb4"
|
||||
offset="1"
|
||||
id="stop3156" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="n"
|
||||
y2="33.195"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x2="10.651"
|
||||
gradientTransform="matrix(1.0073,-0.026365,0.026365,1.0073,55.213,0.7816)"
|
||||
y1="35.688"
|
||||
x1="12.005">
|
||||
<stop
|
||||
stop-color="#fff"
|
||||
offset="0"
|
||||
id="stop3159" />
|
||||
<stop
|
||||
stop-color="#fff"
|
||||
stop-opacity="0"
|
||||
offset="1"
|
||||
id="stop3161" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="o"
|
||||
y2="38.268002"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x2="15.416"
|
||||
gradientTransform="matrix(0.8781,-0.017324,0.017324,0.8781,55.783,4.7703)"
|
||||
y1="36.943001"
|
||||
x1="14.018">
|
||||
<stop
|
||||
offset="0"
|
||||
id="stop3164" />
|
||||
<stop
|
||||
stop-opacity="0"
|
||||
offset="1"
|
||||
id="stop3166" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#o"
|
||||
id="linearGradient3375"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.77155263,-0.0151812,0.01522193,0.76948813,57.85303,42.413047)"
|
||||
x1="14.018"
|
||||
y1="36.943001"
|
||||
x2="15.416"
|
||||
y2="38.268002" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#n"
|
||||
id="linearGradient3379"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.88507569,-0.02310392,0.02316591,0.88270743,57.352193,38.917708)"
|
||||
x1="12.005"
|
||||
y1="35.688"
|
||||
x2="10.651"
|
||||
y2="33.195" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#m"
|
||||
id="linearGradient3384"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,58.18165,43.201551)"
|
||||
x1="9.7503004"
|
||||
y1="32.284"
|
||||
x2="16.915001"
|
||||
y2="39.443001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#l"
|
||||
id="linearGradient3387"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.87866146,0,0,0.87631036,55.952486,38.848313)"
|
||||
x1="31.177"
|
||||
y1="19.822001"
|
||||
x2="40.859001"
|
||||
y2="9.6569004" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#k"
|
||||
id="linearGradient3390"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,58.454035,43.74574)"
|
||||
x1="38.228001"
|
||||
y1="13.603"
|
||||
x2="37.535"
|
||||
y2="6.6286001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#j"
|
||||
id="linearGradient3393"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.77064365,0,0,0.77069683,71.531212,-11.419427)"
|
||||
x1="50.153"
|
||||
y1="-3.6324"
|
||||
x2="25.291"
|
||||
y2="-4.3003001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#i"
|
||||
id="linearGradient3397"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,58.18165,43.201551)"
|
||||
x1="19.648001"
|
||||
y1="42.254002"
|
||||
x2="20.631001"
|
||||
y2="6.7758002" />
|
||||
<radialGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#a"
|
||||
id="radialGradient3400"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.73462249,0,0,0.22498252,48.95834,67.319905)"
|
||||
cx="24.812"
|
||||
cy="39.125"
|
||||
r="17.688" />
|
||||
<radialGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#a"
|
||||
id="radialGradient3403"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.6599802,0,0,0.18994717,70.924877,68.226074)"
|
||||
cx="24.812"
|
||||
cy="39.125"
|
||||
r="17.688" />
|
||||
<radialGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#a"
|
||||
id="radialGradient4242"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.6599802,0,0,0.18994717,70.924877,68.226074)"
|
||||
cx="24.812"
|
||||
cy="39.125"
|
||||
r="17.688" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#i"
|
||||
id="linearGradient4244"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,58.18165,43.201551)"
|
||||
x1="19.648001"
|
||||
y1="42.254002"
|
||||
x2="20.631001"
|
||||
y2="6.7758002" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#j"
|
||||
id="linearGradient4246"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.77064365,0,0,0.77069683,71.531212,-11.419427)"
|
||||
x1="50.153"
|
||||
y1="-3.6324"
|
||||
x2="25.291"
|
||||
y2="-4.3003001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#k"
|
||||
id="linearGradient4248"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,58.454035,43.74574)"
|
||||
x1="38.228001"
|
||||
y1="13.603"
|
||||
x2="37.535"
|
||||
y2="6.6286001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#l"
|
||||
id="linearGradient4250"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.87866146,0,0,0.87631036,55.952486,38.848313)"
|
||||
x1="31.177"
|
||||
y1="19.822001"
|
||||
x2="40.859001"
|
||||
y2="9.6569004" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#m"
|
||||
id="linearGradient4252"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,58.18165,43.201551)"
|
||||
x1="9.7503004"
|
||||
y1="32.284"
|
||||
x2="16.915001"
|
||||
y2="39.443001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#n"
|
||||
id="linearGradient4254"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.88507569,-0.02310392,0.02316591,0.88270743,57.352193,38.917708)"
|
||||
x1="12.005"
|
||||
y1="35.688"
|
||||
x2="10.651"
|
||||
y2="33.195" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#o"
|
||||
id="linearGradient4256"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.77155263,-0.0151812,0.01522193,0.76948813,57.85303,42.413047)"
|
||||
x1="14.018"
|
||||
y1="36.943001"
|
||||
x2="15.416"
|
||||
y2="38.268002" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#o"
|
||||
id="linearGradient4259"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.77155263,-0.0151812,0.01522193,0.76948813,49.080112,36.228859)"
|
||||
x1="14.018"
|
||||
y1="36.943001"
|
||||
x2="15.416"
|
||||
y2="38.268002" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#n"
|
||||
id="linearGradient4263"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.88507569,-0.02310392,0.02316591,0.88270743,48.579275,32.73352)"
|
||||
x1="12.005"
|
||||
y1="35.688"
|
||||
x2="10.651"
|
||||
y2="33.195" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#m"
|
||||
id="linearGradient4268"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,49.408732,37.017363)"
|
||||
x1="9.7503004"
|
||||
y1="32.284"
|
||||
x2="16.915001"
|
||||
y2="39.443001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#l"
|
||||
id="linearGradient4271"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.87866146,0,0,0.87631036,47.179568,32.664125)"
|
||||
x1="31.177"
|
||||
y1="19.822001"
|
||||
x2="40.859001"
|
||||
y2="9.6569004" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#k"
|
||||
id="linearGradient4274"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,49.681117,37.561552)"
|
||||
x1="38.228001"
|
||||
y1="13.603"
|
||||
x2="37.535"
|
||||
y2="6.6286001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#j"
|
||||
id="linearGradient4277"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.77064365,0,0,0.77069683,60.982001,-9.4669729)"
|
||||
x1="50.153"
|
||||
y1="-3.6324"
|
||||
x2="25.291"
|
||||
y2="-4.3003001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#i"
|
||||
id="linearGradient4281"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,49.408732,37.017363)"
|
||||
x1="19.648001"
|
||||
y1="42.254002"
|
||||
x2="20.631001"
|
||||
y2="6.7758002" />
|
||||
<radialGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#a"
|
||||
id="radialGradient4284"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.6599802,0,0,0.18994717,62.151959,62.041886)"
|
||||
cx="24.812"
|
||||
cy="39.125"
|
||||
r="17.688" />
|
||||
<radialGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#a"
|
||||
id="radialGradient4387"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.73462249,0,0,0.22498252,48.95834,67.319905)"
|
||||
cx="24.812"
|
||||
cy="39.125"
|
||||
r="17.688" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#i"
|
||||
id="linearGradient4389"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,49.408732,37.017363)"
|
||||
x1="19.648001"
|
||||
y1="42.254002"
|
||||
x2="20.631001"
|
||||
y2="6.7758002" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#j"
|
||||
id="linearGradient4391"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.77064365,0,0,0.77069683,60.982001,-9.4669729)"
|
||||
x1="50.153"
|
||||
y1="-3.6324"
|
||||
x2="25.291"
|
||||
y2="-4.3003001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#k"
|
||||
id="linearGradient4393"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,49.681117,37.561552)"
|
||||
x1="38.228001"
|
||||
y1="13.603"
|
||||
x2="37.535"
|
||||
y2="6.6286001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#l"
|
||||
id="linearGradient4395"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.87866146,0,0,0.87631036,47.179568,32.664125)"
|
||||
x1="31.177"
|
||||
y1="19.822001"
|
||||
x2="40.859001"
|
||||
y2="9.6569004" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#m"
|
||||
id="linearGradient4397"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,49.408732,37.017363)"
|
||||
x1="9.7503004"
|
||||
y1="32.284"
|
||||
x2="16.915001"
|
||||
y2="39.443001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#n"
|
||||
id="linearGradient4399"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.88507569,-0.02310392,0.02316591,0.88270743,48.579275,32.73352)"
|
||||
x1="12.005"
|
||||
y1="35.688"
|
||||
x2="10.651"
|
||||
y2="33.195" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#o"
|
||||
id="linearGradient4401"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.77155263,-0.0151812,0.01522193,0.76948813,49.080112,36.228859)"
|
||||
x1="14.018"
|
||||
y1="36.943001"
|
||||
x2="15.416"
|
||||
y2="38.268002" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#o"
|
||||
id="linearGradient4404"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.77155263,-0.0151812,0.01522193,0.76948813,58.140667,26.736849)"
|
||||
x1="14.018"
|
||||
y1="36.943001"
|
||||
x2="15.416"
|
||||
y2="38.268002" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#n"
|
||||
id="linearGradient4408"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.88507569,-0.02310392,0.02316591,0.88270743,57.63983,23.24151)"
|
||||
x1="12.005"
|
||||
y1="35.688"
|
||||
x2="10.651"
|
||||
y2="33.195" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#m"
|
||||
id="linearGradient4413"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,58.469287,27.525353)"
|
||||
x1="9.7503004"
|
||||
y1="32.284"
|
||||
x2="16.915001"
|
||||
y2="39.443001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#l"
|
||||
id="linearGradient4416"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.87866146,0,0,0.87631036,56.240123,23.172115)"
|
||||
x1="31.177"
|
||||
y1="19.822001"
|
||||
x2="40.859001"
|
||||
y2="9.6569004" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#k"
|
||||
id="linearGradient4419"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,58.741672,28.069542)"
|
||||
x1="38.228001"
|
||||
y1="13.603"
|
||||
x2="37.535"
|
||||
y2="6.6286001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#j"
|
||||
id="linearGradient4422"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.77064365,0,0,0.77069683,60.490409,-22.581269)"
|
||||
x1="50.153"
|
||||
y1="-3.6324"
|
||||
x2="25.291"
|
||||
y2="-4.3003001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#i"
|
||||
id="linearGradient4426"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,58.469287,27.525353)"
|
||||
x1="19.648001"
|
||||
y1="42.254002"
|
||||
x2="20.631001"
|
||||
y2="6.7758002" />
|
||||
<radialGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#a"
|
||||
id="radialGradient4429"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.73462249,0,0,0.22498252,58.018895,57.827895)"
|
||||
cx="24.812"
|
||||
cy="39.125"
|
||||
r="17.688" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#i"
|
||||
id="linearGradient4444"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,58.469287,27.525353)"
|
||||
x1="19.648001"
|
||||
y1="42.254002"
|
||||
x2="20.631001"
|
||||
y2="6.7758002" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#j"
|
||||
id="linearGradient4446"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.77064365,0,0,0.77069683,60.490409,-22.581269)"
|
||||
x1="50.153"
|
||||
y1="-3.6324"
|
||||
x2="25.291"
|
||||
y2="-4.3003001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#k"
|
||||
id="linearGradient4448"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,58.741672,28.069542)"
|
||||
x1="38.228001"
|
||||
y1="13.603"
|
||||
x2="37.535"
|
||||
y2="6.6286001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#l"
|
||||
id="linearGradient4450"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.87866146,0,0,0.87631036,56.240123,23.172115)"
|
||||
x1="31.177"
|
||||
y1="19.822001"
|
||||
x2="40.859001"
|
||||
y2="9.6569004" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#m"
|
||||
id="linearGradient4452"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.771702,0,0,0.7696371,58.469287,27.525353)"
|
||||
x1="9.7503004"
|
||||
y1="32.284"
|
||||
x2="16.915001"
|
||||
y2="39.443001" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#n"
|
||||
id="linearGradient4454"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.88507569,-0.02310392,0.02316591,0.88270743,57.63983,23.24151)"
|
||||
x1="12.005"
|
||||
y1="35.688"
|
||||
x2="10.651"
|
||||
y2="33.195" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#o"
|
||||
id="linearGradient4456"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.77155263,-0.0151812,0.01522193,0.76948813,58.140667,26.736849)"
|
||||
x1="14.018"
|
||||
y1="36.943001"
|
||||
x2="15.416"
|
||||
y2="38.268002" />
|
||||
</defs>
|
||||
<g
|
||||
id="g4358">
|
||||
<g
|
||||
id="g4214">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path37"
|
||||
d="M 24.205623,13.245771 C 22.078215,9.4167306 9.39583,4.3848643 3.5531846,3.3700677 3.8615182,15.294128 3.8674448,21.823238 3.5489742,32.845877 c 7.6204018,1.076395 14.9876568,4.398117 20.8236988,7.682434 0,1.603634 -0.166734,-26.320439 -0.166734,-27.28254 z"
|
||||
style="opacity:0.62891002;fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1.71034181;stroke-linejoin:round" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path39"
|
||||
d="M 24.205623,13.169921 C 29.667888,7.6779632 37.053198,5.4427758 45.5638,2.9916149 44.921992,15.747233 45.332892,22.351795 45.401247,32.618726 c -7.704049,0.09366 -15.693389,4.020064 -21.028858,7.909186 0,-0.05949 -0.166734,-26.39589 -0.166734,-27.357991 z"
|
||||
style="opacity:0.62891002;fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1.71034181;stroke-linejoin:round" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path49"
|
||||
d="m 42.147837,7.7594024 c 0,0 -8.599528,2.2779826 -15.435832,7.6281406"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.34206837" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path51"
|
||||
d="m 41.637149,11.91919 c 0,0 -7.913177,1.333368 -14.922063,6.45366"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path53"
|
||||
d="m 41.364179,15.604714 c 0,0 -7.378694,1.313647 -14.649973,6.023709"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path55"
|
||||
d="m 41.368593,19.356109 c 0,0 -7.150213,0.691993 -14.653947,5.700346"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path57"
|
||||
d="m 41.271737,22.48553 c -0.08334,0.01915 -6.483665,1.312011 -14.557091,5.884384"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path59"
|
||||
d="m 41.632735,25.538304 c -0.08334,0.01915 -6.950324,1.41816 -14.918529,6.190978"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path61"
|
||||
d="m 41.742803,28.800463 c 0,0 -7.515178,1.599962 -15.029478,6.27641"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path63"
|
||||
d="M 24.264618,13.146767 C 29.077944,7.0863312 35.586698,4.0834594 43.086469,0.74684645 42.520871,13.569133 42.883001,20.130978 42.943168,30.390724 c -6.789198,0.895033 -13.82978,5.652441 -18.531721,10.096468 0,-0.05947 -0.146931,-26.378325 -0.146931,-27.340824 z"
|
||||
style="opacity:0.62891002;fill:#acacac;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.60557556;stroke-linejoin:round" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path65"
|
||||
d="m 40.078632,5.8695333 c 0,0 -7.578573,3.1724969 -13.602606,9.2337707"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path67"
|
||||
d="m 39.387431,13.796684 c 0,0 -6.502148,2.081131 -12.910084,7.5475"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path69"
|
||||
d="m 39.303787,20.687481 c -0.07346,0.02782 -5.713653,1.986438 -12.828201,7.398594"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path71"
|
||||
d="m 39.722033,26.953111 c 0,0 -6.622785,2.381658 -13.244686,7.839723"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path73"
|
||||
d="m 8.6517973,7.6835522 c 0,0 7.5860617,2.2779828 13.6162567,7.6281408"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path75"
|
||||
d="m 9.1048204,11.843739 c 0,0 6.9802696,1.333368 13.1627936,6.45366"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path77"
|
||||
d="m 9.3452011,15.529263 c 0,0 6.5087539,1.313647 12.9228529,6.023709"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path79"
|
||||
d="m 9.3412389,19.280657 c 0,0 6.3071161,0.691995 12.9263751,5.700347"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path81"
|
||||
d="m 9.4270892,22.410079 c 0.073538,0.01915 5.7193738,1.312011 12.8409648,5.884383"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path83"
|
||||
d="m 9.1079027,25.462454 c 0.073538,0.01915 6.1310143,1.418159 13.1601513,6.190978"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path85"
|
||||
d="m 9.0101658,28.724893 c 0,0 6.6289442,1.599962 13.2578882,6.276409"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path87"
|
||||
d="M 24.428394,13.071316 C 20.182559,7.0108801 14.441171,4.0080083 7.8254351,0.67139537 8.3243336,13.493682 8.0049236,20.055528 7.9517931,30.315274 c 5.9888119,0.894993 12.1995109,5.652441 16.3471689,10.096468 0,-0.05949 0.12961,-26.378326 0.12961,-27.340825 z"
|
||||
style="opacity:0.62891002;fill:#cccccc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.50797832;stroke-linejoin:round" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path89"
|
||||
d="m 10.479301,5.7940822 c 0,0 6.684858,3.1724971 11.999196,9.2337708"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path91"
|
||||
d="m 11.089937,13.721233 c 0,0 5.735665,2.081131 11.38812,7.547499"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path93"
|
||||
d="m 11.16258,20.612029 c 0.0648,0.02782 5.040058,1.986438 11.315917,7.398594"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path95"
|
||||
d="m 10.794966,26.877659 c 0,0 5.841765,2.381658 11.683531,7.839724"
|
||||
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.52404034" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4431"
|
||||
transform="translate(-47.316231,-14.813288)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="color:#000000;fill:url(#linearGradient4444);stroke:#676b6a;stroke-width:0.8774851;stroke-opacity:1"
|
||||
d="m 71.973435,41.763556 16.688417,17.028463 c 0.675242,0.769637 2.814792,1.364503 4.244374,0 1.380465,-1.31762 1.061072,-3.174784 -0.289387,-4.521586 L 76.604112,37.145576 c 1.976989,-5.47694 -2.024348,-10.077569 -7.186484,-9.09172 l -1.10931,1.010123 3.472646,3.270916 0.192928,2.886128 -2.592755,2.36043 -3.098511,-0.340131 -3.183303,-2.982347 -1.115988,1.099682 c -0.519078,4.943529 4.663672,9.361623 9.990381,6.404251 z"
|
||||
id="path3174" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:0.42613998;color:#000000;fill:none;stroke:#ffffff;stroke-width:0.8774851"
|
||||
d="m 72.158832,40.646261 16.872936,17.550744 c 0.522725,0.595794 2.178993,1.056304 3.285667,0 1.068716,-1.020026 0.821417,-2.4577 -0.224023,-3.500334 L 75.846082,37.501709 c 1.317993,-5.696018 -1.633255,-8.767485 -6.026563,-8.657596 l -0.237353,0.239566 3.16573,2.836003 0.114375,3.664554 -3.175395,2.89051 -3.727545,-0.401534 -2.791156,-2.621482 -0.309851,0.376866 c -0.274582,5.230521 5.704006,7.61058 9.300631,4.817341 z"
|
||||
id="path3176" />
|
||||
<rect
|
||||
style="opacity:0.55416667;color:#000000;fill:none;stroke:url(#linearGradient4446);stroke-width:0.87700158;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
transform="matrix(0.69889898,0.7152204,-0.71708981,0.69698078,0,0)"
|
||||
rx="0.77556622"
|
||||
ry="0.77561975"
|
||||
height="1.8037362"
|
||||
width="20.416656"
|
||||
y="-26.326511"
|
||||
x="80.546432"
|
||||
id="rect3178" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="color:#000000;fill:url(#linearGradient4448);stroke:#878f9d;stroke-width:0.8774851"
|
||||
d="M 76.008248,49.571482 C 76.741052,48.94492 87.680387,37.785984 87.680387,37.785984 l 2.700918,-0.192412 4.244374,-5.868475 -3.535998,-3.141748 -5.498399,4.714024 v 2.693691 L 74.401528,47.583773 c -0.530545,0.529125 0.931557,2.564523 1.606808,1.987297 z"
|
||||
id="path3180" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:0.53977003;color:#000000;fill:none;stroke:url(#linearGradient4450);stroke-width:0.8774851"
|
||||
d="M 75.923897,48.660119 C 76.491512,48.173767 87.367584,37.066533 87.367584,37.066533 l 2.573248,-0.217325 3.702591,-4.961757 -2.539068,-2.233715 -4.812077,4.133994 0.136421,2.498361 -11.137913,11.647917 c -0.41167,0.410569 0.108919,1.173555 0.632865,0.725682 z"
|
||||
id="path3182" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="color:#000000;fill:url(#linearGradient4452);stroke:#204a87;stroke-width:0.8774851"
|
||||
d="m 63.677992,61.389403 c 1.156846,1.28397 4.370198,1.864964 5.795124,-0.622101 0.62131,-1.084347 1.839829,-4.121113 7.276283,-9.000584 0.913017,-0.818623 1.880248,-2.691237 1.060281,-3.701447 l -2.122143,-2.116465 c -0.868162,-0.962014 -3.281274,-0.513299 -4.271349,0.833266 -2.951248,4.027698 -7.772727,7.233854 -8.860422,7.621096 -2.080583,0.741078 -1.84642,3.799769 -0.469926,5.254795 l 1.591607,1.731677 z"
|
||||
id="path3184" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="color:#000000;fill:#ffffff;stroke:#a1a1a1;stroke-width:0.87748355"
|
||||
d="m 91.748745,56.482963 a 1.0610902,1.058251 0 0 1 -2.12218,0 1.0610902,1.058251 0 1 1 2.12218,0 z"
|
||||
id="path3186" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:0.60227003;color:#000000;fill:#ffffff"
|
||||
d="m 74.702337,47.14006 a 0.8867466,0.88437388 0 1 1 -1.773444,0 0.8867466,0.88437388 0 1 1 1.773444,0 z"
|
||||
id="path3188" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="color:#000000;fill:none;stroke:url(#linearGradient4454);stroke-width:2.01338983;stroke-linecap:round;stroke-linejoin:round"
|
||||
d="m 72.65264,49.13245 c 0,0 -6.299915,6.396715 -9.251426,7.481062"
|
||||
id="path3190" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:0.19886002;color:#000000;fill:none;stroke:#ffffff;stroke-width:0.8774851"
|
||||
d="m 63.977616,60.403554 c 1.266414,1.529688 4.041403,1.893882 4.912771,-0.324752 0.598641,-1.524342 2.929106,-4.964999 7.202916,-8.800785 0.717787,-0.643544 1.478172,-2.115676 0.833559,-2.909788 l -1.668314,-1.663851 c -0.682492,-0.756299 -2.579574,-0.403523 -3.357805,0.65506 -2.320018,3.166284 -7.453949,7.308078 -8.69497,7.716438 -1.921457,0.632355 -1.561381,2.822859 -0.479257,3.966619 l 1.251214,1.361348 z"
|
||||
id="path3192" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:0.27841001;color:#000000;fill:none;stroke:url(#linearGradient4456);stroke-width:2.01338983;stroke-linecap:round;stroke-linejoin:round"
|
||||
d="m 74.537369,50.566094 c 0,0 -6.434262,5.798896 -7.832213,9.516731"
|
||||
id="path3194" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 34 KiB |
|
@ -260,6 +260,7 @@ EXTERN_BITMAP( lib_previous_xpm )
|
|||
EXTERN_BITMAP( library_browse_xpm )
|
||||
EXTERN_BITMAP( library_update_xpm )
|
||||
EXTERN_BITMAP( library_xpm )
|
||||
EXTERN_BITMAP( library_table_xpm )
|
||||
EXTERN_BITMAP( libview_xpm )
|
||||
EXTERN_BITMAP( lines90_xpm )
|
||||
EXTERN_BITMAP( load_module_board_xpm )
|
||||
|
|
|
@ -139,7 +139,7 @@ MODULE::MODULE( const MODULE& aModule ) :
|
|||
break;
|
||||
|
||||
default:
|
||||
wxMessageBox( wxT( "MODULE::Copy() Internal Err: unknown type" ) );
|
||||
wxLogMessage( wxT( "MODULE::Copy() Internal Err: unknown type" ) );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -262,7 +262,7 @@ void MODULE::Copy( MODULE* aModule )
|
|||
break;
|
||||
|
||||
default:
|
||||
wxMessageBox( wxT( "MODULE::Copy() Internal Err: unknown type" ) );
|
||||
wxLogMessage( wxT( "MODULE::Copy() Internal Err: unknown type" ) );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -698,6 +698,41 @@ EDA_ITEM* MODULE::Clone() const
|
|||
return new MODULE( *this );
|
||||
}
|
||||
|
||||
/* Test for validity of the name in a library of the footprint
|
||||
* ( no spaces, dir separators ... )
|
||||
* return true if the given name is valid
|
||||
* static function
|
||||
*/
|
||||
bool MODULE::IsLibNameValid( const wxString & aName )
|
||||
{
|
||||
const wxChar * invalids = ReturnStringLibNameInvalidChars( false );
|
||||
|
||||
if( aName.find_first_of( invalids ) != std::string::npos )
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Test for validity of the name of a footprint to be used in a footprint library
|
||||
* ( no spaces, dir separators ... )
|
||||
* param bool aUserReadable = false to get the list of invalid chars
|
||||
* true to get a readable form (i.e ' ' = 'space' '\t'= 'tab')
|
||||
* return a constant string giving the list of invalid chars in lib name
|
||||
* static function
|
||||
*/
|
||||
const wxChar* MODULE::ReturnStringLibNameInvalidChars( bool aUserReadable )
|
||||
{
|
||||
static const wxChar invalidChars[] = wxT("\t \"\\/");
|
||||
static const wxChar invalidCharsReadable[] = wxT("'tab' 'space' \\ \" /");
|
||||
|
||||
if( aUserReadable )
|
||||
return invalidCharsReadable;
|
||||
else
|
||||
return invalidChars;
|
||||
}
|
||||
|
||||
|
||||
#if defined(DEBUG)
|
||||
|
||||
|
|
|
@ -361,6 +361,25 @@ public:
|
|||
|
||||
EDA_ITEM* Clone() const;
|
||||
|
||||
/**
|
||||
* static function IsLibNameValid
|
||||
* Test for validity of a name of a footprint to be used in a footprint library
|
||||
* ( no spaces, dir separators ... )
|
||||
* @param aName = the name in library to validate
|
||||
* @return true if the given name is valid
|
||||
*/
|
||||
static bool IsLibNameValid( const wxString & aName );
|
||||
|
||||
/**
|
||||
* static function ReturnStringLibNameInvalidChars
|
||||
* Test for validity of the name in a library of the footprint
|
||||
* ( no spaces, dir separators ... )
|
||||
* @param bool aUserReadable = false to get the list of invalid chars
|
||||
* true to get a readable form (i.e ' ' = 'space' '\t'= 'tab')
|
||||
* @return a constant std::string giving the list of invalid chars in lib name
|
||||
*/
|
||||
static const wxChar* ReturnStringLibNameInvalidChars( bool aUserReadable );
|
||||
|
||||
#if defined(DEBUG)
|
||||
void Show( int nestLevel, std::ostream& os ) const; // overload
|
||||
#endif
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2011 Jean-Pierre Charras, jean-pierre.charras@ujf-grenoble.fr
|
||||
* Copyright (C) 2012 Jean-Pierre Charras, jp.charras at wanadoo.fr
|
||||
* Copyright (C) 2012 Dick Hollenbeck, dick@softplc.com
|
||||
* Copyright (C) 2004-2011 KiCad Developers, see change_log.txt for contributors.
|
||||
*
|
||||
|
@ -52,15 +52,15 @@ DIALOG_MODULE_MODULE_EDITOR::DIALOG_MODULE_MODULE_EDITOR( FOOTPRINT_EDIT_FRAME*
|
|||
MODULE* aModule ) :
|
||||
DIALOG_MODULE_MODULE_EDITOR_BASE( aParent )
|
||||
{
|
||||
m_Parent = aParent;
|
||||
m_CurrentModule = aModule;
|
||||
m_parent = aParent;
|
||||
m_currentModule = aModule;
|
||||
|
||||
// Give an icon
|
||||
wxIcon icon;
|
||||
icon.CopyFromBitmap( KiBitmap( icon_modedit_xpm ) );
|
||||
SetIcon( icon );
|
||||
|
||||
InitModeditProperties();
|
||||
initModeditProperties();
|
||||
m_sdbSizerStdButtonsOK->SetDefault();
|
||||
GetSizer()->Fit( this );
|
||||
GetSizer()->SetSizeHints( this );
|
||||
|
@ -70,13 +70,13 @@ DIALOG_MODULE_MODULE_EDITOR::DIALOG_MODULE_MODULE_EDITOR( FOOTPRINT_EDIT_FRAME*
|
|||
|
||||
DIALOG_MODULE_MODULE_EDITOR::~DIALOG_MODULE_MODULE_EDITOR()
|
||||
{
|
||||
for( unsigned ii = 0; ii < m_Shapes3D_list.size(); ii++ )
|
||||
delete m_Shapes3D_list[ii];
|
||||
for( unsigned ii = 0; ii < m_shapes3D_list.size(); ii++ )
|
||||
delete m_shapes3D_list[ii];
|
||||
|
||||
m_Shapes3D_list.clear();
|
||||
m_shapes3D_list.clear();
|
||||
|
||||
delete m_ReferenceCopy;
|
||||
delete m_ValueCopy;
|
||||
delete m_referenceCopy;
|
||||
delete m_valueCopy;
|
||||
delete m_3D_Scale;
|
||||
delete m_3D_Offset;
|
||||
delete m_3D_Rotation;
|
||||
|
@ -84,15 +84,15 @@ DIALOG_MODULE_MODULE_EDITOR::~DIALOG_MODULE_MODULE_EDITOR()
|
|||
|
||||
|
||||
/********************************************************/
|
||||
void DIALOG_MODULE_MODULE_EDITOR::InitModeditProperties()
|
||||
void DIALOG_MODULE_MODULE_EDITOR::initModeditProperties()
|
||||
/********************************************************/
|
||||
{
|
||||
SetFocus();
|
||||
|
||||
m_LastSelected3DShapeIndex = -1;
|
||||
m_lastSelected3DShapeIndex = -1;
|
||||
|
||||
// Init 3D shape list
|
||||
S3D_MASTER* draw3D = m_CurrentModule->m_3D_Drawings;
|
||||
S3D_MASTER* draw3D = m_currentModule->m_3D_Drawings;
|
||||
|
||||
while( draw3D )
|
||||
{
|
||||
|
@ -100,22 +100,22 @@ void DIALOG_MODULE_MODULE_EDITOR::InitModeditProperties()
|
|||
{
|
||||
S3D_MASTER* draw3DCopy = new S3D_MASTER(NULL);
|
||||
draw3DCopy->Copy( draw3D );
|
||||
m_Shapes3D_list.push_back( draw3DCopy );
|
||||
m_shapes3D_list.push_back( draw3DCopy );
|
||||
m_3D_ShapeNameListBox->Append(draw3DCopy->m_Shape3DName);
|
||||
}
|
||||
draw3D = (S3D_MASTER*) draw3D->Next();
|
||||
}
|
||||
|
||||
m_DocCtrl->SetValue( m_CurrentModule->m_Doc );
|
||||
m_KeywordCtrl->SetValue( m_CurrentModule->m_KeyWord);
|
||||
m_ReferenceCopy = new TEXTE_MODULE(NULL);
|
||||
m_ValueCopy = new TEXTE_MODULE(NULL);
|
||||
m_ReferenceCopy->Copy(m_CurrentModule->m_Reference);
|
||||
m_ValueCopy->Copy(m_CurrentModule->m_Value);
|
||||
m_ReferenceCtrl->SetValue( m_ReferenceCopy->m_Text );
|
||||
m_ValueCtrl->SetValue( m_ValueCopy->m_Text );
|
||||
m_ValueCtrl->SetValue( m_ValueCopy->m_Text );
|
||||
m_FootprintNameCtrl->SetValue( m_CurrentModule->m_LibRef );
|
||||
m_DocCtrl->SetValue( m_currentModule->m_Doc );
|
||||
m_KeywordCtrl->SetValue( m_currentModule->m_KeyWord);
|
||||
m_referenceCopy = new TEXTE_MODULE(NULL);
|
||||
m_valueCopy = new TEXTE_MODULE(NULL);
|
||||
m_referenceCopy->Copy(m_currentModule->m_Reference);
|
||||
m_valueCopy->Copy(m_currentModule->m_Value);
|
||||
m_ReferenceCtrl->SetValue( m_referenceCopy->m_Text );
|
||||
m_ValueCtrl->SetValue( m_valueCopy->m_Text );
|
||||
m_ValueCtrl->SetValue( m_valueCopy->m_Text );
|
||||
m_FootprintNameCtrl->SetValue( m_currentModule->m_LibRef );
|
||||
|
||||
m_AttributsCtrl->SetItemToolTip( 0, _( "Use this attribute for most non smd components" ) );
|
||||
m_AttributsCtrl->SetItemToolTip( 1,
|
||||
|
@ -126,7 +126,7 @@ void DIALOG_MODULE_MODULE_EDITOR::InitModeditProperties()
|
|||
"Use this attribute for \"virtual\" components drawn on board (like a old ISA PC bus connector)" ) );
|
||||
|
||||
// Controls on right side of the dialog
|
||||
switch( m_CurrentModule->m_Attributs & 255 )
|
||||
switch( m_currentModule->m_Attributs & 255 )
|
||||
{
|
||||
case 0:
|
||||
m_AttributsCtrl->SetSelection( 0 );
|
||||
|
@ -146,13 +146,13 @@ void DIALOG_MODULE_MODULE_EDITOR::InitModeditProperties()
|
|||
}
|
||||
|
||||
m_AutoPlaceCtrl->SetSelection(
|
||||
(m_CurrentModule->m_ModuleStatus & MODULE_is_LOCKED) ? 1 : 0 );
|
||||
(m_currentModule->m_ModuleStatus & MODULE_is_LOCKED) ? 1 : 0 );
|
||||
m_AutoPlaceCtrl->SetItemToolTip( 0, _( "Enable hotkey move commands and Auto Placement" ) );
|
||||
m_AutoPlaceCtrl->SetItemToolTip( 1, _( "Disable hotkey move commands and Auto Placement" ) );
|
||||
|
||||
m_CostRot90Ctrl->SetValue( m_CurrentModule->m_CntRot90 );
|
||||
m_CostRot90Ctrl->SetValue( m_currentModule->m_CntRot90 );
|
||||
|
||||
m_CostRot180Ctrl->SetValue( m_CurrentModule->m_CntRot180 );
|
||||
m_CostRot180Ctrl->SetValue( m_currentModule->m_CntRot180 );
|
||||
|
||||
// Initialize 3D parameters
|
||||
|
||||
|
@ -174,28 +174,28 @@ void DIALOG_MODULE_MODULE_EDITOR::InitModeditProperties()
|
|||
m_SolderPasteMarginUnits->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
||||
|
||||
wxString msg;
|
||||
PutValueInLocalUnits( *m_NetClearanceValueCtrl, m_CurrentModule->GetLocalClearance() );
|
||||
PutValueInLocalUnits( *m_SolderMaskMarginCtrl, m_CurrentModule->GetLocalSolderMaskMargin() );
|
||||
PutValueInLocalUnits( *m_NetClearanceValueCtrl, m_currentModule->GetLocalClearance() );
|
||||
PutValueInLocalUnits( *m_SolderMaskMarginCtrl, m_currentModule->GetLocalSolderMaskMargin() );
|
||||
|
||||
// These 2 parameters are usually < 0, so prepare entering a negative value, if current is 0
|
||||
PutValueInLocalUnits( *m_SolderPasteMarginCtrl, m_CurrentModule->GetLocalSolderPasteMargin() );
|
||||
PutValueInLocalUnits( *m_SolderPasteMarginCtrl, m_currentModule->GetLocalSolderPasteMargin() );
|
||||
|
||||
if( m_CurrentModule->GetLocalSolderPasteMargin() == 0 )
|
||||
if( m_currentModule->GetLocalSolderPasteMargin() == 0 )
|
||||
m_SolderPasteMarginCtrl->SetValue( wxT("-") + m_SolderPasteMarginCtrl->GetValue() );
|
||||
|
||||
if( m_CurrentModule->GetLocalSolderPasteMarginRatio() == 0.0 )
|
||||
msg.Printf( wxT( "-%.1f" ), m_CurrentModule->GetLocalSolderPasteMarginRatio() * 100.0 );
|
||||
if( m_currentModule->GetLocalSolderPasteMarginRatio() == 0.0 )
|
||||
msg.Printf( wxT( "-%.1f" ), m_currentModule->GetLocalSolderPasteMarginRatio() * 100.0 );
|
||||
else
|
||||
msg.Printf( wxT( "%.1f" ), m_CurrentModule->GetLocalSolderPasteMarginRatio() * 100.0 );
|
||||
msg.Printf( wxT( "%.1f" ), m_currentModule->GetLocalSolderPasteMarginRatio() * 100.0 );
|
||||
|
||||
m_SolderPasteMarginRatioCtrl->SetValue( msg );
|
||||
|
||||
// Add solder paste margin ration in per cent
|
||||
// for the usual default value 0.0, display -0.0 (or -0,0 in some countries)
|
||||
msg.Printf( wxT( "%.1f" ),
|
||||
m_CurrentModule->GetLocalSolderPasteMarginRatio() * 100.0 );
|
||||
m_currentModule->GetLocalSolderPasteMarginRatio() * 100.0 );
|
||||
|
||||
if( m_CurrentModule->GetLocalSolderPasteMarginRatio() == 0.0 &&
|
||||
if( m_currentModule->GetLocalSolderPasteMarginRatio() == 0.0 &&
|
||||
msg[0] == '0') // Sometimes Printf adds a sign if the value is very small (0.0)
|
||||
m_SolderPasteMarginRatioCtrl->SetValue( wxT("-") + msg );
|
||||
else
|
||||
|
@ -204,9 +204,9 @@ void DIALOG_MODULE_MODULE_EDITOR::InitModeditProperties()
|
|||
// if m_3D_ShapeNameListBox is not empty, preselect first 3D shape
|
||||
if( m_3D_ShapeNameListBox->GetCount() > 0 )
|
||||
{
|
||||
m_LastSelected3DShapeIndex = 0;
|
||||
m_3D_ShapeNameListBox->SetSelection( m_LastSelected3DShapeIndex );
|
||||
Transfert3DValuesToDisplay( m_Shapes3D_list[m_LastSelected3DShapeIndex] );
|
||||
m_lastSelected3DShapeIndex = 0;
|
||||
m_3D_ShapeNameListBox->SetSelection( m_lastSelected3DShapeIndex );
|
||||
Transfert3DValuesToDisplay( m_shapes3D_list[m_lastSelected3DShapeIndex] );
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -231,15 +231,15 @@ void DIALOG_MODULE_MODULE_EDITOR::Transfert3DValuesToDisplay( S3D_MASTER * aStru
|
|||
}
|
||||
}
|
||||
|
||||
/** Copy 3D info displayed in dialog box to values in a item in m_Shapes3D_list
|
||||
* @param aIndexSelection = item index in m_Shapes3D_list
|
||||
/** Copy 3D info displayed in dialog box to values in a item in m_shapes3D_list
|
||||
* @param aIndexSelection = item index in m_shapes3D_list
|
||||
*/
|
||||
void DIALOG_MODULE_MODULE_EDITOR::TransfertDisplayTo3DValues( int aIndexSelection )
|
||||
{
|
||||
if( aIndexSelection >= (int)m_Shapes3D_list.size() )
|
||||
if( aIndexSelection >= (int)m_shapes3D_list.size() )
|
||||
return;
|
||||
|
||||
S3D_MASTER * struct3DDest = m_Shapes3D_list[aIndexSelection];
|
||||
S3D_MASTER * struct3DDest = m_shapes3D_list[aIndexSelection];
|
||||
struct3DDest->m_MatScale = m_3D_Scale->GetValue();
|
||||
struct3DDest->m_MatRotation = m_3D_Rotation->GetValue();
|
||||
struct3DDest->m_MatPosition = m_3D_Offset->GetValue();
|
||||
|
@ -249,20 +249,20 @@ void DIALOG_MODULE_MODULE_EDITOR::TransfertDisplayTo3DValues( int aIndexSelectio
|
|||
void DIALOG_MODULE_MODULE_EDITOR::On3DShapeNameSelected(wxCommandEvent& event)
|
||||
/***********************************************************/
|
||||
{
|
||||
if( m_LastSelected3DShapeIndex >= 0 )
|
||||
TransfertDisplayTo3DValues( m_LastSelected3DShapeIndex );
|
||||
m_LastSelected3DShapeIndex = m_3D_ShapeNameListBox->GetSelection();
|
||||
if( m_lastSelected3DShapeIndex >= 0 )
|
||||
TransfertDisplayTo3DValues( m_lastSelected3DShapeIndex );
|
||||
m_lastSelected3DShapeIndex = m_3D_ShapeNameListBox->GetSelection();
|
||||
|
||||
if( m_LastSelected3DShapeIndex < 0 ) // happens under wxGTK when deleting an item in m_3D_ShapeNameListBox wxListBox
|
||||
if( m_lastSelected3DShapeIndex < 0 ) // happens under wxGTK when deleting an item in m_3D_ShapeNameListBox wxListBox
|
||||
return;
|
||||
|
||||
if( m_LastSelected3DShapeIndex >= (int)m_Shapes3D_list.size() )
|
||||
if( m_lastSelected3DShapeIndex >= (int)m_shapes3D_list.size() )
|
||||
{
|
||||
wxMessageBox(wxT("On3DShapeNameSelected() error"));
|
||||
m_LastSelected3DShapeIndex = -1;
|
||||
m_lastSelected3DShapeIndex = -1;
|
||||
return;
|
||||
}
|
||||
Transfert3DValuesToDisplay( m_Shapes3D_list[m_LastSelected3DShapeIndex] );
|
||||
Transfert3DValuesToDisplay( m_shapes3D_list[m_lastSelected3DShapeIndex] );
|
||||
}
|
||||
|
||||
|
||||
|
@ -270,23 +270,23 @@ void DIALOG_MODULE_MODULE_EDITOR::On3DShapeNameSelected(wxCommandEvent& event)
|
|||
void DIALOG_MODULE_MODULE_EDITOR::Remove3DShape(wxCommandEvent& event)
|
||||
/***********************************************************/
|
||||
{
|
||||
if( m_LastSelected3DShapeIndex >= 0 )
|
||||
TransfertDisplayTo3DValues( m_LastSelected3DShapeIndex );
|
||||
if( m_lastSelected3DShapeIndex >= 0 )
|
||||
TransfertDisplayTo3DValues( m_lastSelected3DShapeIndex );
|
||||
|
||||
int ii = m_3D_ShapeNameListBox->GetSelection();
|
||||
if( ii < 0 )
|
||||
return;
|
||||
|
||||
m_Shapes3D_list.erase(m_Shapes3D_list.begin() + ii );
|
||||
m_shapes3D_list.erase(m_shapes3D_list.begin() + ii );
|
||||
m_3D_ShapeNameListBox->Delete(ii);
|
||||
|
||||
if( m_3D_ShapeNameListBox->GetCount() == 0)
|
||||
Transfert3DValuesToDisplay( NULL );
|
||||
else
|
||||
{
|
||||
m_LastSelected3DShapeIndex = 0;
|
||||
m_3D_ShapeNameListBox->SetSelection(m_LastSelected3DShapeIndex);
|
||||
Transfert3DValuesToDisplay( m_Shapes3D_list[m_LastSelected3DShapeIndex] );
|
||||
m_lastSelected3DShapeIndex = 0;
|
||||
m_3D_ShapeNameListBox->SetSelection(m_lastSelected3DShapeIndex);
|
||||
Transfert3DValuesToDisplay( m_shapes3D_list[m_lastSelected3DShapeIndex] );
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -348,15 +348,15 @@ void DIALOG_MODULE_MODULE_EDITOR::BrowseAndAdd3DLib( wxCommandEvent& event )
|
|||
#endif
|
||||
|
||||
new3DShape->m_Shape3DName = shortfilename;
|
||||
m_Shapes3D_list.push_back( new3DShape );
|
||||
m_shapes3D_list.push_back( new3DShape );
|
||||
m_3D_ShapeNameListBox->Append( shortfilename );
|
||||
|
||||
if( m_LastSelected3DShapeIndex >= 0 )
|
||||
TransfertDisplayTo3DValues( m_LastSelected3DShapeIndex );
|
||||
if( m_lastSelected3DShapeIndex >= 0 )
|
||||
TransfertDisplayTo3DValues( m_lastSelected3DShapeIndex );
|
||||
|
||||
m_LastSelected3DShapeIndex = m_3D_ShapeNameListBox->GetCount() - 1;
|
||||
m_3D_ShapeNameListBox->SetSelection(m_LastSelected3DShapeIndex);
|
||||
Transfert3DValuesToDisplay( m_Shapes3D_list[m_LastSelected3DShapeIndex] );
|
||||
m_lastSelected3DShapeIndex = m_3D_ShapeNameListBox->GetCount() - 1;
|
||||
m_3D_ShapeNameListBox->SetSelection(m_lastSelected3DShapeIndex);
|
||||
Transfert3DValuesToDisplay( m_shapes3D_list[m_lastSelected3DShapeIndex] );
|
||||
|
||||
}
|
||||
|
||||
|
@ -368,52 +368,67 @@ void DIALOG_MODULE_MODULE_EDITOR::OnCancelClick( wxCommandEvent& event )
|
|||
EndModal( -1 );
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************/
|
||||
void DIALOG_MODULE_MODULE_EDITOR::OnOkClick( wxCommandEvent& event )
|
||||
/******************************************************************************/
|
||||
{
|
||||
m_Parent->SaveCopyInUndoList( m_CurrentModule, UR_MODEDIT );
|
||||
// First, test for invalid chars in module name
|
||||
wxString footprintName = m_FootprintNameCtrl->GetValue();
|
||||
if( ! footprintName.IsEmpty() )
|
||||
{
|
||||
if( ! MODULE::IsLibNameValid( footprintName ) )
|
||||
{
|
||||
wxString msg;
|
||||
msg.Printf( _("Error:\none of invalid chars <%s> found\nin <%s>" ),
|
||||
MODULE::ReturnStringLibNameInvalidChars( true ),
|
||||
GetChars( footprintName ) );
|
||||
|
||||
DisplayError( NULL, msg );
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
m_parent->SaveCopyInUndoList( m_currentModule, UR_MODEDIT );
|
||||
|
||||
if( m_AutoPlaceCtrl->GetSelection() == 1 )
|
||||
m_CurrentModule->m_ModuleStatus |= MODULE_is_LOCKED;
|
||||
m_currentModule->m_ModuleStatus |= MODULE_is_LOCKED;
|
||||
else
|
||||
m_CurrentModule->m_ModuleStatus &= ~MODULE_is_LOCKED;
|
||||
m_currentModule->m_ModuleStatus &= ~MODULE_is_LOCKED;
|
||||
|
||||
switch( m_AttributsCtrl->GetSelection() )
|
||||
{
|
||||
case 0:
|
||||
m_CurrentModule->m_Attributs = 0;
|
||||
m_currentModule->m_Attributs = 0;
|
||||
break;
|
||||
|
||||
case 1:
|
||||
m_CurrentModule->m_Attributs = MOD_CMS;
|
||||
m_currentModule->m_Attributs = MOD_CMS;
|
||||
break;
|
||||
|
||||
case 2:
|
||||
m_CurrentModule->m_Attributs = MOD_VIRTUAL;
|
||||
m_currentModule->m_Attributs = MOD_VIRTUAL;
|
||||
break;
|
||||
}
|
||||
|
||||
m_CurrentModule->m_CntRot90 = m_CostRot90Ctrl->GetValue();
|
||||
m_CurrentModule->m_CntRot180 = m_CostRot180Ctrl->GetValue();
|
||||
m_CurrentModule->m_Doc = m_DocCtrl->GetValue();
|
||||
m_CurrentModule->m_KeyWord = m_KeywordCtrl->GetValue();
|
||||
m_currentModule->m_CntRot90 = m_CostRot90Ctrl->GetValue();
|
||||
m_currentModule->m_CntRot180 = m_CostRot180Ctrl->GetValue();
|
||||
m_currentModule->m_Doc = m_DocCtrl->GetValue();
|
||||
m_currentModule->m_KeyWord = m_KeywordCtrl->GetValue();
|
||||
|
||||
// Init footprint name in library
|
||||
if( ! m_FootprintNameCtrl->GetValue( ).IsEmpty() )
|
||||
m_CurrentModule->m_LibRef = m_FootprintNameCtrl->GetValue( );
|
||||
if( ! footprintName.IsEmpty() )
|
||||
m_currentModule->m_LibRef = footprintName;
|
||||
|
||||
// Init Fields:
|
||||
m_CurrentModule->m_Reference->Copy(m_ReferenceCopy );
|
||||
m_CurrentModule->m_Value->Copy(m_ValueCopy );
|
||||
m_currentModule->m_Reference->Copy(m_referenceCopy );
|
||||
m_currentModule->m_Value->Copy(m_valueCopy );
|
||||
|
||||
// Initialize masks clearances
|
||||
m_CurrentModule->SetLocalClearance( ReturnValueFromTextCtrl( *m_NetClearanceValueCtrl ) );
|
||||
m_currentModule->SetLocalClearance( ReturnValueFromTextCtrl( *m_NetClearanceValueCtrl ) );
|
||||
|
||||
m_CurrentModule->SetLocalSolderMaskMargin( ReturnValueFromTextCtrl( *m_SolderMaskMarginCtrl ) );
|
||||
m_currentModule->SetLocalSolderMaskMargin( ReturnValueFromTextCtrl( *m_SolderMaskMarginCtrl ) );
|
||||
|
||||
m_CurrentModule->SetLocalSolderPasteMargin( ReturnValueFromTextCtrl( *m_SolderPasteMarginCtrl ) );
|
||||
m_currentModule->SetLocalSolderPasteMargin( ReturnValueFromTextCtrl( *m_SolderPasteMarginCtrl ) );
|
||||
double dtmp;
|
||||
wxString msg = m_SolderPasteMarginRatioCtrl->GetValue();
|
||||
msg.ToDouble( &dtmp );
|
||||
|
@ -425,22 +440,22 @@ void DIALOG_MODULE_MODULE_EDITOR::OnOkClick( wxCommandEvent& event )
|
|||
if( dtmp > 0.0 )
|
||||
dtmp = 0.0;
|
||||
|
||||
m_CurrentModule->SetLocalSolderPasteMarginRatio( dtmp / 100 );
|
||||
m_currentModule->SetLocalSolderPasteMarginRatio( dtmp / 100 );
|
||||
|
||||
// Update 3D shape list
|
||||
int ii = m_3D_ShapeNameListBox->GetSelection();
|
||||
if ( ii >= 0 )
|
||||
TransfertDisplayTo3DValues( ii );
|
||||
S3D_MASTER* draw3D = m_CurrentModule->m_3D_Drawings;
|
||||
for( unsigned ii = 0; ii < m_Shapes3D_list.size(); ii++ )
|
||||
S3D_MASTER* draw3D = m_currentModule->m_3D_Drawings;
|
||||
for( unsigned ii = 0; ii < m_shapes3D_list.size(); ii++ )
|
||||
{
|
||||
S3D_MASTER* draw3DCopy = m_Shapes3D_list[ii];
|
||||
S3D_MASTER* draw3DCopy = m_shapes3D_list[ii];
|
||||
if( draw3DCopy->m_Shape3DName.IsEmpty() )
|
||||
continue;
|
||||
if( draw3D == NULL )
|
||||
{
|
||||
draw3D = new S3D_MASTER( draw3D );
|
||||
m_CurrentModule->m_3D_Drawings.Append( draw3D );
|
||||
m_currentModule->m_3D_Drawings.Append( draw3D );
|
||||
}
|
||||
|
||||
draw3D->m_Shape3DName = draw3DCopy->m_Shape3DName;
|
||||
|
@ -456,17 +471,17 @@ void DIALOG_MODULE_MODULE_EDITOR::OnOkClick( wxCommandEvent& event )
|
|||
for( ; draw3D != NULL; draw3D = nextdraw3D )
|
||||
{
|
||||
nextdraw3D = (S3D_MASTER*) draw3D->Next();
|
||||
delete m_CurrentModule->m_3D_Drawings.Remove( draw3D );
|
||||
delete m_currentModule->m_3D_Drawings.Remove( draw3D );
|
||||
}
|
||||
|
||||
// Fill shape list with one void entry, if no entry
|
||||
if( m_CurrentModule->m_3D_Drawings == NULL )
|
||||
m_CurrentModule->m_3D_Drawings.PushBack( new S3D_MASTER( m_CurrentModule ) );
|
||||
if( m_currentModule->m_3D_Drawings == NULL )
|
||||
m_currentModule->m_3D_Drawings.PushBack( new S3D_MASTER( m_currentModule ) );
|
||||
|
||||
|
||||
m_CurrentModule->CalculateBoundingBox();
|
||||
m_currentModule->CalculateBoundingBox();
|
||||
|
||||
m_Parent->OnModify();
|
||||
m_parent->OnModify();
|
||||
|
||||
EndModal( 1 );
|
||||
}
|
||||
|
@ -476,21 +491,21 @@ void DIALOG_MODULE_MODULE_EDITOR::OnOkClick( wxCommandEvent& event )
|
|||
void DIALOG_MODULE_MODULE_EDITOR::OnEditReference(wxCommandEvent& event)
|
||||
/***********************************************************************/
|
||||
{
|
||||
wxPoint tmp = m_Parent->GetScreen()->GetCrossHairPosition();
|
||||
m_Parent->GetScreen()->SetCrossHairPosition( m_ReferenceCopy->m_Pos );
|
||||
m_Parent->InstallTextModOptionsFrame( m_ReferenceCopy, NULL );
|
||||
m_Parent->GetScreen()->SetCrossHairPosition( tmp );
|
||||
m_ReferenceCtrl->SetValue(m_ReferenceCopy->m_Text);
|
||||
wxPoint tmp = m_parent->GetScreen()->GetCrossHairPosition();
|
||||
m_parent->GetScreen()->SetCrossHairPosition( m_referenceCopy->m_Pos );
|
||||
m_parent->InstallTextModOptionsFrame( m_referenceCopy, NULL );
|
||||
m_parent->GetScreen()->SetCrossHairPosition( tmp );
|
||||
m_ReferenceCtrl->SetValue(m_referenceCopy->m_Text);
|
||||
}
|
||||
|
||||
/***********************************************************/
|
||||
void DIALOG_MODULE_MODULE_EDITOR::OnEditValue(wxCommandEvent& event)
|
||||
/***********************************************************/
|
||||
{
|
||||
wxPoint tmp = m_Parent->GetScreen()->GetCrossHairPosition();
|
||||
m_Parent->GetScreen()->SetCrossHairPosition( m_ValueCopy->m_Pos );
|
||||
m_Parent->InstallTextModOptionsFrame( m_ValueCopy, NULL );
|
||||
m_Parent->GetScreen()->SetCrossHairPosition( tmp);
|
||||
m_ValueCtrl->SetValue(m_ValueCopy->m_Text);
|
||||
wxPoint tmp = m_parent->GetScreen()->GetCrossHairPosition();
|
||||
m_parent->GetScreen()->SetCrossHairPosition( m_valueCopy->m_Pos );
|
||||
m_parent->InstallTextModOptionsFrame( m_valueCopy, NULL );
|
||||
m_parent->GetScreen()->SetCrossHairPosition( tmp);
|
||||
m_ValueCtrl->SetValue(m_valueCopy->m_Text);
|
||||
}
|
||||
|
||||
|
|
|
@ -17,12 +17,12 @@ class DIALOG_MODULE_MODULE_EDITOR : public DIALOG_MODULE_MODULE_EDITOR_BASE
|
|||
{
|
||||
private:
|
||||
|
||||
FOOTPRINT_EDIT_FRAME* m_Parent;
|
||||
MODULE* m_CurrentModule;
|
||||
TEXTE_MODULE* m_ReferenceCopy;
|
||||
TEXTE_MODULE* m_ValueCopy;
|
||||
std::vector <S3D_MASTER*> m_Shapes3D_list;
|
||||
int m_LastSelected3DShapeIndex;
|
||||
FOOTPRINT_EDIT_FRAME* m_parent;
|
||||
MODULE* m_currentModule;
|
||||
TEXTE_MODULE* m_referenceCopy;
|
||||
TEXTE_MODULE* m_valueCopy;
|
||||
std::vector <S3D_MASTER*> m_shapes3D_list;
|
||||
int m_lastSelected3DShapeIndex;
|
||||
VERTEX_VALUE_CTRL * m_3D_Scale;
|
||||
VERTEX_VALUE_CTRL * m_3D_Offset;
|
||||
VERTEX_VALUE_CTRL * m_3D_Rotation;
|
||||
|
@ -34,7 +34,7 @@ public:
|
|||
~DIALOG_MODULE_MODULE_EDITOR();
|
||||
|
||||
private:
|
||||
void InitModeditProperties();
|
||||
void initModeditProperties();
|
||||
void Transfert3DValuesToDisplay( S3D_MASTER * aStruct3DSource );
|
||||
void TransfertDisplayTo3DValues( int aIndexSelection );
|
||||
void OnEditValue( wxCommandEvent& event );
|
||||
|
|
|
@ -566,6 +566,17 @@ bool PCB_BASE_FRAME::Save_Module_In_Library( const wxString& aLibPath,
|
|||
if( footprintName.IsEmpty() )
|
||||
return false;
|
||||
|
||||
if( ! MODULE::IsLibNameValid( footprintName ) )
|
||||
{
|
||||
wxString msg;
|
||||
msg.Printf( _("Error:\none of invalid chars <%s> found\nin <%s>" ),
|
||||
MODULE::ReturnStringLibNameInvalidChars( true ),
|
||||
GetChars( footprintName ) );
|
||||
|
||||
DisplayError( NULL, msg );
|
||||
return false;
|
||||
}
|
||||
|
||||
aModule->SetLibRef( footprintName );
|
||||
}
|
||||
|
||||
|
|
|
@ -428,7 +428,7 @@ void PCB_EDIT_FRAME::ReCreateMenuBar()
|
|||
|
||||
AddMenuItem( configmenu, ID_PCB_LIB_TABLE_EDIT,
|
||||
_( "Li&brary Tables" ), _( "Setup footprint libraries" ),
|
||||
KiBitmap( library_xpm ) );
|
||||
KiBitmap( library_table_xpm ) );
|
||||
|
||||
// Colors and Visibility are also handled by the layers manager toolbar
|
||||
AddMenuItem( configmenu, ID_MENU_PCB_SHOW_HIDE_LAYERS_MANAGER_DIALOG,
|
||||
|
|
Loading…
Reference in New Issue