Skip to content

Commit

Permalink
#446 / Release candidate
Browse files Browse the repository at this point in the history
  • Loading branch information
berndmoos committed Jun 4, 2024
1 parent 657dcfb commit 2c19bab
Show file tree
Hide file tree
Showing 16 changed files with 722 additions and 233 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package org.exmaralda.partitureditor.jexmaralda.convert;

import java.util.ArrayList;
import java.util.List;
import java.util.Vector;
import org.exmaralda.partitureditor.jexmaralda.BasicTranscription;
import org.exmaralda.partitureditor.jexmaralda.Event;
import org.exmaralda.partitureditor.jexmaralda.JexmaraldaException;
import org.exmaralda.partitureditor.jexmaralda.Tier;

/**
*
* @author bernd
*/
public class TabularConverter {


// This is for issue #446

public List<String[]> BasicTranscriptionToTabular(BasicTranscription bt, String masterTierID, String[] dependentTierIDs) throws JexmaraldaException{
List<String[]> result = new ArrayList<>();
Tier masterTier = bt.getBody().getTierWithID(masterTierID);
//String[] annotationTierIDs = bt.getBody().getTiersOfSpeakerAndType(masterTier.getSpeaker(), "a");
String[] annotationTierIDs = dependentTierIDs;
for (int pos=0; pos<masterTier.getNumberOfEvents(); pos++){
String[] thisResult = new String[annotationTierIDs.length + 3];
Event masterEvent = masterTier.getEventAt(pos);
thisResult[0] = masterEvent.getDescription();
thisResult[1] = masterEvent.getStart();
thisResult[2] = masterEvent.getEnd();
int i = 3;
for (String annotationTierID : annotationTierIDs){
Tier dependentTier = bt.getBody().getTierWithID(annotationTierID);
Vector<Event> annotationsBetween
//= dependentTier.getEventsBetween(bt.getBody().getCommonTimeline(), masterEvent.getStart(), masterEvent.getEnd());
= dependentTier.getEventsIntersecting(bt.getBody().getCommonTimeline(), masterEvent.getStart(), masterEvent.getEnd());
String concatenatedDescription = "";
for (Event annotationEvent : annotationsBetween){
concatenatedDescription+=annotationEvent.getDescription() + " ";
}
thisResult[i] = concatenatedDescription;
i++;
}
result.add(thisResult);
}
return result;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Main.java to edit this template
*/
package org.exmaralda.partitureditor.jexmaralda.convert.test;

import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.exmaralda.partitureditor.jexmaralda.BasicTranscription;
import org.exmaralda.partitureditor.jexmaralda.JexmaraldaException;
import org.exmaralda.partitureditor.jexmaralda.convert.TabularConverter;
import org.xml.sax.SAXException;

/**
*
* @author bernd
*/
public class TabularTest {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
try {
new TabularTest().doit();
} catch (SAXException | JexmaraldaException ex) {
Logger.getLogger(TabularTest.class.getName()).log(Level.SEVERE, null, ex);
}
}

private void doit() throws SAXException, JexmaraldaException {
BasicTranscription bt = new BasicTranscription("C:\\Users\\bernd\\Dropbox\\EXMARaLDA-Demokorpus\\RudiVoellerWutausbruch\\RudiVoellerWutausbruch.exb");
TabularConverter tc = new TabularConverter();
String[] depIDs = {"TIE1"};
List<String[]> result = tc.BasicTranscriptionToTabular(bt, "TIE3", depIDs);
for (String[] r : result){
System.out.println(String.join(" // ", r));
}
}

}
155 changes: 0 additions & 155 deletions src/org/exmaralda/partitureditor/jexmaraldaswing/ListEventsDialog.java

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,15 @@ public Component getTableCellRendererComponent(JTable table, Object value, boole
((JLabel)c).setText(formatted);
break;
}
case 4:
{
break;
}
default:
break;
{
c.setForeground(Color.DARK_GRAY);
break;
}
}

if (column>0 && (!isSelected)){
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@

<Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
<SubComponents>
<Container class="javax.swing.JScrollPane" name="ebentTableScrollPane">
<Container class="javax.swing.JScrollPane" name="eventTableScrollPane">
<Properties>
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
<Dimension value="[620, 400]"/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ public void fireDataChanged(JCTableDataEvent evt){
private void initComponents() {

eventListPanel = new javax.swing.JPanel();
ebentTableScrollPane = new javax.swing.JScrollPane();
eventTableScrollPane = new javax.swing.JScrollPane();
eventTable = new javax.swing.JTable();
topPanel = new javax.swing.JPanel();
displayNameLabel = new javax.swing.JLabel();
Expand All @@ -168,7 +168,7 @@ private void initComponents() {

eventListPanel.setLayout(new java.awt.BorderLayout());

ebentTableScrollPane.setPreferredSize(new java.awt.Dimension(620, 400));
eventTableScrollPane.setPreferredSize(new java.awt.Dimension(620, 400));

eventTable.setAutoCreateRowSorter(true);
eventTable.setFont(new java.awt.Font("Segoe UI", 0, 14)); // NOI18N
Expand All @@ -190,9 +190,9 @@ public void mouseClicked(java.awt.event.MouseEvent evt) {
eventTableMouseClicked(evt);
}
});
ebentTableScrollPane.setViewportView(eventTable);
eventTableScrollPane.setViewportView(eventTable);

eventListPanel.add(ebentTableScrollPane, java.awt.BorderLayout.CENTER);
eventListPanel.add(eventTableScrollPane, java.awt.BorderLayout.CENTER);

getContentPane().add(eventListPanel, java.awt.BorderLayout.CENTER);

Expand Down Expand Up @@ -323,9 +323,9 @@ public void windowClosing(java.awt.event.WindowEvent e) {
private javax.swing.JPanel bottomPanel;
private javax.swing.JButton closeButton;
private javax.swing.JLabel displayNameLabel;
private javax.swing.JScrollPane ebentTableScrollPane;
private javax.swing.JPanel eventListPanel;
private javax.swing.JTable eventTable;
private javax.swing.JScrollPane eventTableScrollPane;
private javax.swing.JButton playButton;
private javax.swing.JPanel rightSidePanel;
private javax.swing.JPanel topPanel;
Expand Down
Loading

0 comments on commit 2c19bab

Please sign in to comment.