initial commit der GDE_3

This commit is contained in:
gaeltp3 2013-11-08 16:52:17 +01:00
parent 6207d87109
commit a4a464e719
46 changed files with 5087 additions and 0 deletions

View file

@ -0,0 +1,479 @@
/* file:Console.cpp
Creator : Girish Bharadwaj.
Desc:This class will contain all the stuff we need from the
Console.Following is the list I can think of 1. Create a new console and
use it to Write and read console. This will be using AllocConsole
(),WriteConsole() and ReadConsole (). This will be via the win32 APIs.
2. Use the scanf ,printf,cout ,cin and cerr ( this will be using the CRT
functionality.) Using the WDJ technique given there by Andrew Tucker &
using the KB "How to Spawn a Console App and Redirect Standard Handles"
Article ID: Q126628.
3. Redirect the output from a console app to a windows GUI app. (
"Redirection Issues on Windows 95 MS-DOS Apps and Batch Files" Article
ID: Q150956).This will be the fun part. What I would like to see is to
provide an API which takes the console process name as the argument.
That will redirect the stuff to a CString.. which can be read by the
creator.
4. I am also planning to do a somesort of poor man's debugger.i.e. You
will have an API similar to scanf which takes the input from the user at
run time with a default value to fall back to after sometime specified
by u. if you want to change a particular variable and see the effect,
You can use this.
*/
#include "stdafx.h"
#include <windows.h>
#include <stdio.h>
#include <fcntl.h>
#include <io.h>
#include <wincon.h>
#include "console.h"
#include <iostream>
#include <fstream>
#include "..\graphics\shape.h"
#include "..\graphics\pointerarray.h"
#include "..\gde_3.h"
#ifndef _USE_OLD_IOSTREAMS
using namespace std;
#endif
#pragma warning( disable : 4311 )//Warning handle to long conversion disabled
#pragma warning( disable : 4312 )//Warning handle to long conversion disabled
extern CGDE_3App theApp;
void printwindata();
BOOL CConsole::sm_bConsole = FALSE;
//////////////////////////////////////////////////////////////////////////////
CConsole::CConsole()
{
//default constructor.
m_bRedirected = FALSE; // this is the right place to set this before this
m_sNumColumns = 0;
m_sNumLines = 0;
m_sMaxLines = 0;
m_sMaxColumns = 0;
m_wAttrib = 0;
}
//////////////////////////////////////////////////////////////////////////////
CConsole::CConsole(BOOL bCreateConsole)
{
m_bRedirected = FALSE; // this is the right place to set this before this
m_sNumColumns = 0;
m_sNumLines = 0;
m_sMaxLines = 0;
m_sMaxColumns = 0;
m_wAttrib = 0;
if (bCreateConsole)
CreateConsole ();
//I dont see any reason for not having bCreateConsole false But eh
}
//////////////////////////////////////////////////////////////////////////////
CConsole::~CConsole()
{
DestroyConsole (); //We need to remove the Console
}
//////////////////////////////////////////////////////////////////////////////
BOOL CConsole::CreateConsole ()
{
if (sm_bConsole == TRUE) // we have already created a console
{
return FALSE;
}
// I am not allocating the console if there is already one.
if (!AllocConsole ()) //Just call the Console allocation API
{
sm_bConsole = FALSE;
m_dwError = GetLastError (); //Lets get the error and store it away.
return FALSE;
}
else
{
sm_bConsole = TRUE; //To make sure we wont allocate again
//Lets keep all the stuff around
m_sNumLines = (short)GetSettings (SC_LINES);
m_sNumColumns = (short)GetSettings (SC_COLUMNS);
m_sMaxLines = 70;//(short) GetSettings (SC_MAXLINES);
m_sMaxColumns = (short) GetSettings (SC_MAXCOLUMNS);
m_wAttrib = GetSettings (SC_ATTRIB);
m_dwError = 0; // Lets keep this zero for the time being.
return TRUE;
}
}
//////////////////////////////////////////////////////////////////////////////
BOOL CConsole::DestroyConsole ()
{
if (sm_bConsole == FALSE) //There is no console to destroy
return TRUE; //as Well return asif we deleted
if (!FreeConsole ())
{
sm_bConsole = TRUE;
m_dwError = GetLastError ();//Lets keep the error here if someone wants
return FALSE;
}
else
{
sm_bConsole = FALSE;
return TRUE;
}
}
//////////////////////////////////////////////////////////////////////////////
short CConsole::GetNumberOfLines()
{
return (short) GetSettings (SC_LINES);
}
//////////////////////////////////////////////////////////////////////////////
short CConsole::SetNumberOfLines (short sLines)
{
if(CONSOLE_DEBUG)printf("SetNumberOfLines to %d\n",sLines);
short sRes = m_sNumLines;
m_sNumLines = sLines;
SetupConsole (SC_LINES);
Sleep(100);
return sRes;
}
//////////////////////////////////////////////////////////////////////////////
short CConsole::SetNumberOfColumns (short sColumns)
{
if(CONSOLE_DEBUG)printf("SetNumberOfColumns to %d\n",sColumns);
short sOld = m_sNumColumns;
m_sNumColumns = sColumns;
SetupConsole (SC_COLUMNS);
return sOld;
}
//////////////////////////////////////////////////////////////////////////////
short CConsole::GetNumberOfColumns ()
{
return (short)GetSettings (SC_COLUMNS);
}
//////////////////////////////////////////////////////////////////////////////
WORD CConsole::GetAttributes ()
{
return (short) GetSettings (SC_ATTRIB);
}
//////////////////////////////////////////////////////////////////////////////
WORD CConsole::SetAttributes (WORD wAttrib, short NumChars)
{
WORD wOld = m_wAttrib;
m_wAttrib = wAttrib;
SetupConsole (SC_ATTRIB);
ApplyAttrib(NumChars);
return wOld;
}
//////////////////////////////////////////////////////////////////////////////
short CConsole::SetMaxLinesInWindow (short maxLines)
{
if(CONSOLE_DEBUG)printf("SetMaxLinesInWindow to %d\n",maxLines);
short sOld = m_sMaxLines;
m_sMaxLines = maxLines;
SetupConsole (SC_MAXLINES);
return sOld;
}
//////////////////////////////////////////////////////////////////////////////
short CConsole::GetMaxLinesInWindow ()
{
return (short) GetSettings (SC_MAXLINES);
}
//////////////////////////////////////////////////////////////////////////////
short CConsole::SetMaxColumnsInWindow (short maxColumns)
{
if(CONSOLE_DEBUG)printf("SetMaxColumnsInWindow to %d\n",maxColumns);
short sOld = m_sMaxColumns;
m_sMaxColumns = maxColumns;
SetupConsole (SC_MAXCOLUMNS);
return sOld;
}
//////////////////////////////////////////////////////////////////////////////
short CConsole::GetMaxColumnsInWindow ()
{
return (short) GetSettings (SC_MAXCOLUMNS);
}
//////////////////////////////////////////////////////////////////////////////
//Now here we have the basic beginning traits of a CConsole.
//But it has to do more than Allocing and Freeing consoles.
//So here it is..
void CConsole::RedirectToConsole (WORD wFlags)
{
int hConHandle;
long lStdHandle;
HANDLE nStdHandle;
CONSOLE_SCREEN_BUFFER_INFO coninfo;
FILE *fp;
// Create the Console
CreateConsole();
nStdHandle = GetStdHandle(STD_OUTPUT_HANDLE);
lStdHandle = (long)nStdHandle;
// set the screen buffer to be big enough to let us scroll text
GetConsoleScreenBufferInfo(nStdHandle,&coninfo);
SetupConsole (SC_COLUMNS|SC_LINES|SC_ATTRIB|SC_MAXLINES|SC_MAXCOLUMNS);
// redirect unbuffered STDOUT to the console
hConHandle = _open_osfhandle(lStdHandle, _O_TEXT);
fp = _fdopen( hConHandle, "w" );
*stdout = *fp;
setvbuf( stdout, NULL, _IONBF, 0 );
// redirect unbuffered STDIN to the console
nStdHandle = GetStdHandle(STD_INPUT_HANDLE);
lStdHandle = (long)nStdHandle;
hConHandle = _open_osfhandle(lStdHandle, _O_TEXT);
fp = _fdopen( hConHandle, "r" );
*stdin = *fp;
setvbuf( stdin, NULL, _IONBF, 0 );
// redirect unbuffered STDERR to the console
lStdHandle = (long)GetStdHandle(STD_ERROR_HANDLE);
hConHandle = _open_osfhandle(lStdHandle, _O_TEXT);
fp = _fdopen( hConHandle, "w" );
*stderr = *fp;
setvbuf( stderr, NULL, _IONBF, 0 );
// make cout, wcout, cin, wcin, wcerr, cerr, wclog and clog
// point to console as well
ios::sync_with_stdio();
m_bRedirected = TRUE; //Whether the Console is redirected
}
//////////////////////////////////////////////////////////////////////////////
/*
This will be function which will actually set up the console to the user
settings.
*/
BOOL CConsole::SetupConsole(WORD wFlags)
{
HANDLE nStdHandle;
long lStdHandle;
CONSOLE_SCREEN_BUFFER_INFO coninfo;
if (!sm_bConsole)
return FALSE; // There aint no console to set up, Duh
nStdHandle = GetStdHandle(STD_OUTPUT_HANDLE);
lStdHandle = (long)nStdHandle;
// set the screen buffer to be big enough to let us scroll text
if(!GetConsoleScreenBufferInfo(nStdHandle,&coninfo)){
if(CONSOLE_DEBUG)printf("***Error*** GetConsoleScreenBufferInfo failed\n");
if(CONSOLE_DEBUG)printwindata();
}
if(CONSOLE_DEBUG) printf("BBB: \n");
if(CONSOLE_DEBUG) printwindata();
if (wFlags & SC_COLUMNS || wFlags & SC_LINES) //Set up only the columns
{
if(CONSOLE_DEBUG)printf("Either SC_COLUMNS or SC_LINES set m_sNumColumns to %d and m_sNumLines to %d\n",
m_sNumColumns,m_sNumLines);
//Number of Columns to be set
if (m_sNumColumns)
coninfo.dwSize.X = m_sNumColumns;
// number of lines to be set
if (m_sNumLines){
coninfo.dwSize.Y = m_sNumLines;
}
//Set the screen buffer size
if(!SetConsoleScreenBufferSize(nStdHandle,coninfo.dwSize)){
printf("***Error*** SetConsoleScreenBufferSize failed\n");
printwindata();
};
}
if (wFlags & SC_ATTRIB)
{
//Attributes as specified
if(CONSOLE_DEBUG)printf("SC_ATTRIB\n");
if (m_wAttrib)
coninfo.wAttributes = m_wAttrib;
//Set the Text attributes
if(!SetConsoleTextAttribute (nStdHandle,coninfo.wAttributes)){
printf("***Error*** SetConsoleTextAttribute failed\n");
printwindata();
}
}
if (wFlags & SC_MAXLINES || wFlags & SC_MAXCOLUMNS)
{
if(CONSOLE_DEBUG) printf("SC_MAXLINES: %d;SC_MAXCOLUMNS: %d\n",m_sMaxLines,m_sMaxColumns);
SMALL_RECT rect;
//Maximum Size of the window
if (m_sMaxLines)
rect.Bottom= m_sMaxLines;
else
rect.Bottom = coninfo.dwMaximumWindowSize.Y;
if (m_sMaxColumns)
rect.Right = m_sMaxColumns;
else
rect.Right = coninfo.dwMaximumWindowSize.X;
// if (m_sNumColumns)
// rect.Right = m_sNumColumns;
// else
// rect.Right = coninfo.dwMaximumWindowSize.X;
rect.Top = rect.Left = 0;
//Set the console window maximum size
if(!SetConsoleWindowInfo (nStdHandle,TRUE,&rect)){
DWORD lasterr = GetLastError();
printf("lasterr: %d\n",lasterr);
printf("***Error*** SetConsoleWindowInfo failed\n");
printwindata();
}
}
if(CONSOLE_DEBUG) printf("AAA: \n");
if(CONSOLE_DEBUG) printwindata();
return TRUE;
}
//////////////////////////////////////////////////////////////////////////////
HANDLE CConsole::GetHandle (DWORD dwFlag)
{
if (!sm_bConsole)
return (HANDLE) NULL;
return GetStdHandle (dwFlag);
}
//////////////////////////////////////////////////////////////////////////////
BOOL CConsole::Clear ()
{
COORD coordScreen = { 0, 0 }; /* here's where we'll home the
cursor */
BOOL bSuccess;
DWORD cCharsWritten;
CONSOLE_SCREEN_BUFFER_INFO csbi; /* to get buffer info */
DWORD dwConSize; /* number of character cells in
the current buffer */
if (!sm_bConsole)
return FALSE;
HANDLE hConsole = GetHandle (STD_OUTPUT_HANDLE);
/* get the number of character cells in the current buffer */
bSuccess = GetConsoleScreenBufferInfo( hConsole, &csbi );
dwConSize = csbi.dwSize.X * csbi.dwSize.Y;
if (!bSuccess) return bSuccess;
/* fill the entire screen with blanks */
bSuccess = FillConsoleOutputCharacter( hConsole, (TCHAR) ' ',
dwConSize, coordScreen, &cCharsWritten );
if (!bSuccess) return bSuccess;
/* get the current text attribute */
bSuccess = GetConsoleScreenBufferInfo( hConsole, &csbi );
if (!bSuccess) return bSuccess;
/* now set the buffer's attributes accordingly */
bSuccess = FillConsoleOutputAttribute( hConsole, csbi.wAttributes,
dwConSize, coordScreen, &cCharsWritten );
if (!bSuccess) return bSuccess;
/* put the cursor at (0, 0) */
bSuccess = SetConsoleCursorPosition( hConsole, coordScreen );
if (!bSuccess) return bSuccess;
return TRUE;
}
//////////////////////////////////////////////////////////////////////////////
BOOL CConsole::ApplyAttrib (short NumChars)
{
COORD coordScreen = { 0, 0 }; /* here's where we'll home the
cursor */
BOOL bSuccess;
DWORD cCharsWritten;
CONSOLE_SCREEN_BUFFER_INFO csbi; /* to get buffer info */
DWORD dwConSize; /* number of character cells in
the current buffer */
if (!sm_bConsole)
return FALSE;
HANDLE hConsole = GetHandle (STD_OUTPUT_HANDLE);
bSuccess = GetConsoleScreenBufferInfo( hConsole, &csbi );
if(!bSuccess)
printf("***Error*** GetConsoleScreenBufferInfo failed\n");
if (!bSuccess) return bSuccess;
dwConSize = csbi.dwSize.X * csbi.dwSize.Y;
bSuccess = FillConsoleOutputAttribute( hConsole, csbi.wAttributes,
NumChars?NumChars:dwConSize, csbi.dwCursorPosition, &cCharsWritten );
return bSuccess;
}
//////////////////////////////////////////////////////////////////////////////
WORD CConsole::GetSettings (WORD wFlags)
{
long lStdHandle;
HANDLE nStdHandle;
CONSOLE_SCREEN_BUFFER_INFO coninfo;
if (!sm_bConsole)
return FALSE; // There aint no console to set up, Duh
nStdHandle = GetStdHandle(STD_OUTPUT_HANDLE);
lStdHandle = (long)nStdHandle;
// set the screen buffer to be big enough to let us scroll text
GetConsoleScreenBufferInfo(nStdHandle,&coninfo);
if(!GetConsoleScreenBufferInfo(nStdHandle,&coninfo))
printf("***Error*** GetConsoleScreenBufferInfo failed\n");
switch (wFlags)
{
case SC_ATTRIB:
return coninfo.wAttributes;
break;
case SC_LINES:
return coninfo.dwSize.Y;
break;
case SC_COLUMNS:
return coninfo.dwSize.X;
break;
case SC_MAXLINES:
return coninfo.dwMaximumWindowSize.Y;
break;
case SC_MAXCOLUMNS:
return coninfo.dwMaximumWindowSize.X;
break;
default:
printf("***Error*** Wrong case label in GetSettings\n");
printwindata();
}
return 0;
}
//////////////////////////////////////////////////////////////////////////////
void CConsole::printwindata()
{
printf ("NumLines:%d,Columns:%d,Attributes:%d,MaxLines:%d,MaxColumns:%d\n",
GetNumberOfLines(),GetNumberOfColumns (), GetAttributes(),
GetMaxLinesInWindow(),GetMaxColumnsInWindow());
}

View file

@ -0,0 +1,61 @@
#ifndef __CONSOLE_H__
#define __CONSOLE_H__
//Some defines we will be requiring
#define SC_LINES 0x0001
#define SC_COLUMNS 0x0002
#define SC_ATTRIB 0x0004
#define SC_MAXLINES 0x0008
#define SC_MAXCOLUMNS 0x0010
#define CONSOLE_DEBUG 0
class CConsole
{
public:
//Constructor & Destructor
CConsole ();
CConsole (BOOL);
~CConsole ();
//Properties
short GetNumberOfLines();
short SetNumberOfLines (short sLines);
short SetNumberOfColumns (short sColumns);
short GetNumberOfColumns ();
WORD GetAttributes ();
WORD SetAttributes (WORD wAttrib,short NumChars = 0);
short SetMaxLinesInWindow (short maxLines);
short GetMaxLinesInWindow ();
short SetMaxColumnsInWindow (short maxLines);
short GetMaxColumnsInWindow ();
//Methods
void RedirectToConsole (WORD wFlags);
BOOL SetupConsole(WORD wFlags);
HANDLE GetHandle (DWORD dwFlag);
BOOL Clear ();
BOOL ApplyAttrib (short NumChars);
WORD GetSettings (WORD wFlags);
void printwindata();
protected:
//Helpers
BOOL CreateConsole ();
BOOL DestroyConsole ();
BOOL m_bRedirected;
short m_sNumColumns;
short m_sNumLines;
WORD m_wAttrib;
short m_sMaxLines;
short m_sMaxColumns;
DWORD m_dwError;
static BOOL sm_bConsole;
};
#endif //__CONSOLE_H__

77
GDE_3_2008/Cparser.cpp Normal file
View file

@ -0,0 +1,77 @@
#include <string>
#include <vector>
#include<map>
#include "stdafx.h"
#include "Cparser.h"
using namespace std;
#define Getc(s) getc(s)
#define Ungetc(c) ungetc(c,IP_Input)
/* Lexical analyser states. */
enum lexstate{L_START,L_INT,L_IDENT};
int Cparser::yylex(){
int c;
lexstate s;
for(s=L_START, yytext="";1;){
c= Getc(IP_Input);
yytext=yytext+(char)c;
switch (s){
case L_START:
if(isdigit(c)){
if((char)c!='x'){
s=L_INT;
}else{
Ungetc(c);
yytext=yytext.substr(0,yytext.size()-1);
yytext1+='1';
yytext+='0';// ab hier gut überlegen falls x auftritte
break;
}
}else if (isspace(c)||isalpha(c)){
s=L_IDENT;
}else if(c==EOF){
return 0;
}else if (c=='\n'){ LineNumber+=1;
}else { return 0;
}
break;
case L_INT:
if(isdigit(c)){ break;
}else {
Ungetc(c);
yylval.s=yytext.substr(0,yytext.size()-1);
}
break;
case L_IDENT:
if(isalpha(c)){
yylval.s=yytext.substr(0,yytext.size()-1);
yylval.i=atoi(yylval.s.c_str());
yytext="";
}
break;
default:
printf("*** Fatal Error!!!!!*** Wrong case label in yylex\n");
}
}
}

49
GDE_3_2008/Cparser.h Normal file
View file

@ -0,0 +1,49 @@
#ifndef CPARSER
#define CPARSER
#include <string>
#include "PrimImplikanten.h"
using namespace std;
class Cparser{
private:
PrimImplikant implikant;
public:
string yytext;
string yytext1;
int LineNumber;
struct tyylval{
string s;
int i;
}yylval;
FILE* IP_Input;
void pr_tokentable();
void load_tokenentry(string s ,int x);
int yylex();
};
#endif

172
GDE_3_2008/GDE_3.cpp Normal file
View file

@ -0,0 +1,172 @@
// GDE_3.cpp : Definiert das Klassenverhalten für die Anwendung.
//
#include "stdafx.h"
#include "console\console.h"
#include "GDE_3.h"
#include "MainFrm.h"
#include "GDE_3Doc.h"
#include "GDE_3View.h"
#include ".\gde_3.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// CGDE_3App
BEGIN_MESSAGE_MAP(CGDE_3App, CWinApp)
ON_COMMAND(ID_APP_ABOUT, OnAppAbout)
// Dateibasierte Standarddokumentbefehle
ON_COMMAND(ID_FILE_NEW, CWinApp::OnFileNew)
ON_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen)
// Standarddruckbefehl "Seite einrichten"
ON_COMMAND(ID_FILE_PRINT_SETUP, CWinApp::OnFilePrintSetup)
ON_COMMAND(ID_APP_EXIT, OnAppExit)
ON_COMMAND(ID_FILE_OPEN, OnFileOpen)
END_MESSAGE_MAP()
// CGDE_3App-Erstellung
CGDE_3App::CGDE_3App()
{
// TODO: Hier Code zur Konstruktion einfügen
// Alle wichtigen Initialisierungen in InitInstance positionieren
m_stopflag=FALSE;
}
// Das einzige CGDE_3App-Objekt
CGDE_3App theApp;
/////////////////////////////////////////////////////////////////////////////
/*Console object*/
CConsole con(TRUE);
// Dieser thread startet die Funktion main(), in der Benutzer seinen Code hat.
UINT StartGDE(LPVOID lpv)
{
extern void user_main();
user_main();
theApp.vw->uthread=NULL;
return TRUE;
}
// CGDE_3App Initialisierung
BOOL CGDE_3App::InitInstance()
{
// InitCommonControls() ist für Windows XP erforderlich, wenn ein Anwendungsmanifest
// die Verwendung von ComCtl32.dll Version 6 oder höher zum Aktivieren
// von visuellen Stilen angibt. Ansonsten treten beim Erstellen von Fenstern Fehler auf.
InitCommonControls();
CWinApp::InitInstance();
// OLE-Bibliotheken initialisieren
if (!AfxOleInit())
{
AfxMessageBox(IDP_OLE_INIT_FAILED);
return FALSE;
}
AfxEnableControlContainer();
// Standardinitialisierung
// Wenn Sie diese Features nicht verwenden und die Größe
// der ausführbaren Datei verringern möchten, entfernen Sie
// die nicht erforderlichen Initialisierungsroutinen.
// Ändern Sie den Registrierungsschlüssel unter dem Ihre Einstellungen gespeichert sind.
// TODO: Ändern Sie diese Zeichenfolge entsprechend,
// z.B. zum Namen Ihrer Firma oder Organisation.
SetRegistryKey(_T("GDE3"));
LoadStdProfileSettings(16); // Standard INI-Dateioptionen laden (einschließlich MRU)
// Dokumentvorlagen der Anwendung registrieren. Dokumentvorlagen
// dienen als Verbindung zwischen Dokumenten, Rahmenfenstern und Ansichten.
CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CGDE_3Doc),
RUNTIME_CLASS(CMainFrame), // Haupt-SDI-Rahmenfenster
RUNTIME_CLASS(CGDE_3View));
if (!pDocTemplate)
return FALSE;
AddDocTemplate(pDocTemplate);
// Befehlszeile parsen, um zu prüfen auf Standardumgebungsbefehle DDE, Datei offen
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);
// Verteilung der in der Befehlszeile angegebenen Befehle. Es wird FALSE zurückgegeben, wenn
// die Anwendung mit /RegServer, /Register, /Unregserver oder /Unregister gestartet wurde.
if (!ProcessShellCommand(cmdInfo))
return FALSE;
// Das einzige Fenster ist initialisiert und kann jetzt angezeigt und aktualisiert werden.
m_pMainWnd->ShowWindow(SW_SHOW);
m_pMainWnd->UpdateWindow();
// Rufen Sie DragAcceptFiles nur auf, wenn eine Suffix vorhanden ist.
// In einer SDI-Anwendung ist dies nach ProcessShellCommand erforderlich
/*Console start*/
con.RedirectToConsole(0);
con.SetNumberOfColumns (120);
Sleep(10);
con.SetNumberOfLines (2500);
Sleep(10);
/*Console end*/
return TRUE;
}
// CAboutDlg-Dialogfeld für Anwendungsbefehl 'Info'
class CAboutDlg : public CDialog
{
public:
CAboutDlg();
// Dialogfelddaten
enum { IDD = IDD_ABOUTBOX };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV-Unterstützung
// Implementierung
protected:
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
END_MESSAGE_MAP()
// Anwendungsbefehl zum Ausführen des Dialogfelds
void CGDE_3App::OnAppAbout()
{
CAboutDlg aboutDlg;
aboutDlg.DoModal();
}
// CGDE_3App Meldungshandler
void CGDE_3App::OnAppExit()
{
// TODO: Fügen Sie hier Ihren Befehlsbehandlungscode ein.
}
void CGDE_3App::OnFileOpen()
{
// TODO: Fügen Sie hier Ihren Befehlsbehandlungscode ein.
}

39
GDE_3_2008/GDE_3.h Normal file
View file

@ -0,0 +1,39 @@
// GDE_3.h : Hauptheaderdatei für die GDE_3-Anwendung
//
#ifndef _GDE_3_H
#define _GDE_3_H
#pragma once
#ifndef __AFXWIN_H__
#error 'stdafx.h' muss vor dieser Datei in PCH eingeschlossen werden.
#endif
#include "resource.h" // Hauptsymbole
// CGDE_3App:
// Siehe GDE_3.cpp für die Implementierung dieser Klasse
//
class CGDE_3View;
class CGDE_3App : public CWinApp
{
public:
CGDE_3App();
CGDE_3View *vw; //actual view
BOOL m_stopflag;
// Überschreibungen
public:
virtual BOOL InitInstance();
// Implementierung
afx_msg void OnAppAbout();
DECLARE_MESSAGE_MAP()
afx_msg void OnAppExit();
afx_msg void OnFileOpen();
};
extern CGDE_3App theApp;
#endif

396
GDE_3_2008/GDE_3.rc Normal file
View file

@ -0,0 +1,396 @@
// Microsoft Visual C++ generated resource script.
//
#include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// Deutsch (Deutschland) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEU)
#ifdef _WIN32
LANGUAGE LANG_GERMAN, SUBLANG_GERMAN
#pragma code_page(1252)
#endif //_WIN32
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE
BEGIN
"resource.h\0"
END
2 TEXTINCLUDE
BEGIN
"#include ""afxres.h""\r\n"
"\0"
END
3 TEXTINCLUDE
BEGIN
"#define _AFX_NO_SPLITTER_RESOURCES\r\n"
"#define _AFX_NO_OLE_RESOURCES\r\n"
"#define _AFX_NO_TRACKER_RESOURCES\r\n"
"#define _AFX_NO_PROPERTY_RESOURCES\r\n"
"\r\n"
"#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEU)\r\n"
"LANGUAGE 7, 1\r\n"
"#pragma code_page(1252)\r\n"
"#include ""res\\GDE_3.rc2"" // Nicht mit Microsoft Visual C++ bearbeitete Ressourcen\r\n"
"#include ""afxres.rc"" // Standardkomponenten\r\n"
"#include ""afxprint.rc"" // Ressourcen für Drucken/Seitenansicht\r\n"
"#endif\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Icon
//
// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDR_MAINFRAME ICON "res\\GDE_3.ico"
IDR_GDE_3TYPE ICON "res\\GDE_3Doc.ico"
/////////////////////////////////////////////////////////////////////////////
//
// Bitmap
//
IDR_MAINFRAME BITMAP "res\\Toolbar.bmp"
/////////////////////////////////////////////////////////////////////////////
//
// Toolbar
//
IDR_MAINFRAME TOOLBAR 16, 15
BEGIN
BUTTON ID_FILE_NEW
BUTTON ID_FILE_OPEN
BUTTON ID_FILE_SAVE
SEPARATOR
BUTTON ID_FILE_PRINT
BUTTON ID_APP_ABOUT
SEPARATOR
BUTTON ID_BUTTONZOOMOUT
BUTTON ID_BUTTONZOOMIN
BUTTON ID_BUTTONZOOMFIT
BUTTON ID_STARTBUTTON
BUTTON ID_STOPBUTTON
END
/////////////////////////////////////////////////////////////////////////////
//
// Menu
//
IDR_MAINFRAME MENU
BEGIN
POPUP "&Datei"
BEGIN
MENUITEM "&Neu\tStrg+N", ID_FILE_NEW
MENUITEM "Ö&ffnen...\tStrg+O", ID_FILE_OPEN
MENUITEM "&Speichern\tStrg+S", ID_FILE_SAVE
MENUITEM "Speichern &unter...", ID_FILE_SAVE_AS
MENUITEM SEPARATOR
MENUITEM "&Drucken...\tStrg+P", ID_FILE_PRINT
MENUITEM "&Seitenansicht", ID_FILE_PRINT_PREVIEW
MENUITEM "Dru&ckeinrichtung...", ID_FILE_PRINT_SETUP
MENUITEM SEPARATOR
MENUITEM "Letzte Datei", ID_FILE_MRU_FILE1, GRAYED
MENUITEM SEPARATOR
MENUITEM "&Beenden", ID_APP_EXIT
END
POPUP "&Bearbeiten"
BEGIN
MENUITEM "&Rückgängig\tStrg+Z", ID_EDIT_UNDO
MENUITEM SEPARATOR
MENUITEM "&Ausschneiden\tStrg+X", ID_EDIT_CUT
MENUITEM "&Kopieren\tStrg+C", ID_EDIT_COPY
MENUITEM "&Einfügen\tStrg+V", ID_EDIT_PASTE
END
POPUP "&Ansicht"
BEGIN
MENUITEM "&Symbolleiste", ID_VIEW_TOOLBAR
MENUITEM "Status&leiste", ID_VIEW_STATUS_BAR
END
POPUP "&Hilfe"
BEGIN
MENUITEM "&Info über GDE_3...", ID_APP_ABOUT
END
END
/////////////////////////////////////////////////////////////////////////////
//
// Accelerator
//
IDR_MAINFRAME ACCELERATORS
BEGIN
"N", ID_FILE_NEW, VIRTKEY, CONTROL
"O", ID_FILE_OPEN, VIRTKEY, CONTROL
"S", ID_FILE_SAVE, VIRTKEY, CONTROL
"P", ID_FILE_PRINT, VIRTKEY, CONTROL
"Z", ID_EDIT_UNDO, VIRTKEY, CONTROL
"X", ID_EDIT_CUT, VIRTKEY, CONTROL
"C", ID_EDIT_COPY, VIRTKEY, CONTROL
"V", ID_EDIT_PASTE, VIRTKEY, CONTROL
VK_BACK, ID_EDIT_UNDO, VIRTKEY, ALT
VK_DELETE, ID_EDIT_CUT, VIRTKEY, SHIFT
VK_INSERT, ID_EDIT_COPY, VIRTKEY, CONTROL
VK_INSERT, ID_EDIT_PASTE, VIRTKEY, SHIFT
VK_F6, ID_NEXT_PANE, VIRTKEY
VK_F6, ID_PREV_PANE, VIRTKEY, SHIFT
END
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_ABOUTBOX DIALOGEX 0, 0, 235, 55
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION |
WS_SYSMENU
CAPTION "Info über GDE_3"
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
ICON IDR_MAINFRAME,IDC_STATIC,11,17,20,20
LTEXT "GDE_3 Version 1.0",IDC_STATIC,40,10,119,8,SS_NOPREFIX
LTEXT "Copyright (C) 2007",IDC_STATIC,40,25,119,8
DEFPUSHBUTTON "OK",IDOK,178,7,50,16,WS_GROUP
END
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,0,0,1
PRODUCTVERSION 1,0,0,1
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x4L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040704e4"
BEGIN
VALUE "CompanyName", "TODO: <Firmenname>"
VALUE "FileDescription", "TODO: <Dateibeschreibung>"
VALUE "FileVersion", "1.0.0.1"
VALUE "InternalName", "GDE_3.exe"
VALUE "Copyright (C) 2007", "TODO: (c) <Firmenname>. Alle Rechte vorbehalten."
VALUE "OriginalFilename", "GDE_3.exe"
VALUE "ProductName", "TODO: <Product name>"
VALUE "ProductVersion", "1.0.0.1"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x407, 1252
END
END
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO
BEGIN
IDD_ABOUTBOX, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 228
TOPMARGIN, 7
BOTTOMMARGIN, 48
END
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// String Table
//
STRINGTABLE
BEGIN
IDR_MAINFRAME "GDE_3\n\nGDE_3\n\n\nGDE3.Document\nGDE_3.Document"
END
STRINGTABLE
BEGIN
AFX_IDS_APP_TITLE "GDE_3"
AFX_IDS_IDLEMESSAGE "Bereit"
END
STRINGTABLE
BEGIN
ID_INDICATOR_EXT "ER"
ID_INDICATOR_CURPOS "x,y "
ID_INDICATOR_CAPS "UF"
ID_INDICATOR_NUM "NUM"
ID_INDICATOR_SCRL "RF"
ID_INDICATOR_OVR "ÜB"
ID_INDICATOR_REC "MA"
END
STRINGTABLE
BEGIN
ID_FILE_NEW "Erstellt ein neues Dokument.\nNeu"
ID_FILE_OPEN "Öffnet ein vorhandenes Dokument.\nÖffnen"
ID_FILE_CLOSE "Schließt das aktive Dokument.\nSchließen"
ID_FILE_SAVE "Speichert das aktive Dokument.\nSpeichern"
ID_FILE_SAVE_AS "Speichert das aktive Dokument unter einem neuem Namen.\nSpeichern unter"
ID_FILE_PAGE_SETUP "Ändert die Druckoptionen.\nSeite einrichten"
ID_FILE_PRINT_SETUP "Ändert den Drucker und die Druckoptionen.\nDruckereinrichtung"
ID_FILE_PRINT "Druckt das aktive Dokument.\nDrucken"
ID_FILE_PRINT_PREVIEW "Zeigt ganze Seiten an.\nSeitenansicht"
END
STRINGTABLE
BEGIN
ID_APP_ABOUT "Zeigt Programm-, Versions- und Copyrightinformationen an.\nInfo"
ID_APP_EXIT "Beendet die Anwendung und fordert zum Speichern der Dokumente auf.\nBeenden"
END
STRINGTABLE
BEGIN
ID_FILE_MRU_FILE1 "Öffnet das Dokument."
ID_FILE_MRU_FILE2 "Öffnet das Dokument."
ID_FILE_MRU_FILE3 "Öffnet das Dokument."
ID_FILE_MRU_FILE4 "Öffnet das Dokument."
ID_FILE_MRU_FILE5 "Öffnet das Dokument."
ID_FILE_MRU_FILE6 "Öffnet das Dokument."
ID_FILE_MRU_FILE7 "Öffnet das Dokument."
ID_FILE_MRU_FILE8 "Öffnet das Dokument."
ID_FILE_MRU_FILE9 "Öffnet das Dokument."
ID_FILE_MRU_FILE10 "Öffnet das Dokument."
ID_FILE_MRU_FILE11 "Öffnet das Dokument."
ID_FILE_MRU_FILE12 "Öffnet das Dokument."
ID_FILE_MRU_FILE13 "Öffnet das Dokument."
ID_FILE_MRU_FILE14 "Öffnet das Dokument."
ID_FILE_MRU_FILE15 "Öffnet das Dokument."
ID_FILE_MRU_FILE16 "Öffnet das Dokument."
END
STRINGTABLE
BEGIN
ID_NEXT_PANE "Wechselt zum nächsten Fensterbereich.\nNächster Bereich"
ID_PREV_PANE "Wechselt zum vorherigen Fensterbereich.\nVorheriger Bereich"
END
STRINGTABLE
BEGIN
ID_WINDOW_SPLIT "Teilt das aktive Fenster in Bereiche.\nTeilen"
END
STRINGTABLE
BEGIN
ID_EDIT_CLEAR "Löscht die Auswahl.\nLöschen"
ID_EDIT_CLEAR_ALL "Löscht alles.\nAlles löschen"
ID_EDIT_COPY "Kopiert die Auswahl in die Zwischenablage.\nKopieren"
ID_EDIT_CUT "Überträgt die Auswahl in die Zwischenablage.\nAusschneiden"
ID_EDIT_FIND "Sucht den angegebenen Text.\nSuchen"
ID_EDIT_PASTE "Fügt den Inhalt der Zwischenablage ein.\nEinfügen"
ID_EDIT_REPEAT "Wiederholt den letzten Vorgang.\nWiederholen"
ID_EDIT_REPLACE "Ersetzt den angegebenen Text.\nErsetzen"
ID_EDIT_SELECT_ALL "Markiert das gesamte Dokument.\nAlles auswählen"
ID_EDIT_UNDO "Macht den letzten Vorgang rückgängig.\nRückgängig"
ID_EDIT_REDO "Wiederholt den zuletzt rückgängig gemachten Vorgang.\nWiederherstellen"
END
STRINGTABLE
BEGIN
ID_VIEW_TOOLBAR "Blendet die Symbolleiste ein oder aus.\nSymbolleiste"
ID_VIEW_STATUS_BAR "Blendet die Statusleiste ein oder aus.\nStatusleiste"
END
STRINGTABLE
BEGIN
AFX_IDS_SCSIZE "Ändert die Fenstergröße."
AFX_IDS_SCMOVE "Ändert die Position des Fensters."
AFX_IDS_SCMINIMIZE "Minimiert das Fenster."
AFX_IDS_SCMAXIMIZE "Maximiert das Fenster."
AFX_IDS_SCNEXTWINDOW "Wechselt zum nächsten Dokumentfenster."
AFX_IDS_SCPREVWINDOW "Wechselt zum vorherigen Dokumentfenster."
AFX_IDS_SCCLOSE "Schließt das aktive Fenster und fordert zum Speichern des Dokuments auf."
END
STRINGTABLE
BEGIN
AFX_IDS_SCRESTORE "Stellt die ursprüngliche Fenstergröße wieder her."
AFX_IDS_SCTASKLIST "Aktiviert die Taskliste."
END
STRINGTABLE
BEGIN
AFX_IDS_PREVIEW_CLOSE "Beendet die Seitenansicht.\nSeitenansicht beenden"
END
STRINGTABLE
BEGIN
ID_BUTTONZOOMOUT "Zoom Out"
ID_BUTTONZOOMIN "Zoom In"
ID_BUTTONZOOMFIT "Originale Size"
ID_STARTBUTTON "Start the Application"
ID_STOPBUTTON "Stop the Application"
END
#endif // Deutsch (Deutschland) resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
#define _AFX_NO_SPLITTER_RESOURCES
#define _AFX_NO_OLE_RESOURCES
#define _AFX_NO_TRACKER_RESOURCES
#define _AFX_NO_PROPERTY_RESOURCES
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEU)
LANGUAGE 7, 1
#pragma code_page(1252)
#include "res\GDE_3.rc2" // Nicht mit Microsoft Visual C++ bearbeitete Ressourcen
#include "afxres.rc" // Standardkomponenten
#include "afxprint.rc" // Ressourcen für Drucken/Seitenansicht
#endif
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED

19
GDE_3_2008/GDE_3.sln Normal file
View file

@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GDE_3", "GDE_3.vcxproj", "{B0DC7B0A-75D1-4BF6-9861-3C4056C4AA6B}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{B0DC7B0A-75D1-4BF6-9861-3C4056C4AA6B}.Debug|Win32.ActiveCfg = Debug|Win32
{B0DC7B0A-75D1-4BF6-9861-3C4056C4AA6B}.Debug|Win32.Build.0 = Debug|Win32
{B0DC7B0A-75D1-4BF6-9861-3C4056C4AA6B}.Release|Win32.ActiveCfg = Release|Win32
{B0DC7B0A-75D1-4BF6-9861-3C4056C4AA6B}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

19
GDE_3_2008/GDE_3.sln.old Normal file
View file

@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GDE_3", "GDE_3.vcproj", "{B0DC7B0A-75D1-4BF6-9861-3C4056C4AA6B}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{B0DC7B0A-75D1-4BF6-9861-3C4056C4AA6B}.Debug|Win32.ActiveCfg = Debug|Win32
{B0DC7B0A-75D1-4BF6-9861-3C4056C4AA6B}.Debug|Win32.Build.0 = Debug|Win32
{B0DC7B0A-75D1-4BF6-9861-3C4056C4AA6B}.Release|Win32.ActiveCfg = Release|Win32
{B0DC7B0A-75D1-4BF6-9861-3C4056C4AA6B}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

BIN
GDE_3_2008/GDE_3.suo.old Normal file

Binary file not shown.

375
GDE_3_2008/GDE_3.vcproj Normal file
View file

@ -0,0 +1,375 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9,00"
Name="GDE_3"
ProjectGUID="{B0DC7B0A-75D1-4BF6-9861-3C4056C4AA6B}"
Keyword="MFCProj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="false"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="WIN32;_WINDOWS;_DEBUG"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
TreatWChar_tAsBuiltInType="true"
UsePrecompiledHeader="2"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="1031"
AdditionalIncludeDirectories="$(IntDir)"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="false"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;_WINDOWS;NDEBUG"
MinimalRebuild="false"
RuntimeLibrary="0"
TreatWChar_tAsBuiltInType="true"
UsePrecompiledHeader="2"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="1031"
AdditionalIncludeDirectories="$(IntDir)"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Quelldateien"
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File
RelativePath=".\GDE_3.cpp"
>
</File>
<File
RelativePath=".\GDE_3Doc.cpp"
>
</File>
<File
RelativePath=".\GDE_3View.cpp"
>
</File>
<File
RelativePath=".\MainFrm.cpp"
>
</File>
<File
RelativePath=".\stdafx.cpp"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
</File>
<File
RelativePath=".\user.cpp"
>
</File>
</Filter>
<Filter
Name="Headerdateien"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
<File
RelativePath=".\GDE_3.h"
>
</File>
<File
RelativePath=".\GDE_3Doc.h"
>
</File>
<File
RelativePath=".\GDE_3View.h"
>
</File>
<File
RelativePath=".\MainFrm.h"
>
</File>
<File
RelativePath=".\Resource.h"
>
</File>
<File
RelativePath=".\stdafx.h"
>
</File>
<File
RelativePath=".\User.h"
>
</File>
</Filter>
<Filter
Name="Ressourcendateien"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File
RelativePath=".\res\GDE_3.ico"
>
</File>
<File
RelativePath=".\GDE_3.rc"
>
</File>
<File
RelativePath=".\res\GDE_3.rc2"
>
</File>
<File
RelativePath=".\res\GDE_3Doc.ico"
>
</File>
<File
RelativePath=".\res\Toolbar.bmp"
>
</File>
</Filter>
<Filter
Name="Graphics"
>
<File
RelativePath=".\Graphics\BaseException.h"
>
</File>
<File
RelativePath=".\Graphics\Dib.cpp"
>
</File>
<File
RelativePath=".\Graphics\Dib.h"
>
</File>
<File
RelativePath=".\Graphics\Graphicfunctions.cpp"
>
</File>
<File
RelativePath=".\Graphics\Graphicfunctions.h"
>
</File>
<File
RelativePath=".\Graphics\Image.h"
>
</File>
<File
RelativePath=".\Graphics\PointerArray.h"
>
</File>
<File
RelativePath=".\Graphics\Shape.cpp"
>
</File>
<File
RelativePath=".\Graphics\Shape.h"
>
</File>
</Filter>
<Filter
Name="Console"
>
<File
RelativePath=".\Console\Console.cpp"
>
</File>
<File
RelativePath=".\Console\Console.h"
>
</File>
</Filter>
<File
RelativePath=".\res\GDE_3.manifest"
>
<FileConfiguration
Name="Debug|Win32"
ExcludedFromBuild="true"
>
<Tool
Name="VCCustomBuildTool"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
ExcludedFromBuild="true"
>
<Tool
Name="VCCustomBuildTool"
/>
</FileConfiguration>
</File>
<File
RelativePath=".\ReadMe.txt"
>
</File>
</Files>