← Back to team overview

kicad-developers team mailing list archive

Re: KiCad new look - new icons and new buttons


On 8/23/2011 1:39 AM, Dick Hollenbeck wrote:
> On 08/22/2011 02:10 PM, fabrizio wrote:
>> Dear All,
>> I have spent some time trying to put together a new set of icons and
>> buttons that might make KiCad look a little better.
>> Here you have an example of where I am so far:
>> http://www.vincentresearch.com/tmp/
>> Would it be possible:
>> - to know if there is anybody interested in helping me out
>> - to know if there is anybody willing to help me to modify the current
>> code in order to accommodate the new icons/buttons.
>> - to have the .svg files (or some equivalent vectorial format) of the
>> current buttons set
>> -
>> I do not want to try to undo anything that somebody has done so far
>> and for this it would be great to have some feedback on the current
>> status and some opinions on where I am heading.
>> I'd like to propose to use PNG format for all icons and buttons and
>> 64px for the KiCad buttons to start the 6 current programs. Also I'd
>> like to propose to drop the 16pt buttons used everywhere for a larger
>> 24px buttons. That includes top bar buttons as well as lateral (left
>> and right bars). How does it sound?
> PNG can be in the flow of information as an intermediate (man in the middle)
> technology.  But I would like to treat it as almost a *.o file in a build
> process.  Our real source file should be the *.svg file.  So I would like to see
> us find a cross platform tool, and I think you have found that already, which
> can be run from the command line to build the *.png files from the *.svg files.
> I propose that we agree never to post edit the PNG files, and that they must
> come from the *.SVG files.  I suggest we have a separate CMakeLists.txt file to
> build the *.PNG files from the *.SVG files automatically, but perhaps not make
> it a mandatory part of the build process, on the theory that some builders will
> not want to have the tool which converts from *.SVG to *.PNG installed.
> *.SVG -> *.PNG
> Therefore this means distributing both the *.PNG and the *.SVG files as part of
> the source tree.  That is, unless you want to burden every builder with the need
> to have this tool installed.
> Then we have to decide on how to load the PNG files into the programs, and there
> seem to be at least two ways to do this:
> A) read the *.PNG files into memory from disk at program start time.
> B) convert the *.PNG files into a BYTE array which is compiled into the
> respective program.  But the byte array is definitely a PNG format, meaning we
> get the advantage of the alpha channel support, which we do not currently have.

C) Zip all the *.PNG files into an archive and use wxInputStream to access the
archive like a file system.

My preference is B but I'm not sure exactly how you would access the byte
arrays directly with wxBitmap or wxImage.


> If B) is the chosen path.  This entails yet another step that we need to add to
> the build path, meaning it needs to go into a CMakeLists.txt file and needs to
> be able to happen from a commandline tool.
> *.PNG -> *.cpp
> I believe the planning phase of this work is harder than the actual
> implementation.  That is, unless the planning phase is not completed, and the
> implementation ends up being a conglomeration of afterthought.
> Dick
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp

Follow ups