Skip to content

Commit

Permalink
Wedstrijdinstellingen kunnen maken
Browse files Browse the repository at this point in the history
  • Loading branch information
Pieter Bas Hofstede committed Apr 20, 2012
1 parent 61a26ae commit a687aef
Show file tree
Hide file tree
Showing 6 changed files with 214 additions and 30 deletions.
18 changes: 13 additions & 5 deletions FormOpstelling.pas
Expand Up @@ -3,7 +3,7 @@
interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, uHTPredictor,
ExtCtrls, uSelectie, uOpstelling, FormOpstellingPlayer, StdCtrls;

type
Expand Down Expand Up @@ -34,6 +34,9 @@ TfrmOpstelling = class(TForm)
FOpstellingPlayerArray: array[1..14] of TfrmOpstellingPlayer;
FOpstellingAanvoerder: TfrmOpstellingPlayer;
FOpstellingSpelhervatter: TfrmOpstellingPlayer;
FWedstrijdPlaats: TWedstrijdPlaats;
FZelfVertrouwen: double;
FTeamgeest: double;
procedure SetSelectie(const Value: TSelectie);
procedure FreeObjecten;
{ Private declarations }
Expand All @@ -49,21 +52,26 @@ TfrmOpstelling = class(TForm)
end;


function ToonOpstelling(aParent: TWinControl; aSelectie: TSelectie): TfrmOpstelling;
function ToonOpstelling(aParent: TWinControl; aSelectie: TSelectie; aWedstrijdPlaats: TWedstrijdPlaats; aZelfvertrouwen,
aTeamgeest: double): TfrmOpstelling;

implementation
uses
uHTPredictor, Math;
Math;

{$R *.DFM}


function ToonOpstelling(aParent: TWinControl; aSelectie: TSelectie): TfrmOpstelling;
function ToonOpstelling(aParent: TWinControl; aSelectie: TSelectie; aWedstrijdPlaats: TWedstrijdPlaats; aZelfvertrouwen,
aTeamgeest: double): TfrmOpstelling;
begin

Result := TfrmOpstelling.Create(nil);

Result.Parent := aParent;
Result.FWedstrijdPlaats := aWedstrijdPlaats;
Result.FZelfvertrouwen := aZelfvertrouwen;
Result.FTeamgeest := aTeamgeest;
Result.Selectie := aSelectie;

Result.Align := alClient;
Expand Down Expand Up @@ -114,7 +122,7 @@ procedure TfrmOpstelling.SetSelectie(const Value: TSelectie);

FSelectie := Value;

FOpstelling := TOpstelling.Create(Self, zWonderbaarlijk, wThuis, 8.3);
FOpstelling := TOpstelling.Create(Self, FWedstrijdPlaats, FZelfvertrouwen, FTeamgeest);
FOpstelling.Selectie := Selectie;

FOpstellingPlayerArray[1] := FormOpstellingPlayer.ToonOpstellingPlayer(pnlOpstelling, FOpstelling, pKP);
Expand Down
1 change: 1 addition & 0 deletions FormSpelerGrid.dfm
Expand Up @@ -45,6 +45,7 @@ object frmSpelerGrid: TfrmSpelerGrid
OptionsData.DeletingConfirmation = False
OptionsData.Inserting = False
OptionsView.ColumnAutoWidth = True
OptionsView.GroupByBox = False
object cxGridSpelersViewLAND: TcxGridDBColumn
Caption = 'Land'
DataBinding.FieldName = 'LAND'
Expand Down
97 changes: 85 additions & 12 deletions formHTPredictor.dfm
@@ -1,8 +1,8 @@
object frmHTPredictor: TfrmHTPredictor
Left = 480
Top = 257
Left = 353
Top = 54
Width = 1018
Height = 673
Height = 734
Caption = 'HT Predictor'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Expand All @@ -18,13 +18,13 @@ object frmHTPredictor: TfrmHTPredictor
TextHeight = 13
object cxpgctrlHTPredictor: TcxPageControl
Left = 0
Top = 0
Top = 60
Width = 1002
Height = 615
Height = 616
ActivePage = cxtbEigenTeam
Align = alClient
TabOrder = 0
ClientRectBottom = 615
ClientRectBottom = 616
ClientRectRight = 1002
ClientRectTop = 24
object cxtbTegenstander: TcxTabSheet
Expand All @@ -34,7 +34,7 @@ object frmHTPredictor: TfrmHTPredictor
Left = 0
Top = 313
Width = 1002
Height = 298
Height = 279
Align = alClient
BevelOuter = bvNone
Caption = 'Scherm voor opstelling'
Expand Down Expand Up @@ -66,17 +66,17 @@ object frmHTPredictor: TfrmHTPredictor
Left = 0
Top = 0
Width = 1002
Height = 317
Height = 284
Align = alTop
BevelOuter = bvNone
Caption = 'Scherm voor spelersgrid'
TabOrder = 0
end
object Panel4: TPanel
Left = 0
Top = 317
Top = 284
Width = 1002
Height = 274
Height = 308
Align = alClient
BevelOuter = bvNone
Caption = 'Scherm voor opstelling'
Expand All @@ -93,11 +93,11 @@ object frmHTPredictor: TfrmHTPredictor
Left = 0
Top = 3
Width = 1002
Height = 271
Height = 305
ActivePage = cxTabSheet1
Align = alClient
TabOrder = 0
ClientRectBottom = 271
ClientRectBottom = 305
ClientRectRight = 1002
ClientRectTop = 24
object cxTabSheet1: TcxTabSheet
Expand Down Expand Up @@ -133,6 +133,79 @@ object frmHTPredictor: TfrmHTPredictor
end
end
end
object pnlTop: TPanel
Left = 0
Top = 0
Width = 1002
Height = 60
Align = alTop
BevelOuter = bvNone
TabOrder = 5
object Label1: TLabel
Left = 216
Top = 8
Width = 74
Height = 13
Caption = 'Zelfvertrouwen'
end
object Label2: TLabel
Left = 216
Top = 28
Width = 53
Height = 13
Caption = 'Teamgeest'
end
object lblZVOmschrijving: TLabel
Left = 377
Top = 8
Width = 188
Height = 13
AutoSize = False
end
object lblTSOmschrijving: TLabel
Left = 377
Top = 28
Width = 188
Height = 13
AutoSize = False
end
object btnOk: TButton
Left = 920
Top = 24
Width = 75
Height = 25
Caption = 'Ok'
TabOrder = 0
OnClick = btnOkClick
end
object ceZelfvertrouwen: TcxCurrencyEdit
Left = 304
Top = 3
Properties.DisplayFormat = '0.00'
Properties.MaxValue = 10
Properties.OnChange = ceZelfvertrouwenPropertiesChange
TabOrder = 1
Width = 68
end
object ceTeamgeest: TcxCurrencyEdit
Left = 304
Top = 24
Properties.DisplayFormat = '0.00'
Properties.MaxValue = 10
Properties.OnChange = ceTeamgeestPropertiesChange
TabOrder = 2
Width = 68
end
object rgWedstrijdplaats: TcxRadioGroup
Left = 8
Top = 0
Caption = 'Wedstrijd'
Properties.Items = <>
TabOrder = 3
Height = 59
Width = 185
end
end
object dxBarManager1: TdxBarManager
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Expand Down
58 changes: 54 additions & 4 deletions formHTPredictor.pas
Expand Up @@ -7,7 +7,8 @@ interface
cxPC, cxControls, dxBar, ImgList, cxClasses, cxGridLevel, uSelectie,
cxGridCustomView, cxGridCustomTableView, cxGridTableView, uRatingBijdrages,
cxGridDBTableView, cxGrid, Db, dxmdaset, ExtCtrls, StdCtrls, dxCntner,
Menus;
Menus, dxEditor, dxExEdtr, dxEdLib, dxDBELib, cxContainer, cxEdit,
cxTextEdit, cxCurrencyEdit, cxGroupBox, cxRadioGroup;

type
TfrmHTPredictor = class(TForm)
Expand All @@ -34,8 +35,20 @@ TfrmHTPredictor = class(TForm)
Afsluiten1: TMenuItem;
Instellingen1: TMenuItem;
Ratingbijdrages1: TMenuItem;
pnlTop: TPanel;
btnOk: TButton;
Label1: TLabel;
Label2: TLabel;
ceZelfvertrouwen: TcxCurrencyEdit;
ceTeamgeest: TcxCurrencyEdit;
lblZVOmschrijving: TLabel;
lblTSOmschrijving: TLabel;
rgWedstrijdplaats: TcxRadioGroup;
procedure FormCreate(Sender: TObject);
procedure Ratingbijdrages1Click(Sender: TObject);
procedure btnOkClick(Sender: TObject);
procedure ceZelfvertrouwenPropertiesChange(Sender: TObject);
procedure ceTeamgeestPropertiesChange(Sender: TObject);
private
FSelectie_Eigen: TSelectie;
FSelectie_Tegen: TSelectie;
Expand All @@ -56,7 +69,7 @@ TfrmHTPredictor = class(TForm)
implementation

uses
FormSpelerGrid, uPlayer, FormOpstelling, FormRatingBijdrages;
FormSpelerGrid, uPlayer, FormOpstelling, FormRatingBijdrages, uHTPredictor, Math;

{$R *.DFM}

Expand Down Expand Up @@ -103,22 +116,59 @@ procedure TfrmHTPredictor.ToonRatingbijdrages;
Result: None
-----------------------------------------------------------------------------}
procedure TfrmHTPredictor.FormCreate(Sender: TObject);
var
vCount: integer;
vItem: TcxRadioGroupItem;
begin
cxpgctrlHTPredictor.ActivePage := cxtbTegenstander;

for vCount := Ord(Low(TWedstrijdPlaats)) to Ord(High(TWedstrijdPlaats)) do
begin
vItem := rgWedstrijdplaats.Properties.Items.Add;

vItem.Caption := (uHTPredictor.WedstrijdPlaatsToString(TWedstrijdPlaats(vCount)));
vItem.Value := vCount;
end;
rgWedstrijdplaats.ItemIndex := 0;

FRatingBijdrages := TRatingBijdrages.Create;

FSelectie_Tegen := ToonSpelersGrids(pnlSpelersGrid1, cxtbTegenstander);
FSelectie_Eigen := ToonSpelersGrids(pnlSpelersGrid2, cxtbEigenTeam);
FSelectie_Eigen.RatingBijdrages := FRatingBijdrages;
FSelectie_Tegen.RatingBijdrages := FRatingBijdrages;

FormOpstelling.ToonOpstelling(cxTabSheet1, FSelectie_Eigen);
end;

procedure TfrmHTPredictor.Ratingbijdrages1Click(Sender: TObject);
begin
ToonRatingbijdrages;
end;

procedure TfrmHTPredictor.btnOkClick(Sender: TObject);
begin
btnOk.Visible := FALSE;

FormOpstelling.ToonOpstelling(cxTabSheet1, FSelectie_Eigen, TWedstrijdPlaats(rgWedstrijdplaats.ItemIndex),
ceZelfvertrouwen.Value, ceTeamgeest.Value);

pnlTop.Enabled := FALSE;
end;

{-----------------------------------------------------------------------------
Author: Pieter Bas
Datum: 20-04-2012
Doel:
<eventuele fixes>
-----------------------------------------------------------------------------}
procedure TfrmHTPredictor.ceZelfvertrouwenPropertiesChange(Sender: TObject);
begin
lblZVOmschrijving.Caption := uHTPredictor.TeamZelfvertrouwenToString(TTeamZelfvertrouwen(Floor(ceZelfvertrouwen.Value)));
end;

procedure TfrmHTPredictor.ceTeamgeestPropertiesChange(Sender: TObject);
begin
lblTSOmschrijving.Caption := uHTPredictor.TeamSpiritToString(TTeamSpirit(Floor(ceTeamgeest.Value)));
end;

end.
54 changes: 54 additions & 0 deletions uHTPredictor.pas
Expand Up @@ -9,6 +9,7 @@ interface
TPlayerPosition = (pOnbekend, pKP, pRB, pRCV, pCV, pLCV, pLB, pRW, pRCM, pCM, pLCM, pLW, pRCA, pCA, pLCA);
TPlayerOrder = (oNormaal, oVerdedigend, oAanvallend, oNaarVleugel, oNaarMidden);
TTeamZelfvertrouwen = (zNietBestaand, zRampzalig, zWaardeloos, zSlecht, zBehoorlijk, zSterk, zWonderbaarlijk, zLichtelijkOverdreven, zOverdreven, zCompleetOverdreven);
TTeamSpirit = (sKoudeOorlog, sMoorddadig, sWoedend, sGeirriteerd, sBedaard, sKalm, sContent, sTevreden, sDolgelukkig, sInDeWolken, sParadijsOpAarde);
TOpstellingMotivatie = (mNormaal, mPIC, mMOTS);
TOpstellingTactiek = (tNormaal, tPressie, tCounter, tCentrumAanval, tVleugelAanval, tCreatiefSpel, tAfstandsSchoten);
TOpstellingCoach = (cNeutraal, cVerdedigend, cAanvallend);
Expand All @@ -17,6 +18,9 @@ interface
function ImportSpelers(aXLSFile:String; aPlayerDataSet:TdxMemData):String;
function AllPlayerFieldsMapped(aPlayerDataSet: TdxMemData):boolean;
function OrderToString(aOrder: TPlayerOrder): String;
function WedstrijdPlaatsToString(aWedstrijdPlaats: TWedstrijdPlaats): String;
function TeamZelfvertrouwenToString(aTeamZelfvertrouwen: TTeamZelfvertrouwen): String;
function TeamSpiritToString(aTeamSpirit: TTeamSpirit): String;
function PlayerPosToRatingPos(aPosition:TPlayerPosition; aOrder: TPlayerOrder; aSpec: String):String;

implementation
Expand Down Expand Up @@ -185,6 +189,56 @@ function OrderToString(aOrder: TPlayerOrder): String;
end;
end;


function WedstrijdPlaatsToString(aWedstrijdPlaats: TWedstrijdPlaats): String;
begin
case aWedstrijdPlaats of
wThuis: Result := 'Thuis';
wDerby: Result := 'Derby';
wUit: Result := 'Uit';
end;
end;

{-----------------------------------------------------------------------------
Author: Pieter Bas
Datum: 20-04-2012
Doel:
<eventuele fixes>
-----------------------------------------------------------------------------}
function TeamZelfvertrouwenToString(aTeamZelfvertrouwen: TTeamZelfvertrouwen): String;
begin
case aTeamZelfvertrouwen of
zNietBestaand: Result := 'niet bestaand';
zRampzalig: Result := 'rampzalig';
zWaardeloos: Result := 'waardeloos';
zSlecht: Result := 'slecht';
zBehoorlijk: Result := 'behoorlijk';
zSterk: Result := 'sterk';
zWonderbaarlijk: Result := 'wonderbaarlijk';
zLichtelijkOverdreven: Result := 'lichtelijk overdreven';
zOverdreven: Result := 'overdreven';
zCompleetOverdreven: Result := 'compleet overdreven';
end;
end;

function TeamSpiritToString(aTeamSpirit: TTeamSpirit): String;
begin
case aTeamSpirit of
sKoudeOorlog: Result := 'als in de Koude Oorlog';
sMoorddadig: Result := 'moorddadig';
sWoedend: Result := 'woedend';
sGeirriteerd: Result := 'geïrriteerd';
sBedaard: Result := 'bedaard';
sKalm: Result := 'kalm';
sContent: Result := 'content';
sTevreden: Result := 'tevreden';
sDolgelukkig: Result := 'dolgelukkig';
sInDeWolken: Result := 'in de wolken';
sParadijsOpAarde: Result := 'paradijs op aarde!';
end;
end;

{-----------------------------------------------------------------------------
Procedure: PlayerPosToRatingPos
Author: Harry
Expand Down

0 comments on commit a687aef

Please sign in to comment.