Inspector de obiecte și metadate

Pagina 1 din 7

Subiectul acestui articol este inspectorul de obiecte ca mijloc disponibil pentru utilizatorul final al unui program de aplicații. Însăși noțiunea de „inspector“ este interpretat în acest caz este foarte larg: Inspector - o aplicație de instrumente cu care utilizatorul poate vizualiza și modifica proprietățile acelor obiecte cu care funcționează. Rețineți că vorbim despre orice obiecte ale stratului de aplicație, și nu doar despre componentele vizuale (ca în Delphi).







Motivația și afirmația problemei

Când am încercat să formulez cerințe pentru inspectorul de obiecte, am primit următoarea listă:

inspectorul ar trebui să poată lucra cu obiecte de orice tip. Originea obiectelor din orice clasă de bază specială nu se presupune,

obiectele pot avea o structură internă complexă, care conține obiecte imbricate, care, la rândul lor, pot avea obiecte imbricate. Destinarea obiectelor este nelimitată (în limite rezonabile)







funcția de clasă ObjectName (AObject: TObject): String; virtuale;

funcția de clasă TypeName: String; virtuale;

funcția de tip TypeInfo: PGsvObjectInspectorPropertyInfo; virtuale;

funcția de clasă ChildrenInfo (indexul întreg):

procedură de clasă FillList (AObject: TObject; List: TStrings); virtuale;

procedură de clasă ShowDialog (Inspector: TComponent;

const EditRect: TRect); virtuale;

funcția de clasă IntegerToString (valoarea const: LongInt): String; virtuale;

funcția de clasă StringToInteger (valoarea const: String): LongInt; virtuale;

funcția de clasă CharToString (const Valoare: Char): String; virtuale;

Funcția de clasă StringToChar (valoarea const: String): Char; virtuale;

funcția clasă FloatToString (valoarea const: extinsă): String; virtuale;

funcția de clasă StringToFloat (valoarea const: String): Extended; virtuale;

funcția de clasă ObjectToString (valoarea const: TObject): String; virtuale;







Trimiteți-le prietenilor: