Files
Kanalsanierungsverwaltung/SanSystem/frmObjektEdit.cs
2018-07-11 15:31:21 +02:00

169 lines
6.4 KiB
C#

using KlassenBIB;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using SanShared;
using System.Collections;
namespace SanSystem
{
public partial class frmObjektEdit : Form
{
Inspektionsobjekt inspektionsobjekt = null;
public frmObjektEdit(Inspektionsobjekt inspektion)
{
InitializeComponent();
btn_add_san.Text = Global.Instance.language.Labels["add_san"];
btn_close.Text = Global.Instance.language.Labels["btn_close"];
this.inspektionsobjekt = inspektion;
foreach(Sanierung san in inspektion.Sanierung)
{
TabPage tab = new TabPage();
if(san is InlinerSanierung)
{
tab.Text = "InlinerSanierung";
UCInliner uCInliner = new UCInliner(san as InlinerSanierung);
uCInliner.Dock = DockStyle.Fill;
tab.Controls.Add(uCInliner);
tabControl1.TabPages.Add(tab);
}
else if(san is SchachtAnbindung)
{
tab.Text = "Schachtanbindung";
UCSchachtanbindung uCSchachtanbindung = new UCSchachtanbindung(san as SchachtAnbindung);
uCSchachtanbindung.Dock = DockStyle.Fill;
tab.Controls.Add(uCSchachtanbindung);
tabControl1.TabPages.Add(tab);
}
}
if (Environment.MachineName.Equals("MEVES-LT"))
{
this.Width = 1512;
this.Height = 907;
}
}
private void frmObjektEdit_Load(object sender, EventArgs e)
{
txt_laenge_schacht.DataBindings.Add(new Binding("Text", inspektionsobjekt, "Schachtlaenge"));
txt_objekt_name.DataBindings.Add(new Binding("Text", inspektionsobjekt, "Objektbezeichnung"));
txt_punkt_von.DataBindings.Add(new Binding("Text", inspektionsobjekt, "VonPunkt"));
txt_punkt_bis.DataBindings.Add(new Binding("Text", inspektionsobjekt, "BisPunkt"));
txt_strasse.DataBindings.Add(new Binding("Text", inspektionsobjekt, "StrasseName"));
txt_hausnummer.DataBindings.Add(new Binding("Text", inspektionsobjekt, "Hausnummer"));
cb_material.DataBindings.Add(new Binding("Text", inspektionsobjekt, "RohrMaterial"));
txt_haltungslaenge.DataBindings.Add(new Binding("Text", inspektionsobjekt, "Haltungslaenge"));
txt_dn.DataBindings.Add(new Binding("Text", inspektionsobjekt, "Kanalrohrweite"));
txt_pro_nr.DataBindings.Add(new Binding("Text", inspektionsobjekt, "ProjektNummer"));
dt_haltunggemessen_datum.DataBindings.Add(new Binding("Value", inspektionsobjekt, "HaltungGemessen"));
}
private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void btn_get_temp_Click(object sender, EventArgs e)
{
/*
ITemperature temperature = TempCAN.TemperaturBuilder.Temperatur(TempCAN.TemperaturSchnittstellen.TINKERFORGE);
double temperatur = temperature.GetTemperatur();
inliner.TempAusen = temperatur;
//var x = txt_temp_aussen.DataBindings;
txt_temp_aussen.Update();
*/
}
private void btn_close_Click(object sender, EventArgs e)
{
int width = this.Width;
int height = this.Height;
txt_laenge_schacht.DataBindings.Clear();
txt_objekt_name.DataBindings.Clear();
txt_punkt_von.DataBindings.Clear();
txt_punkt_bis.DataBindings.Clear();
txt_strasse.DataBindings.Clear();
txt_hausnummer.DataBindings.Clear();
cb_material.DataBindings.Clear();
txt_haltungslaenge.DataBindings.Clear();
txt_dn.DataBindings.Clear();
txt_pro_nr.DataBindings.Clear();
dt_haltunggemessen_datum.DataBindings.Clear();
//MessageBox.Show(string.Format("width: {0} height: {1}", width, height));
this.Close();
}
private void btn_add_san_Click(object sender, EventArgs e)
{
FrmSelectNewSan frmSelectNewSan = new FrmSelectNewSan();
frmSelectNewSan.AddInlinerClicked += FrmSelectNewSan_AddInlinerClicked;
frmSelectNewSan.AddSchachtAnbindungClicked += FrmSelectNewSan_AddSchachtAnbindungClicked;
frmSelectNewSan.ShowDialog();
}
private void FrmSelectNewSan_AddSchachtAnbindungClicked(object sender, EventArgs e)
{
SchachtAnbindung schachtAnbindung = new SchachtAnbindung();
schachtAnbindung.Inspektionsobjekt = inspektionsobjekt;
inspektionsobjekt.Sanierung.Add(schachtAnbindung);
TabPage tab = new TabPage();
tab.Text = "Schachtanbindung";
UCSchachtanbindung uCSchachtanbindung = new UCSchachtanbindung(schachtAnbindung);
uCSchachtanbindung.Dock = DockStyle.Fill;
tab.Controls.Add(uCSchachtanbindung);
tabControl1.TabPages.Add(tab);
}
private void FrmSelectNewSan_AddInlinerClicked(object sender, EventArgs e)
{
if(inspektionsobjekt.Sanierung.Count > 0)
{
foreach(Sanierung xsan in inspektionsobjekt.Sanierung)
{
if(xsan is InlinerSanierung)
{
MessageBox.Show("Lustig Sie wollen einen Inliner in einem Inliner setzen?", "Lustig", MessageBoxButtons.OK, MessageBoxIcon.Question);
return;
}
}
}
InlinerSanierung san = new InlinerSanierung();
san.Inspektionsobjekt = inspektionsobjekt;
inspektionsobjekt.Sanierung.Add(san);
TabPage tab = new TabPage();
tab.Text = "InlinerSanierung";
UCInliner uCInliner = new UCInliner(san);
uCInliner.Dock = DockStyle.Fill;
tab.Controls.Add(uCInliner);
tabControl1.TabPages.Add(tab);
}
}
}