;
}
export interface Image {
id: string;
immageUrl: string;
}
export interface Svg {
id: string;
svgUrl: string;
}
+
+export class SelectedEntityGroup {
+ manuscript: SelectedEntity;
+ page: SelectedEntity;
+ word?: SelectedEntity;
+
+ constructor(manuscript, page, word ) {
+ this.manuscript = manuscript;
+ this.page = page;
+ this.word = word;
+ }
+}
+
+// The selected entity on each viewtab (Manuscript, Page, Word)
+export class SelectedEntity {
+ iri: string;
+ idx: number;
+
+ constructor(iri, idx) {
+ this.iri = iri;
+ this.idx = idx;
+ }
+}
diff --git a/src/app/page-view-component/faksimile-component/faksimile-component.component.html b/src/app/page-view-component/faksimile-component/faksimile-component.component.html
new file mode 100644
index 0000000..5e7b4d6
--- /dev/null
+++ b/src/app/page-view-component/faksimile-component/faksimile-component.component.html
@@ -0,0 +1 @@
+faksimile-component works!
diff --git a/src/app/text-view-component/text-view-component.component.scss b/src/app/page-view-component/faksimile-component/faksimile-component.component.scss
similarity index 100%
rename from src/app/text-view-component/text-view-component.component.scss
rename to src/app/page-view-component/faksimile-component/faksimile-component.component.scss
diff --git a/src/app/page-view-component/faksimile-component/faksimile-component.component.spec.ts b/src/app/page-view-component/faksimile-component/faksimile-component.component.spec.ts
new file mode 100644
index 0000000..7bc0870
--- /dev/null
+++ b/src/app/page-view-component/faksimile-component/faksimile-component.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { FaksimileComponentComponent } from './faksimile-component.component';
+
+describe('FaksimileComponentComponent', () => {
+ let component: FaksimileComponentComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ FaksimileComponentComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(FaksimileComponentComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/page-view-component/faksimile-component/faksimile-component.component.ts b/src/app/page-view-component/faksimile-component/faksimile-component.component.ts
new file mode 100644
index 0000000..7b650ac
--- /dev/null
+++ b/src/app/page-view-component/faksimile-component/faksimile-component.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-faksimile-component',
+ templateUrl: './faksimile-component.component.html',
+ styleUrls: ['./faksimile-component.component.scss']
+})
+export class FaksimileComponentComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit() {
+ }
+
+}
diff --git a/src/app/page-view-component/page-view-component.component.html b/src/app/page-view-component/page-view-component.component.html
new file mode 100644
index 0000000..78052ab
--- /dev/null
+++ b/src/app/page-view-component/page-view-component.component.html
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+
+ #
+
+
+ ##
+
+
+
+
+ vertical_split
+
+
+ horizontal_split
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/app/page-view-component/page-view-component.component.scss b/src/app/page-view-component/page-view-component.component.scss
new file mode 100644
index 0000000..b742a1d
--- /dev/null
+++ b/src/app/page-view-component/page-view-component.component.scss
@@ -0,0 +1,44 @@
+.content-area {
+ height: 80%;
+ display:table;
+}
+
+.button-container {
+ height:100%;
+ vertical-align: middle;
+ width:20px;
+ display: table-cell;
+}
+
+.page-button { // fills sidenav-button-container completely, so all is one button
+ height: 100px;
+ min-width: unset; // needed because angular sets an own min width!?
+ width: 15px;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ margin: 0;
+ padding: 0;
+}
+
+.info-container {
+ height:100%;
+ vertical-align: top;
+ align-content: left;
+ align-items: left;
+ display: table-cell;
+ padding: 10px;
+}
+
+.right-outer-element {
+ margin-right: 3em;
+}
+
+.right-inner-element {
+ margin-left: 1em;
+}
+
+.mat-button-toggle-group.mat-button-toggle-group {
+ display: flex;
+ align-items: right;
+}
diff --git a/src/app/page-view-component/page-view-component.component.spec.ts b/src/app/page-view-component/page-view-component.component.spec.ts
new file mode 100644
index 0000000..ac46871
--- /dev/null
+++ b/src/app/page-view-component/page-view-component.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { PageViewComponentComponent } from './page-view-component.component';
+
+describe('PageViewComponentComponent', () => {
+ let component: PageViewComponentComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ PageViewComponentComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(PageViewComponentComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/page-view-component/page-view-component.component.ts b/src/app/page-view-component/page-view-component.component.ts
new file mode 100644
index 0000000..0d59571
--- /dev/null
+++ b/src/app/page-view-component/page-view-component.component.ts
@@ -0,0 +1,31 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-page-view-component',
+ templateUrl: './page-view-component.component.html',
+ styleUrls: ['./page-view-component.component.scss']
+})
+export class PageViewComponentComponent implements OnInit {
+ paging: string;
+ alignment: string;
+ fixSidebar: boolean;
+ highlight: boolean;
+
+ constructor() { }
+
+ ngOnInit() {
+ this.paging = 'double';
+ this.alignment = 'horizontal';
+ this.fixSidebar = false;
+ this.highlight = true;
+
+ }
+
+ toggleHighlight() {
+ this.highlight = !this.highlight;
+ }
+
+ toggleSidebarFixation() {
+ this.fixSidebar = !this.fixSidebar;
+ }
+}
diff --git a/src/app/page-view-component/page-view-routes.ts b/src/app/page-view-component/page-view-routes.ts
new file mode 100644
index 0000000..f614a00
--- /dev/null
+++ b/src/app/page-view-component/page-view-routes.ts
@@ -0,0 +1,12 @@
+import { Routes } from '@angular/router';
+import {FaksimileComponentComponent} from "./faksimile-component/faksimile-component.component";
+import {SynopsisComponentComponent} from "./synopsis-component/synopsis-component.component";
+import {TranscriptionComponentComponent} from "./transcription-component/transcription-component.component";
+
+export const PAGEVIEW_ROUTES: Routes = [
+ { path: '', redirectTo: 'synopsis', pathMatch: 'prefix' },
+ { path: 'synopsis', component: SynopsisComponentComponent },
+ { path: 'faksimile', component: FaksimileComponentComponent },
+ { path: 'transcription', component: TranscriptionComponentComponent },
+ { path: '', redirectTo: 'synopsis', pathMatch: 'prefix' } // default
+];
diff --git a/src/app/page-view-component/synopsis-component/synopsis-component.component.html b/src/app/page-view-component/synopsis-component/synopsis-component.component.html
new file mode 100644
index 0000000..66e0cd7
--- /dev/null
+++ b/src/app/page-view-component/synopsis-component/synopsis-component.component.html
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
diff --git a/src/app/page-view-component/synopsis-component/synopsis-component.component.scss b/src/app/page-view-component/synopsis-component/synopsis-component.component.scss
new file mode 100644
index 0000000..ad7e582
--- /dev/null
+++ b/src/app/page-view-component/synopsis-component/synopsis-component.component.scss
@@ -0,0 +1,9 @@
+
+.text-container {
+ height:100%;
+ vertical-align: top;
+ align-content: left;
+ align-items: left;
+ display: table-cell;
+ padding: 10px;
+}
diff --git a/src/app/page-view-component/synopsis-component/synopsis-component.component.spec.ts b/src/app/page-view-component/synopsis-component/synopsis-component.component.spec.ts
new file mode 100644
index 0000000..4e92f1e
--- /dev/null
+++ b/src/app/page-view-component/synopsis-component/synopsis-component.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { SynopsisComponentComponent } from './synopsis-component.component';
+
+describe('SynopsisComponentComponent', () => {
+ let component: SynopsisComponentComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ SynopsisComponentComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(SynopsisComponentComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/page-view-component/synopsis-component/synopsis-component.component.ts b/src/app/page-view-component/synopsis-component/synopsis-component.component.ts
new file mode 100644
index 0000000..c59fae7
--- /dev/null
+++ b/src/app/page-view-component/synopsis-component/synopsis-component.component.ts
@@ -0,0 +1,30 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-synopsis-component',
+ templateUrl: './synopsis-component.component.html',
+ styleUrls: ['./synopsis-component.component.scss']
+})
+
+export class SynopsisComponentComponent implements OnInit {
+
+ image = { height: 973.91998, width: 2038.5601, file_name: "../assets/W-II-1,131et132.jpg" };
+ text_field = { left: 358.805, top: 78.051, width: 662.761, height: 831.879 };
+ manuscript = { title: 'W II 1',
+ pages: [
+ { number: '131',
+ metadata: [
+ { head: { description: 'Stellenkommentar'}, content: [ { reference: '2', quote: 'Leben Thomas Carlyle’s', text: 'vgl. Froude, Das Leben Thomas Carlyles'} ]},
+ { head: { description: 'Druckorte' }, content: [ { reference: '24-34', text: 'KGW VIII 9[11]'}, { reference: '34-40', text:'KGW VIII 9[12]'} ]}
+ ]
+ }
+ ]
+ };
+
+ constructor( ) {
+ }
+
+ ngOnInit() {
+ }
+
+}
diff --git a/src/app/sidenav-component/sidenav-component.component.ts b/src/app/sidenav-component/sidenav-component.component.ts
index 56c67bf..b6c1b5d 100644
--- a/src/app/sidenav-component/sidenav-component.component.ts
+++ b/src/app/sidenav-component/sidenav-component.component.ts
@@ -1,21 +1,21 @@
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-sidenav-component',
templateUrl: './sidenav-component.component.html',
styleUrls: ['./sidenav-component.component.scss']
})
export class SidenavComponentComponent implements OnInit {
//TODO: Set this as a property in Manuscript/Page/Rhizome & as a optionall param
- openState = true;
+ openState = true; // Todo: create service for openstatE MANAGER: EACH INSTANCE HAS HIS OWN OPENSTATE WHICH WILL BE STORED
constructor() { }
ngOnInit() {
}
toggleDrawer() {
this.openState = !this.openState;
}
}
diff --git a/src/app/text-view-component/text-view-component.component.html b/src/app/text-view-component/text-view-component.component.html
deleted file mode 100644
index 5dfe226..0000000
--- a/src/app/text-view-component/text-view-component.component.html
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
diff --git a/src/app/text-view-component/text-view-component.component.spec.ts b/src/app/text-view-component/text-view-component.component.spec.ts
deleted file mode 100644
index 65e7121..0000000
--- a/src/app/text-view-component/text-view-component.component.spec.ts
+++ /dev/null
@@ -1,25 +0,0 @@
-import { async, ComponentFixture, TestBed } from '@angular/core/testing';
-
-import { ManuscriptViewComponentComponent } from './text-view-component.component';
-
-describe('ManuscriptViewComponentComponent', () => {
- let component: ManuscriptViewComponentComponent;
- let fixture: ComponentFixture;
-
- beforeEach(async(() => {
- TestBed.configureTestingModule({
- declarations: [ ManuscriptViewComponentComponent ]
- })
- .compileComponents();
- }));
-
- beforeEach(() => {
- fixture = TestBed.createComponent(ManuscriptViewComponentComponent);
- component = fixture.componentInstance;
- fixture.detectChanges();
- });
-
- it('should create', () => {
- expect(component).toBeTruthy();
- });
-});
diff --git a/src/app/text-view-component/text-view-component.component.ts b/src/app/text-view-component/text-view-component.component.ts
deleted file mode 100644
index c998e9c..0000000
--- a/src/app/text-view-component/text-view-component.component.ts
+++ /dev/null
@@ -1,45 +0,0 @@
-import {Component, OnChanges, OnInit} from '@angular/core';
-import textViewSettings from './text-view-settings.json';
-import { GenericControlElementsService, SelectionBundle
-} from '../generic-control-elements-component/generic-control-elements-service.service';
-
-@Component({
- selector: 'app-text-view-component',
- templateUrl: './text-view-component.component.html',
- styleUrls: ['./text-view-component.component.scss'],
-})
-export class TextViewComponentComponent implements OnInit {
- routeImage: any = {};
- routes = '';
- options = JSON.parse(JSON.stringify(textViewSettings));
- // the actual settings
- actualSettings?: SelectionBundle;
- // in case there is no settings input
-
- constructor( private optionService: GenericControlElementsService ) { }
- image = { height: 973.91998, width: 2038.5601, file_name: "../assets/W-II-1,131et132.jpg" };
- text_field = { left: 358.805, top: 78.051, width: 662.761, height: 831.879 };
- manuscript = { title: 'W II 1',
- pages: [
- { number: '131',
- metadata: [
- { head: { description: 'Stellenkommentar'}, content: [ { reference: '2', quote: 'Leben Thomas Carlyle’s', text: 'vgl. Froude, Das Leben Thomas Carlyles'} ]},
- { head: { description: 'Druckorte' }, content: [ { reference: '24-34', text: 'KGW VIII 9[11]'}, { reference: '34-40', text:'KGW VIII 9[12]'} ]}
- ]
- }
- ]
- };
-
- ngOnInit() {
- this.routeImage = this.getImage(this.routes);
- this.optionService.selectionEvent.subscribe(newSettings => {
- this.actualSettings = newSettings;
- console.log('neue textviewsettings', this.actualSettings);
- });
- }
-
- getImage(routes) {
- return { height: 973.91998, width: 2038.5601, file_name: "../assets/W-II-1,131et132.jpg" };
- }
-
-}
diff --git a/src/app/text-view-component/text-view-settings.json b/src/app/text-view-component/text-view-settings.json
deleted file mode 100644
index 5a94446..0000000
--- a/src/app/text-view-component/text-view-settings.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{ "type": "staticOptions",
- "displaySettings": true,
- "multiToggle": true,
- "controlElementGroups":[
- {
- "label": "display",
- "pannelOpenState": false,
- "description": "Optionen",
- "controlElements": [
- {
- "label":"displayMode",
- "description":"Ansicht",
- "toolTip": "Wechselt die Ansicht der Texteinheit.",
- "type":"select",
- "options":[
- {
- "id":"faksimile",
- "description":"Nur Faksimile anzeigen"
- },
- {
- "id":"transcription",
- "description":"Nur Transkription anzeigen"
- },
- {
- "id":"synopsis",
- "description":"Synopse (Faksimile und Transkription)"
- }
- ],
- "value":"synopsis"
- },
- {
- "label":"doublePage",
- "description":"Doppelseite des Manuskripts anzeigen",
- "toolTip:": "Zeigt das Faksimile als Doppelseite (recto & verso).",
- "value":true,
- "type":"checkbox"
- }
- ]
- }
- ]
-}
diff --git a/src/app/textfield-component/textfield.component.html b/src/app/textfield-component/textfield.component.html
index e2349bd..a65f01c 100644
--- a/src/app/textfield-component/textfield.component.html
+++ b/src/app/textfield-component/textfield.component.html
@@ -1,50 +1,50 @@
-
+