QtLingo 1
QtLingo is an Application to make Qt Computer Translations easier
MyDatatables Class Reference

My Datatables. More...

#include <MyDatatables.h>

Inheritance diagram for MyDatatables:

Public Member Functions

 MyDatatables (MyLanguageModel *thisLanguageModel=nullptr, MyConstants *thisConstant=nullptr, QObject *parent=nullptr)
 My Datatables Constructor. MyDatatables. More...
 
 ~MyDatatables ()
 My Datatables Deconstructor. MyDatatables. More...
 
bool checkDatabase ()
 check Database More...
 
bool insertQtProjects ()
 insert Qt Project More...
 
bool addQtProject ()
 add Qt Project More...
 
void deleteQtProject (const QString &thisID)
 delete Qt Project More...
 
void saveQtProject ()
 save Qt Project More...
 
void setProject (const QString &thisQtProjectName, const QString &thisQtProject, const QString &thisSecret, const QString &thisEnvironment, const QString &thisHelpFolder, const QString &thisSourceLanguage, const QString &thisLanguageIDs, const QString &thisMake)
 set Project Sets all Variables used in the Configuarion Database in one Place: QtProjectFolder, SourceFolder, DoxyfileFolder, HelpFolder, SourceLanguage, LanguageIDs, Make. setProject More...
 
QString getQtProjectNameSelectQueryID (const QString &thisWhereID)
 get Qt Projects Name Select Query ID More...
 
QString getQtProjectNameSelectQuery ()
 get Qt Projects Name Select Query More...
 
QString getQtProjectFullSelectQueryID (const QString &thisWhereID)
 get Qt Projects Full Select Query ID More...
 
QString getQtProjectNameByNameQuery (const QString &thisProject)
 get Qt Projects Name By Name Query More...
 
bool isQtProjectNameQuery (const QString &thisProjectName)
 is Qt Project Name Query More...
 
void setProjectName (const QString &thisProjectName)
 set Project Name More...
 
QString getProjectName ()
 get Project Name More...
 
void setProjectID (const QString &thisProjectID)
 set Project ID More...
 
QString getProjectID ()
 get Project ID More...
 
void setProjectFolder (const QString &thisProjectFolder)
 set Project Folder More...
 
QString getProjectFolder ()
 get Project Folder More...
 
void setComboBoxSqlValue (const QString &thisComboBoxSqlValue)
 set ComboBox SqlValue More...
 
QString getComboBoxSqlValue ()
 get ComboBox SqlValue More...
 
void setDebugMessage (bool thisState)
 set Debug Message More...
 
bool getDebugMessage ()
 get Debug Message More...
 
void setMessage (const QString &thisMessage)
 set Message More...
 

Public Attributes

MyProjectClassmyProject
 myProject More...
 
MySqlDbtModelmySqlModel
 mySqlModel More...
 
MyLanguageModelmyLanguageModel
 myLanguageModel More...
 
MyConstantsmyConstants
 myConstants More...
 

Detailed Description

My Datatables.

Author
Jeffrey Scott Flesher

Definition at line 49 of file MyDatatables.h.

Constructor & Destructor Documentation

◆ MyDatatables()

MyDatatables::MyDatatables ( MyLanguageModel thisLanguageModel = nullptr,
MyConstants thisConstant = nullptr,
QObject *  parent = nullptr 
)
explicit

My Datatables Constructor. MyDatatables.

Definition at line 7 of file MyDatatables.cpp.

7 : QObject(parent), myLanguageModel(thisLanguageModel), myConstants(thisConstant)
8{
9 mySqlModel = new MySqlDbtModel(thisLanguageModel, thisConstant, this);
10 // Create Variable Trackers and Set to Empty
11 myProject = new MyProjectClass("", "", "", "", "", "", "", "", "");
12}
MyProjectClass * myProject
myProject
Definition: MyDatatables.h:56
MySqlDbtModel * mySqlModel
mySqlModel
Definition: MyDatatables.h:57
MyConstants * myConstants
myConstants
Definition: MyDatatables.h:59
MyLanguageModel * myLanguageModel
myLanguageModel
Definition: MyDatatables.h:58
Project Class.
Definition: MyDatatables.h:15
SQL Database Table Model.
Definition: MySqlDbtModel.h:21

◆ ~MyDatatables()

MyDatatables::~MyDatatables ( )

My Datatables Deconstructor. MyDatatables.

Definition at line 17 of file MyDatatables.cpp.

18{
19
20}

Member Function Documentation

◆ addQtProject()

bool MyDatatables::addQtProject ( )

add Qt Project

addQtProject Assumes you have ran setProject: QtProjectName, QtProjectFolder, SourceFolder, DoxyfileFolder, HelpFolder, LanguageIDs. addQtProject

Definition at line 182 of file MyDatatables.cpp.

183{
184 setMessage("addQtProject");
185 #ifdef USE_SQL_FLAG
186 // SELECT id, QtProjectName FROM Projects WHERE QtProject =
188 {
189 myLanguageModel->mySetting->showMessageBox(QObject::tr("Record found!").toLocal8Bit(), QString("%1: %2").arg(tr("Not adding: Record found in database"), myProject->getQtProjectName()).toLocal8Bit(), myLanguageModel->mySetting->Warning);
190 return false;
191 }
192 return insertQtProjects();
193 #else
194 return true;
195 #endif
196}
bool insertQtProjects()
insert Qt Project
void setMessage(const QString &thisMessage)
set Message
bool isQtProjectNameQuery(const QString &thisProjectName)
is Qt Project Name Query
MyOrgSettings * mySetting
mySetting
@ Warning
Warning
Definition: MyOrgSettings.h:74
QVariant showMessageBox(const QString &thisTitle, const QString &thisMessage, MyMessageTypes thisMessageType) const
show Message Box information, question, warning, critica
QString getQtProjectName() const
Project Name of .pro file.
Definition: MyDatatables.h:21

◆ checkDatabase()

bool MyDatatables::checkDatabase ( )

check Database

check Database. checkDatabase

Definition at line 115 of file MyDatatables.cpp.

116{
117 setMessage("checkDatabase");
118 #ifdef USE_SQL_FLAG
119 // Database
120 mySqlModel->setSqlDriver(myComboBoxSqlValue);
121 if (!mySqlModel->createDataBaseConnection()) { return false; }
122 //
123 // Configuration
124 //
125 if (!mySqlModel->isDbTable("Projects"))
126 {
127 /*
128 * Table Projects holds the name of the Qt Project
129 * id integer PRIMARY KEY autoincrement,
130 * id, QtProjectName, QtProjectFolder, SourceFolder, DoxyfileFolder, HelpFolder, SourceLanguage, LanguageIDs, Make
131 */
132 if (mySqlModel->runQuery(QLatin1String(R"(CREATE TABLE Projects(id integer PRIMARY KEY autoincrement, QtProjectName, QtProjectFolder, SourceFolder, DoxyfileFolder, HelpFolder, SourceLanguage, LanguageIDs, Make))")))
133 {
134 QString theQtProjectName = myConstants->MY_QT_PROJECT_NAME;
135 QString theQtProjectFolder = myConstants->MY_QT_PROJECT_FOLDER;
136 QString theSource = myConstants->MY_SOURCE_FOLDER;
137 QString theDoxyfile = myConstants->MY_DOXYFILE_FOLDER;
138 QString theHelpFolder = myConstants->MY_HELP_FOLDER;
139 QString theSourceLanguage = myConstants->MY_SOURCE_LANGUAGE;
140 QString theMake = myConstants->MY_MAKE;
141 QString theLanguageIDs = myConstants->MY_LANGUAGE_IDs;
142 setProject(theQtProjectName, theQtProjectFolder, theSource, theDoxyfile, theHelpFolder, theSourceLanguage, theLanguageIDs, theMake);
143 if (insertQtProjects())
144 {
145 myProjectID = mySqlModel->getRecordID();
147 }
148 else
149 {
150 qCritical() << mySqlModel->getSqlDriver() << " INSERT TABLE Projects error:";
151 }
152 }
153 //
154 } // end if (!isDbTable("Projects"))
155 //
156 #endif
157 return true;
158}
const QString MY_SOURCE_FOLDER
MY_SOURCE_FOLDER
Definition: MyConstants.h:42
const QString MY_MAKE
MY_MAKE
Definition: MyConstants.h:46
const QString MY_HELP_FOLDER
MY_HELP_FOLDER
Definition: MyConstants.h:44
const QString MY_QT_PROJECT_NAME
MY_QT_PROJECT_NAME
Definition: MyConstants.h:40
const QString MY_QT_PROJECT_FOLDER
MY_QT_PROJECT_FOLDER
Definition: MyConstants.h:41
const QString MY_SOURCE_LANGUAGE
MY_SOURCE_LANGUAGE
Definition: MyConstants.h:45
const QString MY_LANGUAGE_IDs
MY_LANGUAGES_ID
Definition: MyConstants.h:48
const QString MY_DOXYFILE_FOLDER
MY_DOXYFILE_FOLDER
Definition: MyConstants.h:43
const QString MY_SQL_PROJECT_ID
SQL_PROJECT_ID
Definition: MyConstants.h:19
void setProject(const QString &thisQtProjectName, const QString &thisQtProject, const QString &thisSecret, const QString &thisEnvironment, const QString &thisHelpFolder, const QString &thisSourceLanguage, const QString &thisLanguageIDs, const QString &thisMake)
set Project Sets all Variables used in the Configuarion Database in one Place: QtProjectFolder,...
void writeSettings(const QString &thisSetting, const QString &thisValue)
write Settings
bool createDataBaseConnection()
create DataBase Connection
bool isDbTable(const QString &thisTable)
isDbTable
bool runQuery(const QString &thisQuery)
runQuery
QString getRecordID()
get RecordID
void setSqlDriver(const QString &thisDriver)
setSqlDriver
QString getSqlDriver()
getSqlDriver

◆ deleteQtProject()

void MyDatatables::deleteQtProject ( const QString &  thisID)

delete Qt Project

delete Project. deleteProject

Definition at line 201 of file MyDatatables.cpp.

202{
203 setMessage("deleteQtProject");
204 #ifdef USE_SQL_FLAG
205 QSqlQuery query;
206 QString theQuery = QString("DELETE FROM Projects WHERE id = ").append(thisID);
207 setMessage("thisQuery: " + theQuery);
208 if (!query.exec(theQuery))
209 {
210 qCritical() << "SqLite error:" << query.lastError().text() << ", SqLite error code:" << query.lastError();
211 }
212 #endif
213}

◆ getComboBoxSqlValue()

QString MyDatatables::getComboBoxSqlValue ( )

get ComboBox SqlValue

get ComboBox Sql Value. getComboBoxSqlValue

Definition at line 106 of file MyDatatables.cpp.

107{
108 setMessage("getComboBoxSqlValue");
109 return myComboBoxSqlValue;
110}

◆ getDebugMessage()

bool MyDatatables::getDebugMessage ( )

get Debug Message

get Debug Message. getDebugMessage

Definition at line 34 of file MyDatatables.cpp.

35{
36 setMessage("getDebugMessage");
37 return isDebugMessage;
38}

◆ getProjectFolder()

QString MyDatatables::getProjectFolder ( )

get Project Folder

get Project Folder. getProjectFolder

Definition at line 52 of file MyDatatables.cpp.

53{
54 setMessage("getProjectFolder");
55 return myProjectFolder;
56}

◆ getProjectID()

QString MyDatatables::getProjectID ( )

get Project ID

get Project ID. getProjectID

Definition at line 88 of file MyDatatables.cpp.

89{
90 setMessage("getProjectID");
91 return myProjectID;
92}

◆ getProjectName()

QString MyDatatables::getProjectName ( )

get Project Name

get Project Name. getProjectName

Definition at line 70 of file MyDatatables.cpp.

71{
72 setMessage("getProjectName");
73 return myProjectName;
74}

◆ getQtProjectFullSelectQueryID()

QString MyDatatables::getQtProjectFullSelectQueryID ( const QString &  thisWhereID)

get Qt Projects Full Select Query ID

get Qt Project Full Select Query ID SELECT * FROM Projects WHERE id =. getQtProjectFullSelectQueryID

Definition at line 258 of file MyDatatables.cpp.

259{
260 setMessage("getProjectFolderFullSelectQueryID");
261 return QString("SELECT * FROM Projects WHERE id = ").append(thisWhereID);
262}

◆ getQtProjectNameByNameQuery()

QString MyDatatables::getQtProjectNameByNameQuery ( const QString &  thisProject)

get Qt Projects Name By Name Query

get Qt Project Name By Name Query SELECT id, QtProjectName FROM Projects WHERE QtProjectFolder =. getQtProjectNameByNameQuery

Definition at line 227 of file MyDatatables.cpp.

228{
229 setMessage("getQtProjectNameByNameQuery");
230 return QString("SELECT id, QtProjectName FROM Projects WHERE QtProjectName = '%1'").arg(thisProject);
231}

◆ getQtProjectNameSelectQuery()

QString MyDatatables::getQtProjectNameSelectQuery ( )

get Qt Projects Name Select Query

get Qt Project Name Select Query SELECT id, QtProjectName FROM Projects. getQtProjectNameSelectQuery

Definition at line 218 of file MyDatatables.cpp.

219{
220 setMessage("getQtProjectNameSelectQuery");
221 return QString("SELECT id, QtProjectName FROM Projects");
222}

◆ getQtProjectNameSelectQueryID()

QString MyDatatables::getQtProjectNameSelectQueryID ( const QString &  thisWhereID)

get Qt Projects Name Select Query ID

get Qt Project Name Select Query ID SELECT id, QtProjectName FROM Projects WHERE id. getQtProjectNameSelectQueryID

Definition at line 267 of file MyDatatables.cpp.

268{
269 setMessage("getQtProjectNameSelectQueryID");
270 return QString("SELECT id, QtProjectName FROM Projects WHERE id = ").append(thisWhereID);
271}

◆ insertQtProjects()

bool MyDatatables::insertQtProjects ( )

insert Qt Project

insert Qt Projects into SQL Database. insertQtProjects

Definition at line 163 of file MyDatatables.cpp.

164{
165 setMessage("insertProjects");
166 // QtProjectName, QtProjectFolder, SourceFolder, DoxyfileFolder, HelpFolder, LanguageIDs, Make
167 QString theQuery = QLatin1String(R"(INSERT INTO Projects (QtProjectName, QtProjectFolder, SourceFolder, DoxyfileFolder, HelpFolder, SourceLanguage, LanguageIDs, Make) values('%1', '%2', '%3', '%4', '%5', '%6', '%7', '%8'))").arg(myProject->getQtProjectName(), myProject->getQtProjectFolder(), myProject->getSourceFolder(), myProject->getDoxyfileFolder(), myProject->getHelpFolder(), myProject->getSourceLanguage(), myProject->getLanguageIDs(), myProject->getMake());
168 setMessage("insertProjects: " + theQuery);
169 //
170 if (!mySqlModel->runQuery(theQuery))
171 {
172 qCritical() << "INSERT Projects error: " << theQuery;
173 return false;
174 }
176 return true;
177}
void setProjectID(const QString &thisProjectID)
set Project ID
QString getSourceLanguage() const
ComboBox of Languages.
Definition: MyDatatables.h:26
QString getHelpFolder() const
Help Folder.
Definition: MyDatatables.h:25
QString getMake() const
qmake or cmake
Definition: MyDatatables.h:28
QString getLanguageIDs() const
Sum of Checkboxes.
Definition: MyDatatables.h:27
QString getQtProjectFolder() const
Base Project Folder.
Definition: MyDatatables.h:22
QString getSourceFolder() const
Source Folder.
Definition: MyDatatables.h:23
QString getDoxyfileFolder() const
Doxyfile Folder.
Definition: MyDatatables.h:24

◆ isQtProjectNameQuery()

bool MyDatatables::isQtProjectNameQuery ( const QString &  thisProjectName)

is Qt Project Name Query

is Project Folder Query myAccessSqlDbtModel->isProjectQuery(ui->lineEditSettingsProjectBin->text());. isProjectFolderQuery

Definition at line 236 of file MyDatatables.cpp.

237{
238 setMessage("isQtProjectNameQuery");
239 #ifdef USE_SQL_FLAG
240 QSqlQuery theQuery;
241 QString theQueryCommand = getQtProjectNameByNameQuery(thisProjectName);
242 if (theQuery.exec(theQueryCommand))
243 {
244 if (theQuery.first()) { return true; }
245 else { return false; }
246 }
247 else
248 {
249 qCritical() << "SqLite error isProjectQuery:" << theQuery.lastError().text() << ", SqLite error code:" << theQuery.lastError();
250 }
251 #endif
252 return false;
253}
QString getQtProjectNameByNameQuery(const QString &thisProject)
get Qt Projects Name By Name Query

◆ saveQtProject()

void MyDatatables::saveQtProject ( )

save Qt Project

save Project Projects: id, QtProjectName QtProjectFolder, SourceFolder, DoxyfileFolder, HelpFolder, SourceLanguage, LanguageIDs, Make saveProject

Definition at line 276 of file MyDatatables.cpp.

277{
278 setMessage("saveProject");
279 #ifdef USE_SQL_FLAG
280 QSqlQuery theQuery;
281 QString theQueryString = QString("UPDATE Projects set QtProjectName = '%1', QtProjectFolder = '%2', SourceFolder = '%3', DoxyfileFolder = '%4', HelpFolder = '%5', SourceLanguage = '%6', LanguageIDs = '%7', Make = '%8' WHERE id = %9").arg(myProject->getQtProjectName(), myProject->getQtProjectFolder(), myProject->getSourceFolder(), myProject->getDoxyfileFolder(), myProject->getHelpFolder(), myProject->getSourceLanguage(), myProject->getLanguageIDs(), myProject->getMake(), myProject->getID());
282 setMessage("thisQuery: |" + theQueryString + "| getQtProjectName = " + myProject->getQtProjectName() + "| getQtProjectFolder = " + myProject->getQtProjectFolder() + "| getSourceFolder=" + myProject->getSourceFolder() + "| getDoxyfileFolder=" + myProject->getDoxyfileFolder() + "| getHelpFolder=" + myProject->getHelpFolder() + "| getSourceLanguage=" + myProject->getSourceLanguage() + "| getLanguageIDs=" + myProject->getLanguageIDs() + "| getMake=" + myProject->getMake() + "| ID=" + myProject->getID() + "|");
283 if (!theQuery.exec(theQueryString))
284 {
285 qCritical() << "SqLite error saveProject:" << theQuery.lastError().text() << ", SqLite error code:" << theQuery.lastError();
286 }
287 isSaveSettings = false;
288 #endif
289}
QString getID() const
ID.
Definition: MyDatatables.h:20

◆ setComboBoxSqlValue()

void MyDatatables::setComboBoxSqlValue ( const QString &  thisComboBoxSqlValue)

set ComboBox SqlValue

set ComboBox Sql Value. setComboBoxSqlValue

Definition at line 97 of file MyDatatables.cpp.

98{
99 setMessage("setComboBoxSqlValue");
100 myComboBoxSqlValue = thisComboBoxSqlValue;
101}

◆ setDebugMessage()

void MyDatatables::setDebugMessage ( bool  thisState)

set Debug Message

set Debug Message. setDebugMessage

Definition at line 25 of file MyDatatables.cpp.

26{
27 isDebugMessage = thisState;
28 setMessage("setDebugMessage");
29}

◆ setMessage()

void MyDatatables::setMessage ( const QString &  thisMessage)

set Message

set Message. setMessage

Definition at line 311 of file MyDatatables.cpp.

312{
313 if (isDebugMessage)
314 {
315 qDebug() << thisMessage;
316 //std::cout << thisMessage.toStdString() << std::endl;
317 }
318}

◆ setProject()

void MyDatatables::setProject ( const QString &  thisQtProjectName,
const QString &  thisQtProject,
const QString &  thisSecret,
const QString &  thisEnvironment,
const QString &  thisHelpFolder,
const QString &  thisSourceLanguage,
const QString &  thisLanguageIDs,
const QString &  thisMake 
)

set Project Sets all Variables used in the Configuarion Database in one Place: QtProjectFolder, SourceFolder, DoxyfileFolder, HelpFolder, SourceLanguage, LanguageIDs, Make. setProject

Definition at line 295 of file MyDatatables.cpp.

296{
297 setMessage("setProject");
298 myProject->setQtProjectName(thisQtProjectName);
299 myProject->setQtProjectFolder(thisQtProjectFolder);
300 myProject->setSourceFolder(thisSourceFolder);
301 myProject->setDoxyfileFolder(thisDoxyfileFolder);
302 myProject->setHelpFolder(thisHelpFolder);
303 myProject->setSourceLanguage(thisSourceLanguage);
304 myProject->setLanguageIDs(thisLanguageIDs);
305 myProject->setMake(thisMake);
306}
void setSourceLanguage(const QString &s)
Definition: MyDatatables.h:36
void setQtProjectName(const QString &s)
Definition: MyDatatables.h:31
void setHelpFolder(const QString &s)
Definition: MyDatatables.h:35
void setMake(const QString &s)
Definition: MyDatatables.h:38
void setQtProjectFolder(const QString &s)
Definition: MyDatatables.h:32
void setSourceFolder(const QString &s)
Definition: MyDatatables.h:33
void setDoxyfileFolder(const QString &s)
Definition: MyDatatables.h:34
void setLanguageIDs(const QString &s)
Definition: MyDatatables.h:37

◆ setProjectFolder()

void MyDatatables::setProjectFolder ( const QString &  thisProjectFolder)

set Project Folder

set Project Folder. setProjectFolder

Definition at line 43 of file MyDatatables.cpp.

44{
45 setMessage("setProjectFolder");
46 myProjectFolder = thisProjectFolder;
47}

◆ setProjectID()

void MyDatatables::setProjectID ( const QString &  thisProjectID)

set Project ID

set Project ID. setProjectID

Definition at line 79 of file MyDatatables.cpp.

80{
81 setMessage("setProjectID");
82 myProjectID = thisProjectID;
83}

◆ setProjectName()

void MyDatatables::setProjectName ( const QString &  thisProjectName)

set Project Name

set Project Name. setProjectName

Definition at line 61 of file MyDatatables.cpp.

62{
63 setMessage("setProjectName");
64 myProjectName = thisProjectName;
65}

Member Data Documentation

◆ myConstants

MyConstants* MyDatatables::myConstants

myConstants

All Constants in one class

Definition at line 59 of file MyDatatables.h.

◆ myLanguageModel

MyLanguageModel* MyDatatables::myLanguageModel

myLanguageModel

Localization Model.

Definition at line 58 of file MyDatatables.h.

◆ myProject

MyProjectClass* MyDatatables::myProject

myProject

My Project Variables

Definition at line 56 of file MyDatatables.h.

◆ mySqlModel

MySqlDbtModel* MyDatatables::mySqlModel

mySqlModel

Pointer to DataTable

Definition at line 57 of file MyDatatables.h.


The documentation for this class was generated from the following files: