
рд╕рдорд╕реНрдпрд╛
Qt рдореЗрдВ, рдПрдХ рдЕрджреНрднреБрдд рдЪреАрдЬ рд╣реИ - Q_PROPERTY, рдЬреЛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА QObject рдХреНрд▓рд╛рд╕ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╕рдВрдкрддреНрддрд┐ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИрдВ (рдпрд╛ рдЖрдк рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ) рдФрд░ рдЖрдкрдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдЪрдпрдирд┐рдд рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдЧреБрдгреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдВрд╡рд╛рдж рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ)ред рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рдХрд╛рд░реНрдпрдХреНрд░рдо, рдПрдХ рд╡реЗрдХреНрдЯрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рд╕рдВрдкрд╛рджрдХ, рдЕрдВрдд рдореЗрдВ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рддреЛ, рдХрдИ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИрдВ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ "рдХреЙрдиреНрдлрд╝рд┐рдЧрд░" рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рддрдВрддреНрд░ рд╣реЛрдирд╛ рддрд░реНрдХрд╕рдВрдЧрдд рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЕрдиреНрдпрдерд╛ рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рд╡рд╕реНрддреБ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕рдВрд╡рд╛рдж рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред Q_PROPERTY рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, Q_PROPERTY рдХреЗ рд╕рдВрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдорд╛рдирдХ рд╡рд┐рдЬреЗрдЯ рдирд╣реАрдВ рд╣реИред рджреВрд╕рд░реЗ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк рдЗрди рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рддреГрддреАрдп-рдкрдХреНрд╖ рд╡рд┐рдЬреЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЗ рдЧреБрдгреЛрдВ рдХреЗ рд╕рд╛рде, рдорд╛рдирдХ рд╡рд╛рд▓реЗ (рдХрдо рд╕реЗ рдХрдо рдСрдмреНрдЬреЗрдХреНрдЯрдирд╛рдо) рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, Q_PROPERTY рдкрджрд╛рдиреБрдХреНрд░рдореЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (рдХрднреА-рдХрднреА рдпрд╣ рд╕рдореВрд╣ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЧреБрдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрддрд╛ рд╣реИ); рдХреЛрдИ рд╡рд┐рд╡рд░рдг рдирд╣реАрдВ (рдкрд╛рда рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЗрд╕ рд╕рдВрдкрддреНрддрд┐ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛); GUI рдореЗрдВ Q_PROPERTY рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЙрдкрд╛рдп рдирд╣реАрдВ рд╣реИ (рдкреНрд░рдпреЛрдЬреНрдп рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП)ред
рдпрд╣ рдХрднреА-рдХрднреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд╡рд╕реНрддреБ рдХреЗ рд░реВрдк рдореЗрдВ рдЧреБрдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрддрд╛ рд╣реИ, рдорд╛рд▓рд┐рдХ рд╡рд╕реНрддреБ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реЛрддрд╛ рд╣реИред рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдкреВрд░реЗ рдорд╛рд▓рд┐рдХ рд╡рд╕реНрддреБ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛, рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЗ рдПрдХ рдЕрд▓рдЧ рдЙрдкрд╕рдореВрд╣ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдХрд╣реАрдВ рднреА рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдирд┐рд░реНрдгрдп
рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЧреБрдг рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░, рдореИрдВрдиреЗ рдПрдХ
QtnProperty рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдпрд╛ред рдЖрдЧреЗ рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдЕрдЪреНрдЫрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдХрдИ рднрд╛рдЧ рд╣реЛрддреЗ рд╣реИрдВ:
- QtnPropertyCore - рдЧреИрд░-рдЬреАрдпреВрдЖрдИ рд╕рдВрдмрдВрдзрд┐рдд рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдкреБрд╕реНрддрдХрд╛рд▓рдп
- QtnPropertyWidget - рд╕рдореНрдкрддреНрддрд┐рдпреЛрдВ рдХреЗ рд╕рдВрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рд╡рд┐рдЬреЗрдЯ, рд╕рд╛рде рд╣реА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдФрд░ рд╡рд┐рднрд┐рдиреНрди рдЧреБрдгреЛрдВ рдХреЗ рд╕рдВрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдирд┐рдзрд┐
- QtnPEG рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди (рдПрдХ рдореЙрдХ рдЬрдирд░реЗрдЯрд░ рдХреЗ рд╕рдорд╛рди) рд╣реИ рдЬреЛ рдПрдХред ++ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдкреНрд░реЙрдкрд░реНрдЯреАрд╕реЗрдЯ рдХрд╛ C ++ рд╡рд░реНрдЧ рдмрдирд╛рддрд╛ рд╣реИ (рдпрд╣ рдЧреБрдгреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реИ, рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ QML рдХреЗ рд╕рдорд╛рди рд╣реИ)
- QtnPropertyTests - QtnPropertyCore рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг
- QtnPropertyDemo рдПрдХ рдбреЗрдореЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╣реИ рдЬрд╣рд╛рдВ рдЖрдк QtnPropertyWidget рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рд╛рде рд╣реА рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реЗ рдФрд░ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рда рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ "SuperProperty.SubProperty =" рдорд╛рди
QtnPropertyCore
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдкреБрд╕реНрддрдХрд╛рд▓рдп рджреЛ рдореБрдЦреНрдп рд╡рд░реНрдЧреЛрдВ
QtnProperty рдФрд░
QtnPropertySet рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред рдкрд╣рд▓рд╛ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЧреБрдгреЛрдВ рдХреЗ рд▓рд┐рдП рдмреБрдирд┐рдпрд╛рджреА рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
QtnPropertyBool рдпрд╛
QtnPropertyFloat ), рдФрд░ рджреВрд╕рд░рд╛ рдЧреБрдгреЛрдВ рдХреЗ рдПрдХ рд╕рдореВрд╣ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
QtnProperty рдФрд░
QtnPropertySet рджреЛрдиреЛрдВ рдореЗрдВ рдПрдХ рдЖрдо рдЕрднрд┐рднрд╛рд╡рдХ рд╣реИ,
QtnPropertyBase , рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ, QObject рдХрд╛ рд╡рдВрд╢рдЬ рд╣реИред
QtnPropertyBase рдХреНрд▓рд╛рд╕ рдореЗрдВ,
QtnProperty рдФрд░
QtnPropertySet рдХреЗ рдмреАрдЪ рдЬреЛ рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп
рд╣реИ рд╡рд╣ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИ :
- QString рдирд╛рдо - рд╕рдВрдкрддреНрддрд┐ рдпрд╛ рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдирд╛рдо (рдСрдмреНрдЬреЗрдХреНрдЯрдирд╛рдо рдХреЗ рд╕рдорд╛рди)
- QString рд╡рд┐рд╡рд░рдг - рдПрдХ рдкрд╛рда рд╡рд┐рд╡рд░рдг рдЬрд┐рд╕реЗ QtnPropertyWidget рдХреЗ рдирд┐рдЪрд▓реЗ рдкреИрдирд▓ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
- qint32 рдЖрдИрдбреА - рд╕рдореВрд╣ рдореЗрдВ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рдмреАрдЪ рдЕрджреНрд╡рд┐рддреАрдп рд╕рдВрдкрддреНрддрд┐ рдЖрдИрдбреА (рдмрд╛рдЗрдирд░реА рдлреЙрд░реНрдо рдореЗрдВ рдмрдЪрдд рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рддреА рд╣реИ)
- QtnPropertyState рд╕реНрдерд┐рддрд┐ - рд╕рдВрдкрддреНрддрд┐ рдХреА рд╕реНрдерд┐рддрд┐ (рдЙрджрд╛ред QtnPropertyStateImmutable - рдЧреИрд░-рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рд╕рдВрдкрддреНрддрд┐ рдпрд╛ QtnPropertyStateInv рдЕрджреГрд╢реНрдп - рдЕрджреГрд╢реНрдп)
- рд▓реЛрдб / рд╕рд╣реЗрдЬреЗрдВ - QDataStream рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рд╣реЗрдЬреЗрдВ / рд▓реЛрдб рдХрд░реЗрдВ
- fromStr / toStr - рд╕реЗ рд╕рдВрдкрддреНрддрд┐ рдореВрд▓реНрдп рдХреЛ / QString рдореЗрдВ рдмрджрд▓реЗрдВ
- fromVariant / toVariant - рдЧреБрдг рдорд╛рди рдХреЛ / рд╕реЗ QVariant рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд░реЗрдВ
- propertyWillChange - рдПрдХ рд╕рдВрдХреЗрдд рдЬреЛ рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рдкрд╣рд▓реЗ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ (рдЬрдм рди рдХреЗрд╡рд▓ рдореВрд▓реНрдп рдмрджрд▓ рд░рд╣рд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдЕрдиреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рднреА рд╣реИрдВ - рдирд╛рдо, рд╡рд┐рд╡рд░рдг, рдЖрдИрдбреА, рд░рд╛рдЬреНрдп, рдЖрджрд┐)
- PropertyDidChange - рдПрдХ рд╕рдВрдХреЗрдд рдЬреЛ рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рдж рдЪрд╛рд▓реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ (рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд▓рд┐рдП рд╕рдордорд┐рдд рд╣реИ)
QtnPropertySet рд╡рд░реНрдЧ рдореЗрдВ рдЙрдирдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдЪреНрдЪреЗ рдХреЗ рдЧреБрдгреЛрдВ рдФрд░ рддрд░реАрдХреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╢рд╛рдорд┐рд▓ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд╛рд░ рдХреА рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд▓рд┐рдП (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ), рджреЛ рд╡рд░реНрдЧ (
QtnPropertyInt рдФрд░
QtnPropertyIntCallback ) рд╣реИрдВред рдкрд╣рд▓рд╛ рд╡рд░реНрдЧ рдореЗрдВ рдореВрд▓реНрдп рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рджреВрд╕рд░рд╛ рдореВрд▓реНрдп рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдпрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред
рдпрд╣рд╛рдВ рдЙрди рдЧреБрдгреЛрдВ рдХреА рд╕реВрдЪреА рджреА рдЧрдИ рд╣реИ рдЬреЛ рд╕реАрдзреЗ
QtnPropertyCore рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд▓рд╛рдЧреВ рдХреА рдЧрдИ рд╣реИрдВ:
- QtnPropertyBool - рдПрдХ рдмреВрд▓рд┐рдпрди рдорд╛рди рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- QtnPropertyInt - рдПрдХ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреВрд░реНрдгрд╛рдВрдХ рдорд╛рди рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- QtnPropertyUInt - рдПрдХ рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреВрд░реНрдгрд╛рдВрдХ рдорд╛рди рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- QtnPropertyFloat - рдПрдХ рдлреНрд▓реЛрдЯрд┐рдВрдЧ-рдкреЙрдЗрдВрдЯ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореВрд▓реНрдп рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- QtnPropertyDouble - рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбрдмрд▓ рд╕рдЯреАрдХ рдореВрд▓реНрдп рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- QtnPropertyEnum - рдХрд┐рд╕реА рдПрдиреНрдпреВрдорд░реЗрд╢рди рд╕реЗ рдорд╛рди рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- QtnPropertyEnumFlags - рдЧрдгрди рд╕реЗ рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- QtnPropertyQString - рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдорд╛рди рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- QtnPropertyQPoint - QPoint рдорд╛рди рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- QtnPropertyQSize - QSize рдорд╛рди рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- QtnPropertyQRect - QRect рдорд╛рди рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- QtnPropertyQFont - QFont рдорд╛рди рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- QtnPropertyQColor - QColor рдореВрд▓реНрдп рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
рд╕рднреА рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдЧреБрдг (
QtnPropertyInt ,
QtnPropertyUInt ,
QtnPropertyFloat ,
QtnPropertyDouble ) рдХреЗ рддреАрди рдЕрддрд┐рд░рд┐рдХреНрдд рддрд░реАрдХреЗ рд╣реИрдВ:
- рдорд┐рдирд╡реИрд▓реНрдпреВ рдиреНрдпреВрдирддрдо рдЕрдиреБрдордд рдореВрд▓реНрдп рд╣реИред
- maxValue рдЕрдзрд┐рдХрддрдо рдЕрдиреБрдордд рдореВрд▓реНрдп рд╣реИред
- stepValue - рдорд╛рди рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдоред
QtnPropertyWidget
рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рджреЛ рд╡рд┐рдЬреЗрдЯ рдФрд░ рдкреНрд░реЙрдкрд░реНрдЯреА рдбреЗрд▓реАрдЧреЗрдЯреНрд╕ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
QtnPropertyView рд╡рд░реНрдЧ рдЧреБрдгреЛрдВ рдХреЗ рдПрдХ рд╕реЗрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреЗрдбрд╝ рд╡рд┐рдЬреЗрдЯ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред
QtnPropertyWidget рдХреНрд▓рд╛рд╕ рд╕рдордЧреНрд░ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ
QtnPropertyView рдФрд░ QLabel рдХреЗ рдирд┐рдЪрд▓реЗ рдкреИрдирд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИред

рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╕рдВрдкрддреНрддрд┐ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдпрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░рддрд┐рдирд┐рдзрд┐рдпреЛрдВ рдХреЛ рдкреЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
QtnPropertyBool рдХреЗ рд▓рд┐рдП рджреЛ рдкреНрд░рддрд┐рдирд┐рдзрд┐ рд╣реИрдВ:
QtnPropertyDelegateBoolCheck рдФрд░
QtnPropertyDelegateBoolCombobox ред рдкрд╣рд▓рд╛ рдПрдХ рдЪреЗрдХрдмреЙрдХреНрд╕ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рджреВрд╕рд░рд╛ рджреЛ рдХрд╕реНрдЯрдо рдореВрд▓реНрдпреЛрдВ (рд╕рдЪреНрдЪреЗ рдФрд░ рдЭреВрдареЗ) рдХреЗ рд╕рд╛рде рдПрдХ рдХреЙрдореНрдмреЛрдХреНрд╕ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЖрдк рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдлрд┐рд░ рдирдП рдкреНрд░рддрд┐рдирд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рднреА рдЧреБрдг рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рдХрднреА-рдХрднреА рдПрдХ рдирдП рд╕рдВрдкрддреНрддрд┐ рдкреНрд░рдХрд╛рд░ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рдирдпрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐ рдкреНрд░рдХрд╛рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЖрд╕рд╛рди рдФрд░ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдлрд╝рд╛рдЗрд▓ рдкрде рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреБрдг
QtnPropertyDelegateQStringFile рдкреНрд░рддрд┐рдирд┐рдзрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ
QtnPropertyQString рдХреЗ рд▓рд┐рдП
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ред
рдХреИрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдкрд╛рда рд╕рдВрдкрд╛рджрдХ рдХреЗ рд▓рд┐рдП рдЧреБрдгреЛрдВ рдХрд╛ рдПрдХ рдЫреЛрдЯрд╛ рд╕реЗрдЯ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред
рдпрд╣ рд╡рд╣ рд╣реИ рдЬреЛ рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдФрд░ рдпрд╣рд╛рдБ рд╣реИ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдРрд╕реА рдкреНрд░реЙрдкрд░реНрдЯреА рд╕реЗрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:
QtnPropertySet* textProperties = new QtnPropertySet(owner); QtnPropertyBool* enableWrapping = new QtnPropertyBool(textProperties); enableWrapping->setName(tr("enableWrapping")); enableWrapping->setDescription(tr("Enable/disable text wrapping")); enableWrapping->setValue(true); QtnPropertyQColor* textColor = new QtnPropertyQColor(textProperties); textColor->setName(tr("textColor")); textColor->setDescription(tr("Foreground text color")); textColor->setValue(QColor(0, 0, 0)); QtnPropertySet* Tabulation = new QtnPropertySet(textProperties) Tabulation->setName(tr("Tabulation")); Tabulation->setDescription(tr("Tabulation settings")); QtnPropertyBool* replaceWithSpaces = new QtnPropertyBool(Tabulation); replaceWithSpaces->setName(tr("replaceWithSpaces"); replaceWithSpaces->setDescription(tr("Automatically replace tabs with spaces")); replaceWithSpaces->setValue(false); QtnPropertyUInt* tabSize = new QtnPropertyUInt(Tabulation); tabSize->setName(tr("tabSize")); tabSize->setDescription(tr("Number of spaces to be placed.")); tabSize->setState(QtnPropertyStateImmutable); tabSize->setValue(4); tabSize->setMinValue(1); tabSize->setMaxValue(10);
рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП рдЬреАрд╡рди рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП (рдпрд╛ рдЧреИрд░-рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рднреА рджреЗрдВ), рдПрдХ рдЫреЛрдЯрд╛
рдХреНрдпреВрдЯреАрдПрдирдкреАрдИрдЬреА рдХреЛрдб рдЬрдирд░реЗрдЯрд░
рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдпрд╣рд╛рдБ Text.pef рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рд╡рд░реНрдгрди рд╣реИ:
property_set Text { Bool enableWrapping { description = "Enable/disable text wrapping"; value = true; } QColor textColor { description = "Foreground text color"; value = QColor(0, 0, 0); } property_set Tabs Tabulation { description = "Tabulation settings"; Bool replaceWithSpaces { description = "Automatically replace tabs with spaces"; value = false;
рд╕рд░рд▓ рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдкрд░реНрдпрд╛рдкреНрддред
QtnPEG рджреЛ рдлрд╛рдЗрд▓реЗрдВ рдмрдирд╛рддрд╛ рд╣реИ: Text.peg.h рдФрд░ Text.peg.cpp, рдЬрд╣рд╛рдВ рджреЛ рдХрдХреНрд╖рд╛рдПрдВ рд╕реНрдерд┐рдд рд╣реИрдВред
QtnPropertySetText рдФрд░
QtnPropertySetTabs QtnPropertySet рд╕реЗ
рдирд┐рдХрд▓реА рдХрдХреНрд╖рд╛рдПрдВ рд╣реИрдВред
рдЙрддреНрдкрдиреНрди рд╡рд░реНрдЧреЛрдВ рдореЗрдВ, рдЖрдк рдирд┐рдореНрди
рдЙрдк-рд╕рдВрдкрддреНрддрд┐ рдШреЛрд╖рдгрд╛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
QtnPropertySetText :
рдЗрд╕ рдкреНрд░рдХрд╛рд░, C ++ рдХреЛрдб рдореЗрдВ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЗрд╕ рд╡рд░реНрдЧ рдХреЗ рд╕рд╛рде рдЦреЗрддреЛрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
void doSomething(const QtnPropertySetText& textParams, QString& text) { if (textParams.Tabulation.replaceWithSpaces) { QString spaces(QChar::Space, textParams.Tabulation.tabSize); text.replace(QChar::Tabulation, spaces); } }
рдкрд░рд┐рдгрд╛рдо
рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдореИрдВ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рджреЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред
рдореБрдЭреЗ рдЦреБрд╢реА рд╣реЛрдЧреА рдЕрдЧрд░ рдпрд╣ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЬрд╣рд╛рдВ рдХрдИ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реИрдВ рдФрд░ рд╣рд░ рдЪреАрдЬ рдХреЗ рд▓рд┐рдП рдПрдХ рдЬреАрдпреВрдЖрдИ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рдФрд░ рд╕рдм рдХреБрдЫ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╣реИред рдпрджрд┐, рдЖрдкрдХреА рд░рд╛рдп рдореЗрдВ,
QtnProperty рдХреЗ рдкреВрд░реНрдг рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВред