Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision c37fb9ef

Von Moritz Bunkus vor etwa 7 Jahren hinzugefügt

  • ID c37fb9ef8fda87c074eb7585c458f1400d326af0
  • Vorgänger ff424b75
  • Nachfolger ffb2fb4c

ActionBar: neuer Typ für einfachen Link in Hauptzeile (nicht in Combo)

Unterschiede anzeigen:

SL/Layout/ActionBar.pm
7 7
use Scalar::Util qw(blessed);
8 8
use SL::Layout::ActionBar::Action;
9 9
use SL::Layout::ActionBar::ComboBox;
10
use SL::Layout::ActionBar::Link;
10 11
use SL::Layout::ActionBar::Separator;
11 12

  
12 13
use constant HTML_CLASS => 'layout-actionbar';
......
18 19
my %class_descriptors = (
19 20
  action    => { class => 'SL::Layout::ActionBar::Action',    num_params => 1, },
20 21
  combobox  => { class => 'SL::Layout::ActionBar::ComboBox',  num_params => 1, },
22
  link      => { class => 'SL::Layout::ActionBar::Link',      num_params => 1, },
21 23
  separator => { class => 'SL::Layout::ActionBar::Separator', num_params => 0, },
22 24
);
23 25

  
SL/Layout/ActionBar/Link.pm
1
package SL::Layout::ActionBar::Link;
2

  
3
use strict;
4
use parent qw(SL::Layout::ActionBar::Action);
5

  
6
sub from_params {
7
  my ($class, $data) = @_;
8

  
9
  my ($text, %params) = @$data;
10
  return SL::Layout::ActionBar::Link->new(text => $text, params => \%params);
11
}
12

  
13
sub render {
14
  my ($self) = @_;
15

  
16
  return $self->p->html_tag(
17
    'a', $self->text,
18
    %{ $self->params // {} },
19
    id    => $self->id,
20
    class => 'layout-actionbar-link',
21
  );
22
}
23

  
24
1;
css/common.css
129 129
  border-style: solid;
130 130
}
131 131

  
132
div.layout-actionbar .layout-actionbar-link {
133
  margin-left: 6px;
134
  margin-right: 6px;
135
  cursor: default;
136
}
137

  
132 138
div.layout-actionbar-combobox {
133 139
  position: relative;
134 140
  display: inline-block;

Auch abrufbar als: Unified diff