Skip to content
Snippets Groups Projects
Commit 8c50d96b authored by Dorchies David's avatar Dorchies David
Browse files

Merge branch '552-pab-lancement-du-calcul-possible-avec-des-champs-vides' into 'devel'

Resolve "PAB: Lancement du calcul possible avec des champs vides"

Closes #552

See merge request !156
parents 6cc06943 8bdd85e4
No related branches found
No related tags found
1 merge request!156Resolve "PAB: Lancement du calcul possible avec des champs vides"
Pipeline #139633 passed
......@@ -60,7 +60,7 @@ jalhyd:
- rm -rf jalhyd
- git clone https://gitlab-ci-token:${CI_JOB_TOKEN}@gitlab.irstea.fr/cassiopee/jalhyd.git
- cd jalhyd
- git checkout "$JALHYD_BRANCH" || git checkout master
- git checkout "$JALHYD_BRANCH" || git checkout devel
- npm ci --force
- npm run build
......
289-liens-inaccessibles-pour-certains-modules
317-pab-lancement-du-calcul-possible-avec-des-champs-vides
......@@ -85,8 +85,9 @@
[class.select]="isSelect(cell)" [attr.rowspan]="rowSpan(cell)" [attr.colspan]="colSpan(cell)"
[title]="cellTitle(cell)">
<input matInput *ngIf="isNumberInput(cell)" step="0.00000000000001" type="number"
[(ngModel)]="cell.model.singleValue" (input)="inputValueChanged($event, cell)">
<input matInput *ngIf="isNumberInput(cell)" step="0.00000000000001" type="number" required
[ngModel]="getCellValue(cell)" (ngModelChange)="setCellValue(cell,$event)"
(input)="inputValueChanged($event, cell)">
<mat-select #selectWidget *ngIf="isSelect(cell)" [value]="cell.modelValue"
(selectionChange)="loiDebitSelected($event, cell)">
......@@ -101,7 +102,8 @@
{{ cell.title }}
</div>
<param-field-line class="qaFieldLine" [param]="cell.model" (radio)="inputValueChanged($event, cell)"
(input)="inputValueChanged($event, cell)" [captureTabEvents]="false">
(input)="inputValueChanged($event, cell)" [captureTabEvents]="false"
fixedPlaceHolder="">
</param-field-line>
</div>
......
......@@ -190,6 +190,9 @@ export class PabTableComponent implements AfterViewInit, AfterViewChecked, OnIni
if (cell.uiValidity !== undefined) {
valid = valid && cell.uiValidity;
}
if (cell.modelValidity !== undefined) {
valid = valid && cell.modelValidity;
}
return ! valid;
}
......@@ -1439,6 +1442,19 @@ export class PabTableComponent implements AfterViewInit, AfterViewChecked, OnIni
this.updateValidity();
}
public getCellValue(cell) {
return cell.model.singleValue;
}
public setCellValue(cell, event) {
try {
cell.model.singleValue = event
cell.modelValidity = undefined;
} catch (error) {
cell.modelValidity = false;
}
}
/**
* Computes the global Pab validity : validity of every cell of every row
*/
......
......@@ -3,7 +3,7 @@
<!-- input de saisie de la valeur -->
<div fxFlex="1 0 120px">
<!-- composant pour gérer le cas général (valeur numérique à saisir) -->
<ngparam-input [title]="param.title" [hidden]="! isRadioFixChecked" (change)="onInputChange($event)"
<ngparam-input [title]="fixedPlaceHolder" [hidden]="! isRadioFixChecked" (change)="onInputChange($event)"
(tabPressed)="onTabPressed($event)" [captureTabEvents]="captureTabEvents">
</ngparam-input>
......
......@@ -45,6 +45,21 @@ export class ParamFieldLineComponent implements OnChanges {
return this.intlService.localizeText("INFO_PARAMFIELD_PARAMLIE");
}
/** user defined parameter placeholder (fixed mode) */
private _fixedPlaceHolder: string;
public get fixedPlaceHolder(): string {
if (this._fixedPlaceHolder !== undefined) {
return this._fixedPlaceHolder;
}
return this.param.title;
}
@Input()
public set fixedPlaceHolder(ph: string) {
this._fixedPlaceHolder = ph;
}
// états booléens des boutons
public get isRadioFixChecked(): boolean {
......
......@@ -32,6 +32,9 @@ export class NgParameter extends InputField implements Observer {
/** set to true to disable UI validation on this input */
private _allowEmpty = false;
/** user defined title (if undefined : parameter label + unit */
private _title: string;
public radioConfig: ParamRadioConfig;
public disabled: boolean;
......@@ -269,6 +272,10 @@ export class NgParameter extends InputField implements Observer {
}
public get title(): string {
if (this._title !== undefined) {
return this._title;
}
let t = "";
if (this.label !== undefined) {
t = this.label;
......@@ -279,6 +286,13 @@ export class NgParameter extends InputField implements Observer {
return t;
}
/**
* set custom title
*/
public set title(t: string) {
this._title = t;
}
public get valuesIterator(): INumberIterator {
return this._paramDef.valuesIterator;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment