Rivendellaudio/rdlogedit/edit_track.cpp
Fred Gleason 34ffe4130d 2022-12-13 Fred Gleason <fredg@paravelsystems.com>
* Added logic to the 'Edit Voice Track Marker' dialog in rdlogedit(1)
	to prevent entry of an empty comment.

Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
2022-12-13 17:02:13 -05:00

82 lines
2.0 KiB
C++

// edit_track.cpp
//
// Edit a Rivendell Voice Track Log Entry
//
// (C) Copyright 2002-2022 Fred Gleason <fredg@paravelsystems.com>
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License version 2 as
// published by the Free Software Foundation.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public
// License along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
#include "edit_track.h"
EditTrack::EditTrack(QWidget *parent)
: EditEvent(parent)
{
setWindowTitle("RDLogEdit - "+tr("Edit Voice Track Marker"));
//
// Fix the Window Size
//
setMinimumSize(sizeHint());
setMaximumSize(sizeHint());
//
// Comment
//
edit_comment_edit=new QLineEdit(this);
edit_comment_edit->setGeometry(10,116,sizeHint().width()-20,18);
edit_comment_edit->setMaxLength(255);
QLabel *label=new QLabel(tr("Comment"),this);
label->setFont(labelFont());
label->setGeometry(12,100,70,14);
connect(edit_comment_edit,SIGNAL(textChanged(const QString &)),
this,SLOT(commentChangedData(const QString &)));
}
QSize EditTrack::sizeHint() const
{
return QSize(625,230);
}
QSizePolicy EditTrack::sizePolicy() const
{
return QSizePolicy(QSizePolicy::Fixed,QSizePolicy::Fixed);
}
int EditTrack::exec(RDLogLine *ll)
{
setLogLine(ll);
edit_comment_edit->setText(logLine()->markerComment());
commentChangedData(edit_comment_edit->text());
return EditEvent::exec();
}
void EditTrack::commentChangedData(const QString &str)
{
setOkEnabled(!str.trimmed().isEmpty());
}
bool EditTrack::saveData()
{
logLine()->setMarkerComment(edit_comment_edit->text());
return true;
}