Skip to content

Commit

Permalink
UI|Client: Animate alerts and server list items as they appear
Browse files Browse the repository at this point in the history
  • Loading branch information
skyjake committed Jan 26, 2014
1 parent 9bd6382 commit 5d3d425
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 6 deletions.
7 changes: 4 additions & 3 deletions doomsday/client/data/defaultstyle.pack/rules.dei
Expand Up @@ -36,9 +36,10 @@ group slider {
group dialog {
rule gap { constant $= UNIT * 2 }

rule about.width { constant $= UNIT * 80 }
rule message.width { constant $= UNIT * 115 }
rule download.width { constant $= UNIT * 115 }
rule about.width { constant $= UNIT * 80 }
rule message.width { constant $= UNIT * 115 }
rule download.width { constant $= UNIT * 115 }
rule multiplayer.width { constant $= UNIT * 80 }
}

group alerts {
Expand Down
2 changes: 2 additions & 0 deletions doomsday/client/src/ui/dialogs/alertdialog.cpp
Expand Up @@ -164,6 +164,8 @@ DENG_GUI_PIMPL(AlertDialog)
label.setTextStyle(&styling);
label.setMaximumTextWidth(style().rules().rule("alerts.width").valuei());
label.setSizePolicy(ui::Expand, ui::Expand);
label.setAppearanceAnimation(LabelWidget::AppearGrowVertically, 0.5);
label.setAlignment(ui::AlignBottom);
label.setImage(style().images().image("alert"));
label.setOverrideImageSize(style().fonts().font("default").height().value());
label.setImageAlignment(ui::AlignTop);
Expand Down
12 changes: 9 additions & 3 deletions doomsday/client/src/ui/dialogs/multiplayerdialog.cpp
Expand Up @@ -70,9 +70,12 @@ DENG_GUI_PIMPL(MultiplayerDialog)
//LabelWidget *info;
ButtonWidget *extra;
ButtonWidget *join;
QScopedPointer<SequentialLayout> layout;

ServerWidget()
{
setBehavior(ContentClipping);

add(title = new LabelWidget);
//add(info = new LabelWidget);
add(extra = new ButtonWidget);
Expand All @@ -82,19 +85,22 @@ DENG_GUI_PIMPL(MultiplayerDialog)
join->setText(tr("Join"));

title->setSizePolicy(ui::Expand, ui::Expand);
title->setAppearanceAnimation(LabelWidget::AppearGrowVertically, 0.5);
title->setAlignment(ui::AlignTop);
title->setTextAlignment(ui::AlignRight);
title->setTextLineAlignment(ui::AlignLeft);
title->setImageAlignment(ui::AlignTop);
title->setMaximumTextWidth(style().rules().rule("dialog.multiplayer.width").valuei());

//info->setSizePolicy(ui::Expand, ui::Expand);
extra->setSizePolicy(ui::Expand, ui::Expand);
join->setSizePolicy(ui::Expand, ui::Expand);

join->disable();

SequentialLayout layout(rule().left(), rule().top(), ui::Right);
layout << *title << *extra << *join;
rule().setSize(layout.width(), layout.height());
layout.reset(new SequentialLayout(rule().left(), rule().top(), ui::Right));
*layout << *title << *extra << *join;
rule().setSize(layout->width(), title->rule().height());
}

void updateFromItem(ServerListItem const &item)
Expand Down

0 comments on commit 5d3d425

Please sign in to comment.