Project Documentation Manager BRIGADOON-0002
Project Documentation Manager
Loading...
Searching...
No Matches
projectsubstitute.h
Go to the documentation of this file.
1
6#ifndef PROJECTSUBSTITUTE_H
7#define PROJECTSUBSTITUTE_H
8
9#include <QObject>
10
11//#include <mainwindow.h>
12#include "logger.h"
14
20#define DEFAULT_RETURN_ADDRESS "https://www.little.id.au/projects/index.php"
21
22
63
68#define MAXIMUM_KEY_VALUE_PAIRS 60
69
74#define PROJECT_KEY_COLUMN_WIDTH 150
75
80class ProjectSubstitute : public QObject
81{
82 Q_OBJECT
83public:
84
92 explicit ProjectSubstitute(Ui::MainWindow* UI_Window, ProjectOptionsManager* ProjectOptsManager);
93
100
101public slots:
102
107 void DoClear(void);
108
109 /* \fn void LoadSubsTable(int ProjectNo)
110 * \brief Load the Substituitions from the Values in the User Interface
111 * \param ProjectNo The Project Database Index
112 *
113 * If the ProjectNo is set to zero, the values in the
114 * substitution table are cleared.
115 *
116 */
117 void LoadSubsTable(int ProjectNo);
118
124 void ReadProjectId(PROJECT_INFORMATION* ProjectInfo);
125
132
138 void UpdateDevFamily(DEVELOPMENT_FAMILY DevelopmentTypes);
139
145 void UpdateStatus(STATUS_INFO StatusInfo);
146
151 void SaveLocalSubstitutes(void);
152
158 void UpdateSoftwareLicence(QString LicenceName);
159
165 void UpdateHardwareLicence(QString LicenceName);
166
172 void UpdateDocumentationLicence(QString LicenceName);
173
179 void UpdateFullDescription(QString FullDescription);
180
186 void ReadMajorVersion(int MajorVersion);
187
193 void ReadMinorVersion(int MinorVersion);
194
200 void ReadRevision(int Revision);
201
207 void UpdateProjectName(QString Name);
208
214 void UpdateDepartureURL(QString Name);
215
221 void UpdateProjectIcon(QString Name);
222
228 void UpdateProjectBrief(QString Text);
229
235 void UpdateProjectContact(QString ContactName);
236
242 void UpdateProjectDateTime(QString ProjectDateTime);
243
249 void UpdateDoxyProjectLogo(QString DoxyProjectLogo);
250
256 void UpdateDoxyHeader(QString DoxyHeader);
257
263 void UpdateDoxyFooter(QString DoxyFooter);
264
270 void UpdateDoxyStylesheet(QString DoxyStylesheet);
271
277 void UpdateInAssocation(QString Association);
278
283 void LoadPresets(void);
284
285private:
286
291 Ui::MainWindow* ui;
292
298
304
310
316
322
327 QStringList option_name;
328
333 QStringList sys_item_name;
334
341 QTableWidgetItem* FindItemByKey(QString Key);
342
350 bool UpdateItem(QString Key, QString Value);
351
359 void LogAdd(LOGGING_SEVERITY Severity, LOGGING_MODE Mode, QString Message);
360
367 void AddKeyValue(QString Key, QString Value, int RowIndex);
368
377 int DecodeProjectOptions(uint Options, int RowIndex, bool NewProject);
378 bool SaveKeyValuePair(int ProjectId, QString Key, QString Value, bool Lock);
379 void LoadBasePresets(int RowIndex, int ProjectNo);
380 QString GetProjectEmail(int Index);
382
383private slots:
384
389 void ReloadSubstituteTable(void);
390
395 void ClearSubstituteEntry(void);
396 void SetSubstituteState(bool State);
397 void SetOptionState(uint Options);
398 void SetEditableState(QTableWidgetItem* Item);
399
400signals:
402};
403
404#endif // PROJECTSUBSTITUTE_H
bool UpdateItem(QString Key, QString Value)
Update the Value of an Entry in the Substitution List.
void ReadProjectId(PROJECT_INFORMATION *ProjectInfo)
Load the Substitution Table for th Project.
void ReadMinorVersion(int MinorVersion)
Update the Minor Version in the Substitute Table.
QTableWidgetItem * FindItemByKey(QString Key)
Find a Substitution Entry in the Substitution List by Name.
ProjectSubstitute(Ui::MainWindow *UI_Window, ProjectOptionsManager *ProjectOptsManager)
LicenceManager Construction routine.
void ReadRevision(int Revision)
Update the Revision in the Substitute Table.
void UpdateDevFamily(DEVELOPMENT_FAMILY DevelopmentTypes)
Update the Dev Families Information in the Substitute Table.
void SaveLocalSubstitutes(void)
Save the Local Substitutes to the Database.
int DecodeProjectOptions(uint Options, int RowIndex, bool NewProject)
Add Key-Value items for all Project Options.
void UpdateProjectIcon(QString Name)
void UpdateDoxyFooter(QString DoxyFooter)
Update Doxygen's Footer Filename in Substitute Table.
void LoadBasePresets(int RowIndex, int ProjectNo)
void UpdateInAssocation(QString Association)
ProjectOptionsManager * project_opts_manager
Pointer the Project Options Manager Class.
void LoadFileSubsList(PROJECT_INFORMATION *Project)
Load the Substitution table from the Project Information.
void UpdateProjectContact(QString ContactName)
void UpdateVersion(REMOTE_VERSION_ENTRY Version)
Update the Version Information in the Substitute Table.
void SetEditableState(QTableWidgetItem *Item)
void AddKeyValue(QString Key, QString Value, int RowIndex)
Add a New Key-Value pair to the Substitution List.
void SendLogEntry(REMOTE_LOG_ENTRY LogEntry)
void UpdateDoxyHeader(QString DoxyHeader)
Update Doxygen's Header Filename in Substitute Table.
void SetOptionState(uint Options)
void DoClear(void)
Clear the Substitution lists and display.
QStringList sys_item_name
List of System Names for Subtitution process.
void UpdateProjectBrief(QString Text)
Update Project Brief in Substitute Table.
void LoadUserSubstitutes(PROJECT_INFORMATION *Project)
void LoadSubsTable(int ProjectNo)
QString GetProjectEmail(int Index)
void UpdateDocumentationLicence(QString LicenceName)
Update the Documentation Licence Information in the Substitute Table.
void LoadPresets(void)
Load the Substitution Table.
void ReadMajorVersion(int MajorVersion)
Update the Major Version in the Substitute Table.
void ReloadSubstituteTable(void)
Reload the Substituition Table & Display.
bool SaveKeyValuePair(int ProjectId, QString Key, QString Value, bool Lock)
void SetSubstituteState(bool State)
void LogAdd(LOGGING_SEVERITY Severity, LOGGING_MODE Mode, QString Message)
Add a Log Entry.
Ui::MainWindow * ui
Pointer to the Main Window.
PROJECT_INFORMATION * project_info
Structure to hold Project Information.
void UpdateProjectName(QString Name)
Update Project Name in Substitute Table.
void UpdateDoxyProjectLogo(QString DoxyProjectLogo)
Update Doxygen's Project Logo Filename in Substitute Table.
void UpdateHardwareLicence(QString LicenceName)
Update the Hardware Licence Information in the Substitute Table.
QString leadin_string
Lead in Characters for substitution blocks.
QStringList option_name
List of Option Names for Subtitution process.
void UpdateDepartureURL(QString Name)
Update Exit URL in Substitute Table.
void UpdateSoftwareLicence(QString LicenceName)
Update the Software Licence Information in the Substitute Table.
void UpdateProjectDateTime(QString ProjectDateTime)
Update Project's DateTime in Substitute Table.
void UpdateStatus(STATUS_INFO StatusInfo)
Update the Deve Families Information in the Substitute Table.
QColor system_colour
table Background Colour
QString leadout_string
Lead out Characters for substitution blocks.
void UpdateFullDescription(QString FullDescription)
Update the Full Description in the Substitute Table.
void UpdateDoxyStylesheet(QString DoxyStylesheet)
Update Doxygen's Stylesheet Filename in Substitute Table.
void ClearSubstituteEntry(void)
Clear the Select Substitution Row & data.
LOGGING_SEVERITY
Log Severity allow the selection of logging events based on Severity.
Definition logger.h:48
LOGGING_MODE
Log Severity allow the selection of logging events based on the mode.
Definition logger.h:21
Class Controlling the Database Creation.
PROJECT_ITEM
A sequential list of Project Parameters.
@ SOURCE_LIST
@ PROJECT_EMAIL
@ DOCUMENT_LICENCE
@ PRIMARY_TOOL
@ MAJOR_VERSION
@ PROJECT_IDENT
@ LANGUAGE_FAMILY
@ SOFTWARE_LICENCE
@ ASSOCIATED_GROUP
@ EXECUTABLE_DIR
@ PROJECT_CONTACT
@ MINOR_VERSION
@ DEV_FAMILY
@ PROJECT_STATUS
@ PROJECT_HISTORY
@ PROJECT_DIRECTORY
@ SITE_URL
@ REVISION
@ PROJECT_ITEM_END
@ DOXY_LOGO
@ DOXY_HTML_FOOTER
@ BRIEF_DESCRIPTION
@ DOXY_HTML_HEADER
@ SYSTEM_FAMILY
@ PROJECT_NAME
@ HARDWARE_LICENCE
@ STATUS_DATE
@ PROJECT_ICON
@ DOXY_EXTRA_STYLESHEET
@ DEPARTURE_URL
@ FULL_DESCRIPTION
Summary of Project Types.
Project Information Passed Between Functions.
Definition logger.h:60
Version Structure used between functions.
Information about the Development Status.