diff --git a/uppsrc/NosCore/NosCore.upp b/uppsrc/NosCore/NosCore.upp new file mode 100644 index 000000000..628348d36 --- /dev/null +++ b/uppsrc/NosCore/NosCore.upp @@ -0,0 +1,95 @@ +description "Common NOS routines\377B"; + +charset "UTF-8"; + +uses + XmlRpc, + Geom\Coords, + plugin/zip, + plugin/dbf, + Draw, + plugin/png, + plugin/jpg, + plugin/gif, + Sql, + plugin\dbf, + Web\SSL, + PdfDraw, + RichText; + +file + NosCore.h, + Util.h, + Util.cpp, + HttpUtil.cpp, + Log.cpp, + Rights.i, + Nos.sch, + Schema.cpp, + ini_header.h, + ini_source.h, + ini.cpp, + NosCore.ini, + OpeningPeriod.cpp, + Entity.cpp, + Entity.hpp, + Coupon.cpp, + IsoState.cpp, + UirAdr.cpp, + UpdateUirAdr.cpp, + Ares.cpp, + Address.cpp, + Person.cpp, + Customer.cpp, + SearchMatch.cpp optimize_speed, + Ref.cpp, + TreeInfo.cpp, + TagInfo.cpp, + Settings.cpp, + ResUrl.cpp, + Info.cpp, + Product.cpp, + ProductLogic.cpp, + Price.cpp, + SaleInfo.cpp, + Kredit.cpp, + ResCache.cpp, + Position.cpp, + ReqLogic.cpp, + Requires.cpp, + NajistoParam.cpp, + Keboola.cpp, + Hurra.cpp, + StatsCore.cpp, + PPCReportPdf.cpp, + ExportPPCInfo.cpp, + CallBackend.h, + CallBackend.cpp, + BackendOp.h, + BackendUser.cpp, + Backend.cpp, + BoxAttr.cpp, + Comment.icpp, + Tree.icpp, + Tag.icpp, + Data.icpp, + NewCentral.icpp, + Sale.icpp, + SaleCrm.icpp, + Text.icpp, + Special.icpp, + Special2.icpp, + Special3.icpp, + Kredit2.icpp, + Attachment.icpp, + Reservation.icpp, + ToDo.icpp, + CrmInfo.icpp, + crm.icpp, + Res.icpp, + Ads.icpp, + Msg.icpp, + CatalogueStats.cpp, + src.tpp, + srcimp.tpp; + diff --git a/uppsrc/NosCore/init b/uppsrc/NosCore/init new file mode 100644 index 000000000..14b279e00 --- /dev/null +++ b/uppsrc/NosCore/init @@ -0,0 +1,76 @@ +#ifndef _NosCore_icpp_init_stub +#define _NosCore_icpp_init_stub +#include "XmlRpc/init" +#include "Geom\Coords/init" +#include "plugin/zip/init" +#include "plugin/dbf/init" +#include "Draw/init" +#include "plugin/png/init" +#include "plugin/jpg/init" +#include "plugin/gif/init" +#include "Sql/init" +#include "plugin\dbf/init" +#include "Web\SSL/init" +#include "PdfDraw/init" +#include "RichText/init" +#define BLITZ_INDEX__ F926a69cff5c1e4a4012b940610361720 +#include "Comment.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F58ba4ce5c5a217e3903d919d5a6e80cc +#include "Tree.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F7c007a1991fa86d98960f6bebd7f9ca8 +#include "Tag.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ Fbfc980eb180402d63341a4901a1a00b7 +#include "Data.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F8804aabe49316dce994c4a00f7a4b640 +#include "NewCentral.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ Fd4da9d04a1c86ee7d57b61877cf431ea +#include "Sale.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F26f4c211fdc7bc010e8bfdb8d22ca910 +#include "SaleCrm.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F02dd5fac768f4b46bded0264630d1f6b +#include "Text.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ Fa91d08418291d15d04a870f557a81b3b +#include "Special.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F17b8d80cbbc3d44d0a62a9069183f195 +#include "Special2.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F66c1c5652aeec408ca3955a24a54334b +#include "Special3.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F109f3a3181edc16707da448fd08dec29 +#include "Kredit2.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ Fe83b743db0ba8f56edabffd13b2d160b +#include "Attachment.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ Fc3147241885d259051e42d62965e4370 +#include "Reservation.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F2315267577b27656f24128c4f5212db7 +#include "ToDo.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F5007eedbc5143ce8365eda41a9107cc9 +#include "CrmInfo.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F0e4326899a676d09ed8a814333f6243f +#include "crm.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ Ff11afaad338517a115610d801ebd86ad +#include "Res.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F735d702bd067caf046457a807d802723 +#include "Ads.icpp" +#undef BLITZ_INDEX__ +#define BLITZ_INDEX__ F33aadeda3fd340664ed717ab4ce4d1b9 +#include "Msg.icpp" +#undef BLITZ_INDEX__ +#endif diff --git a/uppsrc/Sql/SqlSchema.h b/uppsrc/Sql/SqlSchema.h index 2e7685ca5..f7b4c4350 100644 --- a/uppsrc/Sql/SqlSchema.h +++ b/uppsrc/Sql/SqlSchema.h @@ -92,10 +92,11 @@ inline void SqlSchemaInitClear(T *a, int n) { SqlSchemaInitClear(*a++); } -inline void SqlSchemaInitClear(int& a) { a = Null; } -inline void SqlSchemaInitClear(double& a) { a = Null; } -inline void SqlSchemaInitClear(int64& a) { a = Null; } -inline void SqlSchemaInitClear(bool& a) { a = false; } + +template<> inline void SqlSchemaInitClear(int& a) { a = Null; } +template<> inline void SqlSchemaInitClear(double& a) { a = Null; } +template<> inline void SqlSchemaInitClear(int64& a) { a = Null; } +template<> inline void SqlSchemaInitClear(bool& a) { a = false; } template inline void SqlSchemaClear(T& a) { a = Null; } diff --git a/uppsrc/ide/Config.cpp b/uppsrc/ide/Config.cpp index 0dd6b93d3..ab1fb6ab6 100644 --- a/uppsrc/ide/Config.cpp +++ b/uppsrc/ide/Config.cpp @@ -96,7 +96,7 @@ void Ide::Serialize(Stream& s) { int version = 0; s.Magic(0x2345432); s / version; - s % main; + s % last_main; s % AnySourceFs(); s % BasedSourceFs(); s % AnyPackageFs(); @@ -207,8 +207,8 @@ void Ide::LoadConfig() FileCursor(); } SaveLoadPackage(); - SyncCh();} - + SyncCh(); +} void Ide::CheckConfig() { diff --git a/uppsrc/ide/UppDlg.h b/uppsrc/ide/UppDlg.h index 2a6d763e0..f66eb9fd2 100644 --- a/uppsrc/ide/UppDlg.h +++ b/uppsrc/ide/UppDlg.h @@ -132,7 +132,7 @@ struct WorkspaceWork { UppList filelist; Vector fileindex; - String main; + String main, last_main; String actualpackage; int actualfileindex; Package actual; diff --git a/uppsrc/ide/ide.cpp b/uppsrc/ide/ide.cpp index d703e7fa1..fa3c21b13 100644 --- a/uppsrc/ide/ide.cpp +++ b/uppsrc/ide/ide.cpp @@ -165,12 +165,13 @@ bool Ide::OpenMainPackage() #else tt << " (TheIDE " << IDE_VERSION << ')'; #endif - String p = SelectPackage(tt, main, true, true); + String p = SelectPackage(tt, last_main, true, true); if(p.IsEmpty()) return false; main.Clear(); if(!IsOpen()) Open(); SetMain(p); + last_main = main; return true; }