AppearanceConfigWidget::AppearanceConfigWidget(QWidget * parent) : QWidget(parent) { setupUi(this); QString conf_ids[]={ ParsersAttributes::GLOBAL, ParsersAttributes::CONSTRAINTS, ParsersAttributes::OBJ_SELECTION, ParsersAttributes::POSITION_INFO, ParsersAttributes::POSITION_INFO, ParsersAttributes::OBJECT_TYPE, ParsersAttributes::LOCKER_ARC, ParsersAttributes::LOCKER_BODY, ParsersAttributes::TABLE_SCHEMA_NAME, ParsersAttributes::TABLE_NAME, ParsersAttributes::TABLE_BODY, ParsersAttributes::TABLE_EXT_BODY, ParsersAttributes::TABLE_TITLE, BaseObject::getSchemaName(OBJ_RULE), BaseObject::getSchemaName(OBJ_RULE), BaseObject::getSchemaName(OBJ_INDEX), BaseObject::getSchemaName(OBJ_INDEX), BaseObject::getSchemaName(OBJ_TRIGGER), BaseObject::getSchemaName(OBJ_TRIGGER), ParsersAttributes::VIEW_SCHEMA_NAME, ParsersAttributes::VIEW_NAME, ParsersAttributes::VIEW_BODY, ParsersAttributes::VIEW_TITLE, ParsersAttributes::ALIAS, ParsersAttributes::REF_COLUMN, ParsersAttributes::REF_TABLE, ParsersAttributes::REFERENCE, BaseObject::getSchemaName(OBJ_TEXTBOX), ParsersAttributes::COLUMN, ParsersAttributes::COLUMN, ParsersAttributes::INH_COLUMN, ParsersAttributes::PROT_COLUMN, ParsersAttributes::PK_COLUMN, ParsersAttributes::PK_COLUMN, ParsersAttributes::FK_COLUMN, ParsersAttributes::FK_COLUMN, ParsersAttributes::UQ_COLUMN, ParsersAttributes::UQ_COLUMN, ParsersAttributes::NN_COLUMN, ParsersAttributes::NN_COLUMN, ParsersAttributes::RELATIONSHIP, ParsersAttributes::LABEL, ParsersAttributes::LABEL, ParsersAttributes::ATTRIBUTE, ParsersAttributes::ATTRIBUTE }; int i, count=element_cmb->count(), //This auxiliary vector stores the id of elements that represents color/font conf. of objects obj_conf_ids_vect[]={ 2, 4, 6, 7, 10, 11, 12, 14, 16, 18, 21, 22, 26, 27, 29, 33, 35, 37, 39, 40, 42, 44 }; vector<int> conf_obj_ids(obj_conf_ids_vect, obj_conf_ids_vect + sizeof(obj_conf_ids_vect) / sizeof(int)); conf_items.resize(count); for(i=0; i < count; i++) { conf_items[i].conf_id=conf_ids[i]; conf_items[i].obj_conf=(std::find(conf_obj_ids.begin(), conf_obj_ids.end(), i)!=conf_obj_ids.end()); } model=new DatabaseModel; scene=new ObjectsScene; scene->setSceneRect(QRectF(0,0,500,500)); viewp=new QGraphicsView(scene); viewp->setEnabled(false); viewp->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); viewp->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); viewp->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); viewp->setRenderHint(QPainter::Antialiasing); viewp->setRenderHint(QPainter::TextAntialiasing); viewp->setRenderHint(QPainter::SmoothPixmapTransform); viewp->setAlignment(Qt::AlignLeft | Qt::AlignTop); viewp->setViewportUpdateMode(QGraphicsView::SmartViewportUpdate); viewp->centerOn(0,0); appearanceconfig_grid->addWidget(viewp, appearanceconfig_grid->count()-1, 0, 1, 5); connect(element_cmb, SIGNAL(currentIndexChanged(int)), this, SLOT(enableConfigElement(void))); connect(color1_tb, SIGNAL(clicked(void)), this, SLOT(applyElementColor(void))); connect(color2_tb, SIGNAL(clicked(void)), this, SLOT(applyElementColor(void))); connect(color3_tb, SIGNAL(clicked(void)), this, SLOT(applyElementColor(void))); connect(font_cmb, SIGNAL(currentFontChanged(QFont)), this, SLOT(applyFontStyle(void))); connect(font_size_spb, SIGNAL(valueChanged(double)), this, SLOT(applyFontStyle(void))); connect(bold_chk, SIGNAL(toggled(bool)), this, SLOT(applyFontStyle(void))); connect(underline_chk, SIGNAL(toggled(bool)), this, SLOT(applyFontStyle(void))); connect(italic_chk, SIGNAL(toggled(bool)), this, SLOT(applyFontStyle(void))); }
AppearanceConfigWidget::AppearanceConfigWidget(QWidget * parent) : BaseConfigWidget(parent) { setupUi(this); QString conf_ids[]={ ParsersAttributes::GLOBAL,ParsersAttributes::CONSTRAINTS, ParsersAttributes::OBJ_SELECTION, ParsersAttributes::POSITION_INFO, ParsersAttributes::POSITION_INFO, ParsersAttributes::OBJECT_TYPE, ParsersAttributes::LOCKER_ARC, ParsersAttributes::LOCKER_BODY, ParsersAttributes::TABLE_SCHEMA_NAME, ParsersAttributes::TABLE_NAME, ParsersAttributes::TABLE_BODY, ParsersAttributes::TABLE_EXT_BODY, ParsersAttributes::TABLE_TITLE, BaseObject::getSchemaName(OBJ_RULE), BaseObject::getSchemaName(OBJ_RULE), BaseObject::getSchemaName(OBJ_INDEX), BaseObject::getSchemaName(OBJ_INDEX), BaseObject::getSchemaName(OBJ_TRIGGER), BaseObject::getSchemaName(OBJ_TRIGGER), ParsersAttributes::VIEW_SCHEMA_NAME, ParsersAttributes::VIEW_NAME, ParsersAttributes::VIEW_BODY /*21*/, ParsersAttributes::VIEW_EXT_BODY /*22*/, ParsersAttributes::VIEW_TITLE /*23*/, ParsersAttributes::ALIAS, ParsersAttributes::REF_COLUMN, ParsersAttributes::REF_TABLE, ParsersAttributes::REFERENCE, BaseObject::getSchemaName(OBJ_TEXTBOX), ParsersAttributes::COLUMN, ParsersAttributes::COLUMN, ParsersAttributes::INH_COLUMN, ParsersAttributes::PROT_COLUMN, ParsersAttributes::PK_COLUMN, ParsersAttributes::PK_COLUMN, ParsersAttributes::FK_COLUMN, ParsersAttributes::FK_COLUMN, ParsersAttributes::UQ_COLUMN, ParsersAttributes::UQ_COLUMN, ParsersAttributes::NN_COLUMN, ParsersAttributes::NN_COLUMN, ParsersAttributes::RELATIONSHIP, ParsersAttributes::LABEL, ParsersAttributes::LABEL, ParsersAttributes::ATTRIBUTE, ParsersAttributes::ATTRIBUTE, ParsersAttributes::TAG, ParsersAttributes::TAG, ParsersAttributes::PLACEHOLDER}; int i, count=element_cmb->count(), //This auxiliary vector stores the id of elements that represents color/font conf. of objects obj_conf_ids_vect[]={ 2, 4, 6, 7, 10, 11, 12, 14, 16, 18, 21, 22, 23, 27, 28, 30, 34, 36, 38, 40, 41, 43, 45, 47, 48 }; vector<int> conf_obj_ids(obj_conf_ids_vect, obj_conf_ids_vect + sizeof(obj_conf_ids_vect) / sizeof(int)); conf_items.resize(count); for(i=0; i < count; i++) { conf_items[i].conf_id=conf_ids[i]; conf_items[i].obj_conf=(std::find(conf_obj_ids.begin(), conf_obj_ids.end(), i)!=conf_obj_ids.end()); } color_picker=new ColorPickerWidget(3, this); model=new DatabaseModel; scene=new ObjectsScene; scene->setSceneRect(QRectF(0,0,500,500)); placeholder=new RoundedRectItem; viewp=new QGraphicsView(scene); viewp->setEnabled(false); viewp->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); viewp->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); viewp->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); viewp->setRenderHint(QPainter::Antialiasing); viewp->setRenderHint(QPainter::TextAntialiasing); viewp->setRenderHint(QPainter::SmoothPixmapTransform); viewp->setAlignment(Qt::AlignLeft | Qt::AlignTop); viewp->setViewportUpdateMode(QGraphicsView::SmartViewportUpdate); viewp->centerOn(0,0); QGridLayout *grid=dynamic_cast<QGridLayout *>(appearance_frm->layout()); grid->addWidget(color_picker, 3, 1, 1, 4); grid->addWidget(viewp, 4 , 0, 1, 5); connect(element_cmb, SIGNAL(currentIndexChanged(int)), this, SLOT(enableConfigElement(void))); connect(font_cmb, SIGNAL(currentFontChanged(QFont)), this, SLOT(applyFontStyle(void))); connect(font_size_spb, SIGNAL(valueChanged(double)), this, SLOT(applyFontStyle(void))); connect(bold_chk, SIGNAL(toggled(bool)), this, SLOT(applyFontStyle(void))); connect(underline_chk, SIGNAL(toggled(bool)), this, SLOT(applyFontStyle(void))); connect(italic_chk, SIGNAL(toggled(bool)), this, SLOT(applyFontStyle(void))); connect(color_picker, SIGNAL(s_colorChanged(unsigned, QColor)), this, SLOT(applyElementColor(unsigned, QColor))); connect(color_picker, &ColorPickerWidget::s_colorsChanged, [=](){ for(unsigned i=0; i < color_picker->getColorCount(); i++) applyElementColor(i, color_picker->getColor(i)); }); }