Update test app for new grid picker classes.

This commit is contained in:
SET
2019-12-22 16:34:39 +01:00
parent 84973829aa
commit 1ec23950c0
10 changed files with 203 additions and 80 deletions

5
L7Test/.dep.inc Normal file
View File

@@ -0,0 +1,5 @@
# This code depends on make tool being used
DEPFILES=$(wildcard $(addsuffix .d, ${OBJECTFILES} ${TESTOBJECTFILES}))
ifneq (${DEPFILES},)
include ${DEPFILES}
endif

View File

@@ -16,6 +16,7 @@
#include <LItemData.h> #include <LItemData.h>
#include <wx/stdpaths.h> #include <wx/stdpaths.h>
#include <wx/filename.h> #include <wx/filename.h>
IMPLEMENT_APP(L7Test) IMPLEMENT_APP(L7Test)
L7Test::L7Test() L7Test::L7Test()
@@ -26,14 +27,17 @@ L7Test::~L7Test()
{ {
} }
bool L7Test::OnInit() { bool L7Test::OnInit()
{
L7Frame * main = new L7Frame(NULL, wxID_ANY, _T("L7 Test")); L7Frame * main = new L7Frame(NULL, wxID_ANY, _T("L7 Test"));
SetAppName(_T("L7Test")); SetAppName(_T("L7Test"));
SetTopWindow(main); SetTopWindow(main);
main->Show(); main->Show();
return true; return true;
} }
int L7Test::OnExit() {
int L7Test::OnExit()
{
return wxApp::OnExit(); return wxApp::OnExit();
} }
@@ -114,9 +118,24 @@ L7Frame::L7Frame(wxWindow* parent, wxWindowID id, const wxString& title)
flxszTbl1->Add(lbl, 0, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, 0); flxszTbl1->Add(lbl, 0, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, 0);
Spin1 = new LBoundSpinCtrl(panTbl1, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS | wxALIGN_RIGHT, -10, 25, 3); Spin1 = new LBoundSpinCtrl(panTbl1, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS | wxALIGN_RIGHT, -10, 25, 3);
flxszTbl1->Add(Spin1, 0, wxALIGN_CENTER_VERTICAL, 0); flxszTbl1->Add(Spin1, 0, wxALIGN_CENTER_VERTICAL, 0);
lbl = new wxStaticText(panTbl1, wxID_ANY, _T("json1"));
flxszTbl1->Add(lbl, 0, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, 0);
wxArrayString types;
types.Add(_("Work"));
types.Add(_("Home"));
types.Add(_("Other"));
Json1 = new LBoundJsonGridPicker(panTbl1, wxID_ANY, types);
flxszTbl1->Add(Json1, 0, wxEXPAND | wxALIGN_CENTER_VERTICAL, 0);
lbl = new wxStaticText(panTbl1, wxID_ANY, _T("xml1"));
flxszTbl1->Add(lbl, 0, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, 0);
Xml1 = new LBoundXmlGridPicker(panTbl1, wxID_ANY, types);
flxszTbl1->Add(Xml1, 0, wxEXPAND | wxALIGN_CENTER_VERTICAL, 0);
navTbl1 = new LNavigator(panTbl1, wxID_ANY); navTbl1 = new LNavigator(panTbl1, wxID_ANY);
szTbl1->Add(navTbl1, 0, wxEXPAND, 0); szTbl1->Add(navTbl1, 0, wxEXPAND, 0);
Json1->SetIntentLabel(_("Email"));
Xml1->SetIntentLabel(_("Phone"));
grid = new LBoundGrid(this, wxID_ANY); grid = new LBoundGrid(this, wxID_ANY);
szMain->Add(grid, 1, wxEXPAND, 0); szMain->Add(grid, 1, wxEXPAND, 0);
grid->SetGridFormEventHandler(new GridEVH(this)); grid->SetGridFormEventHandler(new GridEVH(this));
@@ -124,9 +143,11 @@ L7Frame::L7Frame(wxWindow* parent, wxWindowID id, const wxString& title)
txtMessages = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE); txtMessages = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE);
//szMain->Add(txtMessages, 1, wxEXPAND|wxALIGN_BOTTOM, 0); //szMain->Add(txtMessages, 1, wxEXPAND|wxALIGN_BOTTOM, 0);
szMain->Add(txtMessages, 1, wxEXPAND, 0); szMain->Add(txtMessages, 1, wxEXPAND, 0);
SetSize(800, 600); SetSize(1200, 800);
} }
L7Frame::~L7Frame() {
L7Frame::~L7Frame()
{
delete m_txtConnInfo; delete m_txtConnInfo;
delete txtMessages; delete txtMessages;
delete rdBE; delete rdBE;
@@ -138,6 +159,8 @@ L7Frame::~L7Frame() {
delete Combo1x; delete Combo1x;
delete Date1; delete Date1;
delete Spin1; delete Spin1;
delete Json1;
delete Xml1;
delete navTbl1; // Has deleted and unregistered it's own event handler. delete navTbl1; // Has deleted and unregistered it's own event handler.
if (m_rsTbl1) { if (m_rsTbl1) {
for (unsigned int i = 0; i < m_rsTbl1->GetEventHandlers().Count(); i++) { for (unsigned int i = 0; i < m_rsTbl1->GetEventHandlers().Count(); i++) {
@@ -161,19 +184,25 @@ L7Frame::~L7Frame() {
delete grid->GetGridFormEventHandler(); delete grid->GetGridFormEventHandler();
} }
void L7Frame::AppendMsg(const wxString& msg) { void L7Frame::AppendMsg(const wxString& msg)
{
static int n = 0; static int n = 0;
txtMessages->AppendText(wxAny(n).As<wxString>() + _T(". ") + msg + _T("\n")); txtMessages->AppendText(wxAny(n).As<wxString>() + _T(". ") + msg + _T("\n"));
n++; n++;
} }
void L7Frame::MsgBox(const wxString& msg) {
void L7Frame::MsgBox(const wxString& msg)
{
wxMessageBox(msg, wxApp::GetInstance()->GetAppName(), wxOK | wxCENTRE, this); wxMessageBox(msg, wxApp::GetInstance()->GetAppName(), wxOK | wxCENTRE, this);
} }
void L7Frame::OnRadioConnClick(wxCommandEvent& evt) {
void L7Frame::OnRadioConnClick(wxCommandEvent& evt)
{
wxString connInfo; wxString connInfo;
if (evt.GetInt() == 1) { if (evt.GetInt() == 1) {
connInfo = _T("host=localhost port=5424 dbname=l7 user=l7 password=L7"); connInfo = _T("host=localhost port=5424 dbname=l7 user=l7 password=L7");
} else if (evt.GetInt() == 2) { }
else if (evt.GetInt() == 2) {
connInfo = wxStandardPaths::Get().GetUserDataDir() connInfo = wxStandardPaths::Get().GetUserDataDir()
+ wxFileName::GetPathSeparator() + wxFileName::GetPathSeparator()
+ _T("L7.db"); + _T("L7.db");
@@ -181,7 +210,9 @@ void L7Frame::OnRadioConnClick(wxCommandEvent& evt) {
m_txtConnInfo->SetValue(connInfo); m_txtConnInfo->SetValue(connInfo);
rdBE->Enable(false); rdBE->Enable(false);
} }
void L7Frame::OnButtonConnectClick(wxCommandEvent& evt) {
void L7Frame::OnButtonConnectClick(wxCommandEvent& evt)
{
if (rdBE->GetSelection() == 0) return; if (rdBE->GetSelection() == 0) return;
if (!m_conn) { if (!m_conn) {
if (rdBE->GetSelection() == 1) { if (rdBE->GetSelection() == 1) {
@@ -192,7 +223,8 @@ void L7Frame::OnButtonConnectClick(wxCommandEvent& evt) {
m_rsTbl1 = new PQ::LPQResultSet(m_conn); m_rsTbl1 = new PQ::LPQResultSet(m_conn);
rsTbl2 = new PQ::LPQResultSet(m_conn); rsTbl2 = new PQ::LPQResultSet(m_conn);
} }
} else if (rdBE->GetSelection() == 2) { }
else if (rdBE->GetSelection() == 2) {
m_conn = new SQ::LSQConnection(m_txtConnInfo->GetValue()); m_conn = new SQ::LSQConnection(m_txtConnInfo->GetValue());
ConnectionEVH * connEVH = new ConnectionEVH(this); ConnectionEVH * connEVH = new ConnectionEVH(this);
m_conn->RegisterEventHandler(connEVH); m_conn->RegisterEventHandler(connEVH);
@@ -204,14 +236,26 @@ void L7Frame::OnButtonConnectClick(wxCommandEvent& evt) {
} }
} }
if (m_conn->IsValid()) { if (m_conn->IsValid()) {
Pk1->SetColumnName(_T("pk1")); Pk1->SetResultSet(m_rsTbl1); Pk1->SetColumnName(_T("pk1"));
Text1->SetColumnName(_T("text1")); Text1->SetResultSet(m_rsTbl1); Pk1->SetResultSet(m_rsTbl1);
Check1d->SetColumnName(_T("check1d")); Check1d->SetResultSet(m_rsTbl1); Text1->SetColumnName(_T("text1"));
Check1t->SetColumnName(_T("check1t")); Check1t->SetResultSet(m_rsTbl1); Text1->SetResultSet(m_rsTbl1);
Combo1t->SetColumnName(_T("combo1t")); Combo1t->SetResultSet(m_rsTbl1); Check1d->SetColumnName(_T("check1d"));
Combo1x->SetColumnName(_T("combo1x")); Combo1x->SetResultSet(m_rsTbl1); Check1d->SetResultSet(m_rsTbl1);
Date1->SetColumnName(_T("date1")); Date1->SetResultSet(m_rsTbl1); Check1t->SetColumnName(_T("check1t"));
Spin1->SetColumnName(_T("spin1")); Spin1->SetResultSet(m_rsTbl1); Check1t->SetResultSet(m_rsTbl1);
Combo1t->SetColumnName(_T("combo1t"));
Combo1t->SetResultSet(m_rsTbl1);
Combo1x->SetColumnName(_T("combo1x"));
Combo1x->SetResultSet(m_rsTbl1);
Date1->SetColumnName(_T("date1"));
Date1->SetResultSet(m_rsTbl1);
Spin1->SetColumnName(_T("spin1"));
Spin1->SetResultSet(m_rsTbl1);
Json1->SetColumnName(_T("json1"));
Json1->SetResultSet(m_rsTbl1);
Xml1->SetColumnName(_T("xml1"));
Xml1->SetResultSet(m_rsTbl1);
Pk1->SetSQLQuote(wxEmptyString); Pk1->SetSQLQuote(wxEmptyString);
FillComboBox(Combo1t, _T("SELECT id_list1, item FROM list1 ORDER BY id_list1")); FillComboBox(Combo1t, _T("SELECT id_list1, item FROM list1 ORDER BY id_list1"));
FillComboBox(Combo1x, _T("SELECT item FROM list1 ORDER BY id_list1")); FillComboBox(Combo1x, _T("SELECT item FROM list1 ORDER BY id_list1"));
@@ -238,19 +282,24 @@ void L7Frame::OnButtonConnectClick(wxCommandEvent& evt) {
wxDELETE(m_conn); wxDELETE(m_conn);
} }
} }
void L7Frame::OnButtonNewFrameClick(wxCommandEvent& evt) {
void L7Frame::OnButtonNewFrameClick(wxCommandEvent& evt)
{
L7Frame * newFrame = new L7Frame(NULL, wxID_ANY, GetTitle()); L7Frame * newFrame = new L7Frame(NULL, wxID_ANY, GetTitle());
newFrame->Show(); newFrame->Show();
} }
void L7Frame::FillComboBox(LBoundComboBox* cmb, const wxString& sql) { void L7Frame::FillComboBox(LBoundComboBox* cmb, const wxString& sql)
{
if (!m_conn || !cmb) return; if (!m_conn || !cmb) return;
LLightResultSet * rs; LLightResultSet * rs;
if (rdBE->GetSelection() == 1) { if (rdBE->GetSelection() == 1) {
rs = new PQ::LLightPQResultSet(m_conn); rs = new PQ::LLightPQResultSet(m_conn);
} else if (rdBE->GetSelection() == 2) { }
else if (rdBE->GetSelection() == 2) {
rs = new SQ::LLightSQResultSet(m_conn); rs = new SQ::LLightSQResultSet(m_conn);
} else { }
else {
return; return;
} }
rs->SetSQL(sql); rs->SetSQL(sql);
@@ -262,13 +311,16 @@ void L7Frame::FillComboBox(LBoundComboBox* cmb, const wxString& sql) {
const wxString idCol = rs->GetColumnName(0); const wxString idCol = rs->GetColumnName(0);
do { do {
cmb->Append(rs->GetData(dispCol).As<wxString>(), new LItemData(rs->GetData(idCol))); cmb->Append(rs->GetData(dispCol).As<wxString>(), new LItemData(rs->GetData(idCol)));
} while (rs->Next()); }
} else { while (rs->Next());
}
else {
cmb->Append(wxEmptyString); cmb->Append(wxEmptyString);
const wxString dispCol = rs->GetColumnName(0); const wxString dispCol = rs->GetColumnName(0);
do { do {
cmb->Append(rs->GetData(dispCol).As<wxString>()); cmb->Append(rs->GetData(dispCol).As<wxString>());
} while (rs->Next()); }
while (rs->Next());
} }
delete rs; delete rs;
} }
@@ -277,7 +329,7 @@ void L7Frame::FillComboBox(LBoundComboBox* cmb, const wxString& sql) {
void L7Frame::FilterGrid() void L7Frame::FilterGrid()
{ {
wxString sql = _T("SELECT rand1, PK2, PK1, text2, check2d, check2t, list1.item AS combo2t," wxString sql = _T("SELECT rand1, PK2, PK1, text2, check2d, check2t, list1.item AS combo2t,"
" combo2x, date2, spin2 FROM tbl2" " combo2x, date2, spin2, json2, xml2 FROM tbl2"
" LEFT JOIN list1 ON tbl2.combo2t = list1.id_list1" " LEFT JOIN list1 ON tbl2.combo2t = list1.id_list1"
" WHERE tbl2.pk1"); " WHERE tbl2.pk1");
sql += Pk1->GetValue().IsEmpty() ? _T(" IS NULL ") : _T(" = ") + Pk1->GetValue(); sql += Pk1->GetValue().IsEmpty() ? _T(" IS NULL ") : _T(" = ") + Pk1->GetValue();
@@ -296,6 +348,12 @@ void L7Frame::FilterGrid()
grid->CreateComboBoxColumn(_T("combo2x"), _T("Combo txt"), 80); grid->CreateComboBoxColumn(_T("combo2x"), _T("Combo txt"), 80);
grid->CreateDateColumn(_T("date2"), _T("Date"), 80); grid->CreateDateColumn(_T("date2"), _T("Date"), 80);
grid->CreateSpinColumn(_T("spin2"), _T("Spin"), 60, -20, 20, 5); grid->CreateSpinColumn(_T("spin2"), _T("Spin"), 60, -20, 20, 5);
wxArrayString types;
types.Add(_("Work"));
types.Add(_("Home"));
types.Add(_("Any"));
grid->CreateJsonGridColumn(_T("json2"), _T("Json 2"), 80, _("Email"), types, wxSize(450, -1));
grid->CreateXmlGridColumn(_T("xml2"), _T("XML 2"), 80, _("Phone"), types, wxSize(450, -1));
grid->CreateTextColumn(_T("rand1"), _T("Random"), 80, false, true); grid->CreateTextColumn(_T("rand1"), _T("Random"), 80, false, true);
LBoundComboBox * Combo2t = static_cast<LBoundComboBox*> (grid->GetBoundControl(grid->GetGridCursorRow(), _T("combo2t"), false)); LBoundComboBox * Combo2t = static_cast<LBoundComboBox*> (grid->GetBoundControl(grid->GetGridCursorRow(), _T("combo2t"), false));
@@ -313,43 +371,64 @@ void L7Frame::FilterGrid()
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
ConnectionEVH::ConnectionEVH(L7Frame* newOwner) { ConnectionEVH::ConnectionEVH(L7Frame* newOwner)
{
owner = newOwner; owner = newOwner;
} }
ConnectionEVH::~ConnectionEVH() {
ConnectionEVH::~ConnectionEVH()
{
} }
void ConnectionEVH::Inform(const LConnection* caller, const LInformation& msg) const {
void ConnectionEVH::Inform(const LConnection* caller, const LInformation& msg) const
{
owner->MsgBox(msg.GetFullInformation()); owner->MsgBox(msg.GetFullInformation());
} }
void ConnectionEVH::BeforeExecute(const LConnection* caller) {
void ConnectionEVH::BeforeExecute(const LConnection* caller)
{
owner->AppendMsg(_T("LConnection::BeforeExecute")); owner->AppendMsg(_T("LConnection::BeforeExecute"));
} }
void ConnectionEVH::AfterExecute(const LConnection* caller) {
void ConnectionEVH::AfterExecute(const LConnection* caller)
{
owner->AppendMsg(_T("LConnection::AfterExecute")); owner->AppendMsg(_T("LConnection::AfterExecute"));
} }
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
ResultSetTbl1EVH::ResultSetTbl1EVH(L7Frame* newOwner) { ResultSetTbl1EVH::ResultSetTbl1EVH(L7Frame* newOwner)
{
owner = newOwner; owner = newOwner;
} }
ResultSetTbl1EVH::~ResultSetTbl1EVH() {
ResultSetTbl1EVH::~ResultSetTbl1EVH()
{
} }
void ResultSetTbl1EVH::Inform(const LResultSet* caller, const LInformation& msg) const {
void ResultSetTbl1EVH::Inform(const LResultSet* caller, const LInformation& msg) const
{
owner->MsgBox(msg.GetFullInformation()); owner->MsgBox(msg.GetFullInformation());
} }
void ResultSetTbl1EVH::AfterAction(LResultSet* caller, ACTIONS action) {
void ResultSetTbl1EVH::AfterAction(LResultSet* caller, ACTIONS action)
{
owner->AppendMsg(_T("LResultSet::AfterAction - ") + caller->GetTableName() + _T(" - ") + wxAny((int) action).As<wxString>()); owner->AppendMsg(_T("LResultSet::AfterAction - ") + caller->GetTableName() + _T(" - ") + wxAny((int) action).As<wxString>());
} }
void ResultSetTbl1EVH::AfterChangeRow(LResultSet* caller) {
void ResultSetTbl1EVH::AfterChangeRow(LResultSet* caller)
{
owner->AppendMsg(_T("LResultSet::AfterChangeRow - ") + caller->GetTableName()); owner->AppendMsg(_T("LResultSet::AfterChangeRow - ") + caller->GetTableName());
owner->FilterGrid(); owner->FilterGrid();
} }
void ResultSetTbl1EVH::AfterDelete(LResultSet* caller, const wxAny& oldPK, const wxString& sql) {
void ResultSetTbl1EVH::AfterDelete(LResultSet* caller, const wxAny& oldPK, const wxString& sql)
{
owner->AppendMsg(_T("LResultSet::AfterDelete - ") + caller->GetTableName() + _T(" - ") + sql); owner->AppendMsg(_T("LResultSet::AfterDelete - ") + caller->GetTableName() + _T(" - ") + sql);
} }
void ResultSetTbl1EVH::AfterInsert(LResultSet* caller, const wxAny& newPK, const wxString& sql) void ResultSetTbl1EVH::AfterInsert(LResultSet* caller, const wxAny& newPK, const wxString& sql)
{ {
owner->AppendMsg(_T("LResultSet::AfterInsert - ") + caller->GetTableName() + _T(" - ") + sql); owner->AppendMsg(_T("LResultSet::AfterInsert - ") + caller->GetTableName() + _T(" - ") + sql);
@@ -405,24 +484,36 @@ void ResultSetTbl1EVH::BeforeUpdate(LResultSet* caller)
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
ResultSetTbl2EVH::ResultSetTbl2EVH(L7Frame* newOwner) { ResultSetTbl2EVH::ResultSetTbl2EVH(L7Frame* newOwner)
{
owner = newOwner; owner = newOwner;
} }
ResultSetTbl2EVH::~ResultSetTbl2EVH() {
ResultSetTbl2EVH::~ResultSetTbl2EVH()
{
} }
void ResultSetTbl2EVH::Inform(const LResultSet* caller, const LInformation& msg) const {
void ResultSetTbl2EVH::Inform(const LResultSet* caller, const LInformation& msg) const
{
owner->MsgBox(msg.GetFullInformation()); owner->MsgBox(msg.GetFullInformation());
} }
void ResultSetTbl2EVH::AfterAction(LResultSet* caller, ACTIONS action) {
void ResultSetTbl2EVH::AfterAction(LResultSet* caller, ACTIONS action)
{
owner->AppendMsg(_T("LResultSet::AfterAction - ") + caller->GetTableName() + _T(" - ") + wxAny((int) action).As<wxString>()); owner->AppendMsg(_T("LResultSet::AfterAction - ") + caller->GetTableName() + _T(" - ") + wxAny((int) action).As<wxString>());
} }
void ResultSetTbl2EVH::AfterChangeRow(LResultSet* caller) {
void ResultSetTbl2EVH::AfterChangeRow(LResultSet* caller)
{
owner->AppendMsg(_T("LResultSet::AfterChangeRow - ") + caller->GetTableName()); owner->AppendMsg(_T("LResultSet::AfterChangeRow - ") + caller->GetTableName());
} }
void ResultSetTbl2EVH::AfterDelete(LResultSet* caller, const wxAny& oldPK, const wxString& sql) {
void ResultSetTbl2EVH::AfterDelete(LResultSet* caller, const wxAny& oldPK, const wxString& sql)
{
owner->AppendMsg(_T("LResultSet::AfterDelete - ") + caller->GetTableName() + _T(" - ") + sql); owner->AppendMsg(_T("LResultSet::AfterDelete - ") + caller->GetTableName() + _T(" - ") + sql);
} }
void ResultSetTbl2EVH::AfterInsert(LResultSet* caller, const wxAny& newPK, const wxString& sql) void ResultSetTbl2EVH::AfterInsert(LResultSet* caller, const wxAny& newPK, const wxString& sql)
{ {
owner->AppendMsg(_T("LResultSet::AfterInsert - ") + caller->GetTableName() + _T(" - ") + sql); owner->AppendMsg(_T("LResultSet::AfterInsert - ") + caller->GetTableName() + _T(" - ") + sql);

View File

@@ -19,6 +19,8 @@
#include <LBoundSpinCtrl.h> #include <LBoundSpinCtrl.h>
#include <LNavigator.h> #include <LNavigator.h>
#include <LBoundGrid.h> #include <LBoundGrid.h>
#include <special/LBoundJsonGridPicker.h>
#include <special/LBoundXmlGridPicker.h>
class L7Test; class L7Test;
class L7Frame; class L7Frame;
@@ -62,6 +64,8 @@ private:
LBoundSpinCtrl * Spin1; LBoundSpinCtrl * Spin1;
LNavigator * navTbl1; LNavigator * navTbl1;
LBoundGrid * grid; LBoundGrid * grid;
LBoundJsonGridPicker * Json1;
LBoundXmlGridPicker * Xml1;
bool colsCreated; bool colsCreated;
void AppendMsg(const wxString& msg); void AppendMsg(const wxString& msg);

View File

@@ -52,7 +52,7 @@ FFLAGS=
ASFLAGS= ASFLAGS=
# Link Libraries and Options # Link Libraries and Options
LDLIBSOPTIONS=-L/usr/local/wxWidgets/lib -lwx_baseu-3.1 -lwx_gtk2u_core-3.1 -lwx_gtk2u_adv-3.1 -lpq -lsqlite3 -Wl,-rpath,'../L7/dist/Debug/GNU-Linux' -L../L7/dist/Debug/GNU-Linux -lL7 LDLIBSOPTIONS=-L/usr/local/wxWidgets/lib -lwx_baseu-3.1 -lwx_gtk2u_core-3.1 -lwx_baseu_xml-3.1 -lwxcode_gtk2ud_wxjson-3.1 -lpq -lsqlite3 -Wl,-rpath,'../L7/dist/Debug/GNU-Linux' -L../L7/dist/Debug/GNU-Linux -lL7
# Build Targets # Build Targets
.build-conf: ${BUILD_SUBPROJECTS} .build-conf: ${BUILD_SUBPROJECTS}

View File

@@ -52,7 +52,7 @@ FFLAGS=
ASFLAGS= ASFLAGS=
# Link Libraries and Options # Link Libraries and Options
LDLIBSOPTIONS=-L/usr/local/wxWidgets-Release/lib -lwx_baseu-3.1 -lwx_gtk2u_core-3.1 -lwx_gtk2u_adv-3.1 -Wl,-rpath,'../L7/dist/Release/GNU-Linux' -L../L7/dist/Release/GNU-Linux -lL7 -lpq -lsqlite3 LDLIBSOPTIONS=-L/usr/local/wxWidgets-Release/lib -lwx_baseu-3.1 -lwx_gtk2u_core-3.1 -lwx_baseu_xml-3.1 -lwxcode_gtk2u_wxjson-3.1 -Wl,-rpath,'../L7/dist/Release/GNU-Linux' -L../L7/dist/Release/GNU-Linux -lL7 -lpq -lsqlite3
# Build Targets # Build Targets
.build-conf: ${BUILD_SUBPROJECTS} .build-conf: ${BUILD_SUBPROJECTS}

View File

@@ -26,6 +26,17 @@
kind="IMPORTANT_FILES_FOLDER"> kind="IMPORTANT_FILES_FOLDER">
<itemPath>Makefile</itemPath> <itemPath>Makefile</itemPath>
</logicalFolder> </logicalFolder>
<logicalFolder name="TestFiles"
displayName="Test Files"
projectFiles="false"
kind="TEST_LOGICAL_FOLDER">
</logicalFolder>
<logicalFolder name="ExternalFiles"
displayName="Important Files"
projectFiles="false"
kind="IMPORTANT_FILES_FOLDER">
<itemPath>Makefile</itemPath>
</logicalFolder>
</logicalFolder> </logicalFolder>
<projectmakefile>Makefile</projectmakefile> <projectmakefile>Makefile</projectmakefile>
<confs> <confs>
@@ -58,7 +69,8 @@
<linkerLibItems> <linkerLibItems>
<linkerLibLibItem>wx_baseu-3.1</linkerLibLibItem> <linkerLibLibItem>wx_baseu-3.1</linkerLibLibItem>
<linkerLibLibItem>wx_gtk2u_core-3.1</linkerLibLibItem> <linkerLibLibItem>wx_gtk2u_core-3.1</linkerLibLibItem>
<linkerLibLibItem>wx_gtk2u_adv-3.1</linkerLibLibItem> <linkerLibLibItem>wx_baseu_xml-3.1</linkerLibLibItem>
<linkerLibLibItem>wxcode_gtk2ud_wxjson-3.1</linkerLibLibItem>
<linkerLibLibItem>pq</linkerLibLibItem> <linkerLibLibItem>pq</linkerLibLibItem>
<linkerLibLibItem>sqlite3</linkerLibLibItem> <linkerLibLibItem>sqlite3</linkerLibLibItem>
<linkerLibProjectItem> <linkerLibProjectItem>
@@ -122,7 +134,8 @@
<linkerLibItems> <linkerLibItems>
<linkerLibLibItem>wx_baseu-3.1</linkerLibLibItem> <linkerLibLibItem>wx_baseu-3.1</linkerLibLibItem>
<linkerLibLibItem>wx_gtk2u_core-3.1</linkerLibLibItem> <linkerLibLibItem>wx_gtk2u_core-3.1</linkerLibLibItem>
<linkerLibLibItem>wx_gtk2u_adv-3.1</linkerLibLibItem> <linkerLibLibItem>wx_baseu_xml-3.1</linkerLibLibItem>
<linkerLibLibItem>wxcode_gtk2u_wxjson-3.1</linkerLibLibItem>
<linkerLibProjectItem> <linkerLibProjectItem>
<makeArtifact PL="../L7" <makeArtifact PL="../L7"
CT="2" CT="2"

View File

@@ -47,6 +47,8 @@
<gdb_interceptlist> <gdb_interceptlist>
<gdbinterceptoptions gdb_all="false" gdb_unhandled="true" gdb_unexpected="true"/> <gdbinterceptoptions gdb_all="false" gdb_unhandled="true" gdb_unexpected="true"/>
</gdb_interceptlist> </gdb_interceptlist>
<gdb_signals>
</gdb_signals>
<gdb_options> <gdb_options>
<DebugOptions> <DebugOptions>
</DebugOptions> </DebugOptions>

View File

@@ -5,7 +5,7 @@
</code-assistance-data> </code-assistance-data>
<data xmlns="http://www.netbeans.org/ns/make-project-private/1"> <data xmlns="http://www.netbeans.org/ns/make-project-private/1">
<activeConfTypeElem>1</activeConfTypeElem> <activeConfTypeElem>1</activeConfTypeElem>
<activeConfIndexElem>0</activeConfIndexElem> <activeConfIndexElem>1</activeConfIndexElem>
</data> </data>
<editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/> <editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/>
<open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2"> <open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2">

View File

@@ -75,7 +75,9 @@ CREATE TABLE tbl1 (
combo1x character varying(50), combo1x character varying(50),
date1 date, date1 date,
spin1 integer DEFAULT 3, spin1 integer DEFAULT 3,
rand1 integer DEFAULT round((random() * (10000000)::double precision)) NOT NULL rand1 integer DEFAULT round((random() * (10000000)::double precision)) NOT NULL,
json1 jsonb,
xml1 text
); );
@@ -116,7 +118,9 @@ CREATE TABLE tbl2 (
combo2x character varying(50), combo2x character varying(50),
date2 date, date2 date,
spin2 integer DEFAULT 5, spin2 integer DEFAULT 5,
rand1 integer rand1 integer,
json2 jsonb,
xml2 text
); );

View File

@@ -13,6 +13,8 @@ CREATE TABLE tbl2 (
"date2" TEXT, "date2" TEXT,
"spin2" INTEGER DEFAULT 5, "spin2" INTEGER DEFAULT 5,
"rand1" INTEGER NOT NULL DEFAULT (abs(random())), "rand1" INTEGER NOT NULL DEFAULT (abs(random())),
"json2" TEXT,
"xml2" TEXT,
foreign key (combo2t) references list1(id_list1), foreign key (combo2t) references list1(id_list1),
foreign key (pk1) references tbl1(pk1) foreign key (pk1) references tbl1(pk1)
); );
@@ -25,7 +27,9 @@ CREATE TABLE tbl1 (
"combo1x" TEXT, "combo1x" TEXT,
"date1" TEXT, "date1" TEXT,
"spin1" INTEGER DEFAULT 3, "spin1" INTEGER DEFAULT 3,
"rand1" INTEGER NOT NULL DEFAULT (abs(random())) "rand1" INTEGER NOT NULL DEFAULT (abs(random())),
"json1" TEXT,
"xml1" TEXT
); );
INSERT INTO List1 VALUES(1, 'List1Item1'); INSERT INTO List1 VALUES(1, 'List1Item1');