2021-02-02 Fred Gleason <fredg@paravelsystems.com>

* Added 'RDSchedCodeListModel'.
	* Refactored the 'Rivendell Scheduler Codes List' dialog in
	rdadmin(1) to use the model-based API.

Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
Fred Gleason
2021-02-02 19:57:51 -05:00
parent 6512148633
commit b2f5bf72a5
18 changed files with 592 additions and 233 deletions

View File

@@ -2,7 +2,7 @@
//
// The scheduler codes dialog for rdadmin
//
// Stefan Gabriel <stg@st-gabriel.de>
// Based on original code by Stefan Gabriel <stg@st-gabriel.de>
// (C) Copyright 2002-2019 Fred Gleason <fredg@paravelsystems.com>
//
// This program is free software; you can redistribute it and/or modify
@@ -22,12 +22,16 @@
#ifndef LIST_SCHEDCODES_H
#define LIST_SCHEDCODES_H
#include <qpixmap.h>
#include <qpushbutton.h>
#include <QLabel>
#include <QPushButton>
#include <rddb.h>
#include <rddialog.h>
#include <rdlistviewitem.h>
#include <rdschedcodelistmodel.h>
#include <rdtableview.h>
#include "add_schedcodes.h"
#include "edit_schedcodes.h"
class ListSchedCodes : public RDDialog
{
@@ -42,21 +46,22 @@ class ListSchedCodes : public RDDialog
void addData();
void editData();
void deleteData();
void doubleClickedData(Q3ListViewItem *item,const QPoint &pt,int col);
void doubleClickedData(const QModelIndex &index);
void closeData();
protected:
void resizeEvent(QResizeEvent *e);
private:
void RefreshList();
void RefreshItem(Q3ListViewItem *item);
void WriteItem(Q3ListViewItem *item,RDSqlQuery *q);
Q3ListView *list_schedCodes_view;
RDTableView *list_schedcodes_view;
QLabel *list_schedcodes_label;
RDSchedCodeListModel *list_schedcodes_model;
QPushButton *list_add_button;
QPushButton *list_edit_button;
QPushButton *list_delete_button;
QPushButton *list_close_button;
AddSchedCode *list_add_schedcode_dialog;
EditSchedCode *list_edit_schedcode_dialog;
};