Changeset 1141


Ignore:
Timestamp:
Feb 12, 2010, 3:19:50 PM (12 years ago)
Author:
Patrick Vacek
Message:

HowTo guide corrections. More to come next week.

Location:
trunk/Documentation/Developer/PluginHowTo
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Documentation/Developer/PluginHowTo/HowToDeveloper.tex

    r1076 r1141  
    125125
    126126% For screen viewing it is nice to have references marked in a slightly different
    127 % color than the rest of the text. Since they will be hyperlinks to the
     127% color than the rest of the text, since they will be hyperlinks to the
    128128% referenced objects.
    129129\usepackage[pdftex,
     
    161161       
    162162        \begin{abstract}
    163      CrypTool 2 is the modern successor of the well known e-learning platform for cryptography and cryptanalysis \htmladdnormallink{CrypTool 1}{http://www.cryptool.org}, which is used world-wide for educational purposes at school and universities and in companies and agencies.
     163     CrypTool 2 is the modern successor of the well-known e-learning platform for cryptography and cryptanalysis \htmladdnormallink{CrypTool 1}{http://www.cryptool.org}, which is used world-wide for educational purposes at school and universities and in companies and agencies.
    164164     
    165      Since the first launch of CrypTool 1 in 1999 the art of software development has changed dramatically. So the CrypTool 2 team started in 2008 to develop a completely new e-learning application, embracing the newest trends in both didactics and software architecture to delight the end-user with an entirely new experience.
     165     Since the first launch of CrypTool 1 in 1999 the art of software development has changed dramatically. The CrypTool 2 team began working in 2008 to develop a completely new e-learning application, embracing the newest trends in both didactics and software architecture to delight the end-user with an entirely new experience.
    166166     
    167      CrypTool 2 is build using
     167     CrypTool 2 is built using
    168168
    169169\begin{itemize}
    170         \item .NET (modern software framework with solutions to common programming problems form Microsoft),
    171         \item C\# (modern object-oriented programming language, comparable to Java) and
    172     \item WPF (modern purely vector-based graphical subsystem for rendering user interfaces in Windows-based applications) plus
    173     \item VisualStudio2008 (development environment) and
    174         \item Subversion (source code and documentation version management system).
     170        \item .NET (a modern software framework with solutions to common programming problems form Microsoft),
     171        \item C\# (a modern object-oriented programming language, comparable to Java), and
     172    \item WPF (a modern purely vector-based graphical subsystem for rendering user interfaces in Windows-based applications), plus
     173    \item Visual Studio 2008 (a development environment) and
     174        \item Subversion (a source code and documentation version management system).
    175175\end{itemize}
    176176
    177 This document is intended for plugin developers, who want to contribute new visual or mathematical functionality to CT2. Currently (January 2010) the code exists of about 7000 lines of C\# code in the Core system and about 240,641 lines of C\# code in the 115 plugins.
     177This document is intended for plugin developers who want to contribute new visual or mathematical functionality to CT2. As of January 2010, the code consists of about 7000 lines of C\# code in the core system and about 240,641 lines of C\# code in 115 plugins.
    178178
    179179
  • trunk/Documentation/Developer/PluginHowTo/part1.tex

    r845 r1141  
    11\chapter{Developer Guidelines}
    22
    3 CrypTool 2.0 uses state-of-the-art technologies like .NET 3.5 and WPF. In order to make your first steps towards developing something in the context of this project a few things need to be considered. In order to not get stuck, please follow the instructions on this page. If you encouter a problem/error, which is not described here, please let us know, so we can add this information to this guide.
     3CrypTool 2.0 uses state-of-the-art technologies like .NET 3.5 and WPF. In order to make your first steps towards developing something in the context of this project, a few things need to be considered. First of all, please follow the instructions in this document so that you do not get stuck. If you encouter a problem or error that is not described here, please let us know so we can add the appropriate information to this guide.
    44
    5 In the following we describe all steps necessary in order to compile CrypTool 2.0 on your own. This is always the first thing you need to do before you go on developing own plugins and extensions. The basic steps are
     5In the following sections we will describe all steps necessary in order to compile CrypTool 2.0 on your own. This is always the first thing you need to do before you can begin developing your own plugins and extensions. The basic steps are:
    66\begin{itemize}
    7         \item Getting all pre-requisites and installing them
     7        \item Getting all prerequisites and installing them
    88        \item Accessing and downloading the source code with SVN
    9         \item Compiling the source-code for the first time
     9        \item Compiling the source code for the first time
    1010\end{itemize}
    1111
    12 \section{Pre-requisites}
     12\section{Prerequisites}
    1313
    14 Since CrypTool 2.0 is based on Microsoft .NET 3.5, you first need a Microsoft Windows environment. (Right now no plans exist for porting this project to mono and therefore other platforms.) We successfully tested with \textbf{Windows XP} and \textbf{Windows Vista}.
     14Since CrypTool 2.0 is based on Microsoft .NET 3.5, you will need a Microsoft Windows environment. (Currently no plans exist for porting this project to mono or to other platforms.) We have successfully tested with \textbf{Windows XP} and \textbf{Windows Vista}.
    1515
    16 Since you're reading the developer guidlines, you probably want to develop something. Hence you need a developer environment. In order to compile our sources you need \textbf{Microsoft Visual Studio 2008 Professional}. Please make sure you always install the latest service packs for Visual Studio too. Unfortunately it does not work (smoothly) with the freely available Visual Studio Express (C\#) versions. This is due to the fact, that CrypWin uses a commercial component, and is therefore distributed only as binary. The C\# Express version unfortunately cannot handle a binary as a start project, hence debugging becomes cumbersome.
     16Since you are reading the developer guidlines, you probably want to develop something. Hence, you will need a development environment. In order to compile our sources you need \textbf{Microsoft Visual Studio 2008 Professional}. Please always install the latest service packs for Visual Studio. Unfortunately, our sources do not work (smoothly) with the freely available Visual Studio Express (C\#) versions. This is due to the fact that CrypWin uses a commercial component and is therefore distributed only as binary. However, the C\# Express version cannot handle a binary as a start project, and thus debugging becomes cumbersome.
    1717
    18 Usually the installation of Visual Studio also installs the .NET framework. In order to run/compile our source code you need (at the time of this writing) at least \textbf{Microsoft .NET 3.5 with Service Pack 1 (SP1)}. You can get this freely from Microsofts \href{http://download.microsoft.com/download/2/0/e/20e90413-712f-438c-988e-fdaa79a8ac3d/dotnetfx35.exe}{webpage}.
     18Usually the installation of Visual Studio also installs the .NET framework. In order to run or compile our source code you will need (at the time of writing) at least \textbf{Microsoft .NET 3.5 with Service Pack 1 (SP1)}. You can get this for free from Microsoft's \href{http://download.microsoft.com/download/2/0/e/20e90413-712f-438c-988e-fdaa79a8ac3d/dotnetfx35.exe}{webpage}.
    1919
    20 After the last step, your development environment should be ready for our source-code. Hence, now you need a way of accessing and downloading the entire sources. In the CrypTool 2.0 project we use SVN (subversion control) for version control, hence you need an \textbf{SVN client} of you're choice, e.g. \textbf{TortoiseSVN} or the \textbf{svn commandline from cygwin}. If you never worked with SVN before, we suggest to download and install \href{http://www.tortoisesvn.net/}{TortoiseSVN}, since it offers a nice windows explorer integration of SVN and any windows user should feel right away at home.
     20After the last step, your development environment should be ready for our source code. Now you will need a way of accessing and downloading the entire sources. In the CrypTool 2.0 project we use Subversion (SVN) for version control, and hence you need an \textbf{SVN client}, e.g. \textbf{TortoiseSVN} or the \textbf{svn commandline from cygwin}. It does not matter which one you use, but if you have never worked with SVN before, we suggest using \href{http://www.tortoisesvn.net/}{TortoiseSVN}, since it offers a nice Windows Explorer integration of SVN.
    2121
    22 \section{Accessing Subversion Control (SVN)}
     22\section{Accessing Subversion (SVN)}
    2323
    24 This section describes how to access our SVN and the basic settings you need.
     24This section describes how to access our SVN repository and how to configure the basic settings.
    2525
    26 \subsection*{SVN URL}
     26\subsection*{The CrypTool2 SVN URL}
    2727
    28 Our code repository is accessable under the following url:
     28Our code repository is accessable at the following URL:
    2929
    3030\url{https://www.cryptool.org/svn/CrypTool2/}
    3131
    32 If you are a guest and just want to download our source code you can use "anonymous" as the username and an empty password. If you are a registered developer, just use your provided username and password (which is the same as for this wiki).
     32To access the repository, you must provide a username and password. If you are a guest and just want to download our source code you can use "anonymous" as the username and an empty password. If you are a registered developer, just use your provided username and password (which is the same as for this wiki).
    3333
    34 \subsection*{Accessing the SVN with TortoiseSVN}
     34\subsection*{Accessing the SVN repository with TortoiseSVN}
    3535
    3636As already mentioned, in order to use the SVN repository one of the best options is \href{http://www.tortoisesvn.net/}{TortoiseSVN}. Please install TortoiseSVN (unfortunately it will ask you to reboot, which you need to do) and then create somewhere on your computer a directory (for instance "Cryptool2") for storing the local working files. Right click on this directory and select "SVN Checkout" from the context menu. In the new appearing window you must enter the URL of the repository as given above. The "Checkout directory" should be filled in correctly. After that, just hit ok, accept the certificate (if necessary) and enter your user credentials or "anonymous" for guests. Also mark the checkbox for saving your crendentials otherwise you will be asked about them for every single file. Then hit ok, and now the whole CrypTool2 repository should be checked out into the given directory.
    3737
    38 Later on, if you just want to update (if there where changes in the repository) you can do this with right click on any directory within the working files and choose "SVN Update" from the context menu. If you changed a file you should choose "SVN Commit" from the context menu in order to upload your changes. Please always provide \textit{meaningfull descriptions} of your updates.
     38Later on, if you just want to update (if there where changes in the repository) you can do this with right click on any directory within the working files and choose "SVN Update" from the context menu. If you changed a file you should choose "SVN Commit" from the context menu in order to upload your changes. Please always provide \textit{meaningfull descriptions} of your updates. You should commit your sources to our SVN repository as often as you can. This will ensure your interoperability with the rest of the project for further development.
    3939
    4040A TortoiseSVN Tutorial can be found \href{http://www.mind.ilstu.edu/research/robots/iris4/developers/svntutorial}{here}.
    4141
    42 \subsection*{Ignore Patterns}
     42\subsection*{Ignore patterns}
    4343
    4444In order to checkin only clean code, please use the following \textbf{ignore patterns}: \textit{"obj bin debug release *.pdb *.suo *.exe *.dll"}
  • trunk/Documentation/Developer/PluginHowTo/part2.tex

    r1102 r1141  
    12971297\textit{username: anonymous\\
    12981298password: not required\\}
    1299 \htmladdnormallink{https://www.cryptool.org/svn/CrypTool2/trunk/CrypPlugins/Caesar/}{https://www.cryptool.org/svn/CrypTool2/trunk/CrypPlugins/Caesar/}\\
    1300 \textit{\small Note: You should commit your sources to our subversion so often you can. This will ensure your interoperability for further development.}\\\\
     1299\htmladdnormallink{https://www.cryptool.org/svn/CrypTool2/trunk/CrypPlugins/Caesar/}{https://www.cryptool.org/svn/CrypTool2/trunk/CrypPlugins/Caesar/}\\\\
     1300%\textit{\small Note: You should commit your sources to our subversion so often you can. This will ensure your interoperability for further development.}\\\\
    13011301Here you can download the Visual Studio plugin \textbf{template} to begin with the development of a new CrypTool plugin:\\\\
    13021302\htmladdnormallink{http://cryptool2.vs.uni-due.de/downloads/template/encryptionplugin.zip}{http://cryptool2.vs.uni-due.de/downloads/template/encryptionplugin.zip}\clearpage
Note: See TracChangeset for help on using the changeset viewer.