// zwischenfilter.cpp: Implementierungsdatei
//

#include "stdafx.h"
#include "Ecopay.h"
#include "zwischenfilter.h"


// zwischenfilter-Dialogfeld

IMPLEMENT_DYNAMIC(zwischenfilter, CDialog)

zwischenfilter::zwischenfilter(CWnd* pParent /*=NULL*/)
	: CDialog(zwischenfilter::IDD, pParent)
	, m_Hoch(0)
	, m_gruen(0)
	
{

}

zwischenfilter::~zwischenfilter()
{
}

void zwischenfilter::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Control(pDX, IDC_Combo_massnahme, m_massnahme);
	DDX_Control(pDX, IDC_Combo_Art, m_combo_art);
	DDX_Control(pDX, IDC_WALD, m_Wald);
	DDX_Control(pDX, IDC_qualtitaet, m_qualitaet);
	DDX_Control(pDX, IDC_GRUEN, m_gruenlandzahl);
	DDX_Control(pDX, IDC_Hoch, m_hoehe);
	DDX_Control(pDX, IDC_Gewinn, m_gewinn);
	DDX_Control(pDX, IDC_Bearbeitung, m_bearbeitung);
	DDX_Control(pDX, IDC_Gruenland, m_gruenlandtyp);
	DDX_Control(pDX, IDC_massnahmen, m_allemassnahmen);
	DDX_Control(pDX, IDC_CHECK1, m_nur_ergeb);
}


BEGIN_MESSAGE_MAP(zwischenfilter, CDialog)
	ON_CBN_SELCHANGE(IDC_Combo_massnahme, &zwischenfilter::OnCbnSelchangecomboMassnahme)
	ON_CBN_SELCHANGE(IDC_Combo_Art, &zwischenfilter::OnCbnSelchangeComboArt)
	ON_BN_CLICKED(IDC_qualtitaet, &zwischenfilter::OnBnClickedqualtitaet)
	ON_BN_CLICKED(IDC_Gewinn, &zwischenfilter::OnBnClickedGewinn)
	ON_BN_CLICKED(IDC_WALD, &zwischenfilter::OnBnClickedWald)
	ON_BN_CLICKED(IDC_Hoch, &zwischenfilter::OnBnClickedHoch)
	ON_BN_CLICKED(IDC_GRUEN, &zwischenfilter::OnBnClickedGruen)
	ON_BN_CLICKED(IDC_SAVE_PIC, &zwischenfilter::OnBnClickedSavePic)
	ON_BN_CLICKED(IDC_massnahmen, &zwischenfilter::OnBnClickedmassnahmen)
	ON_BN_CLICKED(IDC_CHECK1, &zwischenfilter::OnBnClickedCheck1)
	ON_CBN_DBLCLK(IDC_Combo_massnahme, &zwischenfilter::OnCbnDblclkCombomassnahme)
	ON_BN_CLICKED(IDC_Bearbeitung, &zwischenfilter::OnBnClickedBearbeitung)
	ON_BN_CLICKED(IDC_Gruenland, &zwischenfilter::OnBnClickedGruenland)
	ON_WM_CLOSE()
END_MESSAGE_MAP()


// zwischenfilter-Meldungshandler
BOOL zwischenfilter::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	//aktivieren der Buttons
	//CButton *qualitaetRadio = (CButton *)GetDlgItem(IDC_qualtitaet);
	//CButton *gruenlandRadio = (CButton *)GetDlgItem(IDC_GRUEN);
	
	// Comboboxen:
	//ComboBoxmassnahme = (CComboBox *)GetDlgItem(IDC_Combo_massnahme);
	//ComboBoxart = (CComboBox *)GetDlgItem(IDC_Combo_Art);
	
	m_qualitaet.SetCheck(1);
	//qualitaetRadio->SetCheck(1)
	ErgebnisFilter = 7;
	m_gruenlandzahl.SetCheck(1);
	//gruenlandRadio->SetCheck(1);
	Filter = 5;

	speichereBild =false;
	
	ArtenIndex = 0;
	massnahme = 0;
	erneuereCombobox = true;
	zeigeAllgemein =true;
	zeigeErgebnisse = true;
	allemassnahmen = false;
    m_allemassnahmen.SetCheck(BST_UNCHECKED);
	m_nur_ergeb.SetCheck(BST_UNCHECKED);
	

	return true;
}
//CView * scroll;
void zwischenfilter::ViewUpdate()
{
	pActiveFrame =(CMDIChildWnd*)
		((CMDIFrameWnd*)(AfxGetApp()->m_pMainWnd))->MDIGetActive();
	try{
		pActiveFrame->GetActiveView();
		pActiveFrame->Invalidate(NULL);
	}catch(...){

	}
}
void zwischenfilter::OnCbnSelchangecomboMassnahme()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
	UpdateData(TRUE);
	
	//ComboBoxmassnahme = (CComboBox *)GetDlgItem(IDC_Combo_massnahme);
	massnahme = m_massnahme.GetCurSel();

	//deletAllCombo();
	UpdateData();
	ViewUpdate();
}
void zwischenfilter::addArt(CString item){
	
	m_combo_art.AddString((LPCTSTR)item);

	
}

void zwischenfilter::OnCbnSelchangeComboArt()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
	//ComboBoxart = (CComboBox *)GetDlgItem(IDC_Combo_Art);

	ArtenIndex = m_combo_art.GetCurSel();
	
	ViewUpdate();
}

void zwischenfilter::OnBnClickedqualtitaet()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
	ErgebnisFilter = 7;
	UINT check;
	check = IsDlgButtonChecked(IDC_qualtitaet);
	if(check == 1)
	{
		
		TRACE0("\nOnBnClickedqualtitaet");
		CheckDlgButton(IDC_Gewinn, 0);
		CheckDlgButton(IDC_Gruenland, 0);
	
		ViewUpdate();
	}
}

void zwischenfilter::OnBnClickedGewinn()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
		ErgebnisFilter = 9;
		UINT check;
	check = IsDlgButtonChecked(IDC_Gewinn);
	if(check == 1)
	{
		TRACE0("\nOnBnClickedGewinn");
		CheckDlgButton(IDC_qualtitaet, 0);
		CheckDlgButton(IDC_Gruenland, 0);
	
		ViewUpdate();
	}
	
}

void zwischenfilter::OnBnClickedWald()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
	Filter = 2;
	TRACE0("\nOnBnClickedWald");
	CheckDlgButton(IDC_GRUEN, 0);
	ViewUpdate();
}

void zwischenfilter::OnBnClickedHoch()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
	Filter = 1;
	TRACE0("\nOnBnClickedHochland");
	CheckDlgButton(IDC_GRUEN, 0);
	ViewUpdate();
}

void zwischenfilter::OnBnClickedGruen()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
	Filter = 5;
	TRACE0("\nOnBnClickedGruenland");
	
	ViewUpdate();
}

void zwischenfilter::OnBnClickedSavePic()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
	speichereBild = true;
	ViewUpdate();
}

void zwischenfilter::OnBnClickedmassnahmen()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
	if(m_allemassnahmen.GetCheck()== BST_CHECKED)
		allemassnahmen = true;
	else
		allemassnahmen = false;
	ViewUpdate();

}

void zwischenfilter::OnBnClickedCheck1()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
	if(m_nur_ergeb.GetCheck()== BST_CHECKED)
		zeigeAllgemein = true;
	else
		zeigeAllgemein = false;

	if(zeigeAllgemein){
		zeigeAllgemein = false;
		m_Wald.ModifyStyle(0,WS_DISABLED);
		m_hoehe.ModifyStyle(0,WS_DISABLED);
		m_gruenlandzahl.ModifyStyle(0,WS_DISABLED);
		m_bearbeitung.ModifyStyle(0,WS_DISABLED);
	}else{
		zeigeAllgemein = true;
		m_Wald.ModifyStyle(WS_DISABLED,0);
		m_hoehe.ModifyStyle(WS_DISABLED,0);
		m_gruenlandzahl.ModifyStyle(WS_DISABLED,0);
		m_bearbeitung.ModifyStyle(WS_DISABLED,0);
	}

	m_Wald.Invalidate(FALSE);
	m_hoehe.Invalidate(FALSE);
	m_gruenlandzahl.Invalidate(FALSE);
	m_bearbeitung.Invalidate(FALSE);
	
	ViewUpdate();
}

void zwischenfilter::OnCbnDblclkCombomassnahme()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
	UpdateData(TRUE);
	
	//ComboBoxmassnahme = (CComboBox *)GetDlgItem(IDC_Combo_massnahme);
	massnahme = m_massnahme.GetCurSel();
	//deletAllCombo();
	UpdateData();
	ViewUpdate();
}

void zwischenfilter::OnBnClickedBearbeitung()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
	Filter = 10;
	TRACE0("\nOnBnClickedBearbeitung");
	CheckDlgButton(IDC_GRUEN, 0);
	
	ViewUpdate();
}

void zwischenfilter::OnBnClickedGruenland()
{
	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
	UINT check;
	check = IsDlgButtonChecked(IDC_Gruenland);
	if(check == 1)
	{
		ErgebnisFilter = 11;
		TRACE0("\nOnBnClickedGruenland");
		CheckDlgButton(IDC_qualtitaet, 0);
		CheckDlgButton(IDC_Gewinn, 0);
	
		ViewUpdate();
	}
}

void zwischenfilter::OnClose()
{
	// TODO: Add your message handler code here and/or call default
  pActiveFrame =(CMDIChildWnd*)((CMDIFrameWnd*)(AfxGetApp()->m_pMainWnd))->MDIGetActive();
  pActiveFrame->MDIDestroy();
	CDialog::OnClose();
}
