Skip to content
This repository was archived by the owner on Mar 2, 2020. It is now read-only.

Objectif Monospaced Font #462

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions bundles/specmate-model/.project
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please remove this whole project

<projectDescription>
<name>specmate-model</name>
<comment>Project specmate-model created by Buildship.</comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.buildship.core.gradleprojectbuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.buildship.core.gradleprojectnature</nature>
</natures>
</projectDescription>
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,8 @@

.top-margin {
margin-top: 8px;
}

.monospaced {
font-family: Consolas, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace;
}
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ <h5 class="card-header">{{'Cause-EffectModels' | translate}}</h5>
<span [hidden]="validPattern(newNameInput.value)" class="form-text">{{errorMessage}}</span>
</div>
<div class="input-group top-margin">
<textarea [(ngModel)]="modelDescription" class="form-control form-control-sm" rows="5" placeholder="{{'Model Requirements'|translate}}"></textarea>
<textarea [(ngModel)]="modelDescription" class="form-control form-control-sm" [class.monospaced]="isObjectif()" rows="5" placeholder="{{'Model Requirements'|translate}}"></textarea>
</div>
</div>
<div class="col">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import { ConfirmationModal } from '../../../../../../notification/modules/modals
import { AdditionalInformationService } from '../../../../../side/modules/links-actions/services/additional-information.service';
import { ClipboardService } from '../../tool-pallette/services/clipboard-service';
import { TestSpecificationContentContainerBase } from '../base/testspecification-generatable-content-container-base';
import { min } from 'rxjs/operators';

@Component({
moduleId: module.id.toString(),
Expand All @@ -31,21 +32,39 @@ export class CEGModelContainer extends TestSpecificationContentContainerBase<CEG
}

modelDescription: string;
objectifIndicator = 'WENN';

public isObjectif(): boolean {
let desc = this.modelDescription;

if (desc == undefined) {
desc = '';
}
desc = desc.trim();

if (desc.length <= 3) {
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it make sense to set this to 4? This means as soon as someone types the whole word "WENN" the font is changed.
Also you could make the code much more simple by just doing description.startsWith(this.objectifIndicator)

return false;
}
let relevantLength = Math.min(this.objectifIndicator.length, desc.length);
let cmpA = this.objectifIndicator.substring(0, relevantLength);
let cmpB = desc.substring(0, relevantLength);
return cmpA === cmpB;
}

protected condition = (element: IContainer) => Type.is(element, CEGModel);

public async createElement(name: string): Promise<CEGModel> {
let factory: ModelFactoryBase = new CEGModelFactory(this.dataService);
const element = await factory.create(this.parent, true, Id.uuid, name) as CEGModel;

if (this.modelDescription == undefined) {
this.modelDescription = '';
let description = this.modelDescription;
if (description == undefined) {
description = '';
}
this.modelDescription = this.modelDescription.trim();
description = description.trim();

if (this.modelDescription.length > 0) {
element.modelRequirements = this.modelDescription;
if (description.length > 0) {
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please comment on what is happening here or better, create a separate method with a speaking name

element.modelRequirements = description;
await this.dataService.updateElement(element, true, Id.uuid);
await this.dataService.commit(this.translate.instant('save'));
await this.dataService.performOperations(element.url, 'generateModel');
Expand All @@ -57,7 +76,7 @@ export class CEGModelContainer extends TestSpecificationContentContainerBase<CEG
await this.dataService.deleteElement(element.url, true, Id.uuid);
await this.dataService.commit(this.translate.instant('save'));
await this.dataService.deleteCachedContent(element.url);
await this.modal.openOk(this.translate.instant('CEGGenerator.couldNotGenerateTitle'),
await this.modal.openOk(this.translate.instant('CEGGenerator.couldNotGenerateTitle'),
this.translate.instant('CEGGenerator.couldNotGenerate'));
return undefined;
}
Expand Down