From ce9fdbc0471de744c49c7d4b81a1b8255edbf512 Mon Sep 17 00:00:00 2001 From: Alessandro Ranellucci Date: Sun, 17 Jun 2012 22:54:08 +0200 Subject: [PATCH] Icons for settings --- lib/Slic3r/GUI/Tab.pm | 46 +++++++++++++++++++++++++----------------- var/arrow_up.png | Bin 0 -> 372 bytes var/box.png | Bin 0 -> 555 bytes var/building.png | Bin 0 -> 556 bytes var/cog.png | Bin 0 -> 512 bytes var/hourglass.png | Bin 0 -> 744 bytes var/note.png | Bin 0 -> 500 bytes var/page_white_go.png | Bin 0 -> 612 bytes var/printer_empty.png | Bin 0 -> 350 bytes var/shading.png | Bin 0 -> 225 bytes var/spool.png | Bin 0 -> 1304 bytes var/time.png | Bin 0 -> 793 bytes var/wrench.png | Bin 0 -> 610 bytes 13 files changed, 28 insertions(+), 18 deletions(-) create mode 100755 var/arrow_up.png create mode 100755 var/box.png create mode 100755 var/building.png create mode 100755 var/cog.png create mode 100755 var/hourglass.png create mode 100755 var/note.png create mode 100755 var/page_white_go.png create mode 100755 var/printer_empty.png create mode 100755 var/shading.png create mode 100644 var/spool.png create mode 100755 var/time.png create mode 100755 var/wrench.png diff --git a/lib/Slic3r/GUI/Tab.pm b/lib/Slic3r/GUI/Tab.pm index 9f9e8bbc..e121bf6b 100644 --- a/lib/Slic3r/GUI/Tab.pm +++ b/lib/Slic3r/GUI/Tab.pm @@ -11,15 +11,28 @@ sub new { my $class = shift; my ($parent) = @_; my $self = $class->SUPER::new($parent, -1, [-1,-1], [-1,-1], &Wx::wxBK_LEFT); - + + $self->{images} = Wx::ImageList->new(16, 16, 1); + $self->AssignImageList($self->{images}); + $self->{imagecount} = -1; + return $self; } sub AddOptionsPage { my $self = shift; my $title = shift; + my $image = (ref $_[1]) ? undef : shift; my $page = Slic3r::GUI::Tab::Page->new($self, @_); - $self->AddPage($page, $title); + + my $bitmap = $image + ? Wx::Bitmap->new("$Slic3r::var/$image", &Wx::wxBITMAP_TYPE_PNG) + : undef; + if ($bitmap) { + $self->{images}->Add($bitmap); + $self->{imagecount}++; + } + $self->AddPage($page, $title, undef, $self->{imagecount}); } package Slic3r::GUI::Tab::Print; @@ -33,7 +46,7 @@ sub new { my ($parent) = @_; my $self = $class->SUPER::new($parent, -1); - $self->AddOptionsPage('Layers and perimeters', optgroups => [ + $self->AddOptionsPage('Layers and perimeters', 'layers.png', optgroups => [ { title => 'Layer height', options => [qw(layer_height first_layer_height)], @@ -48,14 +61,14 @@ sub new { }, ]); - $self->AddOptionsPage('Infill', optgroups => [ + $self->AddOptionsPage('Infill', 'shading.png', optgroups => [ { title => 'Infill', options => [qw(fill_density fill_angle fill_pattern solid_fill_pattern)], }, ]); - $self->AddOptionsPage('Speed', optgroups => [ + $self->AddOptionsPage('Speed', 'time.png', optgroups => [ { title => 'Speed for print moves', options => [qw(perimeter_speed small_perimeter_speed infill_speed solid_infill_speed top_solid_infill_speed bridge_speed)], @@ -70,14 +83,14 @@ sub new { }, ]); - $self->AddOptionsPage('Skirt', optgroups => [ + $self->AddOptionsPage('Skirt', 'box.png', optgroups => [ { title => 'Skirt', options => [qw(skirts skirt_distance skirt_height)], }, ]); - $self->AddOptionsPage('Cooling', optgroups => [ + $self->AddOptionsPage('Cooling', 'hourglass.png', optgroups => [ { title => 'Enable', options => [qw(cooling)], @@ -92,21 +105,21 @@ sub new { }, ]); - $self->AddOptionsPage('Support material', optgroups => [ + $self->AddOptionsPage('Support material', 'building.png', optgroups => [ { title => 'Support material', options => [qw(support_material support_material_tool)], }, ]); - $self->AddOptionsPage('Notes', optgroups => [ + $self->AddOptionsPage('Notes', 'note.png', optgroups => [ { title => 'Notes', options => [qw(notes)], }, ]); - $self->AddOptionsPage('Output options', optgroups => [ + $self->AddOptionsPage('Output options', 'page_white_go.png', optgroups => [ { title => 'Sequential printing', options => [qw(complete_objects extruder_clearance_radius extruder_clearance_height)], @@ -121,7 +134,7 @@ sub new { }, ]); - $self->AddOptionsPage('Advanced', optgroups => [ + $self->AddOptionsPage('Advanced', 'wrench.png', optgroups => [ { title => 'Extrusion width', options => [qw(extrusion_width first_layer_extrusion_width perimeters_extrusion_width infill_extrusion_width)], @@ -132,9 +145,6 @@ sub new { }, ]); - - - return $self; } @@ -149,7 +159,7 @@ sub new { my ($parent) = @_; my $self = $class->SUPER::new($parent, -1); - $self->AddOptionsPage('General', optgroups => [ + $self->AddOptionsPage('General', 'printer_empty.png', optgroups => [ { title => 'Size and coordinates', options => [qw(bed_size print_center z_offset)], @@ -160,7 +170,7 @@ sub new { }, ]); - $self->AddOptionsPage('Extruder and filament', optgroups => [ + $self->AddOptionsPage('Extruder and filament', 'spool.png', optgroups => [ { title => 'Size', options => [qw(nozzle_diameter)], @@ -175,14 +185,14 @@ sub new { }, ]); - $self->AddOptionsPage('Custom G-code', optgroups => [ + $self->AddOptionsPage('Custom G-code', 'cog.png', optgroups => [ { title => 'Custom G-code', options => [qw(start_gcode end_gcode layer_gcode)], }, ]); - $self->AddOptionsPage('Retraction', optgroups => [ + $self->AddOptionsPage('Retraction', 'arrow_up.png', optgroups => [ { title => 'Retraction', options => [qw(retract_length retract_lift retract_speed)], diff --git a/var/arrow_up.png b/var/arrow_up.png new file mode 100755 index 0000000000000000000000000000000000000000..1ebb193243780b8eb1919a51ef27c2a0d36ccec2 GIT binary patch literal 372 zcmV-)0gL{LP)6w#wHUuW*nL5>vZR zlg{G&%mT~|kL3ei%GW0*UOHUMs5XI$4uxe-L?I@SAefq*207}Iqtjm#e5*fP53AiC z)C|RQfwzxx<#_WfANRGZx{+tFDl8~Q?;~Ve=lM^*8UTTnVL?HTDz8uta0D@d28E9S z_)i8aLz^UE6PPKymi;2GJ`34{eIia-CtfAt0H61rk0 SPTNud0000i3lOYrtSl@<#7b-w zf}j{s!5HvocfT|9z82@(O@vrwU^wRt=bd>tXQpGD!`Kvuv@XEI8~tgUP2L`{+*)U@I@ zrVtr5X14??iAF(=0+k>q)v`Scm$9&=i`*knBsnaUVL1>ti*O1xfzmiD$%Md-h*6M( z@*iB)icu3eU424Ok{kp%Y!1dvp%f0`ac9vcupx^$vU0xuKpJcBvej0UYk%)EV>mIx2hV}QRf#LX^Uh(%`7hZ~|KEf#uQ31s002ovPDHLkV1hgQ{`mj^ literal 0 HcmV?d00001 diff --git a/var/building.png b/var/building.png new file mode 100755 index 0000000000000000000000000000000000000000..11a017cfaa73aef38f8f57db731dd0a7db835109 GIT binary patch literal 556 zcmV+{0@MA8P) zlTAwkQ51&X8OIL@qD-Qsuyhv$p|ucNxrho9Y}2|`xDEOTEecw+?FYDO86*-E5rS>n zv=AvFN@y{a*@rsg{b=qLr6CpRz~LV5-1D6GoVgdAbM)iS(J1e%9TO7RFz?{LbOt3dBco@bbZH_0OdOMw_$XmV%A>MsEcb`Yr*BlX@2gUVQP-&VZd< za>_O2!3tls`ejI^QczVDilWFhkw~CoyyJ1aXalrwqLnnQIvvPYZe=x1(-01a5s5@( zETH9D8Lj~r){d6fZGi3U)*z^IKH~J@tdy3AMUwEAiW;e6|7sTjUjW3U2TO;s**1U@ znlwz4-{}Q>zgCgCIR$evI2?{PBz>KRR(Ij;<3(IJKP7CpJp+2|*^>{$@+v3_xR>%u u#geUGuQH0)r!pqYfZJ_);(s2~f9wYukV^15?ld0&0000CQDsH?WF>AIFt zQuJ}i;w2$ZUU#3SZ6RY0Gw;kZ&ol1~2ky^QZ(fom$=jNJZt!z7w_pH~wdQ;R)Gh%BbQFCx+Nm!4SuS-vkr`vhhrX zM*>w%e+v~?m@q~ImPAgtLkR_3U<2F8LP3W5=LJ*ZN|S5p#sf4YFr$p~Q~Z*0Ngxf2 zjk#J#<7EAlhzlrV53~GF&pIzcCN_lz9@05UeoUXiK%N z#x+4o*i_c|6_Uu1+&TIho?3@y4k-#b8Y_o94zW*B3a1ne2-Y5s0uke$$|@=}OP-i= zNYZQA=>PrZu0MfSL=b8UhD_={W4IY1{b{)U)*gc45xtL%IYLY&hF;d`@GzI&7H&D# zh;z_BX$#hqh@q?AY3sJTod2%*Yd)_>YM0#q&ixGuh+PQsneK)F0000P)9Rl#FaScf1rbdiwsJlF($-D2a$MB1QH?*P$(@5T4@;&OA53{ z62x9;g=MzM@3B}Z6q2JnuH-? zUBh=^5nso`tIMpW;}SD*?>znX))|eYdi7(c&C5YW8_t?tIU z>Ny7&^Pebhjth`srpO|asbD=?gpU+WKXx%hg}DA%|J1=w1E3bQW2brAk)glQS%iL- z`SP4IjX^57**EKJK0N;yU_Z*GguxzUVD)Dq(FOHK%^eAtSc;pSVFoq==$r8wjtx+n z;uq8_iQsA|i!@V3bf!VptWTH>59QQ$XGs&d#Zun48g&^nWN z^4`U@k2?PS6UX#XYTlj3cBYJ6iA9-|t1JhG+#TUO+}j1X$SI>}h@{JnYgEm?zE z!-sF!^gVb+8rtpyctW0#N6uWni0LCt_6PoOdbjll_d4>B|?abUmpo8>v>h}Zj|Ya;Eu#qwvU1IVc9khP8VrtAsT2=e83P~$#!xXbw)n}FlPSEe7Hq1uCb zR8w;xqmBrUgA^pnkB=O@-lq0DPz$ay0yh_~I_IDpzxRb(4=Iy9CT||k!08w)Pe>W4 zElmH8fF;68$GMwZ#7{4ozI(ySrR%I+xs4-G1q^UxnUV7rlf9>Rn&_6Wike0000#DY{xaiib^#X=YT4@yE_&2#eBulEdzjE`u&@G%2(&u{J-<}d(^uY4W_kMfEX z@!X)AR9F&FL?RJyJRUzvBoeqN{5kY`z3wcM0+du73~_0|*lac! z42Dw(Eg1o{Ash}P8jXrqN+1w`*XxDD;ShmPCZC7#4;wWbHoMvBl$=zF-`?*9j*Nbjd=v@OWt_BgKxP-3wd zy37?ATx&$b+&zRM!K;BD%Okw`Sb@&Pak8$KRX19jWZmC0&n*Ggv%j8nvSPDFw zEkV65AGOoBQ8kf`R|}Px*&INNS%osq9b{Fq2I(x6@xM>tg=vRLF?I`0rWz01{r$78XkvMLD8LgLPI}p^3#ZkL-WmU{TI1 wPFcbdW00`FlWkSj%Pe9r%we8QTmJp#H==T7N?a3H(*OVf07*qoM6N<$g8eR!YybcN literal 0 HcmV?d00001 diff --git a/var/shading.png b/var/shading.png new file mode 100755 index 0000000000000000000000000000000000000000..09275f9c0914a2b6cbd48dc75244f698a8918c1e GIT binary patch literal 225 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmUzPnffIy#(?lOI#yL zg7ec#$`gxH85~pclTsBta}(23gHjVyDhp4h+5i<5d%8G=Se#D&@&CWQ^SL#TFFMo+ zpUPu?w4CLJsKXtWq-Kjql`OW6@{Tv>DLhi_oR#=SOyS-!hh=FNvz5*&gc}4bkUS$- zpueTJs?jS>W4VH5cvDBnk}bYn&!Q$gHPEkM{Aeg6CFgw8)S-s+lpfn7J^^Wlx#}xw U_BgG30kodM)78&qol`;+07=(QkN^Mx literal 0 HcmV?d00001 diff --git a/var/spool.png b/var/spool.png new file mode 100644 index 0000000000000000000000000000000000000000..709006d387ec9486a1ced17fa63c4c13c9be8933 GIT binary patch literal 1304 zcmV+z1?T#SP)4Tx04R}-l+Q~PVHn51vyB)iL11Qkh@nGBs7w}RMCGo(*tBg~f0Po$?CiU{ zle4qa%26U(f|ru*d1uDm5$(qdGxK?$AK&MB z-{F0M8d)(-JtP5n!?BWmQR({Vm{j`_Asj&+!l+YJ+l(X<1E9fUv1@F;hrqupt$X|b zI_lE4ng@jaKh%lTb}(f=ak3uu6-!kMZ8FSKs7BM z|C+c%%_(W1MkH>@24YeH&g(_h@8=*r^~@L^r0;R+=`OQ-d=_TXN_RhT8}a8f>+a#2 z#Pb=gH%8n{&sxUn9rjo_p*gW3k3%Dd9v|?z$wwEp4JbjhwM#!rpOV)g4O?IHuKzA8qHe6NWHQ4?5 zW?+>pP^lFuS83d>RC0Yby(58Yf7(5YU7B8Os@7T+7jCT7FHP^*tHQ2TvC67;&Z}|3 zd?p?hPl_?ILp%pbyd-vt7sYOxofiix8N;NaVZv3ip-`5AN%ERI{+SmG@2t6_p^q8N z(o~6`|AbY@XgUiV(SNxAbMSk`qp>3J!UhhXuG%(|?j0gDE>~^N72v`*x)0t~ZOwEZ z4m|-D&ZtGJ}8;WLk96sqPn3I;4%{fxLET5GkbR{t#`+_*~}`j zbQ|omRIvUKAwJ#h}2u5Lx6R;p3~Q9Em8B+IPCJ zjj8)q9e8hE&hvZE?>*;$e#oCwGK_lgo&J8Vg+e)@{}Pa7GRf|yCKN^aTLBy4R4OH( zR8=lqy(0Ulmd>(sm3ahr_oc>~uJ3{!xx; z@*8hwRmR?pGo4m>!G}Ty08`F$t;fUlTQ_lUuH^Wxy_lzFF*G~auGR2sX_=Aq41RAr ziHX-zC}IT2X0t>F2dJG{;?#~ttY20rH(Drbtpm4%Mte0UPjuiiTRB2q&W^0H0FVgv z(Y8=U)g}iO2kXJJjk$?wB>fq)-OTf`R}8!y<-p}LD2hUKXej@Q2EgF&zDQ*B33JxP z)!UEXvHi4Q_j!?;tt?wi9J>)PDp literal 0 HcmV?d00001 diff --git a/var/time.png b/var/time.png new file mode 100755 index 0000000000000000000000000000000000000000..911da3f1d31fca4494a4beb22014e5c5c724c236 GIT binary patch literal 793 zcmV+!1LpjRP)`EB*FHYdKr%;k=xO&(k^EfNlSiKZ>5l+xr|%SFOV@6-ysFmD2F5 ze93OiS+LaQym;|2f6tbH%~V`D+ND?vc>4J^KSLxEMifJQ`8>*~y^+pGr&o-n=LJ zGWB(yB#;DR8&Lhqi{0(#wc#SwSB~jZKzIFx`8od>2Fo-Pfe7*M8^q#qw2yTxiXzd~ zRaz|F*rr78G`JZXG*YX~5K@5k>G@0HdlBo-6v1jHye?%qRwO@+-hO7J^4LlPG>@A1#{ zQFl4x7tnG)+cz_2Mq_f*H!U)kgg{iHqxT)Yr3ec@K!`)z_%h1c0Y2Eu(dMPkrhq5v zY+bKWfx|sTiOEB71HuwS*CDzA%ReBv4*7Zy7RM0n6`5#chfOJK`ze)Y6>d6Z?UmyNHH!3DdsP-ARyDo}1HO+>7_um7 zx_gj{+_aU_OUH_~Jd?KI#ICZujD`of2mDpCv_zFGE%6}tfL|j!WGu_i-u>4%{%d{$ X7`zMSfT21V00000NkvXXu0mjfkBx0` literal 0 HcmV?d00001 diff --git a/var/wrench.png b/var/wrench.png new file mode 100755 index 0000000000000000000000000000000000000000..5c8213fef5ab969f03189d4367e32e597e38bd7f GIT binary patch literal 610 zcmV-o0-gPdP)^jb z4`0v}DG1te)wmeb(>p90leRz?_mO+^JKy=v&2<29Od6?F%9%(c8los#f*@G`-%W&* z$)uBj2i@u-@SgX}gtyWPe6d*|w6h%R? zScK2#Yn%$sum0cy>90DmY*i{1XqpClEtktsRTZ)lCUe z<FogV^*tm>8*AlX za4oiR!&85LrobG57qUHUX#{>Vz(RHpB5|@>9O6N$jqB8>%($0wxE5R3)b>Y~xtCo$ zCgEk&A?_#IxHdN)9tqre^o{ho4{?hmPuf@^@I3-wncaRd%|~O3xbrKY=&TiwPYkJroM{;WUQTuMY8vp