Changeset 7631


Ignore:
Timestamp:
03/22/19 11:14:13 (5 months ago)
Author:
rohit_tandon
Message:

-> Waveform selection preserved on opening of comment dialog.
-> During recording if comment dialog is canceled then selection is preserved.

Location:
trunk/Obi/Obi/ProjectView
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Obi/Obi/ProjectView/Strip.cs

    r7630 r7631  
    2828        private EditableLabel m_EditableLabel; 
    2929        private EmptyNode m_SelectedNodeToAddComment; 
    30         private double m_TimeOfCursor; 
    3130        /// <summary> 
    3231        /// This constructor is used by the designer. 
     
    18101809        public void ShowEditLabelToAddComment() 
    18111810        { 
    1812             if (mContentView.Selection is AudioSelection) 
    1813             { 
    1814                 m_TimeOfCursor = ((AudioSelection)mContentView.Selection).AudioRange.CursorTime;                 
    1815             } 
    18161811            EditableLabel editLabel = new EditableLabel(mContentView.Selection.Node as EmptyNode); 
    18171812            this.Controls.Add(editLabel); 
     
    18441839        private void EditLabel_CloseAddComment(object sender, EventArgs e) 
    18451840        { 
    1846             RemoveEditLabelControlForAddingComment(); 
    1847         } 
    1848  
    1849         public void RemoveEditLabelControlForAddingComment() 
     1841            RemoveEditLabelControlForAddingComment(true); 
     1842        } 
     1843 
     1844        public void RemoveEditLabelControlForAddingComment(bool IsCloseAddComment = false) 
    18501845        { 
    18511846            m_EditableLabel.AddComment -= new EventHandler(EditableLabel_AddComment); 
    18521847            m_EditableLabel.CloseComment -= new EventHandler(EditLabel_CloseAddComment); 
    1853  
    1854             if (this.RecordingNode == null) 
    1855             { 
    1856                 if (m_TimeOfCursor != 0 && m_SelectedNodeToAddComment is PhraseNode) 
     1848            double TimeOfCursor = 0; 
     1849            double SelectionBeginTime = 0; 
     1850            double SelectionEndTime = 0; 
     1851            if (mContentView.Selection is AudioSelection) 
     1852            { 
     1853                if ((mContentView.Selection as AudioSelection).AudioRange.HasCursor) 
     1854                { 
     1855                    TimeOfCursor = ((AudioSelection)mContentView.Selection).AudioRange.CursorTime; 
     1856                } 
     1857                else 
     1858                { 
     1859                    SelectionBeginTime = ((AudioSelection)mContentView.Selection).AudioRange.SelectionBeginTime; 
     1860                    SelectionEndTime = ((AudioSelection)mContentView.Selection).AudioRange.SelectionEndTime; 
     1861                } 
     1862 
     1863            } 
     1864 
     1865            if (this.RecordingNode == null || IsCloseAddComment) 
     1866            { 
     1867                if (TimeOfCursor != 0 && m_SelectedNodeToAddComment is PhraseNode) 
    18571868                { 
    18581869                    mContentView.Selection = new AudioSelection((PhraseNode)m_SelectedNodeToAddComment, mContentView, 
    1859                         new AudioRange(m_TimeOfCursor)); 
     1870                        new AudioRange(TimeOfCursor)); 
     1871                } 
     1872                else if (SelectionBeginTime != 0 && SelectionEndTime != 0 && m_SelectedNodeToAddComment is PhraseNode) 
     1873                { 
     1874                    ContentView.Selection = new AudioSelection((PhraseNode)m_SelectedNodeToAddComment, mContentView, 
     1875                        new AudioRange(SelectionBeginTime,SelectionEndTime)); 
    18601876                } 
    18611877                else 
     
    18641880                } 
    18651881            } 
    1866             m_TimeOfCursor = 0; 
    18671882 
    18681883            this.Controls.Remove(m_EditableLabel); 
  • trunk/Obi/Obi/ProjectView/ZoomWaveform.cs

    r7629 r7631  
    5050        private EditableLabel m_EditableLabel; 
    5151        private EmptyNode m_SelectedNodeToAddComment; 
    52         private double m_TimeOfCursor; 
    5352            
    5453 
     
    12881287        public void ShowEditLabelToAddComment() 
    12891288        { 
    1290             if (m_ContentView.Selection is AudioSelection) 
    1291             { 
    1292                 m_TimeOfCursor = ((AudioSelection)m_ContentView.Selection).AudioRange.CursorTime; 
    1293             } 
    12941289            EditableLabel editLabel = new EditableLabel(m_ContentView.Selection.Node as EmptyNode); 
    12951290            this.Controls.Add(editLabel); 
     
    13261321            m_EditableLabel.AddComment -= new EventHandler(EditableLabel_AddComment); 
    13271322            m_EditableLabel.CloseComment -= new EventHandler(EditLabel_CloseAddComment); 
    1328  
    1329             if (m_TimeOfCursor != 0 && m_SelectedNodeToAddComment is PhraseNode) 
     1323            double TimeOfCursor = 0; 
     1324            double SelectionBeginTime = 0; 
     1325            double SelectionEndTime = 0; 
     1326            if (m_ContentView.Selection is AudioSelection) 
     1327            { 
     1328                if ((m_ContentView.Selection as AudioSelection).AudioRange.HasCursor) 
     1329                { 
     1330                    TimeOfCursor = ((AudioSelection)m_ContentView.Selection).AudioRange.CursorTime; 
     1331                } 
     1332                else 
     1333                { 
     1334                    SelectionBeginTime = ((AudioSelection)m_ContentView.Selection).AudioRange.SelectionBeginTime; 
     1335                    SelectionEndTime = ((AudioSelection)m_ContentView.Selection).AudioRange.SelectionEndTime; 
     1336                } 
     1337            } 
     1338 
     1339            if (TimeOfCursor != 0 && m_SelectedNodeToAddComment is PhraseNode) 
    13301340            { 
    13311341                m_ContentView.Selection = new AudioSelection((PhraseNode)m_SelectedNodeToAddComment, m_ContentView, 
    1332                     new AudioRange(m_TimeOfCursor)); 
     1342                    new AudioRange(TimeOfCursor)); 
     1343            } 
     1344            else if (SelectionBeginTime != 0 && SelectionEndTime != 0 && m_SelectedNodeToAddComment is PhraseNode) 
     1345            { 
     1346                ContentView.Selection = new AudioSelection((PhraseNode)m_SelectedNodeToAddComment, m_ContentView, 
     1347                    new AudioRange(SelectionBeginTime, SelectionEndTime)); 
    13331348            } 
    13341349            else 
     
    13361351                m_ContentView.Selection = new NodeSelection(m_SelectedNodeToAddComment, m_ContentView); 
    13371352            } 
    1338             m_TimeOfCursor = 0; 
    13391353 
    13401354            this.Controls.Remove(m_EditableLabel); 
Note: See TracChangeset for help on using the changeset viewer.