Сохранение сгруппированных свойств у своего компонента
В общем я создал сгруппированное свойство в своем созданном компоненте все работает и все видит.
Но вот не могу никак заставить сохранять введенные мной значение свойств.
я понимаю что это связано с созданием каждый раз нового экземпляра класса
В общем ребята помогите плз мосГ сломан окончательно
привожу проблемный код:
Код:
//header's
class TPrintSettings: public TObject
{
private:
int m_n1;
int m_n2;
void __fastcall SetM1(int n);
int __fastcall GetM1();
void __fastcall SetM2(int n);
int __fastcall GetM2();
public:
TPrintSettings();
__published:
__property int cgLeft= {read=GetM1, write=SetM1,nodefault};
__property int cgTop= {read=GetM2, write=SetM2,nodefault};
};
//TCoolTable
class PACKAGE TCoolTable : public TStringGrid
{
private:
TPrintSettings *pPrintSettings;
__published:
__property TPrintSettings *PrintSettings = {read=pPrintSettings, write=pPrintSettings, nodefault};
};
class TPrintSettings: public TObject
{
private:
int m_n1;
int m_n2;
void __fastcall SetM1(int n);
int __fastcall GetM1();
void __fastcall SetM2(int n);
int __fastcall GetM2();
public:
TPrintSettings();
__published:
__property int cgLeft= {read=GetM1, write=SetM1,nodefault};
__property int cgTop= {read=GetM2, write=SetM2,nodefault};
};
//TCoolTable
class PACKAGE TCoolTable : public TStringGrid
{
private:
TPrintSettings *pPrintSettings;
__published:
__property TPrintSettings *PrintSettings = {read=pPrintSettings, write=pPrintSettings, nodefault};
};
Код:
//cpp's
//TPrintSettings
TPrintSettings::TPrintSettings(){
}
void __fastcall TPrintSettings::SetM1(int n)
{
m_n1 = n;
}
int __fastcall TPrintSettings::GetM1()
{
return m_n1;
}
void __fastcall TPrintSettings::SetM2(int n)
{
m_n2 = n;
}
int __fastcall TPrintSettings::GetM2()
{
return m_n2;
}
//TCoolTable
__fastcall TCoolTable::TCoolTable(TComponent* Owner): TStringGrid(Owner)
{
pPrintSettings = new TPrintSettings();
}
//TPrintSettings
TPrintSettings::TPrintSettings(){
}
void __fastcall TPrintSettings::SetM1(int n)
{
m_n1 = n;
}
int __fastcall TPrintSettings::GetM1()
{
return m_n1;
}
void __fastcall TPrintSettings::SetM2(int n)
{
m_n2 = n;
}
int __fastcall TPrintSettings::GetM2()
{
return m_n2;
}
//TCoolTable
__fastcall TCoolTable::TCoolTable(TComponent* Owner): TStringGrid(Owner)
{
pPrintSettings = new TPrintSettings();
}