@@ -1761,16 +1761,7 @@ Public Sub fillPane(FirstIndex As Int, LastIndex As Int)
1761
1761
addTextAreaToSegmentPane(segmentPane,bitext.Get (0 ),bitext.Get (1 ))
1762
1762
Dim extra As Map
1763
1763
extra=bitext.Get (4 )
1764
- If extra.ContainsKey("neglected" ) Then
1765
- If extra.Get ("neglected" )="yes" Then
1766
- Utils.disableTextArea(segmentPane)
1767
- End If
1768
- End If
1769
- If extra.ContainsKey("note" ) Then
1770
- If extra.Get ("note" )<>"" Then
1771
- CSSUtils.SetStyleProperty(segmentPane.GetNode(1 ),"-fx-background-color" ,"green" )
1772
- End If
1773
- End If
1764
+ setPaneStatus(extra,segmentPane)
1774
1765
If Main.calculatedHeight.ContainsKey(bitext.Get (0 )&" " &bitext.Get (1 )) Then
1775
1766
Dim h As Int =Main.calculatedHeight.Get (bitext.Get (0 )&" " &bitext.Get (1 ))
1776
1767
Main.setLayout(segmentPane,i,h)
@@ -1828,14 +1819,14 @@ Sub preTranslate(options As Map)
1828
1819
Log(similarity>=matchrate)
1829
1820
1830
1821
If similarity>=matchrate Then
1831
- setTranslation(index,resultList.Get (2 ))
1822
+ setTranslation(index,resultList.Get (2 ), True )
1832
1823
'setSegment(bitext,index)
1833
1824
fillOne(index,resultList.Get (2 ))
1834
1825
End If
1835
1826
Else if options.Get ("type" )="MT" Then
1836
1827
wait for (MT.getMT(bitext.Get (0 ),projectFile.Get ("source" ),projectFile.Get ("target" ),options.Get ("engine" ))) Complete (translation As String )
1837
1828
If translation<>"" Then
1838
- setTranslation(index,translation)
1829
+ setTranslation(index,translation, False )
1839
1830
'setSegment(bitext,index)
1840
1831
fillOne(index,translation)
1841
1832
End If
@@ -1860,14 +1851,31 @@ Sub fillOne(index As Int,translation As String)
1860
1851
Try
1861
1852
Dim p As Pane
1862
1853
p=Main.editorLV.Items.Get (index)
1854
+ Dim targetTextArea As TextArea
1855
+ targetTextArea=p.GetNode(1 )
1856
+ targetTextArea.Text=translation
1857
+ Dim bitext As List
1858
+ bitext=segments.Get (index)
1859
+ Dim extra As Map
1860
+ extra=bitext.Get (4 )
1861
+ setPaneStatus(extra,p)
1862
+ contentIsChanged
1863
1863
Catch
1864
1864
Log(LastException)
1865
- Return
1866
1865
End Try
1867
- Dim targetTextArea As TextArea
1868
- targetTextArea=p.GetNode(1 )
1869
- targetTextArea.Text=translation
1870
- contentIsChanged
1866
+ End Sub
1867
+
1868
+ Sub setPaneStatus (extra As Map ,segmentPane As Pane )
1869
+ If extra.ContainsKey("neglected" ) Then
1870
+ If extra.Get ("neglected" )="yes" Then
1871
+ Utils.disableTextArea(segmentPane)
1872
+ End If
1873
+ End If
1874
+ If extra.ContainsKey("note" ) Then
1875
+ If extra.Get ("note" )<>"" Then
1876
+ CSSUtils.SetStyleProperty(segmentPane.GetNode(1 ),"-fx-background-color" ,"green" )
1877
+ End If
1878
+ End If
1871
1879
End Sub
1872
1880
1873
1881
Public Sub fillVisibleTargetTextArea
@@ -1893,27 +1901,54 @@ End Sub
1893
1901
'impl
1894
1902
'--------------------------
1895
1903
1896
- Public Sub setTranslation (index As String ,translation As String )
1904
+ Public Sub setTranslation (index As String ,translation As String ,isFromTM As Boolean )
1897
1905
If segments.Size=0 Then
1898
1906
Return
1899
1907
End If
1900
1908
Dim bitext As List
1901
1909
bitext=segments.Get (index)
1902
1910
If translation<>bitext.Get (1 ) Then
1903
1911
bitext.Set (1 ,translation)
1904
- Dim time As String =DateTime.Now
1912
+ Dim time As Long
1913
+ time=DateTime.Now
1905
1914
Dim extra As Map
1906
1915
extra=bitext.Get (4 )
1907
- extra. Put ( "createdTime" ,time)
1916
+ Dim creator As String
1908
1917
If settings.GetDefault("sharingTM_enabled" ,False )=True Then
1909
- extra. Put ( " creator" , Main.preferencesMap.GetDefault("vcs_username" ,"anonymous" ) )
1918
+ creator= Main.preferencesMap.GetDefault("vcs_username" ,"anonymous" )
1910
1919
Else
1911
1920
If settings.GetDefault("git_enabled" ,False )=False Then
1912
- extra. Put ( " creator" , Main.preferencesMap.GetDefault("vcs_username" ,"" ) )
1921
+ creator= Main.preferencesMap.GetDefault("vcs_username" ,"" )
1913
1922
Else
1914
- extra. Put ( " creator" , Main.preferencesMap.GetDefault("vcs_username" ,"anonymous" ) )
1923
+ creator= Main.preferencesMap.GetDefault("vcs_username" ,"anonymous" )
1915
1924
End If
1916
1925
End If
1926
+ If isFromTM Then
1927
+ Dim targetMap As Map
1928
+ targetMap.Initialize
1929
+ Dim source As String
1930
+ source=bitext.Get (0 )
1931
+ If projectTM.translationMemory.ContainsKey(source) Then
1932
+ targetMap=projectTM.translationMemory.Get (source)
1933
+ Else if projectTM.externalTranslationMemory.ContainsKey(source) Then
1934
+ targetMap=projectTM.externalTranslationMemory.Get (source)
1935
+ End If
1936
+ If targetMap.ContainsKey("createdTime" ) Then
1937
+ Try
1938
+ time=targetMap.Get ("createdTime" )
1939
+ Catch
1940
+ Log(LastException)
1941
+ End Try
1942
+ End If
1943
+ If targetMap.ContainsKey("creator" ) Then
1944
+ creator=targetMap.Get ("creator" )
1945
+ End If
1946
+ If targetMap.ContainsKey("note" ) Then
1947
+ extra.Put ("note" ,targetMap.Get ("note" ))
1948
+ End If
1949
+ End If
1950
+ extra.Put ("createdTime" ,time)
1951
+ extra.Put ("creator" ,creator)
1917
1952
End If
1918
1953
End Sub
1919
1954
@@ -1925,7 +1960,12 @@ Sub saveOneTranslationToTM(bitext As List,index As Int)
1925
1960
Dim creator As String
1926
1961
Dim extra As Map
1927
1962
extra=bitext.Get (4 )
1928
- createdTime=extra.GetDefault("createdTime" ,0 )
1963
+ Try
1964
+ createdTime=extra.GetDefault("createdTime" ,0 )
1965
+ Catch
1966
+ Log(LastException)
1967
+ End Try
1968
+
1929
1969
creator=extra.GetDefault("creator" ,"anonymous" )
1930
1970
1931
1971
Dim targetMap As Map
@@ -1963,7 +2003,7 @@ Public Sub saveAlltheTranslationToSegmentsInVisibleArea(FirstIndex As Int, LastI
1963
2003
End Try
1964
2004
1965
2005
targetTextArea=p.GetNode(1 )
1966
- setTranslation(i,targetTextArea.Text)
2006
+ setTranslation(i,targetTextArea.Text, False )
1967
2007
1968
2008
'projectTM.addPair(bitext.Get(0),bitext.Get(1))
1969
2009
Next
@@ -1974,7 +2014,7 @@ Sub saveTranslation(targetTextArea As TextArea)
1974
2014
index=Main.editorLV.Items.IndexOf(targetTextArea.Parent)
1975
2015
Dim bitext As List
1976
2016
bitext=segments.Get (index)
1977
- setTranslation(index,targetTextArea.Text)
2017
+ setTranslation(index,targetTextArea.Text, False )
1978
2018
If targetTextArea.Text<>"" Then
1979
2019
saveOneTranslationToTM(bitext,index)
1980
2020
End If
0 commit comments