2107 :
2108 base ( std::make_shared<t_build_block_editor> ( attr ), parent, owned ),
2116{
2118
2119 setWindowTitle ( QString ( "Edit Attribute : %1" ).arg ( Virtue.p_name.c_str() ) );
2120 QVBoxLayout * MainLayout = new QVBoxLayout ( this );
2121 MainLayout->setSpacing ( 0 );
2122 MainLayout->setMargin ( 0 );
2123 MainLayout->setContentsMargins ( 0, 0, 0, 0 );
2124 QHBoxLayout * ButtonLayout = new QHBoxLayout();
2126 ListWidget->setContextMenuPolicy ( Qt::CustomContextMenu );
2127
2128 switch ( Virtue.p_type )
2129 {
2130
2131
2135 {
2136 combo * Combo = new combo ( attr, this );
2137 MainLayout->addWidget ( Combo );
2138 connect ( Combo->Combo, SIGNAL ( activated ( const QString & ) ), this,
2139 SLOT (
AddToDataList (
const QString & ) ), Qt::UniqueConnection );
2141
2142 break;
2143 }
2144
2145
2146
2157 {
2158 numericattr * Numeric = new numericattr ( Virtue, this );
2159 MainLayout->addWidget ( Numeric );
2161 Qt::UniqueConnection );
2162 connect ( Numeric, SIGNAL ( signal_value_duplicated() ),
this, SLOT (
LineValueChanged() ),
2163 Qt::UniqueConnection );
2166 Numeric->GetLineEdit()->setFrame ( false );
2167 Numeric->GetLineEdit()->setPlaceholderText ( "Type Here" );
2168 Numeric->setStyleSheet (
2169 "QLineEdit { background: #c0c0c0;} QLineEdit:focus {background: white;}" );
2170 Numeric->GetLineEdit()->setFixedHeight ( 24 );
2171 ListWidget->setFrameStyle ( QFrame::NoFrame );
2172 break;
2173 }
2174
2175
2176
2180 {
2181 stringattr *
String =
new stringattr ( Virtue,
this );
2182 String->SetMultiCheck (
true );
2183 MainLayout->addWidget ( String );
2185 Qt::UniqueConnection );
2188 String->GetLineEdit()->setFrameStyle(QFrame::NoFrame);
2189
2190 String->setStyleSheet (
"QLineEdit { background: #c0c0c0;} "
2191 "QLineEdit:focus {background: white;}" );
2192
2193
2194 ListWidget->setFrameStyle ( QFrame::NoFrame );
2195 break;
2196 }
2197
2198 default:
2199 break;
2200 }
2201
2202 OkButton =
new QPushButton ( tr (
"Apply" ) );
2203
2204 ButtonLayout->addWidget (
OkButton );
2205
2207
2209 connect (
ListWidget, SIGNAL ( customContextMenuRequested ( QPoint ) ),
this,
2211
2213 MainLayout->addLayout ( ButtonLayout );
2216
2217 setLayout ( MainLayout );
2218
2219 if ( Virtue.p_is_not_null )
2220 {
2223 }
2224
2226 {
2228 }
2229
2230 else
2231 {
2232 QFont Font;
2233 QFontMetrics FontMetrics ( Font );
2234 setMinimumWidth (
2235 2 * FontMetrics.width ( QString ( "Edit Relationship: %1" ).arg ( Virtue.p_name.c_str() ) )
2236 - 15 );
2237 setMinimumHeight ( 100 );
2238 }
2239
2242}