diff --git a/src/BImage_FreeImage.cpp b/src/BImage_FreeImage.cpp index e905e95..0d8145d 100644 --- a/src/BImage_FreeImage.cpp +++ b/src/BImage_FreeImage.cpp @@ -166,7 +166,7 @@ ButcherImage *ButcherImage_FreeImage::SubImage(const wxRect &r) { try { - auto_ptr si(new wxFreeImage()); + std::unique_ptr si(new wxFreeImage()); image_->Copy(*si, r); return new ButcherImage_FreeImage(si.release()); } catch (wxFreeImageException &e) { @@ -190,7 +190,7 @@ wxFreeImage *ButcherImage_FreeImage::ImageFormatPrepare(format_t format, int fla { if (image_->GetBPP() > 8 || (tcolors && tcolors->size()>0)) { - auto_ptr img(new wxFreeImage(*image_)); + std::unique_ptr img(new wxFreeImage(*image_)); if (image_->GetBPP() > 8) { // must be 24 bits do quantize @@ -214,7 +214,7 @@ wxFreeImage *ButcherImage_FreeImage::ImageFormatPrepare(format_t format, int fla // convert to 24 bits if (image_->NeedConvert(wxFreeImage::CV_24BITS)) { - auto_ptr img(new wxFreeImage(*image_)); + std::unique_ptr img(new wxFreeImage(*image_)); img->Convert(wxFreeImage::CV_24BITS); return img.release(); } @@ -231,7 +231,7 @@ wxFreeImage *ButcherImage_FreeImage::ImageFormatPrepare(format_t format, int fla if (image_->NeedConvert(cv) || (tcolors && tcolors->size()>0)) { - auto_ptr img(new wxFreeImage(*image_)); + std::unique_ptr img(new wxFreeImage(*image_)); // convert if (image_->NeedConvert(cv)) { @@ -375,7 +375,7 @@ void ButcherImage_FreeImage::Composite(const wxBitmap &bitmap) d.rgbBlue=255; wxImage img(bitmap.ConvertToImage()); - auto_ptr cmp(new wxFreeImage(img)); + std::unique_ptr cmp(new wxFreeImage(img)); cmp->Convert(wxFreeImage::CV_32BITS); cmp->ApplyColorMapping(&s, &d, 1, false); diff --git a/src/BList.h b/src/BList.h index 611d665..eecb6a2 100644 --- a/src/BList.h +++ b/src/BList.h @@ -14,8 +14,8 @@ #include #include #include +#include #include -#include #include #include "BExcept.h" @@ -66,7 +66,7 @@ class ButcherList { typedef ButcherListAutoUpdate autoupdate_t; private: - typedef map< BLID_t, linked_ptr > ButcherListList; + typedef map< BLID_t, std::shared_ptr > ButcherListList; public: //template class iterator : public std::iterator @@ -136,7 +136,7 @@ class ButcherList { protected: bool op_delete(BLID_t id) { if (can_delete(id, &*list_[id])) { - linked_ptr d=list_[id]; + std::shared_ptr d=list_[id]; do_deleting(id, &*d); list_.erase(id); @@ -176,12 +176,12 @@ class ButcherList { virtual void do_clear() {} unsigned long op_add(T* item, BLID_t id = 0) { - linked_ptr newitem(item); + std::shared_ptr newitem(item); return op_add(newitem, id); /* if (id==0) id=++maxid_; else if (id>maxid_) maxid_=id; - list_[id]=linked_ptr(item); + list_[id]=std::shared_ptr(item); item->SetBLId(id); idlist_.insert(id); internal_modified(id); @@ -195,7 +195,7 @@ class ButcherList { if (orig == dest) return; typename ButcherListList::iterator i=list_.find(dest); - linked_ptr save(NULL); + std::shared_ptr save(NULL); if (i!=list_.end()) save=i->second; list_[dest]=list_[orig]; @@ -213,7 +213,7 @@ class ButcherList { list_.erase(orig); } private: - unsigned long op_add(linked_ptr &item, BLID_t id = 0) { + unsigned long op_add(std::shared_ptr &item, BLID_t id = 0) { if (id==0) id=++maxid_; else if (id>maxid_) maxid_=id; list_[id]=item; @@ -339,7 +339,7 @@ class ButcherList_Fixed { protected: bool op_delete(BLID_t id) { if (Exists(id) && can_delete(id, Get(id))) { - linked_ptr d=*fixedp_get(id); + std::shared_ptr d=*fixedp_get(id); do_deleting(id, &*d); fixed_delete(id); @@ -404,9 +404,9 @@ class ButcherList_Fixed { if (orig == dest) return; // add previous item at end - linked_ptr save(NULL); + std::shared_ptr save(NULL); if (Get(dest)) { - save=linked_ptr(Get(dest)); + save=std::shared_ptr(Get(dest)); op_delete(dest); } op_add(Get(orig), dest); @@ -424,8 +424,8 @@ class ButcherList_Fixed { } virtual void fixed_setblid(T* item, BLID_t id) = 0; - virtual T* fixed_get(BLID_t id) { linked_ptr *f=fixedp_get(id); if (f) return f->get(); return NULL; } - virtual linked_ptr *fixedp_get(BLID_t id) = 0; + virtual T* fixed_get(BLID_t id) { std::shared_ptr *f=fixedp_get(id); if (f) return f->get(); return NULL; } + virtual std::shared_ptr *fixedp_get(BLID_t id) = 0; virtual unsigned long fixed_count() = 0; virtual bool fixed_isfull() = 0; virtual void fixed_delete(BLID_t id) = 0; @@ -462,7 +462,7 @@ class ButcherList_1 : public ButcherList_Fixed { virtual void fixed_setblid(T* item, BLID_t id) { item->SetBLId(id); }; - virtual linked_ptr *fixedp_get(BLID_t id) { + virtual std::shared_ptr *fixedp_get(BLID_t id) { if (item1_.get()!=NULL && item1id_==id) return &item1_; return NULL; } @@ -475,17 +475,17 @@ class ButcherList_1 : public ButcherList_Fixed { return fixed_count()==1; } virtual void fixed_delete(BLID_t id) { - if (id==item1id_) { item1_=linked_ptr(NULL); item1id_=0; } + if (id==item1id_) { item1_=std::shared_ptr(NULL); item1id_=0; } } virtual void fixed_clear() { if (item1_.get()) { - item1_=linked_ptr(NULL); + item1_=std::shared_ptr(NULL); item1id_=0; } } virtual void fixed_add(T* item, BLID_t id) { if (item1_.get()==NULL) { - item1_=linked_ptr(item); + item1_=std::shared_ptr(item); item1id_=id; } else throw ButcherException(_("List is full")); @@ -495,7 +495,7 @@ class ButcherList_1 : public ButcherList_Fixed { } private: BLID_t item1id_; - linked_ptr item1_; + std::shared_ptr item1_; }; /** @@ -521,7 +521,7 @@ class ButcherList_2 : public ButcherList_Fixed { virtual void fixed_setblid(T* item, BLID_t id) { item->SetBLId(id); }; - virtual linked_ptr *fixedp_get(BLID_t id) { + virtual std::shared_ptr *fixedp_get(BLID_t id) { if (item1_.get()!=NULL && item1id_==id) return &item1_; if (item2_.get()!=NULL && item2id_==id) return &item2_; return NULL; @@ -536,25 +536,25 @@ class ButcherList_2 : public ButcherList_Fixed { return fixed_count()==2; } virtual void fixed_delete(BLID_t id) { - if (id==item1id_) { item1_=linked_ptr(NULL); item1id_=0; } - if (id==item2id_) { item2_=linked_ptr(NULL); item2id_=0; } + if (id==item1id_) { item1_=std::shared_ptr(NULL); item1id_=0; } + if (id==item2id_) { item2_=std::shared_ptr(NULL); item2id_=0; } } virtual void fixed_clear() { if (item1_.get()) { - item1_=linked_ptr(NULL); + item1_=std::shared_ptr(NULL); item1id_=0; } if (item2_.get()) { - item2_=linked_ptr(NULL); + item2_=std::shared_ptr(NULL); item2id_=0; } } virtual void fixed_add(T* item, BLID_t id) { if (item1_.get()==NULL) { - item1_=linked_ptr(item); + item1_=std::shared_ptr(item); item1id_=id; } else if (item2_.get()==NULL) { - item2_=linked_ptr(item); + item2_=std::shared_ptr(item); item2id_=id; } else throw ButcherException(_("List is full")); @@ -565,7 +565,7 @@ class ButcherList_2 : public ButcherList_Fixed { } private: BLID_t item1id_, item2id_; - linked_ptr item1_, item2_; + std::shared_ptr item1_, item2_; }; #endif diff --git a/src/BProc.cpp b/src/BProc.cpp index 62cb614..5ff3268 100644 --- a/src/BProc.cpp +++ b/src/BProc.cpp @@ -332,7 +332,7 @@ void ButcherProjectProc_AreaMenu::ProcessAreaMenu(int menuid) if (d.ShowModal()==wxID_OK) { wxFileName fn(d.GetPath()); - auto_ptr aimg(view_->GetFile()->GetSubImage(area->GetGlobalRect())); + std::unique_ptr aimg(view_->GetFile()->GetSubImage(area->GetGlobalRect())); aimg->Save(ButcherImage::GetExtFormat(fn.GetExt()), d.GetPath(), 0); } @@ -349,7 +349,7 @@ void ButcherProjectProc_AreaMenu::ProcessAreaMenu(int menuid) wxFD_SAVE|wxFD_OVERWRITE_PROMPT); if (d.ShowModal()==wxID_OK) { - auto_ptr img(view_->CreateAreaImage(area)); + std::unique_ptr img(view_->CreateAreaImage(area)); if (img.get()) img->Save(area->Configs().Get(view_->GetBLId())->ImageInfo().GetSaveParams(), d.GetPath()); else diff --git a/src/ButcherMetadataFile.cpp b/src/ButcherMetadataFile.cpp index 85fb366..b245629 100644 --- a/src/ButcherMetadataFile.cpp +++ b/src/ButcherMetadataFile.cpp @@ -255,7 +255,7 @@ void ButcherMetadataData::Add(ButcherMetadataDataItem *item) { if (item->GetMetadataData() != this) throw ButcherException(_("This item is not for this data")); - data_[item->GetMetadataID()]=linked_ptr(item); + data_[item->GetMetadataID()]=std::shared_ptr(item); } ButcherMetadataData *ButcherMetadataData::MultiAdd(ButcherMetadataDataItem *item) @@ -289,7 +289,7 @@ ButcherMetadataData &ButcherMetadataDataList::Get(int index) ButcherMetadataData *ButcherMetadataDataList::Add() { ButcherMetadataData *ret=new ButcherMetadataData(this); - datalist_.push_back(linked_ptr(ret)); + datalist_.push_back(std::shared_ptr(ret)); return ret; } @@ -323,7 +323,7 @@ void ButcherMetadataStorage::Add(ButcherMetadataID_t id) { if (list_.find(id)==list_.end()) listorder_.push_back(id); - list_[id]=linked_ptr(new ButcherMetadataDataList(this, id)); + list_[id]=std::shared_ptr(new ButcherMetadataDataList(this, id)); } bool ButcherMetadataStorage::Exists(ButcherMetadataID_t id) @@ -415,7 +415,7 @@ bool ButcherMetadataFile::ReadMetadata(wxFile &file, ButcherMetadataStorage *sto butchermetadata_dataitemheader_t dataitemheader; ButcherMetadataDataItem *newitem; ButcherMetadataData *curmd=NULL; - //auto_ptr itemdata; + //std::unique_ptr itemdata; size_t n; bool started=false, readitemend; @@ -488,11 +488,11 @@ bool ButcherMetadataFile::ReadMetadata(wxFile &file, ButcherMetadataStorage *sto { if (newitem->ReadData()) { - //itemdata=auto_ptr(new char[dataitemheader.datasize]); + //itemdata=std::unique_ptr(new char[dataitemheader.datasize]); #ifndef _MSC_VER char itemdata[dataitemheader.datasize]; #else - auto_ptr itemdata_auto(new char[dataitemheader.datasize]); + std::unique_ptr itemdata_auto(new char[dataitemheader.datasize]); char *itemdata=itemdata_auto.get(); #endif n=file.Read(&*itemdata, dataitemheader.datasize); @@ -601,7 +601,7 @@ bool ButcherMetadataFile::WriteMetadata(wxFile &file, ButcherMetadataStorage *st ButcherMetadataDataList *curlist; ButcherMetadataData *curdata; ButcherMetadataData::data_t::const_iterator dataiterator; - auto_ptr itembin; + std::unique_ptr itembin; char buf[BMD_BUF_TEMP_SIZE]; size_t nRead, nTotal; diff --git a/src/ButcherMetadataFile.h b/src/ButcherMetadataFile.h index 520f776..f192c79 100644 --- a/src/ButcherMetadataFile.h +++ b/src/ButcherMetadataFile.h @@ -14,10 +14,9 @@ #include #include +#include #include #include -#include - #include #include @@ -298,7 +297,7 @@ class ButcherMetadataData ButcherMetadataDataItem &Get(ButcherMetadataID_t id); - typedef map< ButcherMetadataID_t, linked_ptr< ButcherMetadataDataItem > > data_t; + typedef map< ButcherMetadataID_t, std::shared_ptr< ButcherMetadataDataItem > > data_t; const data_t &GetData() { return data_; } @@ -320,7 +319,7 @@ class ButcherMetadataData class ButcherMetadataDataList { public: - typedef deque< linked_ptr< ButcherMetadataData > > datalist_t; + typedef deque< std::shared_ptr< ButcherMetadataData > > datalist_t; ButcherMetadataDataList(ButcherMetadataStorage *storage, ButcherMetadataID_t metadataid); @@ -363,7 +362,7 @@ class ButcherMetadataStorage protected: friend class ButcherMetadataFile; private: - typedef map< ButcherMetadataID_t, linked_ptr< ButcherMetadataDataList > > list_t; + typedef map< ButcherMetadataID_t, std::shared_ptr< ButcherMetadataDataList > > list_t; list_t list_; listorder_t listorder_; }; diff --git a/src/dialogs/DialogFileLink.cpp b/src/dialogs/DialogFileLink.cpp index 7ee9d3e..d8c2abb 100644 --- a/src/dialogs/DialogFileLink.cpp +++ b/src/dialogs/DialogFileLink.cpp @@ -414,7 +414,7 @@ void HTMLButcherFileLinkDialog::ExpandLink(const ButcherProjectFileLink &link) { wxTreeCtrl *linksctrl=(wxTreeCtrl*)FindWindow(ID_LINKS); - auto_ptr finddata(NULL); + std::unique_ptr finddata; wxTreeItemId cid; switch (link.GetLinkType()) diff --git a/src/dialogs/DialogMaskAreaFileAlternate.cpp b/src/dialogs/DialogMaskAreaFileAlternate.cpp index 9d8a752..5bc6351 100644 --- a/src/dialogs/DialogMaskAreaFileAlternate.cpp +++ b/src/dialogs/DialogMaskAreaFileAlternate.cpp @@ -212,7 +212,7 @@ void HTMLButcherMaskAreaFileAlternateDialog::Load(ButcherProjectView *view, Butc for (int i=0; i(new ButcherProjectAreaImageInfo(loadconfig->AlternateImageInfo(i)))); + altimageinfo_.push_back(std::shared_ptr(new ButcherProjectAreaImageInfo(loadconfig->AlternateImageInfo(i)))); altimageinfo_[i]->ResetAreaConfig(); } } diff --git a/src/dialogs/DialogMaskAreaFileAlternate.h b/src/dialogs/DialogMaskAreaFileAlternate.h index 7430d69..eecab7f 100644 --- a/src/dialogs/DialogMaskAreaFileAlternate.h +++ b/src/dialogs/DialogMaskAreaFileAlternate.h @@ -68,7 +68,7 @@ class HTMLButcherMaskAreaFileAlternateDialog: public ButcherControl_Dialog ButcherProjectArea *area_; ButcherProjectAreaConfig *config_; - deque< linked_ptr > altimageinfo_; + deque< std::shared_ptr > altimageinfo_; }; #endif //__DIALOGMASKAERAFILEALTERNATE_H__ diff --git a/src/dialogs/DialogMaskAreaImageFormat.cpp b/src/dialogs/DialogMaskAreaImageFormat.cpp index 354a1c3..3ffefe3 100644 --- a/src/dialogs/DialogMaskAreaImageFormat.cpp +++ b/src/dialogs/DialogMaskAreaImageFormat.cpp @@ -289,7 +289,7 @@ bool HTMLButcherMaskAreaImageFormatDialog::TransferDataToWindow() p1formatctrl->SetSelection(p1formatctrl->Append(_("- DEFAULT -"), static_cast(new ButcherListIdClientData(0)))); p2formatctrl->SetSelection(p2formatctrl->Append(_("- DEFAULT -"), static_cast(new ButcherListIdClientData(0)))); - auto_ptr origimage(file_->GetImage()->SubImage(area_->GetGlobalRect())), fmtimage(NULL); + std::unique_ptr origimage(file_->GetImage()->SubImage(area_->GetGlobalRect())), fmtimage; ButcherProjectBaseAutoProgress prog(GetProject(), _("Calculating file sizes, please wait...")); diff --git a/src/dialogs/WizNewView.cpp b/src/dialogs/WizNewView.cpp index bedfec7..81b4297 100644 --- a/src/dialogs/WizNewView.cpp +++ b/src/dialogs/WizNewView.cpp @@ -245,7 +245,7 @@ bool HTMLButcherNewViewFileWizardPage::TransferDataFromWindow() return false; } - auto_ptr limg(ButcherImageFactory::Load(fn.GetFullPath())); + std::unique_ptr limg(ButcherImageFactory::Load(fn.GetFullPath())); if (!limg.get()) { wxMessageBox(_("Unknown image file format."), _("Error"), diff --git a/src/project/ButcherProject.cpp b/src/project/ButcherProject.cpp index c14c6bc..edb456d 100644 --- a/src/project/ButcherProject.cpp +++ b/src/project/ButcherProject.cpp @@ -566,7 +566,7 @@ void ButcherProject::DoLoad(const wxString &filename, ButcherProjectBaseAutoProg procprojectfile_=NULL; } - auto_ptr mdf(new ButcherProjectMetadataFile()); + std::unique_ptr mdf(new ButcherProjectMetadataFile()); mdf->Load(filename); if (progress) progress->SetProgress(); @@ -628,7 +628,7 @@ void ButcherProject::DoSave(const wxString &filename, ButcherProjectBaseAutoProg procprojectfile_=NULL; } - auto_ptr mdf(new ButcherProjectMetadataFile()); + std::unique_ptr mdf(new ButcherProjectMetadataFile()); // save all data /* diff --git a/src/project/ButcherProjectAreaConfigBase.cpp b/src/project/ButcherProjectAreaConfigBase.cpp index 40bacac..4cf81b3 100644 --- a/src/project/ButcherProjectAreaConfigBase.cpp +++ b/src/project/ButcherProjectAreaConfigBase.cpp @@ -37,7 +37,7 @@ ButcherProjectAreaConfigBase::ButcherProjectAreaConfigBase(ButcherProjectArea *a imageinfo_.SetEnabled(true); for (int i=0; i(new ButcherProjectAreaImageInfo(this, i))); + altimageinfo_.push_back(std::shared_ptr(new ButcherProjectAreaImageInfo(this, i))); } diff --git a/src/project/ButcherProjectAreaConfigBase.h b/src/project/ButcherProjectAreaConfigBase.h index 94cb812..f087d19 100644 --- a/src/project/ButcherProjectAreaConfigBase.h +++ b/src/project/ButcherProjectAreaConfigBase.h @@ -159,7 +159,7 @@ class ButcherProjectAreaConfigBase : public ButcherProjectBaseModify { imagesource_t imagesource_; ButcherProjectFileLink imagelink_; ButcherProjectAreaImageInfo imageinfo_; - deque< linked_ptr > altimageinfo_; + deque< std::shared_ptr > altimageinfo_; ButcherMargin margins_; }; diff --git a/src/project/ButcherProjectAreaConfigPreview.cpp b/src/project/ButcherProjectAreaConfigPreview.cpp index e266e30..c953a45 100644 --- a/src/project/ButcherProjectAreaConfigPreview.cpp +++ b/src/project/ButcherProjectAreaConfigPreview.cpp @@ -61,7 +61,7 @@ ButcherImage *ButcherProjectAreaConfigPreview::GetPreview() areaconfig_->GetArea()->GetDescription().c_str())); try { - std::auto_ptr simage(GetProject()->Views()[viewid_]->CreateAreaImage(areaconfig_->GetArea())); + std::unique_ptr simage(GetProject()->Views()[viewid_]->CreateAreaImage(areaconfig_->GetArea())); if (HavePreview() && simage.get()) SetPreview(simage->Save(areaconfig_->ImageInfo().GetSaveParams())); else diff --git a/src/project/ButcherProjectAreaConfigs.cpp b/src/project/ButcherProjectAreaConfigs.cpp index 609bb2b..613cbff 100644 --- a/src/project/ButcherProjectAreaConfigs.cpp +++ b/src/project/ButcherProjectAreaConfigs.cpp @@ -56,7 +56,7 @@ void ButcherProjectAreaConfigs::Add(BLID_t id) if (list_.find(id)==list_.end()) { - list_[id]=linked_ptr(new ButcherProjectAreaConfig(area_, id)); + list_[id]=std::shared_ptr(new ButcherProjectAreaConfig(area_, id)); /* // set new configs as kind mask if (area_->GetAreaClass()==ButcherProjectArea::AC_DEFAULT && id>DEFAULT_CONFIG) @@ -212,7 +212,7 @@ BLID_t ButcherProjectAreaConfigs::Add(ButcherMetadataData *metadata) } // COMPAT END - list_[mdadd->GetBLId()]=linked_ptr(mdadd); + list_[mdadd->GetBLId()]=std::shared_ptr(mdadd); return mdadd->GetBLId(); } diff --git a/src/project/ButcherProjectAreaConfigs.h b/src/project/ButcherProjectAreaConfigs.h index 30ec6c5..46223e9 100644 --- a/src/project/ButcherProjectAreaConfigs.h +++ b/src/project/ButcherProjectAreaConfigs.h @@ -12,7 +12,7 @@ #define __BPROJECT_BUTCHERPROJECTAREACONFIGS_H__ #include -#include +#include #include "BList.h" #include "ButcherProjectBaseModify.h" #include "ButcherProjectAreaConfig.h" @@ -52,7 +52,7 @@ class ButcherProjectAreaConfigs : public ButcherProjectBaseModify virtual void SendProjectModified(ButcherProjectEvent::event_t mod, BLID_t id, BLID_t id2); private: - typedef map< BLID_t, linked_ptr > list_t; + typedef map< BLID_t, std::shared_ptr > list_t; BLID_t Add(ButcherMetadataData *metadata); ButcherProjectArea *area_; diff --git a/src/project/ButcherProjectFile.cpp b/src/project/ButcherProjectFile.cpp index 2f9412a..e8d0c73 100644 --- a/src/project/ButcherProjectFile.cpp +++ b/src/project/ButcherProjectFile.cpp @@ -149,7 +149,7 @@ void ButcherProjectFile::SaveOutputFile(const wxString &filename, BLID_t id) if (imagedata_) { - auto_ptr istream(imagedata_->GetData()); + std::unique_ptr istream(imagedata_->GetData()); if (!istream.get()) throw ButcherException(_("Error loading file stream")); @@ -247,7 +247,7 @@ ButcherImage *ButcherProjectFile::CreateImage() { if (imagedata_) { - auto_ptr istream(imagedata_->GetData()); + std::unique_ptr istream(imagedata_->GetData()); if (!istream.get()) { diff --git a/src/project/ButcherProjectView.cpp b/src/project/ButcherProjectView.cpp index fb13a43..b49e251 100644 --- a/src/project/ButcherProjectView.cpp +++ b/src/project/ButcherProjectView.cpp @@ -36,7 +36,7 @@ ButcherProjectBaseBLId(project), name_(name), layouttype_(ButcherProjectConsts:: encoding_(ButcherHTMLConsts::BE_ISO8859_1), assortedfilegroups_(this), bgimage_(this), previewbgimage_(this), bgrepeat_(ButcherProjectAreaConfig::BR_NONE), isbgcolor_(false), isstretch_(false), styleseparated_(false), - bgcolor_(), previewbgimagedraw_(NULL) + bgcolor_(), previewbgimagedraw_() { memset(filealternateid_, 0, sizeof(filealternateid_)); } @@ -52,7 +52,7 @@ ButcherProjectView::ButcherProjectView(ButcherProject *project) : encoding_(ButcherHTMLConsts::BE_ISO8859_1), assortedfilegroups_(this), bgimage_(this), previewbgimage_(this), bgrepeat_(ButcherProjectAreaConfig::BR_NONE), isbgcolor_(false), isstretch_(false), styleseparated_(false), - bgcolor_(), previewbgimagedraw_(NULL) + bgcolor_(), previewbgimagedraw_() { memset(filealternateid_, 0, sizeof(filealternateid_)); } @@ -460,7 +460,7 @@ void ButcherProjectView::do_genhtml(int level, ButcherHTMLGenerator &htmlgenerat } htmlgenerator.AddBody(wxString::Format(wxT("%s"), newline.c_str())); - std::auto_ptr list=auto_ptr(mask->CreateLayout(curlaytype==ButcherProjectConsts::LTYPE_TABLE && level==0 && (!isstretch_))); + std::unique_ptr list=std::unique_ptr(mask->CreateLayout(curlaytype==ButcherProjectConsts::LTYPE_TABLE && level==0 && (!isstretch_))); ButcherProjectArea *ar=NULL;//, *mar=NULL; ButcherProjectAreaConfig *ac=NULL, *mac=NULL; wxRect sr; @@ -472,7 +472,7 @@ void ButcherProjectView::do_genhtml(int level, ButcherHTMLGenerator &htmlgenerat { if (progress) progress->SetProgress(); - std::auto_ptr img; + std::unique_ptr img; ismaskarea=list->Get(ct)->areaid>0; @@ -842,7 +842,7 @@ void ButcherProjectView::do_genhtml(int level, ButcherHTMLGenerator &htmlgenerat { if ((items_&ITEM_IMAGES)==ITEM_IMAGES) { - img=std::auto_ptr(CreateAreaImage(ar)); + img=std::unique_ptr(CreateAreaImage(ar)); if (img.get()) img->Save(ac->ImageInfo().GetSaveParams(), imgdirname+imgfilename); } @@ -906,8 +906,8 @@ void ButcherProjectView::do_genhtml(int level, ButcherHTMLGenerator &htmlgenerat { // save image imgfilename=ar->GetImageFilename(GetBLId(), true, alti); - //img=std::auto_ptr(GetFileCurrent(alti)->GetSubImage(ar->GetGlobalRect())); - img=std::auto_ptr(CreateAreaImage(ar, alti)); + //img=std::unique_ptr(GetFileCurrent(alti)->GetSubImage(ar->GetGlobalRect())); + img=std::unique_ptr(CreateAreaImage(ar, alti)); if (img.get()) img->Save(ac->AlternateImageInfo(alti).GetSaveParams(), imgdirname+imgfilename); } @@ -939,7 +939,7 @@ void ButcherProjectView::GenerateImages(const wxString &dirname, ButcherProjectM ButcherProjectAreaConfig *ac; wxString imgfilename; //ButcherListIdList ids; - std::auto_ptr img; + std::unique_ptr img; ButcherProjectFilePath::ForcePathCreate(dirname); @@ -957,8 +957,8 @@ void ButcherProjectView::GenerateImages(const wxString &dirname, ButcherProjectM // save image imgfilename=i->GetImageFilename(GetBLId()); - //img=std::auto_ptr(GetFileCurrent(ac->GetAlternateFile())->GetSubImage(ar->GetGlobalRect())); - img=std::auto_ptr(CreateAreaImage(&*i)); + //img=std::unique_ptr(GetFileCurrent(ac->GetAlternateFile())->GetSubImage(ar->GetGlobalRect())); + img=std::unique_ptr(CreateAreaImage(&*i)); if (img.get()) img->Save(ac->ImageInfo().GetSaveParams(), dirname+imgfilename); @@ -972,8 +972,8 @@ void ButcherProjectView::GenerateImages(const wxString &dirname, ButcherProjectM // save image imgfilename=i->GetImageFilename(GetBLId(), true, alti); - //img=std::auto_ptr(GetFileCurrent(alti)->GetSubImage(ar->GetGlobalRect())); - img=std::auto_ptr(CreateAreaImage(&*i, alti)); + //img=std::unique_ptr(GetFileCurrent(alti)->GetSubImage(ar->GetGlobalRect())); + img=std::unique_ptr(CreateAreaImage(&*i, alti)); if (img.get()) img->Save(ac->AlternateImageInfo(alti).GetSaveParams(), dirname+imgfilename); @@ -999,7 +999,7 @@ void ButcherProjectView::do_checkfile(int level, ButcherProjectViewFileCheck &ch { wxString imgfilename;//, imgbasename; - std::auto_ptr list=auto_ptr(mask->CreateLayout(level==0 && (!isstretch_))); + std::unique_ptr list=std::unique_ptr(mask->CreateLayout(level==0 && (!isstretch_))); ButcherProjectArea *ar=NULL; ButcherProjectAreaConfig *ac=NULL; bool haveimage=false, havebg=false, ismaskarea; diff --git a/src/project/ButcherProjectView.h b/src/project/ButcherProjectView.h index 8a2c33b..bc0e90f 100644 --- a/src/project/ButcherProjectView.h +++ b/src/project/ButcherProjectView.h @@ -182,7 +182,7 @@ class ButcherProjectView : public ButcherProjectBaseBLId { bool isbgcolor_, isstretch_, styleseparated_; wxColor bgcolor_; - auto_ptr previewbgimagedraw_; + std::unique_ptr previewbgimagedraw_; }; #endif // __BPROJECT_BUTCHERPROJECTVIEW_H__ diff --git a/src/wxFreeImage.cpp b/src/wxFreeImage.cpp index d3c7630..8937191 100644 --- a/src/wxFreeImage.cpp +++ b/src/wxFreeImage.cpp @@ -361,7 +361,7 @@ bool wxFreeImage::Save(wxImage &image) { CheckOk(); - auto_ptr simg(this->Clone()); + std::unique_ptr simg(this->Clone()); simg->Convert(CV_24BITS); //simg->Flip(wxFreeImage::FL_VERTICAL); // don't flip here, we need to compare the pixels to do the transparency @@ -603,7 +603,7 @@ void wxFreeImage::Composite(bool usefilebg, RGBQUAD *bkcolor, wxFreeImage *bg) // must be 8 or 32 bits Convert(CV_32BITS); - auto_ptr newbg(NULL); + std::unique_ptr newbg; if (bg->GetBPP()!=24) { // must be 24 bits @@ -620,7 +620,7 @@ void wxFreeImage::Composite(bool usefilebg, RGBQUAD *bkcolor, wxFreeImage *bg) void wxFreeImage::CompositeFG(wxFreeImage *fg, bool usefilebg, RGBQUAD *bkcolor) { - auto_ptr newfg(NULL); + std::unique_ptr newfg; if (fg->GetBPP()!=32) { // must be 8 or 32 bits @@ -741,8 +741,8 @@ bool wxFreeImage::ApplyTransparentColors(const wxFreeImageColorList_t *colors, unsigned char srcindices[paltranslist.size()]; unsigned char dstindices[paltranslist.size()]; #else - auto_ptr srcindices_data(new unsigned char[paltranslist.size()]); - auto_ptr dstindices_data(new unsigned char[paltranslist.size()]); + std::unique_ptr srcindices_data(new unsigned char[paltranslist.size()]); + std::unique_ptr dstindices_data(new unsigned char[paltranslist.size()]); unsigned char *srcindices=srcindices_data.get(); unsigned char *dstindices=dstindices_data.get(); #endif diff --git a/util/cppcomp/CMakeLists.txt b/util/cppcomp/CMakeLists.txt index 8915e96..10f560e 100644 --- a/util/cppcomp/CMakeLists.txt +++ b/util/cppcomp/CMakeLists.txt @@ -1,6 +1,6 @@ set(SOURCES ccufile.cpp ccustring.cpp wxccu_control.cpp wxccu_file.cpp wxccu_string.cpp) -set(INCS ccufile.h ccustring.h linked_ptr.h ccudefs.h wxccucontrol.h wxccufile.h wxccustring.h) +set(INCS ccufile.h ccustring.h ccudefs.h wxccucontrol.h wxccufile.h wxccustring.h) add_library(hbcppcomp STATIC ${SOURCES} ${INCS}) diff --git a/util/cppcomp/ccufile.h b/util/cppcomp/ccufile.h index f62dd6c..62f9a10 100644 --- a/util/cppcomp/ccufile.h +++ b/util/cppcomp/ccufile.h @@ -242,7 +242,7 @@ T ccu_Path::GetPath(const ccu_Path &basepath, bool trailing, pathformat_t if (pformat == PPF_URL) pformat=PPF_UNIX; - auto_ptr< ccu_Path > opath(NULL); + std::unique_ptr< ccu_Path > opath; if (basepath.IsEmpty()) opath.reset(new ccu_Path(*this)); else diff --git a/util/cppcomp/linked_ptr.h b/util/cppcomp/linked_ptr.h deleted file mode 100644 index 3c7f0d5..0000000 --- a/util/cppcomp/linked_ptr.h +++ /dev/null @@ -1,111 +0,0 @@ -/* - * linked_ptr - simple reference linked pointer - * (like reference counting, just using a linked list of the references - * instead of their count.) - * - * The implementation stores three pointers for every linked_ptr, but - * does not allocate anything on the free store. - */ - -#ifndef LINKED_PTR_H -#define LINKED_PTR_H - -/* For ANSI-challenged compilers, you may want to #define - * NO_MEMBER_TEMPLATES, explicit or mutable */ - -#define NO_MEMBER_TEMPLATES - -template class linked_ptr -{ -public: - -#ifndef NO_MEMBER_TEMPLATES -# define TEMPLATE_FUNCTION template - TEMPLATE_FUNCTION friend class linked_ptr; -#else -# define TEMPLATE_FUNCTION - typedef X Y; -#endif - - typedef X element_type; - - explicit linked_ptr(X* p = 0) throw() - : itsPtr(p) {itsPrev = itsNext = this;} - ~linked_ptr() - {release();} - linked_ptr(const linked_ptr& r) throw() - {acquire(r);} - linked_ptr& operator=(const linked_ptr& r) - { - if (this != &r) { - release(); - acquire(r); - } - return *this; - } - -#ifndef NO_MEMBER_TEMPLATES - template friend class linked_ptr; - template linked_ptr(const linked_ptr& r) throw() - {acquire(r);} - template linked_ptr& operator=(const linked_ptr& r) - { - if (this != &r) { - release(); - acquire(r); - } - return *this; - } -#endif // NO_MEMBER_TEMPLATES - - X& operator*() const throw() {return *itsPtr;} - X* operator->() const throw() {return itsPtr;} - X* get() const throw() {return itsPtr;} - bool unique() const throw() {return itsPrev ? itsPrev==this : true;} - -private: - X* itsPtr; - mutable const linked_ptr* itsPrev; - mutable const linked_ptr* itsNext; - - void acquire(const linked_ptr& r) throw() - { // insert this to the list - itsPtr = r.itsPtr; - itsNext = r.itsNext; - itsNext->itsPrev = this; - itsPrev = &r; -#ifndef mutable - r.itsNext = this; -#else // for ANSI-challenged compilers - (const_cast*>(&r))->itsNext = this; -#endif - } - -#ifndef NO_MEMBER_TEMPLATES - template void acquire(const linked_ptr& r) throw() - { // insert this to the list - itsPtr = r.itsPtr; - itsNext = r.itsNext; - itsNext->itsPrev = this; - itsPrev = &r; -#ifndef mutable - r.itsNext = this; -#else // for ANSI-challenged compilers - (const_cast*>(&r))->itsNext = this; -#endif - } -#endif // NO_MEMBER_TEMPLATES - - void release() - { // erase this from the list, delete if unique - if (unique()) delete itsPtr; - else { - itsPrev->itsNext = itsNext; - itsNext->itsPrev = itsPrev; - itsPrev = itsNext = 0; - } - itsPtr = 0; - } -}; - -#endif // LINKED_PTR_H