7
mirror of https://gitlab.com/kicad/code/kicad.git synced 2025-04-18 20:59:17 +00:00

Add new table icon

Replace a couple uses of the old spreadsheet
This commit is contained in:
Seth Hillbrand 2025-02-01 09:53:12 -06:00
parent 5dc8e9a5de
commit 56ca054c0d
19 changed files with 355 additions and 15 deletions

View File

@ -741,6 +741,7 @@ void BuildBitmapInfo( std::unordered_map<BITMAPS, std::vector<BITMAP_INFO>>& aBi
aBitmapInfoCache[BITMAPS::swap].emplace_back( BITMAPS::swap, wxT( "swap_24.png" ), 24, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::swap_layer].emplace_back( BITMAPS::swap_layer, wxT( "swap_layer_24.png" ), 24, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::switch_corner_rounding_shape].emplace_back( BITMAPS::switch_corner_rounding_shape, wxT( "switch_corner_rounding_shape_24.png" ), 24, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table].emplace_back( BITMAPS::table, wxT( "table_24.png" ), 24, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_column_after].emplace_back( BITMAPS::table_add_column_after, wxT( "table_add_column_after_24.png" ), 24, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_column_before].emplace_back( BITMAPS::table_add_column_before, wxT( "table_add_column_before_24.png" ), 24, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_row_above].emplace_back( BITMAPS::table_add_row_above, wxT( "table_add_row_above_24.png" ), 24, wxT( "light" ) );
@ -1176,6 +1177,7 @@ void BuildBitmapInfo( std::unordered_map<BITMAPS, std::vector<BITMAP_INFO>>& aBi
aBitmapInfoCache[BITMAPS::swap].emplace_back( BITMAPS::swap, wxT( "swap_dark_24.png" ), 24, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::swap_layer].emplace_back( BITMAPS::swap_layer, wxT( "swap_layer_dark_24.png" ), 24, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::switch_corner_rounding_shape].emplace_back( BITMAPS::switch_corner_rounding_shape, wxT( "switch_corner_rounding_shape_dark_24.png" ), 24, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table].emplace_back( BITMAPS::table, wxT( "table_dark_24.png" ), 24, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_column_after].emplace_back( BITMAPS::table_add_column_after, wxT( "table_add_column_after_dark_24.png" ), 24, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_column_before].emplace_back( BITMAPS::table_add_column_before, wxT( "table_add_column_before_dark_24.png" ), 24, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_row_above].emplace_back( BITMAPS::table_add_row_above, wxT( "table_add_row_above_dark_24.png" ), 24, wxT( "dark" ) );
@ -1611,6 +1613,7 @@ void BuildBitmapInfo( std::unordered_map<BITMAPS, std::vector<BITMAP_INFO>>& aBi
aBitmapInfoCache[BITMAPS::swap].emplace_back( BITMAPS::swap, wxT( "swap_16.png" ), 16, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::swap_layer].emplace_back( BITMAPS::swap_layer, wxT( "swap_layer_16.png" ), 16, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::switch_corner_rounding_shape].emplace_back( BITMAPS::switch_corner_rounding_shape, wxT( "switch_corner_rounding_shape_16.png" ), 16, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table].emplace_back( BITMAPS::table, wxT( "table_16.png" ), 16, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_column_after].emplace_back( BITMAPS::table_add_column_after, wxT( "table_add_column_after_16.png" ), 16, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_column_before].emplace_back( BITMAPS::table_add_column_before, wxT( "table_add_column_before_16.png" ), 16, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_row_above].emplace_back( BITMAPS::table_add_row_above, wxT( "table_add_row_above_16.png" ), 16, wxT( "light" ) );
@ -2046,6 +2049,7 @@ void BuildBitmapInfo( std::unordered_map<BITMAPS, std::vector<BITMAP_INFO>>& aBi
aBitmapInfoCache[BITMAPS::swap].emplace_back( BITMAPS::swap, wxT( "swap_dark_16.png" ), 16, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::swap_layer].emplace_back( BITMAPS::swap_layer, wxT( "swap_layer_dark_16.png" ), 16, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::switch_corner_rounding_shape].emplace_back( BITMAPS::switch_corner_rounding_shape, wxT( "switch_corner_rounding_shape_dark_16.png" ), 16, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table].emplace_back( BITMAPS::table, wxT( "table_dark_16.png" ), 16, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_column_after].emplace_back( BITMAPS::table_add_column_after, wxT( "table_add_column_after_dark_16.png" ), 16, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_column_before].emplace_back( BITMAPS::table_add_column_before, wxT( "table_add_column_before_dark_16.png" ), 16, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_row_above].emplace_back( BITMAPS::table_add_row_above, wxT( "table_add_row_above_dark_16.png" ), 16, wxT( "dark" ) );
@ -2481,6 +2485,7 @@ void BuildBitmapInfo( std::unordered_map<BITMAPS, std::vector<BITMAP_INFO>>& aBi
aBitmapInfoCache[BITMAPS::swap].emplace_back( BITMAPS::swap, wxT( "swap_32.png" ), 32, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::swap_layer].emplace_back( BITMAPS::swap_layer, wxT( "swap_layer_32.png" ), 32, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::switch_corner_rounding_shape].emplace_back( BITMAPS::switch_corner_rounding_shape, wxT( "switch_corner_rounding_shape_32.png" ), 32, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table].emplace_back( BITMAPS::table, wxT( "table_32.png" ), 32, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_column_after].emplace_back( BITMAPS::table_add_column_after, wxT( "table_add_column_after_32.png" ), 32, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_column_before].emplace_back( BITMAPS::table_add_column_before, wxT( "table_add_column_before_32.png" ), 32, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_row_above].emplace_back( BITMAPS::table_add_row_above, wxT( "table_add_row_above_32.png" ), 32, wxT( "light" ) );
@ -2916,6 +2921,7 @@ void BuildBitmapInfo( std::unordered_map<BITMAPS, std::vector<BITMAP_INFO>>& aBi
aBitmapInfoCache[BITMAPS::swap].emplace_back( BITMAPS::swap, wxT( "swap_dark_32.png" ), 32, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::swap_layer].emplace_back( BITMAPS::swap_layer, wxT( "swap_layer_dark_32.png" ), 32, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::switch_corner_rounding_shape].emplace_back( BITMAPS::switch_corner_rounding_shape, wxT( "switch_corner_rounding_shape_dark_32.png" ), 32, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table].emplace_back( BITMAPS::table, wxT( "table_dark_32.png" ), 32, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_column_after].emplace_back( BITMAPS::table_add_column_after, wxT( "table_add_column_after_dark_32.png" ), 32, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_column_before].emplace_back( BITMAPS::table_add_column_before, wxT( "table_add_column_before_dark_32.png" ), 32, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_row_above].emplace_back( BITMAPS::table_add_row_above, wxT( "table_add_row_above_dark_32.png" ), 32, wxT( "dark" ) );
@ -3351,6 +3357,7 @@ void BuildBitmapInfo( std::unordered_map<BITMAPS, std::vector<BITMAP_INFO>>& aBi
aBitmapInfoCache[BITMAPS::swap].emplace_back( BITMAPS::swap, wxT( "swap_48.png" ), 48, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::swap_layer].emplace_back( BITMAPS::swap_layer, wxT( "swap_layer_48.png" ), 48, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::switch_corner_rounding_shape].emplace_back( BITMAPS::switch_corner_rounding_shape, wxT( "switch_corner_rounding_shape_48.png" ), 48, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table].emplace_back( BITMAPS::table, wxT( "table_48.png" ), 48, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_column_after].emplace_back( BITMAPS::table_add_column_after, wxT( "table_add_column_after_48.png" ), 48, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_column_before].emplace_back( BITMAPS::table_add_column_before, wxT( "table_add_column_before_48.png" ), 48, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_row_above].emplace_back( BITMAPS::table_add_row_above, wxT( "table_add_row_above_48.png" ), 48, wxT( "light" ) );
@ -3786,6 +3793,7 @@ void BuildBitmapInfo( std::unordered_map<BITMAPS, std::vector<BITMAP_INFO>>& aBi
aBitmapInfoCache[BITMAPS::swap].emplace_back( BITMAPS::swap, wxT( "swap_dark_48.png" ), 48, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::swap_layer].emplace_back( BITMAPS::swap_layer, wxT( "swap_layer_dark_48.png" ), 48, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::switch_corner_rounding_shape].emplace_back( BITMAPS::switch_corner_rounding_shape, wxT( "switch_corner_rounding_shape_dark_48.png" ), 48, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table].emplace_back( BITMAPS::table, wxT( "table_dark_48.png" ), 48, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_column_after].emplace_back( BITMAPS::table_add_column_after, wxT( "table_add_column_after_dark_48.png" ), 48, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_column_before].emplace_back( BITMAPS::table_add_column_before, wxT( "table_add_column_before_dark_48.png" ), 48, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_row_above].emplace_back( BITMAPS::table_add_row_above, wxT( "table_add_row_above_dark_48.png" ), 48, wxT( "dark" ) );
@ -4221,6 +4229,7 @@ void BuildBitmapInfo( std::unordered_map<BITMAPS, std::vector<BITMAP_INFO>>& aBi
aBitmapInfoCache[BITMAPS::swap].emplace_back( BITMAPS::swap, wxT( "swap_64.png" ), 64, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::swap_layer].emplace_back( BITMAPS::swap_layer, wxT( "swap_layer_64.png" ), 64, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::switch_corner_rounding_shape].emplace_back( BITMAPS::switch_corner_rounding_shape, wxT( "switch_corner_rounding_shape_64.png" ), 64, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table].emplace_back( BITMAPS::table, wxT( "table_64.png" ), 64, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_column_after].emplace_back( BITMAPS::table_add_column_after, wxT( "table_add_column_after_64.png" ), 64, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_column_before].emplace_back( BITMAPS::table_add_column_before, wxT( "table_add_column_before_64.png" ), 64, wxT( "light" ) );
aBitmapInfoCache[BITMAPS::table_add_row_above].emplace_back( BITMAPS::table_add_row_above, wxT( "table_add_row_above_64.png" ), 64, wxT( "light" ) );
@ -4656,6 +4665,7 @@ void BuildBitmapInfo( std::unordered_map<BITMAPS, std::vector<BITMAP_INFO>>& aBi
aBitmapInfoCache[BITMAPS::swap].emplace_back( BITMAPS::swap, wxT( "swap_dark_64.png" ), 64, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::swap_layer].emplace_back( BITMAPS::swap_layer, wxT( "swap_layer_dark_64.png" ), 64, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::switch_corner_rounding_shape].emplace_back( BITMAPS::switch_corner_rounding_shape, wxT( "switch_corner_rounding_shape_dark_64.png" ), 64, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table].emplace_back( BITMAPS::table, wxT( "table_dark_64.png" ), 64, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_column_after].emplace_back( BITMAPS::table_add_column_after, wxT( "table_add_column_after_dark_64.png" ), 64, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_column_before].emplace_back( BITMAPS::table_add_column_before, wxT( "table_add_column_before_dark_64.png" ), 64, wxT( "dark" ) );
aBitmapInfoCache[BITMAPS::table_add_row_above].emplace_back( BITMAPS::table_add_row_above, wxT( "table_add_row_above_dark_64.png" ), 64, wxT( "dark" ) );

View File

@ -375,84 +375,84 @@ TOOL_ACTION ACTIONS::selectColumns( TOOL_ACTION_ARGS()
.Scope( AS_GLOBAL )
.FriendlyName( _( "Select Column(s)" ) )
.Tooltip( _( "Select complete column(s) containing the current selected cell(s)" ) )
.Icon( BITMAPS::table_select_column ) ); // JEY TODO: need icon
.Icon( BITMAPS::table_select_column ) );
TOOL_ACTION ACTIONS::selectRows( TOOL_ACTION_ARGS()
.Name( "common.InteractiveSelection.Rows" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Select Row(s)" ) )
.Tooltip( _( "Select complete row(s) containing the current selected cell(s)" ) )
.Icon( BITMAPS::table_select_row ) ); // JEY TODO: need icon
.Icon( BITMAPS::table_select_row ) );
TOOL_ACTION ACTIONS::selectTable( TOOL_ACTION_ARGS()
.Name( "common.InteractiveSelection.SelectTable" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Select Table" ) )
.Tooltip( _( "Select parent table of selected cell(s)" ) )
.Icon( BITMAPS::table_select ) ); // JEY TODO: need icon
.Icon( BITMAPS::table_select ) );
TOOL_ACTION ACTIONS::addRowAbove( TOOL_ACTION_ARGS()
.Name( "common.TableEditor.addRowAbove" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Add Row Above" ) )
.Tooltip( _( "Insert a new table row above the selected cell(s)" ) )
.Icon( BITMAPS::table_add_row_above ) ); // JEY TODO: need icon
.Icon( BITMAPS::table_add_row_above ) );
TOOL_ACTION ACTIONS::addRowBelow( TOOL_ACTION_ARGS()
.Name( "common.TableEditor.addRowBelow" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Add Row Below" ) )
.Tooltip( _( "Insert a new table row below the selected cell(s)" ) )
.Icon( BITMAPS::table_add_row_below ) ); // JEY TODO: need icon
.Icon( BITMAPS::table_add_row_below ) );
TOOL_ACTION ACTIONS::addColBefore( TOOL_ACTION_ARGS()
.Name( "common.TableEditor.addColBefore" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Add Column Before" ) )
.Tooltip( _( "Insert a new table column before the selected cell(s)" ) )
.Icon( BITMAPS::table_add_column_before ) ); // JEY TODO: need icon
.Icon( BITMAPS::table_add_column_before ) );
TOOL_ACTION ACTIONS::addColAfter( TOOL_ACTION_ARGS()
.Name( "common.TableEditor.addColAfter" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Add Column After" ) )
.Tooltip( _( "Insert a new table column after the selected cell(s)" ) )
.Icon( BITMAPS::table_add_column_after ) ); // JEY TODO: need icon
.Icon( BITMAPS::table_add_column_after ) );
TOOL_ACTION ACTIONS::deleteRows( TOOL_ACTION_ARGS()
.Name( "common.TableEditor.deleteRows" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Delete Row(s)" ) )
.Tooltip( _( "Delete rows containing the currently selected cell(s)" ) )
.Icon( BITMAPS::table_delete_row ) ); // JEY TODO: need icon
.Icon( BITMAPS::table_delete_row ) );
TOOL_ACTION ACTIONS::deleteColumns( TOOL_ACTION_ARGS()
.Name( "common.TableEditor.deleteColumns" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Delete Column(s)" ) )
.Tooltip( _( "Delete columns containing the currently selected cell(s)" ) )
.Icon( BITMAPS::table_delete_column ) ); // JEY TODO: need icon
.Icon( BITMAPS::table_delete_column ) );
TOOL_ACTION ACTIONS::mergeCells( TOOL_ACTION_ARGS()
.Name( "common.TableEditor.mergeCells" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Merge Cells" ) )
.Tooltip( _( "Turn selected table cells into a single cell" ) )
.Icon( BITMAPS::spreadsheet ) ); // JEY TODO: need icon
.Icon( BITMAPS::table ) ); // JEY TODO: need icon
TOOL_ACTION ACTIONS::unmergeCells( TOOL_ACTION_ARGS()
.Name( "common.TableEditor.unmergeCell" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Unmerge Cells" ) )
.Tooltip( _( "Turn merged table cells back into separate cells." ) )
.Icon( BITMAPS::spreadsheet ) ); // JEY TODO: need icon
.Icon( BITMAPS::table ) ); // JEY TODO: need icon
TOOL_ACTION ACTIONS::editTable( TOOL_ACTION_ARGS()
.Name( "pcbnew.TableEditor.editTable" )
.Scope( AS_GLOBAL )
.DefaultHotkey( MD_CTRL + 'E' )
.FriendlyName( _( "Edit Table..." ) )
.Icon( BITMAPS::table_edit ) ); // JEY TODO: need icon
.Icon( BITMAPS::table_edit ) );
TOOL_ACTION ACTIONS::activatePointEditor( TOOL_ACTION_ARGS()
.Name( "common.Control.activatePointEditor" )

View File

@ -601,7 +601,7 @@ TOOL_ACTION EE_ACTIONS::drawTable( TOOL_ACTION_ARGS()
.Name( "eeschema.InteractiveDrawing.drawTable" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Draw Tables" ) )
.Icon( BITMAPS::spreadsheet ) // JEY TODO
.Icon( BITMAPS::table )
.Flags( AF_ACTIVATE ) );
TOOL_ACTION EE_ACTIONS::drawRectangle( TOOL_ACTION_ARGS()

View File

@ -592,6 +592,7 @@ enum class BITMAPS : unsigned int
swap,
swap_layer,
switch_corner_rounding_shape,
table,
table_add_column_after,
table_add_column_before,
table_add_row_above,

View File

@ -354,7 +354,7 @@ wxString PCB_TABLE::GetItemDescription( UNITS_PROVIDER* aUnitsProvider, bool aFu
BITMAPS PCB_TABLE::GetMenuImage() const
{
return BITMAPS::spreadsheet; // JEY TODO
return BITMAPS::table;
}

View File

@ -197,7 +197,7 @@ TOOL_ACTION PCB_ACTIONS::drawTable( TOOL_ACTION_ARGS()
.Name( "pcbnew.InteractiveDrawing.drawTable" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Draw Tables" ) )
.Icon( BITMAPS::spreadsheet ) // JEY TODO
.Icon( BITMAPS::table )
.Flags( AF_ACTIVATE ) );
TOOL_ACTION PCB_ACTIONS::spacingIncrease( TOOL_ACTION_ARGS()

View File

@ -538,6 +538,7 @@ set( BMAPS_MID
swap
swap_layer
switch_corner_rounding_shape
table
table_add_column_after
table_add_column_before
table_add_row_above

Binary file not shown.

After

(image error) Size: 170 B

Binary file not shown.

After

(image error) Size: 91 B

Binary file not shown.

After

(image error) Size: 145 B

Binary file not shown.

After

(image error) Size: 121 B

Binary file not shown.

After

(image error) Size: 166 B

Binary file not shown.

After

(image error) Size: 222 B

Binary file not shown.

After

(image error) Size: 106 B

Binary file not shown.

After

(image error) Size: 196 B

Binary file not shown.

After

(image error) Size: 141 B

Binary file not shown.

After

(image error) Size: 264 B

View File

@ -0,0 +1,164 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
id="Слой_1"
data-name="Слой 1"
viewBox="0 0 24 24"
version="1.1"
sodipodi:docname="table.svg"
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
xml:space="preserve"
width="24"
height="24"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="3840"
inkscape:window-height="2086"
id="namedview30"
showgrid="false"
inkscape:zoom="9.4920193"
inkscape:cx="-85.28217"
inkscape:cy="37.505191"
inkscape:window-x="0"
inkscape:window-y="55"
inkscape:window-maximized="1"
inkscape:document-rotation="0"
inkscape:current-layer="Слой_1"
inkscape:showpageshadow="2"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showguides="true"><inkscape:grid
type="xygrid"
id="grid_kicad"
spacingx="0.5"
spacingy="0.5"
color="#9999ff"
opacity="0.13"
empspacing="2"
originx="-68"
originy="-170"
units="px"
visible="false" /><inkscape:page
x="0"
y="0"
width="24"
height="24"
id="page89"
margin="0"
bleed="0" /></sodipodi:namedview><metadata
id="metadata43"><rdf:RDF><cc:Work
rdf:about=""><cc:license
rdf:resource="http://creativecommons.org/licenses/by-sa/4.0/" /><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title>about</dc:title></cc:Work><cc:License
rdf:about="http://creativecommons.org/licenses/by-sa/4.0/"><cc:permits
rdf:resource="http://creativecommons.org/ns#Reproduction" /><cc:permits
rdf:resource="http://creativecommons.org/ns#Distribution" /><cc:requires
rdf:resource="http://creativecommons.org/ns#Notice" /><cc:requires
rdf:resource="http://creativecommons.org/ns#Attribution" /><cc:permits
rdf:resource="http://creativecommons.org/ns#DerivativeWorks" /><cc:requires
rdf:resource="http://creativecommons.org/ns#ShareAlike" /></cc:License></rdf:RDF></metadata><defs
id="defs60"><style
id="style58">.cls-1,.cls-2{fill:none;stroke:#ded3dd;stroke-linecap:round;stroke-linejoin:round;}.cls-1{stroke-width:2px;}.cls-2{stroke-width:4px;}</style><style
id="style28017">.cls-1{fill:none;stroke:#ded3dd;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}.cls-2{fill:#42b8eb;}</style><style
id="style220">.cls-1{fill:none;stroke:#f2647e;stroke-linecap:round;stroke-linejoin:round;}.cls-2{fill:#d8d8d8;}.cls-3{fill:#333;}.cls-4{fill:#ded3dd;}.cls-5{fill:#42b8eb;}.cls-6{fill:#848484;}.cls-7{fill:#f2647e;}</style><style
id="style115733">.cls-1{fill:none;stroke:#ded3dd;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}.cls-2{fill:#42b8eb;}</style><style
id="style115838">.cls-1{fill:#ded3dd;}.cls-2{fill:#42b8eb;}</style><style
id="style944">.cls-1{fill:none;stroke:#f2647e;stroke-linecap:round;stroke-linejoin:round;}.cls-2{fill:#f2647e;}.cls-3{fill:#848484;}.cls-4{fill:#ded3dd;}</style><style
id="style115920">.cls-1{fill:#42b8eb;}.cls-2{fill:#ded3dd;}</style><style
id="style27838">.cls-1{fill:#848484;}.cls-2{fill:#ded3dd;}.cls-3,.cls-6{fill:none;}.cls-3{stroke:#848484;stroke-miterlimit:10;stroke-width:0.9553px;}.cls-4{fill:#42b8eb;}.cls-5{fill:#f2647e;}.cls-6{stroke:#f5f5f5;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}</style><style
id="style116483">.cls-1{fill:#848484;}.cls-2,.cls-3,.cls-4,.cls-7{fill:none;stroke-linecap:round;stroke-linejoin:round;}.cls-2{stroke:#f2647e;}.cls-2,.cls-3,.cls-4{stroke-width:0.9549px;}.cls-3{stroke:#42b8eb;}.cls-4{stroke:#0f71a8;}.cls-5{fill:#42b8eb;}.cls-6{fill:#f2647e;}.cls-7{stroke:#f5f5f5;stroke-width:2px;}</style><style
id="style24549">.cls-1{fill:#ded3dd;}</style><style
id="style158807">.cls-1{fill:#848484;}.cls-2{fill:#f29100;}.cls-3{fill:#ded3dd;}</style><style
id="style10156">.cls-1{fill:#ded3dd;}.cls-2{fill:#848484;}</style><style
id="style2419">.cls-1{fill:#ededed;}.cls-2{fill:#d8d8d8;}.cls-3{fill:#848484;}.cls-4{fill:#42b8eb;}.cls-5,.cls-7{fill:none;stroke-linecap:round;stroke-linejoin:round;}.cls-5{stroke:#ded3dd;}.cls-6{fill:#f2647e;}.cls-7{stroke:#f5f5f5;stroke-width:2px;}</style><style
id="style117073">.cls-1{fill:#848484;}.cls-2{fill:#ded3dd;}.cls-3{fill:#f2647e;}.cls-4{fill:none;stroke:#f5f5f5;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}</style><style
id="style117073-1">.cls-1{fill:#848484;}.cls-2{fill:#ded3dd;}.cls-3{fill:#f2647e;}.cls-4{fill:none;stroke:#f5f5f5;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}</style><style
id="style2419-6">.cls-1{fill:#ededed;}.cls-2{fill:#d8d8d8;}.cls-3{fill:#848484;}.cls-4{fill:#42b8eb;}.cls-5,.cls-7{fill:none;stroke-linecap:round;stroke-linejoin:round;}.cls-5{stroke:#ded3dd;}.cls-6{fill:#f2647e;}.cls-7{stroke:#f5f5f5;stroke-width:2px;}</style><style
id="style27079">.cls-1{fill:#848484;}.cls-2{fill:none;stroke:#42b8eb;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}.cls-3{fill:#fff;}.cls-4{fill:#f2647e;}</style><style
id="style27997">.cls-1{fill:#8f8f8f;stroke:#DED3DD;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}.cls-2{fill:#42B8EB;}</style><style
id="style2419-62">.cls-1{fill:#ededed;}.cls-2{fill:#d8d8d8;}.cls-3{fill:#8f8f8f;}.cls-4{fill:#42B8EB;}.cls-5,.cls-7{fill:none;stroke-linecap:round;stroke-linejoin:round;}.cls-5{stroke:#DED3DD;}.cls-6{fill:#f2647e;}.cls-7{stroke:#ded3dd;stroke-width:2px;}</style><style
id="style158484">.cls-1{fill:#ededed;}.cls-2{fill:#d8d8d8;}.cls-3{fill:#8f8f8f;}.cls-4{fill:#42B8EB;}.cls-5,.cls-7{fill:none;stroke-linecap:round;stroke-linejoin:round;}.cls-5{stroke:#DED3DD;}.cls-6{fill:#f2647e;}.cls-7{stroke:#ded3dd;stroke-width:2px;}</style><style
id="style24549-2">.cls-1{fill:#DED3DD;}</style></defs><title
id="title62">about</title><style
type="text/css"
id="style833">
.st0{fill:#ded3dd;}
.st1{fill:none;stroke:#ded3dd;}
</style><g
id="g2"
transform="translate(224,-180)"
style="display:inline" /><g
id="g61"
transform="translate(224,-180)"
style="display:inline" /><g
id="g62"
transform="translate(224,-180)"
style="display:inline" /><g
id="g63"
transform="translate(224,-180)"
style="display:inline" /><rect
style="display:inline;fill:#545454;fill-opacity:1;stroke:none;stroke-width:1;stroke-dasharray:none;stroke-opacity:1"
id="rect23"
width="23"
height="23"
x="78.5"
y="180.5"
transform="translate(-78,-180)" /><rect
style="display:inline;fill:#848484;fill-opacity:1;stroke:none;stroke-width:1;stroke-dasharray:none;stroke-opacity:1"
id="rect24"
width="23"
height="6"
x="78.5"
y="180.5"
transform="translate(-78,-180)" /><path
style="display:inline;fill:#545454;fill-opacity:1;stroke:#ded3dd;stroke-opacity:1"
d="m 78.5,186.5 h 23"
id="path24"
sodipodi:nodetypes="cc"
transform="translate(-78,-180)" /><path
style="display:inline;fill:#545454;fill-opacity:1;stroke:#ded3dd;stroke-opacity:1"
d="m 78.5,192.5 h 23"
id="path25"
sodipodi:nodetypes="cc"
transform="translate(-78,-180)" /><path
style="display:inline;fill:#545454;fill-opacity:1;stroke:#ded3dd;stroke-opacity:1"
d="m 86.5,203.5 v -23"
id="path26"
sodipodi:nodetypes="cc"
transform="translate(-78,-180)" /><path
style="display:inline;fill:#545454;fill-opacity:1;stroke:#ded3dd;stroke-opacity:1"
d="m 94.5,203.5 v -23"
id="path27"
sodipodi:nodetypes="cc"
transform="translate(-78,-180)" /><path
style="display:inline;fill:#545454;fill-opacity:1;stroke:#ded3dd;stroke-opacity:1"
d="m 78.5,198.5 h 23"
id="path28"
sodipodi:nodetypes="cc"
transform="translate(-78,-180)" /><rect
style="display:inline;fill:none;fill-opacity:1;stroke:#ded3dd;stroke-width:1;stroke-dasharray:none;stroke-opacity:1"
id="rect29"
width="23"
height="23"
x="78.5"
y="180.5"
transform="translate(-78,-180)" /><style
type="text/css"
id="style833-0">
.st0{fill:#727272;stroke:#DED3DD;stroke-linecap:round;stroke-linejoin:bevel;}
.st1{fill:#ded3dd;}
.st2{fill:#DED3DD;}
.st3{fill:none;stroke:#727272;stroke-linejoin:round;}
</style></svg>

After

(image error) Size: 8.8 KiB

View File

@ -0,0 +1,164 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
id="Слой_1"
data-name="Слой 1"
viewBox="0 0 24 24"
version="1.1"
sodipodi:docname="table.svg"
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
xml:space="preserve"
width="24"
height="24"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="3840"
inkscape:window-height="2086"
id="namedview30"
showgrid="false"
inkscape:zoom="11.025963"
inkscape:cx="41.311583"
inkscape:cy="9.5229774"
inkscape:window-x="0"
inkscape:window-y="55"
inkscape:window-maximized="1"
inkscape:document-rotation="0"
inkscape:current-layer="Слой_1"
inkscape:showpageshadow="2"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showguides="true"><inkscape:grid
type="xygrid"
id="grid_kicad"
spacingx="0.5"
spacingy="0.5"
color="#9999ff"
opacity="0.13"
empspacing="2"
originx="-68"
originy="-170"
units="px"
visible="false" /><inkscape:page
x="0"
y="0"
width="24"
height="24"
id="page89"
margin="0"
bleed="0" /></sodipodi:namedview><metadata
id="metadata43"><rdf:RDF><cc:Work
rdf:about=""><cc:license
rdf:resource="http://creativecommons.org/licenses/by-sa/4.0/" /><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title>about</dc:title></cc:Work><cc:License
rdf:about="http://creativecommons.org/licenses/by-sa/4.0/"><cc:permits
rdf:resource="http://creativecommons.org/ns#Reproduction" /><cc:permits
rdf:resource="http://creativecommons.org/ns#Distribution" /><cc:requires
rdf:resource="http://creativecommons.org/ns#Notice" /><cc:requires
rdf:resource="http://creativecommons.org/ns#Attribution" /><cc:permits
rdf:resource="http://creativecommons.org/ns#DerivativeWorks" /><cc:requires
rdf:resource="http://creativecommons.org/ns#ShareAlike" /></cc:License></rdf:RDF></metadata><defs
id="defs60"><style
id="style58">.cls-1,.cls-2{fill:none;stroke:#545454;stroke-linecap:round;stroke-linejoin:round;}.cls-1{stroke-width:2px;}.cls-2{stroke-width:4px;}</style><style
id="style28017">.cls-1{fill:none;stroke:#545454;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}.cls-2{fill:#1a81c4;}</style><style
id="style220">.cls-1{fill:none;stroke:#bf2641;stroke-linecap:round;stroke-linejoin:round;}.cls-2{fill:#d8d8d8;}.cls-3{fill:#333;}.cls-4{fill:#545454;}.cls-5{fill:#1a81c4;}.cls-6{fill:#b9b9b9;}.cls-7{fill:#bf2641;}</style><style
id="style115733">.cls-1{fill:none;stroke:#545454;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}.cls-2{fill:#1a81c4;}</style><style
id="style115838">.cls-1{fill:#545454;}.cls-2{fill:#1a81c4;}</style><style
id="style944">.cls-1{fill:none;stroke:#bf2641;stroke-linecap:round;stroke-linejoin:round;}.cls-2{fill:#bf2641;}.cls-3{fill:#b9b9b9;}.cls-4{fill:#545454;}</style><style
id="style115920">.cls-1{fill:#1a81c4;}.cls-2{fill:#545454;}</style><style
id="style27838">.cls-1{fill:#b9b9b9;}.cls-2{fill:#545454;}.cls-3,.cls-6{fill:none;}.cls-3{stroke:#b9b9b9;stroke-miterlimit:10;stroke-width:0.9553px;}.cls-4{fill:#1a81c4;}.cls-5{fill:#bf2641;}.cls-6{stroke:#f5f5f5;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}</style><style
id="style116483">.cls-1{fill:#b9b9b9;}.cls-2,.cls-3,.cls-4,.cls-7{fill:none;stroke-linecap:round;stroke-linejoin:round;}.cls-2{stroke:#bf2641;}.cls-2,.cls-3,.cls-4{stroke-width:0.9549px;}.cls-3{stroke:#1a81c4;}.cls-4{stroke:#0f71a8;}.cls-5{fill:#1a81c4;}.cls-6{fill:#bf2641;}.cls-7{stroke:#f5f5f5;stroke-width:2px;}</style><style
id="style24549">.cls-1{fill:#545454;}</style><style
id="style158807">.cls-1{fill:#b9b9b9;}.cls-2{fill:#f29100;}.cls-3{fill:#545454;}</style><style
id="style10156">.cls-1{fill:#545454;}.cls-2{fill:#b9b9b9;}</style><style
id="style2419">.cls-1{fill:#ededed;}.cls-2{fill:#d8d8d8;}.cls-3{fill:#b9b9b9;}.cls-4{fill:#1a81c4;}.cls-5,.cls-7{fill:none;stroke-linecap:round;stroke-linejoin:round;}.cls-5{stroke:#545454;}.cls-6{fill:#bf2641;}.cls-7{stroke:#f5f5f5;stroke-width:2px;}</style><style
id="style117073">.cls-1{fill:#b9b9b9;}.cls-2{fill:#545454;}.cls-3{fill:#bf2641;}.cls-4{fill:none;stroke:#f5f5f5;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}</style><style
id="style117073-1">.cls-1{fill:#b9b9b9;}.cls-2{fill:#545454;}.cls-3{fill:#bf2641;}.cls-4{fill:none;stroke:#f5f5f5;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}</style><style
id="style2419-6">.cls-1{fill:#ededed;}.cls-2{fill:#d8d8d8;}.cls-3{fill:#b9b9b9;}.cls-4{fill:#1a81c4;}.cls-5,.cls-7{fill:none;stroke-linecap:round;stroke-linejoin:round;}.cls-5{stroke:#545454;}.cls-6{fill:#bf2641;}.cls-7{stroke:#f5f5f5;stroke-width:2px;}</style><style
id="style27079">.cls-1{fill:#b9b9b9;}.cls-2{fill:none;stroke:#1a81c4;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}.cls-3{fill:#fff;}.cls-4{fill:#bf2641;}</style><style
id="style27997">.cls-1{fill:#8f8f8f;stroke:#DED3DD;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}.cls-2{fill:#42B8EB;}</style><style
id="style2419-62">.cls-1{fill:#ededed;}.cls-2{fill:#d8d8d8;}.cls-3{fill:#8f8f8f;}.cls-4{fill:#42B8EB;}.cls-5,.cls-7{fill:none;stroke-linecap:round;stroke-linejoin:round;}.cls-5{stroke:#DED3DD;}.cls-6{fill:#f2647e;}.cls-7{stroke:#545454;stroke-width:2px;}</style><style
id="style158484">.cls-1{fill:#ededed;}.cls-2{fill:#d8d8d8;}.cls-3{fill:#8f8f8f;}.cls-4{fill:#42B8EB;}.cls-5,.cls-7{fill:none;stroke-linecap:round;stroke-linejoin:round;}.cls-5{stroke:#DED3DD;}.cls-6{fill:#f2647e;}.cls-7{stroke:#545454;stroke-width:2px;}</style><style
id="style24549-2">.cls-1{fill:#DED3DD;}</style></defs><title
id="title62">about</title><style
type="text/css"
id="style833">
.st0{fill:#545454;}
.st1{fill:none;stroke:#545454;}
</style><g
id="g2"
transform="translate(224,-180)"
style="display:inline" /><g
id="g61"
transform="translate(224,-180)"
style="display:inline" /><g
id="g62"
transform="translate(224,-180)"
style="display:inline" /><g
id="g63"
transform="translate(224,-180)"
style="display:inline" /><rect
style="display:inline;fill:#f3f3f3;fill-opacity:1;stroke:none;stroke-width:1;stroke-dasharray:none;stroke-opacity:1"
id="rect23"
width="23"
height="23"
x="78.5"
y="180.5"
transform="translate(-78,-180)" /><rect
style="display:inline;fill:#b9b9b9;fill-opacity:1;stroke:none;stroke-width:1;stroke-dasharray:none;stroke-opacity:1"
id="rect24"
width="23"
height="6"
x="78.5"
y="180.5"
transform="translate(-78,-180)" /><path
style="display:inline;fill:#f3f3f3;fill-opacity:1;stroke:#545454;stroke-opacity:1"
d="m 78.5,186.5 h 23"
id="path24"
sodipodi:nodetypes="cc"
transform="translate(-78,-180)" /><path
style="display:inline;fill:#f3f3f3;fill-opacity:1;stroke:#545454;stroke-opacity:1"
d="m 78.5,192.5 h 23"
id="path25"
sodipodi:nodetypes="cc"
transform="translate(-78,-180)" /><path
style="display:inline;fill:#f3f3f3;fill-opacity:1;stroke:#545454;stroke-opacity:1"
d="m 86.5,203.5 v -23"
id="path26"
sodipodi:nodetypes="cc"
transform="translate(-78,-180)" /><path
style="display:inline;fill:#f3f3f3;fill-opacity:1;stroke:#545454;stroke-opacity:1"
d="m 94.5,203.5 v -23"
id="path27"
sodipodi:nodetypes="cc"
transform="translate(-78,-180)" /><path
style="display:inline;fill:#f3f3f3;fill-opacity:1;stroke:#545454;stroke-opacity:1"
d="m 78.5,198.5 h 23"
id="path28"
sodipodi:nodetypes="cc"
transform="translate(-78,-180)" /><rect
style="display:inline;fill:none;fill-opacity:1;stroke:#545454;stroke-width:1;stroke-dasharray:none;stroke-opacity:1"
id="rect29"
width="23"
height="23"
x="78.5"
y="180.5"
transform="translate(-78,-180)" /><style
type="text/css"
id="style833-0">
.st0{fill:#727272;stroke:#DED3DD;stroke-linecap:round;stroke-linejoin:bevel;}
.st1{fill:#545454;}
.st2{fill:#DED3DD;}
.st3{fill:none;stroke:#727272;stroke-linejoin:round;}
</style></svg>

After

(image error) Size: 8.8 KiB