mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-05-19 14:43:30 +02:00
2021-01-25 Fred Gleason <fredg@paravelsystems.com>
* Refactored the 'List Feed' dialog in rdadmin(1) to use the model-based API. Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
parent
9d5d446c2a
commit
44b9c6848a
@ -20895,3 +20895,6 @@
|
||||
* Added 'RDFeedListModel' class
|
||||
* Refactored the top-level window in rdcastmanager(1) to use the
|
||||
model-based API.
|
||||
2021-01-25 Fred Gleason <fredg@paravelsystems.com>
|
||||
* Refactored the 'List Feed' dialog in rdadmin(1) to use the
|
||||
model-based API.
|
||||
|
@ -25,9 +25,10 @@
|
||||
#include "rdfeedlistmodel.h"
|
||||
#include "rdpodcast.h"
|
||||
|
||||
RDFeedListModel::RDFeedListModel(QObject *parent)
|
||||
RDFeedListModel::RDFeedListModel(bool is_admin,QObject *parent)
|
||||
: QAbstractItemModel(parent)
|
||||
{
|
||||
d_is_admin=is_admin;
|
||||
d_font_metrics=NULL;
|
||||
d_bold_font_metrics=NULL;
|
||||
|
||||
@ -51,13 +52,17 @@ RDFeedListModel::RDFeedListModel(QObject *parent)
|
||||
d_alignments.push_back(center);
|
||||
|
||||
d_headers.push_back(tr("Auto Post")); // 04
|
||||
d_alignments.push_back(right);
|
||||
d_alignments.push_back(center);
|
||||
|
||||
d_headers.push_back(tr("Superfeed")); // 05
|
||||
d_alignments.push_back(center);
|
||||
|
||||
d_headers.push_back(tr("Public URL")); // 06
|
||||
d_alignments.push_back(left);
|
||||
|
||||
if(d_is_admin) {
|
||||
changeUser();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -414,10 +419,17 @@ void RDFeedListModel::changeUser()
|
||||
RDSqlQuery *q=NULL;
|
||||
QString filter_sql="where ";
|
||||
|
||||
sql=QString("select ")+
|
||||
"KEY_NAME "+ // 00
|
||||
"from FEED_PERMS where "+
|
||||
"USER_NAME=\""+RDEscapeString(rda->user()->name())+"\"";
|
||||
if(d_is_admin) {
|
||||
sql=QString("select ")+
|
||||
"KEY_NAME "+ // 00
|
||||
"from FEEDS";
|
||||
}
|
||||
else {
|
||||
sql=QString("select ")+
|
||||
"KEY_NAME "+ // 00
|
||||
"from FEED_PERMS where "+
|
||||
"USER_NAME=\""+RDEscapeString(rda->user()->name())+"\"";
|
||||
}
|
||||
q=new RDSqlQuery(sql);
|
||||
while(q->next()) {
|
||||
filter_sql+="(KEY_NAME=\""+RDEscapeString(q->value(0).toString())+"\")||";
|
||||
@ -529,12 +541,12 @@ void RDFeedListModel::updateRow(int row,RDSqlQuery *q)
|
||||
d_feed_ids[row]=q->value(0).toUInt();
|
||||
d_key_names[row]=q->value(1).toString();
|
||||
d_texts[row][0]=keyname; // Key Name
|
||||
if(q->value(11).isNull()) {
|
||||
if(q->value(12).isNull()) {
|
||||
d_icons[row][0]=rda->iconEngine()->
|
||||
applicationIcon(RDIconEngine::RdCastManager,32);
|
||||
}
|
||||
else {
|
||||
d_icons[row][0]=QImage::fromData(q->value(11).toByteArray());
|
||||
d_icons[row][0]=QImage::fromData(q->value(12).toByteArray());
|
||||
}
|
||||
d_texts[row][1]=q->value(2); // Title
|
||||
if(q->value(3).toString()=="Y") {
|
||||
@ -543,10 +555,10 @@ void RDFeedListModel::updateRow(int row,RDSqlQuery *q)
|
||||
else {
|
||||
d_texts[row][2]="0 / 0"; // Casts
|
||||
}
|
||||
d_texts[row][3]=q->value(6).toDate().toString("MM/dd/yyyy"); // Creation Date
|
||||
d_texts[row][4]=q->value(3).toString(); // Superfeed
|
||||
d_texts[row][5]=q->value(4).toString(); // Autopost
|
||||
d_texts[row][6]=RDFeed::publicUrl(q->value(5).toString(),keyname);
|
||||
d_texts[row][3]=q->value(7).toDate().toString("MM/dd/yyyy"); // Creation Date
|
||||
d_texts[row][4]=q->value(3).toString(); // Autopost
|
||||
d_texts[row][5]=q->value(4).toString(); // Superfeed
|
||||
d_texts[row][6]=RDFeed::publicUrl(q->value(6).toString(),keyname);
|
||||
|
||||
//
|
||||
// Cast Attributes
|
||||
@ -560,13 +572,13 @@ void RDFeedListModel::updateRow(int row,RDSqlQuery *q)
|
||||
}
|
||||
|
||||
do {
|
||||
if(q->value(7).isNull()) {
|
||||
if(q->value(8).isNull()) {
|
||||
return; // No casts!
|
||||
}
|
||||
// Process
|
||||
total_casts++;
|
||||
d_cast_ids[row].push_back(q->value(7).toUInt());
|
||||
switch((RDPodcast::Status)q->value(9).toUInt()) {
|
||||
d_cast_ids[row].push_back(q->value(8).toUInt());
|
||||
switch((RDPodcast::Status)q->value(10).toUInt()) {
|
||||
case RDPodcast::StatusPending:
|
||||
d_cast_icons[row].push_back(rda->iconEngine()->
|
||||
listIcon(RDIconEngine::BlueBall));
|
||||
@ -584,9 +596,9 @@ void RDFeedListModel::updateRow(int row,RDSqlQuery *q)
|
||||
break;
|
||||
}
|
||||
d_cast_texts[row].push_back(list);
|
||||
d_cast_texts[row].back()[1]=q->value(8); // Item Title
|
||||
d_cast_texts[row].back()[1]=q->value(9); // Item Title
|
||||
d_cast_texts[row].back()[3]=
|
||||
q->value(10).toDateTime().toString("MM/dd/yyyy");
|
||||
q->value(11).toDateTime().toString("MM/dd/yyyy");
|
||||
} while(q->next()&&(q->value(1).toString()==keyname));
|
||||
q->previous();
|
||||
|
||||
@ -606,15 +618,17 @@ QString RDFeedListModel::sqlFields() const
|
||||
"FEEDS.ID,"+ // 00
|
||||
"FEEDS.KEY_NAME,"+ // 01
|
||||
"FEEDS.CHANNEL_TITLE,"+ // 02
|
||||
"FEEDS.IS_SUPERFEED,"+ // 03
|
||||
"FEEDS.ID,"+ // 04
|
||||
"FEEDS.BASE_URL,"+ // 05
|
||||
"FEEDS.ORIGIN_DATETIME,"+ // 06
|
||||
"PODCASTS.ID,"+ // 07
|
||||
"PODCASTS.ITEM_TITLE,"+ // 08
|
||||
"PODCASTS.STATUS,"+ // 09
|
||||
"PODCASTS.ORIGIN_DATETIME,"+ // 10
|
||||
"FEED_IMAGES.DATA "+ // 11
|
||||
"FEEDS.ENABLE_AUTOPOST,"+ // 03
|
||||
|
||||
"FEEDS.IS_SUPERFEED,"+ // 04
|
||||
"FEEDS.ID,"+ // 05
|
||||
"FEEDS.BASE_URL,"+ // 06
|
||||
"FEEDS.ORIGIN_DATETIME,"+ // 07
|
||||
"PODCASTS.ID,"+ // 08
|
||||
"PODCASTS.ITEM_TITLE,"+ // 09
|
||||
"PODCASTS.STATUS,"+ // 10
|
||||
"PODCASTS.ORIGIN_DATETIME,"+ // 11
|
||||
"FEED_IMAGES.DATA "+ // 12
|
||||
"from FEEDS left join FEED_IMAGES "+
|
||||
"on FEEDS.CHANNEL_IMAGE_ID=FEED_IMAGES.ID left join PODCASTS "+
|
||||
"on FEEDS.ID=PODCASTS.FEED_ID ";
|
||||
|
@ -36,7 +36,7 @@ class RDFeedListModel : public QAbstractItemModel
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
RDFeedListModel(QObject *parent=0);
|
||||
RDFeedListModel(bool is_admin,QObject *parent=0);
|
||||
~RDFeedListModel();
|
||||
QPalette palette();
|
||||
void setPalette(const QPalette &pal);
|
||||
@ -95,6 +95,7 @@ class RDFeedListModel : public QAbstractItemModel
|
||||
QList<QVariant> d_background_colors;
|
||||
QStringList d_key_names;
|
||||
QList<unsigned> d_feed_ids;
|
||||
bool d_is_admin;
|
||||
};
|
||||
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// Add a Rivendell RSS Feed
|
||||
//
|
||||
// (C) Copyright 2002-2020 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2021 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
|
||||
@ -125,7 +125,7 @@ void AddFeed::okData()
|
||||
&err_msg);
|
||||
if(*feed_id!=0) {
|
||||
*feed_keyname=feed_keyname_edit->text();
|
||||
done(0);
|
||||
done(true);
|
||||
}
|
||||
else {
|
||||
QMessageBox::warning(this,"RDAdmin - "+tr("Add Feed Error"),err_msg);
|
||||
@ -135,7 +135,7 @@ void AddFeed::okData()
|
||||
|
||||
void AddFeed::cancelData()
|
||||
{
|
||||
done(-1);
|
||||
done(false);
|
||||
}
|
||||
|
||||
|
||||
|
@ -724,13 +724,13 @@ void EditFeed::okData()
|
||||
return;
|
||||
}
|
||||
|
||||
done(0);
|
||||
done(true);
|
||||
}
|
||||
|
||||
|
||||
void EditFeed::cancelData()
|
||||
{
|
||||
done(-1);
|
||||
done(false);
|
||||
}
|
||||
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// List Rivendell Feeds
|
||||
//
|
||||
// (C) Copyright 2002-2020 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2021 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
|
||||
@ -38,11 +38,6 @@
|
||||
#include "globals.h"
|
||||
#include "list_feeds.h"
|
||||
|
||||
//
|
||||
// Icons
|
||||
//
|
||||
#include "../icons/rdcastmanager-32x32.xpm"
|
||||
|
||||
ListFeeds::ListFeeds(QWidget *parent)
|
||||
: RDDialog(parent)
|
||||
{
|
||||
@ -53,11 +48,6 @@ ListFeeds::ListFeeds(QWidget *parent)
|
||||
|
||||
setWindowTitle("RDAdmin - "+tr("Rivendell Feed List"));
|
||||
|
||||
//
|
||||
// Create Icons
|
||||
//
|
||||
list_rdcastmanager_32x32_map=new QPixmap(rdcastmanager_32x32_xpm);
|
||||
|
||||
//
|
||||
// Add Button
|
||||
//
|
||||
@ -110,33 +100,24 @@ ListFeeds::ListFeeds(QWidget *parent)
|
||||
//
|
||||
// Group List
|
||||
//
|
||||
list_feeds_view=new RDListView(this);
|
||||
list_feeds_view->setAllColumnsShowFocus(true);
|
||||
list_feeds_view->setItemMargin(5);
|
||||
|
||||
list_feeds_view->addColumn(" ");
|
||||
list_feeds_view->setColumnAlignment(0,Qt::AlignCenter|Qt::AlignVCenter);
|
||||
|
||||
list_feeds_view->addColumn(tr("Key"));
|
||||
list_feeds_view->setColumnAlignment(1,Qt::AlignCenter|Qt::AlignVCenter);
|
||||
list_feeds_view->addColumn(tr("Title"));
|
||||
list_feeds_view->setColumnAlignment(2,Qt::AlignLeft);
|
||||
list_feeds_view->addColumn(tr("Public URL"));
|
||||
list_feeds_view->setColumnAlignment(3,Qt::AlignLeft);
|
||||
list_feeds_view->addColumn(tr("Superfeed"));
|
||||
list_feeds_view->setColumnAlignment(4,Qt::AlignCenter|Qt::AlignVCenter);
|
||||
list_feeds_view->addColumn(tr("AutoPost"));
|
||||
list_feeds_view->setColumnAlignment(5,Qt::AlignCenter|Qt::AlignVCenter);
|
||||
list_feeds_view->addColumn(tr("Creation Date"));
|
||||
list_feeds_view->setColumnAlignment(6,Qt::AlignCenter|Qt::AlignVCenter);
|
||||
list_feeds_view=new QTableView(this);
|
||||
list_feeds_view->setSelectionBehavior(QAbstractItemView::SelectRows);
|
||||
list_feeds_view->setSelectionMode(QAbstractItemView::SingleSelection);
|
||||
list_feeds_view->setShowGrid(false);
|
||||
list_feeds_view->setSortingEnabled(false);
|
||||
list_feeds_view->setSortingEnabled(false);
|
||||
list_feeds_view->setWordWrap(false);
|
||||
list_feeds_model=new RDFeedListModel(true,this);
|
||||
list_feeds_model->setFont(font());
|
||||
list_feeds_model->setPalette(palette());
|
||||
list_feeds_view->setModel(list_feeds_model);
|
||||
list_feeds_view->setColumnHidden(2,true);
|
||||
list_box_label=new QLabel(list_feeds_view,tr("Podcast Feeds"),this);
|
||||
list_box_label->setFont(bigLabelFont());
|
||||
connect(list_feeds_view,
|
||||
SIGNAL(doubleClicked(Q3ListViewItem *,const QPoint &,int)),
|
||||
this,
|
||||
SLOT(doubleClickedData(Q3ListViewItem *,const QPoint &,int)));
|
||||
|
||||
RefreshList();
|
||||
connect(list_feeds_model,SIGNAL(modelReset()),this,SLOT(resetModelData()));
|
||||
connect(list_feeds_view,SIGNAL(doubleClicked(const QModelIndex &)),
|
||||
this,SLOT(doubleClickedData(const QModelIndex &)));
|
||||
resetModelData();
|
||||
}
|
||||
|
||||
|
||||
@ -163,82 +144,71 @@ void ListFeeds::addData()
|
||||
unsigned id;
|
||||
QString sql;
|
||||
|
||||
AddFeed *add_feed=new AddFeed(&id,&feed,this);
|
||||
if(add_feed->exec()<0) {
|
||||
delete add_feed;
|
||||
return;
|
||||
AddFeed *ad=new AddFeed(&id,&feed,this);
|
||||
if(ad->exec()) {
|
||||
EditFeed *d=new EditFeed(feed,this);
|
||||
if(d->exec()) {
|
||||
QModelIndex row=list_feeds_model->addFeed(feed);
|
||||
if(row.isValid()) {
|
||||
list_feeds_model->refreshRow(row);
|
||||
list_feeds_view->selectRow(row.row());
|
||||
}
|
||||
}
|
||||
else {
|
||||
sql=QString("delete from FEED_PERMS where ")+
|
||||
"KEY_NAME=\""+RDEscapeString(feed)+"\"";
|
||||
RDSqlQuery::apply(sql);
|
||||
|
||||
sql=QString("delete from FEED_IMAGES where ")+
|
||||
"FEED_KEY_NAME=\""+RDEscapeString(feed)+"\"";
|
||||
RDSqlQuery::apply(sql);
|
||||
|
||||
sql=QString("delete from FEEDS where ")+
|
||||
"KEY_NAME=\""+RDEscapeString(feed)+"\"";
|
||||
RDSqlQuery::apply(sql);
|
||||
|
||||
return;
|
||||
}
|
||||
delete d;
|
||||
}
|
||||
delete add_feed;
|
||||
add_feed=NULL;
|
||||
|
||||
EditFeed *edit_feed=new EditFeed(feed,this);
|
||||
if(edit_feed->exec()<0) {
|
||||
sql=QString("delete from FEED_PERMS where ")+
|
||||
"KEY_NAME=\""+RDEscapeString(feed)+"\"";
|
||||
RDSqlQuery::apply(sql);
|
||||
|
||||
sql=QString("delete from FEED_IMAGES where ")+
|
||||
"FEED_KEY_NAME=\""+RDEscapeString(feed)+"\"";
|
||||
RDSqlQuery::apply(sql);
|
||||
|
||||
sql=QString("delete from FEEDS where ")+
|
||||
"KEY_NAME=\""+RDEscapeString(feed)+"\"";
|
||||
RDSqlQuery::apply(sql);
|
||||
|
||||
delete edit_feed;
|
||||
return;
|
||||
}
|
||||
delete edit_feed;
|
||||
RDListViewItem *item=new RDListViewItem(list_feeds_view);
|
||||
item->setId(id);
|
||||
item->setText(1,feed);
|
||||
RefreshItem(item);
|
||||
item->setSelected(true);
|
||||
list_feeds_view->setCurrentItem(item);
|
||||
list_feeds_view->ensureItemVisible(item);
|
||||
delete ad;
|
||||
}
|
||||
|
||||
|
||||
void ListFeeds::editData()
|
||||
{
|
||||
RDListViewItem *item=(RDListViewItem *)list_feeds_view->selectedItem();
|
||||
if(item==NULL) {
|
||||
QModelIndexList rows=list_feeds_view->selectionModel()->selectedRows();
|
||||
|
||||
if(rows.size()!=1) {
|
||||
return;
|
||||
}
|
||||
EditFeed *edit_feed=new EditFeed(item->text(1),this);
|
||||
edit_feed->exec();
|
||||
delete edit_feed;
|
||||
RefreshItem(item);
|
||||
EditFeed *d=new EditFeed(list_feeds_model->keyName(rows.first()),this);
|
||||
if(d->exec()) {
|
||||
list_feeds_model->refreshRow(rows.first());
|
||||
}
|
||||
delete d;
|
||||
}
|
||||
|
||||
|
||||
void ListFeeds::deleteData()
|
||||
{
|
||||
RDListViewItem *item=(RDListViewItem *)list_feeds_view->selectedItem();
|
||||
if(item==NULL) {
|
||||
return;
|
||||
}
|
||||
|
||||
QString sql;
|
||||
RDSqlQuery *q;
|
||||
QString warning;
|
||||
QString str;
|
||||
RDFeed *feed;
|
||||
QString errs;
|
||||
QModelIndexList rows=list_feeds_view->selectionModel()->selectedRows();
|
||||
|
||||
QString feedname=item->text(1);
|
||||
if(feedname.isEmpty()) {
|
||||
if(rows.size()!=1) {
|
||||
return;
|
||||
}
|
||||
warning+=tr("Are you sure you want to delete feed")+" \""+feedname+"\"?";
|
||||
switch(QMessageBox::warning(this,tr("Delete Feed"),warning,
|
||||
QMessageBox::Yes,QMessageBox::No)) {
|
||||
case QMessageBox::No:
|
||||
case QMessageBox::NoButton:
|
||||
return;
|
||||
|
||||
default:
|
||||
break;
|
||||
QString feedname=list_feeds_model->keyName(rows.first());
|
||||
warning+=tr("Are you sure you want to delete feed")+" \""+feedname+"\"?";
|
||||
if(QMessageBox::warning(this,"RDAdmin - "+tr("Delete Feed"),warning,
|
||||
QMessageBox::Yes,QMessageBox::No)!=QMessageBox::Yes) {
|
||||
return;
|
||||
}
|
||||
feed=new RDFeed(feedname,rda->config());
|
||||
|
||||
@ -248,10 +218,13 @@ void ListFeeds::deleteData()
|
||||
// First, Delete Remote Audio
|
||||
//
|
||||
RDPodcast *cast;
|
||||
sql=QString().sprintf("select ID from PODCASTS where FEED_ID=%d",item->id());
|
||||
sql=QString("select ")+
|
||||
"ID "+ // 00
|
||||
"from PODCASTS where "+
|
||||
QString().sprintf("FEED_ID=%u",list_feeds_model->feedId(rows.first()));
|
||||
q=new RDSqlQuery(sql);
|
||||
QProgressDialog *pd=new QProgressDialog(tr("Deleting remote audio..."),"",
|
||||
0,q->size()+1,this);
|
||||
QProgressDialog *pd=
|
||||
new QProgressDialog(tr("Deleting remote audio..."),"",0,q->size()+1,this);
|
||||
pd->setWindowTitle("RDAdmin");
|
||||
pd->setValue(0);
|
||||
qApp->processEvents();
|
||||
@ -276,7 +249,8 @@ void ListFeeds::deleteData()
|
||||
//
|
||||
// Delete Cast Entries
|
||||
//
|
||||
sql=QString().sprintf("delete from PODCASTS where FEED_ID=%d",item->id());
|
||||
sql=QString("delete from PODCASTS where ")+
|
||||
QString().sprintf("FEED_ID=%u",list_feeds_model->feedId(rows.first()));
|
||||
RDSqlQuery::apply(sql);
|
||||
|
||||
//
|
||||
@ -300,18 +274,16 @@ void ListFeeds::deleteData()
|
||||
sql=QString("delete from FEEDS where ")+
|
||||
"KEY_NAME=\""+RDEscapeString(feedname)+"\"";
|
||||
RDSqlQuery::apply(sql);
|
||||
item->setSelected(false);
|
||||
list_feeds_model->removeFeed(feedname);
|
||||
|
||||
pd->reset();
|
||||
|
||||
delete pd;
|
||||
delete feed;
|
||||
delete item;
|
||||
}
|
||||
|
||||
|
||||
void ListFeeds::doubleClickedData(Q3ListViewItem *item,const QPoint &pt,
|
||||
int col)
|
||||
void ListFeeds::doubleClickedData(const QModelIndex &index)
|
||||
{
|
||||
editData();
|
||||
}
|
||||
@ -323,16 +295,14 @@ void ListFeeds::repostData()
|
||||
RDSqlQuery *q=NULL;
|
||||
RDFeed *feed=NULL;
|
||||
int count;
|
||||
QModelIndexList rows=list_feeds_view->selectionModel()->selectedRows();
|
||||
|
||||
RDListViewItem *item=(RDListViewItem *)list_feeds_view->selectedItem();
|
||||
if(item==NULL) {
|
||||
return;
|
||||
}
|
||||
QString keyname=item->text(1);
|
||||
if(keyname.isEmpty()) {
|
||||
if(rows.size()!=1) {
|
||||
return;
|
||||
}
|
||||
|
||||
QString keyname=list_feeds_model->keyName(rows.first());
|
||||
|
||||
if(QMessageBox::question(this,"RDAdmin - "+tr("Feed Repost"),
|
||||
tr("This operation will repost all XML, image and")+"\n"+
|
||||
tr("audio data to the remote archive, and thus may")+"\n"+
|
||||
@ -401,16 +371,14 @@ void ListFeeds::unpostData()
|
||||
RDSqlQuery *q=NULL;
|
||||
RDFeed *feed=NULL;
|
||||
int count;
|
||||
QModelIndexList rows=list_feeds_view->selectionModel()->selectedRows();
|
||||
|
||||
RDListViewItem *item=(RDListViewItem *)list_feeds_view->selectedItem();
|
||||
if(item==NULL) {
|
||||
return;
|
||||
}
|
||||
QString keyname=item->text(1);
|
||||
if(keyname.isEmpty()) {
|
||||
if(rows.size()!=1) {
|
||||
return;
|
||||
}
|
||||
|
||||
QString keyname=list_feeds_model->keyName(rows.first());
|
||||
|
||||
if(QMessageBox::question(this,"RDAdmin - "+tr("Feed Repost"),
|
||||
tr("This operation will unpost (remove) all XML, image and")+"\n"+
|
||||
tr("audio data from the remote archive, and thus may")+"\n"+
|
||||
@ -482,6 +450,13 @@ void ListFeeds::closeData()
|
||||
}
|
||||
|
||||
|
||||
void ListFeeds::resetModelData()
|
||||
{
|
||||
list_feeds_view->resizeColumnsToContents();
|
||||
list_feeds_view->resizeRowsToContents();
|
||||
}
|
||||
|
||||
|
||||
void ListFeeds::resizeEvent(QResizeEvent *e)
|
||||
{
|
||||
list_add_button->setGeometry(size().width()-90,30,80,50);
|
||||
@ -493,81 +468,3 @@ void ListFeeds::resizeEvent(QResizeEvent *e)
|
||||
list_box_label->setGeometry(14,11,size().width()-28,19);
|
||||
list_feeds_view->setGeometry(10,30,size().width()-120,size().height()-40);
|
||||
}
|
||||
|
||||
|
||||
void ListFeeds::RefreshList()
|
||||
{
|
||||
QString sql;
|
||||
RDSqlQuery *q;
|
||||
RDListViewItem *item;
|
||||
|
||||
list_feeds_view->clear();
|
||||
sql=QString("select ")+
|
||||
"FEEDS.ID,"+ // 00
|
||||
"FEEDS.KEY_NAME,"+ // 01
|
||||
"FEEDS.CHANNEL_TITLE,"+ // 02
|
||||
"FEEDS.IS_SUPERFEED,"+ // 03
|
||||
"FEEDS.ENABLE_AUTOPOST,"+ // 04
|
||||
"FEEDS.ORIGIN_DATETIME,"+ // 05
|
||||
"FEEDS.BASE_URL,"+ // 06
|
||||
"FEED_IMAGES.DATA "+ // 07
|
||||
"from FEEDS left join FEED_IMAGES "+
|
||||
"on FEEDS.CHANNEL_IMAGE_ID=FEED_IMAGES.ID";
|
||||
q=new RDSqlQuery(sql);
|
||||
while (q->next()) {
|
||||
item=new RDListViewItem(list_feeds_view);
|
||||
item->setId(q->value(0).toInt());
|
||||
if(q->value(7).isNull()) {
|
||||
item->setPixmap(0,*list_rdcastmanager_32x32_map);
|
||||
}
|
||||
else {
|
||||
QImage img=QImage::fromData(q->value(7).toByteArray());
|
||||
item->setPixmap(0,QPixmap::fromImage(img.scaled(32,32)));
|
||||
}
|
||||
item->setText(1,q->value(1).toString());
|
||||
item->setText(2,q->value(2).toString());
|
||||
item->setText(3,RDFeed::publicUrl(q->value(6).toString(),
|
||||
q->value(1).toString()));
|
||||
item->setText(4,q->value(3).toString());
|
||||
item->setText(5,q->value(4).toString());
|
||||
item->setText(6,q->value(5).toDateTime().toString("MM/dd/yyyy"));
|
||||
}
|
||||
delete q;
|
||||
}
|
||||
|
||||
|
||||
void ListFeeds::RefreshItem(RDListViewItem *item)
|
||||
{
|
||||
QString sql;
|
||||
RDSqlQuery *q;
|
||||
|
||||
sql=QString("select ")+
|
||||
"FEEDS.KEY_NAME,"+ // 00
|
||||
"FEEDS.CHANNEL_TITLE,"+ // 01
|
||||
"FEEDS.IS_SUPERFEED,"+ // 02
|
||||
"FEEDS.ENABLE_AUTOPOST,"+ // 03
|
||||
"FEEDS.ORIGIN_DATETIME,"+ // 04
|
||||
"FEEDS.BASE_URL,"+ // 05
|
||||
"FEED_IMAGES.DATA "+ // 06
|
||||
"from FEEDS left join FEED_IMAGES "+
|
||||
"on FEEDS.CHANNEL_IMAGE_ID=FEED_IMAGES.ID where "+
|
||||
QString().sprintf("FEEDS.ID=%d",item->id());
|
||||
q=new RDSqlQuery(sql);
|
||||
if(q->next()) {
|
||||
if(q->value(6).isNull()) {
|
||||
item->setPixmap(0,*list_rdcastmanager_32x32_map);
|
||||
}
|
||||
else {
|
||||
QImage img=QImage::fromData(q->value(6).toByteArray());
|
||||
item->setPixmap(0,QPixmap::fromImage(img.scaled(32,32)));
|
||||
}
|
||||
item->setText(1,q->value(0).toString());
|
||||
item->setText(2,q->value(1).toString());
|
||||
item->setText(3,RDFeed::publicUrl(q->value(5).toString(),
|
||||
q->value(0).toString()));
|
||||
item->setText(4,q->value(2).toString());
|
||||
item->setText(5,q->value(3).toString());
|
||||
item->setText(6,q->value(4).toDateTime().toString("MM/dd/yyyy"));
|
||||
}
|
||||
delete q;
|
||||
}
|
||||
|
@ -1,8 +1,8 @@
|
||||
// list_feeds.h
|
||||
//
|
||||
// List Rivendell Feeds
|
||||
// List Rivendell RSS Feeds
|
||||
//
|
||||
// (C) Copyright 2002-2020 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2021 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
|
||||
@ -21,9 +21,11 @@
|
||||
#ifndef LIST_FEEDS_H
|
||||
#define LIST_FEEDS_H
|
||||
|
||||
#include <qpushbutton.h>
|
||||
#include <QPushButton>
|
||||
#include <QTableView>
|
||||
|
||||
#include <rddialog.h>
|
||||
#include <rdfeedlistmodel.h>
|
||||
#include <rdlistviewitem.h>
|
||||
|
||||
class ListFeeds : public RDDialog
|
||||
@ -39,20 +41,19 @@ class ListFeeds : public RDDialog
|
||||
void addData();
|
||||
void editData();
|
||||
void deleteData();
|
||||
void doubleClickedData(Q3ListViewItem *item,const QPoint &pt,int col);
|
||||
void doubleClickedData(const QModelIndex &index);
|
||||
void repostData();
|
||||
void unpostData();
|
||||
void closeData();
|
||||
void resetModelData();
|
||||
|
||||
protected:
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
private:
|
||||
void RefreshList();
|
||||
void RefreshItem(RDListViewItem *item);
|
||||
QPixmap *list_rdcastmanager_32x32_map;
|
||||
QLabel *list_box_label;
|
||||
RDListView *list_feeds_view;
|
||||
QTableView *list_feeds_view;
|
||||
RDFeedListModel *list_feeds_model;
|
||||
QPushButton *list_add_button;
|
||||
QPushButton *list_edit_button;
|
||||
QPushButton *list_delete_button;
|
||||
|
@ -84,11 +84,6 @@ MainWidget::MainWidget(RDConfig *config,RDWidget *parent)
|
||||
setMinimumSize(sizeHint());
|
||||
setMaximumSize(sizeHint());
|
||||
|
||||
//
|
||||
// Create And Set Icon
|
||||
//
|
||||
setWindowIcon(rda->iconEngine()->applicationIcon(RDIconEngine::RdAdmin,22));
|
||||
|
||||
//
|
||||
// Open the Database
|
||||
//
|
||||
@ -99,6 +94,7 @@ MainWidget::MainWidget(RDConfig *config,RDWidget *parent)
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
setWindowIcon(rda->iconEngine()->applicationIcon(RDIconEngine::RdAdmin,22));
|
||||
setWindowTitle(QString("RDAdmin v")+VERSION+" - "+
|
||||
tr("Host")+": "+rda->config()->stationName());
|
||||
|
||||
|
@ -5325,15 +5325,15 @@ Stále ještě jej chcete smazat?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Key</source>
|
||||
<translation>Klíč</translation>
|
||||
<translation type="obsolete">Klíč</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Title</source>
|
||||
<translation>Název</translation>
|
||||
<translation type="obsolete">Název</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>AutoPost</source>
|
||||
<translation>Automatické vyvěšení</translation>
|
||||
<translation type="obsolete">Automatické vyvěšení</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Keep Metadata</source>
|
||||
@ -5341,7 +5341,7 @@ Stále ještě jej chcete smazat?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Creation Date</source>
|
||||
<translation>Datum vytvoření</translation>
|
||||
<translation type="obsolete">Datum vytvoření</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Feeds:</source>
|
||||
@ -5349,11 +5349,11 @@ Stále ještě jej chcete smazat?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Are you sure you want to delete feed</source>
|
||||
<translation>Opravdu chcete smazat tento přívod</translation>
|
||||
<translation type="unfinished">Opravdu chcete smazat tento přívod</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete Feed</source>
|
||||
<translation>Smazat přívod</translation>
|
||||
<translation type="unfinished">Smazat přívod</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Deleting Audio...</source>
|
||||
@ -5367,30 +5367,30 @@ Stále ještě jej chcete smazat?</translation>
|
||||
<source>Deleting</source>
|
||||
<translation type="obsolete">Mazání</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Superfeed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Warning</source>
|
||||
<translation type="unfinished">Varování</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Repost</source>
|
||||
<translation type="unfinished">&Vyvěsit znovu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Deleting remote audio...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Public URL</source>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Repost</source>
|
||||
<translation type="unfinished">&Vyvěsit znovu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Feed Repost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@ -5404,11 +5404,11 @@ Stále ještě jej chcete smazat?</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Continue?</source>
|
||||
<source>take signficant time to complete.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>take signficant time to complete.</source>
|
||||
<source>Continue?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5419,16 +5419,12 @@ Stále ještě jej chcete smazat?</translation>
|
||||
<source>Posting item data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Posting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5436,7 +5432,7 @@ Stále ještě jej chcete smazat?</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5447,10 +5443,6 @@ Stále ještě jej chcete smazat?</translation>
|
||||
<source>Unposting images...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ListGpis</name>
|
||||
|
@ -5001,20 +5001,20 @@ Wollen Sie ihn immernoch löschen?</translation>
|
||||
<source>&Close</source>
|
||||
<translation type="unfinished">&Schliessen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Key</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Title</source>
|
||||
<translation type="unfinished">Titel</translation>
|
||||
<translation type="obsolete">Titel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>AutoPost</source>
|
||||
<source>&Repost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Creation Date</source>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5026,11 +5026,7 @@ Wollen Sie ihn immernoch löschen?</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Superfeed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<source>Deleting remote audio...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5038,15 +5034,7 @@ Wollen Sie ihn immernoch löschen?</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Deleting remote audio...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Public URL</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Repost</source>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5062,11 +5050,11 @@ Wollen Sie ihn immernoch löschen?</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Continue?</source>
|
||||
<source>take signficant time to complete.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>take signficant time to complete.</source>
|
||||
<source>Continue?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5077,16 +5065,12 @@ Wollen Sie ihn immernoch löschen?</translation>
|
||||
<source>Posting item data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Posting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5094,7 +5078,7 @@ Wollen Sie ihn immernoch löschen?</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5105,10 +5089,6 @@ Wollen Sie ihn immernoch löschen?</translation>
|
||||
<source>Unposting images...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ListGpis</name>
|
||||
|
@ -5276,15 +5276,15 @@ Do you still want to delete it?</source>
|
||||
</message>
|
||||
<message>
|
||||
<source>Key</source>
|
||||
<translation>Nombre</translation>
|
||||
<translation type="obsolete">Nombre</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Title</source>
|
||||
<translation>Título</translation>
|
||||
<translation type="obsolete">Título</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>AutoPost</source>
|
||||
<translation>AutoPublicar</translation>
|
||||
<translation type="obsolete">AutoPublicar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Keep Metadata</source>
|
||||
@ -5292,7 +5292,7 @@ Do you still want to delete it?</source>
|
||||
</message>
|
||||
<message>
|
||||
<source>Creation Date</source>
|
||||
<translation>Fecha de creación</translation>
|
||||
<translation type="obsolete">Fecha de creación</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Feeds:</source>
|
||||
@ -5300,11 +5300,11 @@ Do you still want to delete it?</source>
|
||||
</message>
|
||||
<message>
|
||||
<source>Are you sure you want to delete feed</source>
|
||||
<translation>¿Está seguro de borrar el feed </translation>
|
||||
<translation type="unfinished">¿Está seguro de borrar el feed </translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete Feed</source>
|
||||
<translation>Eliminar Feed</translation>
|
||||
<translation type="unfinished">Eliminar Feed</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Deleting Audio...</source>
|
||||
@ -5318,30 +5318,30 @@ Do you still want to delete it?</source>
|
||||
<source>Deleting</source>
|
||||
<translation type="obsolete">Borrando</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Superfeed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Warning</source>
|
||||
<translation type="unfinished">Advertencia</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Repost</source>
|
||||
<translation type="unfinished">&Republicar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Deleting remote audio...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Public URL</source>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Repost</source>
|
||||
<translation type="unfinished">&Republicar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Feed Repost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@ -5355,11 +5355,11 @@ Do you still want to delete it?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Continue?</source>
|
||||
<source>take signficant time to complete.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>take signficant time to complete.</source>
|
||||
<source>Continue?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5370,16 +5370,12 @@ Do you still want to delete it?</source>
|
||||
<source>Posting item data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Posting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5387,7 +5383,7 @@ Do you still want to delete it?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5398,10 +5394,6 @@ Do you still want to delete it?</source>
|
||||
<source>Unposting images...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ListGpis</name>
|
||||
|
@ -4077,19 +4077,15 @@ Permissions</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Key</source>
|
||||
<source>&Repost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Title</source>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>AutoPost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Creation Date</source>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4101,11 +4097,7 @@ Permissions</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Superfeed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<source>Deleting remote audio...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4113,15 +4105,7 @@ Permissions</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Deleting remote audio...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Public URL</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Repost</source>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4137,11 +4121,11 @@ Permissions</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Continue?</source>
|
||||
<source>take signficant time to complete.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>take signficant time to complete.</source>
|
||||
<source>Continue?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4152,16 +4136,12 @@ Permissions</source>
|
||||
<source>Posting item data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Posting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4169,7 +4149,7 @@ Permissions</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4180,10 +4160,6 @@ Permissions</source>
|
||||
<source>Unposting images...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ListGpis</name>
|
||||
|
@ -4858,20 +4858,20 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<source>&Close</source>
|
||||
<translation type="unfinished">&Lukk</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Key</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Title</source>
|
||||
<translation type="unfinished">Tittel</translation>
|
||||
<translation type="obsolete">Tittel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>AutoPost</source>
|
||||
<source>&Repost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Creation Date</source>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4883,11 +4883,7 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Superfeed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<source>Deleting remote audio...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4895,15 +4891,7 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Deleting remote audio...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Public URL</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Repost</source>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4919,11 +4907,11 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Continue?</source>
|
||||
<source>take signficant time to complete.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>take signficant time to complete.</source>
|
||||
<source>Continue?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4934,16 +4922,12 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<source>Posting item data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Posting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4951,7 +4935,7 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4962,10 +4946,6 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<source>Unposting images...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ListGpis</name>
|
||||
|
@ -4858,20 +4858,20 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<source>&Close</source>
|
||||
<translation type="unfinished">&Lukk</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Key</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Title</source>
|
||||
<translation type="unfinished">Tittel</translation>
|
||||
<translation type="obsolete">Tittel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>AutoPost</source>
|
||||
<source>&Repost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Creation Date</source>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4883,11 +4883,7 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Superfeed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<source>Deleting remote audio...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4895,15 +4891,7 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Deleting remote audio...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Public URL</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Repost</source>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4919,11 +4907,11 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Continue?</source>
|
||||
<source>take signficant time to complete.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>take signficant time to complete.</source>
|
||||
<source>Continue?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4934,16 +4922,12 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<source>Posting item data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Posting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4951,7 +4935,7 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -4962,10 +4946,6 @@ Klikk på "Lisens"-knappen for fleire opplysningar.</translation>
|
||||
<source>Unposting images...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ListGpis</name>
|
||||
|
@ -4981,20 +4981,20 @@ Você ainda quer Deletar?</translation>
|
||||
<source>&Close</source>
|
||||
<translation type="unfinished">&Fechar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Key</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Title</source>
|
||||
<translation type="unfinished">Título</translation>
|
||||
<translation type="obsolete">Título</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>AutoPost</source>
|
||||
<source>&Repost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Creation Date</source>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5006,11 +5006,7 @@ Você ainda quer Deletar?</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Superfeed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<source>Deleting remote audio...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5018,15 +5014,7 @@ Você ainda quer Deletar?</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Deleting remote audio...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Public URL</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Repost</source>
|
||||
<source>Failed to delete remote feed XML.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5042,11 +5030,11 @@ Você ainda quer Deletar?</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Continue?</source>
|
||||
<source>take signficant time to complete.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>take signficant time to complete.</source>
|
||||
<source>Continue?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5057,16 +5045,12 @@ Você ainda quer Deletar?</translation>
|
||||
<source>Posting item data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>&Unpost</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Posting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5074,7 +5058,7 @@ Você ainda quer Deletar?</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>This operation will unpost (remove) all XML, image and</source>
|
||||
<source>Unposting RSS XML data...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -5085,10 +5069,6 @@ Você ainda quer Deletar?</translation>
|
||||
<source>Unposting images...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Podcast Feeds</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ListGpis</name>
|
||||
|
@ -88,12 +88,6 @@ MainWidget::MainWidget(RDConfig *c,QWidget *parent)
|
||||
rda->ripc()->
|
||||
connectHost("localhost",RIPCD_TCP_PORT,rda->config()->password());
|
||||
|
||||
//
|
||||
// Notifications
|
||||
//
|
||||
connect(rda->ripc(),SIGNAL(notificationReceived(RDNotification *)),
|
||||
this,SLOT(notificationReceivedData(RDNotification *)));
|
||||
|
||||
//
|
||||
// Feed List
|
||||
//
|
||||
@ -101,7 +95,7 @@ MainWidget::MainWidget(RDConfig *c,QWidget *parent)
|
||||
cast_feed_view->setSelectionBehavior(QAbstractItemView::SelectRows);
|
||||
cast_feed_view->setSortingEnabled(false);
|
||||
cast_feed_view->setWordWrap(false);
|
||||
cast_feed_model=new RDFeedListModel(this);
|
||||
cast_feed_model=new RDFeedListModel(false,this);
|
||||
cast_feed_model->setFont(font());
|
||||
cast_feed_model->setPalette(palette());
|
||||
cast_feed_view->setModel(cast_feed_model);
|
||||
|
Loading…
x
Reference in New Issue
Block a user