21 if (ev->type()==QEvent::MouseButtonPress &&
isEnabled){emit(
clicked());
return true;}
38 chkOccupied->setProperty(
"HoverStyled",QVariant(
true));
44 btnCopy->setToolTip(QString(tr(
"Copy")));
45 btnCopy->setProperty(
"HoverStyled",QVariant(
true));
46 btnCopy->setIcon(QIcon::fromTheme(QString(
"edit-copy"),QPixmap(
":/common/edit-copy")));
52 btnPaste->setToolTip(QString(tr(
"Paste")));
53 btnPaste->setProperty(
"HoverStyled",QVariant(
true));
54 btnPaste->setIcon(QIcon::fromTheme(QString(
"edit-paste"),QPixmap(
":/common/edit-paste")));
60 btnRemove->setToolTip(QString(tr(
"Remove")));
61 btnRemove->setProperty(
"HoverStyled",QVariant(
true));
62 btnRemove->setIcon(QIcon::fromTheme(QString(
"edit-clear"),QPixmap(
":/common/edit-clear")));
67 QHBoxLayout *btnLayout =
new QHBoxLayout;
68 btnLayout->setContentsMargins(0,0,0,0);
73 btnLayout->setSpacing(1);
75 QHBoxLayout *LeftTopLayout =
new QHBoxLayout;
76 LeftTopLayout->setContentsMargins(0,0,0,0);
77 LeftTopLayout->addWidget(
lblName);
78 LeftTopLayout->addWidget(
lblSex);
79 LeftTopLayout->addSpacerItem(
new QSpacerItem(0,0,QSizePolicy::Expanding,QSizePolicy::Preferred));
80 LeftTopLayout->setSpacing(1);
82 QHBoxLayout *RightTopLayout =
new QHBoxLayout;
83 RightTopLayout->setContentsMargins(0,0,0,0);
84 RightTopLayout->addWidget(
lblRank);
85 RightTopLayout->addSpacerItem(
new QSpacerItem(0,0,QSizePolicy::Expanding,QSizePolicy::Preferred));
86 RightTopLayout->setSpacing(1);
88 QVBoxLayout *rightSideLayout =
new QVBoxLayout;
89 rightSideLayout->setContentsMargins(0,0,0,0);
90 rightSideLayout->addLayout(LeftTopLayout);
91 rightSideLayout->addLayout(RightTopLayout);
93 QHBoxLayout *innerFrameLayout =
new QHBoxLayout;
94 innerFrameLayout->addWidget(
lblType);
95 innerFrameLayout->addLayout(rightSideLayout);
99 innerFrame->setProperty(
"HoverStyled",QVariant(
true));
101 QVBoxLayout *outerFrameLayout =
new QVBoxLayout;
102 outerFrameLayout->setContentsMargins(3,3,3,3);
103 outerFrameLayout->addLayout(btnLayout);
109 QVBoxLayout *finalLayout=
new QVBoxLayout;
110 finalLayout->setContentsMargins(0,0,0,0);
113 this->setLayout(finalLayout);
114 this->setSizePolicy(QSizePolicy::Minimum,QSizePolicy::Minimum);
126 case 0:
lblType->setPixmap(QPixmap(
"://chocobo/yellow").scaled(
lblType->size(),Qt::IgnoreAspectRatio,Qt::SmoothTransformation));
break;
127 case 1:
lblType->setPixmap(QPixmap(
"://chocobo/green").scaled(
lblType->size(),Qt::IgnoreAspectRatio,Qt::SmoothTransformation));
break;
128 case 2:
lblType->setPixmap(QPixmap(
"://chocobo/blue").scaled(
lblType->size(),Qt::IgnoreAspectRatio,Qt::SmoothTransformation));
break;
129 case 3:
lblType->setPixmap(QPixmap(
"://chocobo/black").scaled(
lblType->size(),Qt::IgnoreAspectRatio,Qt::SmoothTransformation));
break;
130 case 4:
lblType->setPixmap(QPixmap(
"://chocobo/gold").scaled(
lblType->size(),Qt::IgnoreAspectRatio,Qt::SmoothTransformation));
break;
131 default:
lblType->setPixmap(QPixmap(
""));
break;
141 if(male){
lblSex->setText(QString::fromUtf8(
"♂"));}
142 else{
lblSex->setText(QString::fromUtf8(
"♀"));}
147 if (sex==0){
lblSex->setText(QString::fromUtf8(
"♂"));}
148 else if(sex==1){
lblSex->setText(QString::fromUtf8(
"♀"));}
149 else{
lblSex->setText(
"");}
154 if(wins<0){
lblRank->setText(
"");}
155 else if(wins<3){
lblRank->setText(tr(
"Rank:C"));}
156 else if(wins<6){
lblRank->setText(tr(
"Rank:B"));}
157 else if(wins<9){
lblRank->setText(tr(
"Rank:A"));}
158 else{
lblRank->setText(tr(
"Rank:S"));}
196 QString fontStyle =QString(
"font-size:%1pt;background-color:rgba(0,0,0,0);").arg(fontSize);
197 lblName->setStyleSheet(fontStyle);
198 lblSex->setStyleSheet(fontStyle);
199 lblRank->setStyleSheet(fontStyle);
200 lblType->setStyleSheet(fontStyle);
217 Style.append(Style.insert(Style.lastIndexOf(
"]")+1,
":enabled:hover"));
218 Style.prepend(
"QWidget[HoverStyled=\"true\"]{background-color:rgba(0,0,0,0);}");
230 SelectedBkStyle.prepend(
"QWidget[HoverStyled=\"true\"]{background-color:");
233 backgroundColor.prepend(
"QPushButton:enabled{background-color:rgba(0,0,0,0);border:0px solid;} QWidget[HoverStyled=\"true\"]:enabled:hover{background-color:");
234 backgroundColor.append(
"}");
235 this->setStyleSheet(backgroundColor);
void copyPushed(void)
copy has been pressed
void setName(QString decodedName)
Set string to be shown as chocobo's name.
QLabel * lblType
isEnabled hold if enabled
ChocoboLabel(qreal Scale=1, QString titleText="", bool occupied=false, QWidget *parent=0)
Create a new Chocobo label.
QFrame * outerFrame
outer frame of widget contains the label checkbox, copy,paste,remove buttons
void pastePushed(void)
paste has been pressed
void setSelected(bool selected)
Change if the label looks selected.
QFrame * innerFrame
inner frame of widget contains all the chocobo into
void enable(bool enabled)
enable/disable inner part of the form when needed
void setTitle(QString title)
The occupied checkbox has been toggled.
void setType(int type)
Set the type of chocobo shown on the label.
bool isOccupied(void)
occupied state
void setRank(int wins)
Show the racing rank of the chocobo.
QString SelectedBkStyle
style for background when selected
void clicked()
Emit Signal: the widget has been clicked.
void paste()
Emit Signal: the paste button pressed.
QPushButton * btnRemove
remove button
void copy()
Emit Signal: the copy button pressed.
void removePushed(void)
remove has been pressed
QLabel * lblRank
label to show rank
void setOccupied(bool occupied)
Set if the stall is occupied.
bool isEnabled
isEnabled hold if enabled
void occupiedToggled(bool occupied)
the occupied checkbox has been toggled
QCheckBox * chkOccupied
checkbox to show if occupied
QLabel * lblName
label to show name
void setFontSize(int fontSize)
Set the size of the labels font.
void chkOccupiedToggled(bool occupied)
occupied clicked
void setCheckBoxStyle(QString styleSheet)
style the checkboxes of this widget easily.
QLabel * lblSex
label to show sex
void setSex(bool Male)
Set the sex of the chocobo.
QPushButton * btnPaste
paste button
void setHoverColorStyle(QString backgroundColor)
Set the style for when you hover.
QPushButton * btnCopy
copy button
void clearLabel(void)
Clear the labels data.