Commit 42116eff authored by jerryjacobs's avatar jerryjacobs

Moved doc to highercase string, added coding guidelines

parent af1a7e07
== Spaces and Tabs ==
Try to use as many as can TABS instead of spaces, this makes indenting
much more easy.
== Function prototypes ==
The name of the function should be on a seperated line, this for easy
searching in long source files.
Each parameter should use a own line, aligned under the first parameter.
Below there is an example, this style is for reading and editing quick trough
sourcecode. Also indenting can be set with a good programmers editor
(visual spaces per tab, this because one tab is normaly 8 spaces on screen)
Example:
void
foo( int x,
int y,
int z )
{
function1();
if(var == 1)
{
dothis();
dothat();
}
}
Here are some source code maintenance tasks that need to be done, and maybe some
folks will see these items and volunteer to do them.
*** @todo: grep for @todo and finish off those tasks, scattered throughout the source.
*** use BOARD_ITEM::MenuIcon() in the onrightclick.cpp
*** Use DOXYGEN compatible comments on member functions. As configured,
Doxygen gives priority to comments in header files over *.cpp files.
Review the generated docs and start to go through the source and make the
generated doxygen docs readable and clear using the JavaDoc style comments,
mostly in the header files. The error and warning output of the doxygen
compiler can help with this too.
*** Translate comments that are in French to English so there can be a broader
understanding by new developers.
*** Add tooltip text to all non-obvious controls in every dialog window.
Need to do this using DialogBlocks.
2008-Dec-6 Assigned To:
asked by: Dick Hollenbeck
================================================================================
1) Gerbview needs to work at least as well as gerv, that means adding named layers,
and a list control to sort the layer stack on the fly. There seems to be a polygon bug
of some kind, don't know how long that's been in there. (Dick)
2) Add net class support to PCBNEW, so the round tripping to freerouter
is a dream (Dick)
3) Document the specctra round tripper, and fix up the english translation
of help. (Dick, native english speaker)
4) Expose layer name editing in pcbnew (anyone), should dove tail with net
class editor from a UI perspective.
2008-Feb-8 Assigned To: dick
asked by: dick
================================================================================
specctra:
Add net class support to pcbnew so that the export to specctra becomes richer.
A netclass should hold a list of nets, track width, track spacing,
via drill size and via copper diameter.
2007-Nov-4 Assigned To: nobody
asked by: jp Charras
================================================================================
Use the collector classes in eeschema.
2008-Apr-29 Assigned To:
asked by: Dick Hollenbeck
================================================================================
+pcbnew
When picking new board from the menu, when an existing board is already
in memory, the number of layers in the new board is not set to the default
but rather to the number of layers in the previously loaded board, and with
the default layer names, rather than the layer names of the previously
loaded board. I think the number of layers should be reduced to the
default and the default layer names should be used.
--== How to build kicad using CMAKE ==--
First Written: 19-Dec-2007
Last Revised: 06-Jan-2008
Kicad needs wxWidgets, the multi platform G.U.I.
Perform these steps in sequence. (Platform specific details are given in
sections below.)
1) Install "msys" and "mingw".
2) Install wxWidgets and build it.
3) Install zlib and build it.
4) Install CMAKE
5) Install Boost C++ Template Libraries (*.hpp files)
6) Install the kicad source tree.
7) Use cmake to build the kicad makefiles.
8) Use make to build and install kicad.
9) Making a "Debug" build.
===== Step Details ====================================================
1) Install "msys" and "mingw".
Get msys and mingw here: http://mingw.org/
msys sets up a development environment that allows the bash shell to run.
mingw is a set of tools that run on windows or under msys. You will need
at least the following mingw packages: make, gcc, g++, binutils, autoconf and
automake.
-----------------------------------------------------------------------------
4) Install wxWidgets and build it.
Download http://www.wxwidgets.org/.
Start msys so you have a bash shell. Decide where your wxWidgets build directory
will be. It must be where you can access it from within the msys environment,
such as home/<user>. Edit your msys/1.0/etc/fstab file if needed to provide
access to this build directory from msys. (Note that if you want you can build
a "debug" version of the wxWidgets library at this point, instead of the release
version, or in addition to the the release version.)
Unzip the wmMWS zip file into the build directory. Change directories into there,
and then:
mkdir build-release
mkdir build-debug
-- release
cd build-release
../configure --enable-unicode --enable-monolithic --disable-shared --with-msw --with-opengl
make
make install
-- debug
cd build-debug
../confgiure --enable-unicode --enable-monolithic --enable-debug --enable-debug_gdb --disable-shared --with-msw --with-opengl
make
make install
I think the default is to install into /usr/local/wxMSW-2.8.7. You can probably
pass --prefix=<wxInstallDir> to configure above to change where "make install"
puts everything. We will refer to <wxInstallDir> again below. Without the
--prefix=<wxInstallDir> passed to configure, <wxInstallDir> will likely be
/usr/local/wxMSW-2.8.7
Verify that wx-config is in your path. Modify your PATH environment variable
if need be so you can run wx-config from a command prompt. You may have to
restart your msys shell, depending on how you modify your PATH.
-----------------------------------------------------------------------------
5) Install zlib and build it.
If on windows, download http://www.zlib.net/ or a newer version.
Start msys so you have a bash shell. Decide where your zlib build directory
will be. It must be where you can access it from within the msys environment,
such as home/<user>. Edit your msys/1.0/etc/fstab file if needed to provide
access to this build directory from msys. Unzip the zlib123.zip file into this
build directory. Change directories into there, and then:
./configure (CHANGES NEEDED!!!)
make
make install
Note (JP Charras):
Under Linux, zlib is usually installed.
if not found by wxWidget installation, wxWidgets creates an alternate zlib
Under Windows, zlib is not installed, so my cmake buld try to use the wxWidgets zlib build.
So, under windows kicad build should work without zlib install.
-----------------------------------------------------------------------------
6) Install CMAKE.
If windows, download the installation binary for windows from cmake.org.
Install that and choose to add cmake to your path during installation. You
will have to restart and command shells for the new path to take effect.
Verify that cmake is in your path by trying to run it from a command prompt.
If linux, use your package manager to install cmake. You should get cmake 2.4.7
or later. If only an older one is available in your package repository, build
2.4.7 from source. Verify that cmake is in your path by trying to run it from a
command prompt.
7) Install Boost C++ Libraries
If windows, well I'm guessing, so somebody please try these two options and
correct this text please according to which ever is easier:
(optionA) Go to http://sourceforge.net/project/showfiles.php?group_id=7586
and download boost_1_34_1.zip or later and unzip it so as to put the files
into C:\Program Files\boost\boost_1_34_1
(optionB)
Go to http://www.boost-consulting.com/products/free
and download the http://www.boost-consulting.com/boost_1_34_1_setup.exe
file and run it.
-----------------------------------------------------------------------------
8) Install the kicad source tree.
You can use the subversion repository or a tar file for this. See the wiki.
-----------------------------------------------------------------------------
9) Use cmake to create the kicad makefiles.
Go into your msys shell and cd to kicad source directory.
Run CMakeSetup.exe and set source and binary paths.
CMakeSetup.exe will try and find the boost header files and will often fail. If it
fails, you will have to point it to directory, where boost c++ is installed.
You can safely turn minizip building to OFF, but if you want to build it with zlib,
then under msys cd to zlib source dir, ./cofigure && make & make install.
(I had to copy zconf.h and zlib.h to {kcad_source_dir}/kicad/minizip).
So everything in CMakeSetup.exe is set, then press Configure. If all is OK, then
press OK, otherwise try to resolve reported errors.
-----------------------------------------------------------------------------
10) Use make to build and install kicad.
You compile Kicad here.
run cmake . (yes it is cmake space dot)
It will generate makefiles
run make
run make install
You are now done.
-----------------------------------------------------------------------------
Note: that it is easy to build only a specific binary such as pcbnew alone:
make pcbnew
-----------------------------------------------------------------------------
End of CMAKE related building.
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment