View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *   http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  package org.apache.syncope.client.console.widgets;
20  
21  import org.apache.wicket.AttributeModifier;
22  import org.apache.wicket.behavior.AttributeAppender;
23  import org.apache.wicket.markup.html.WebMarkupContainer;
24  import org.apache.wicket.markup.html.basic.Label;
25  import org.apache.wicket.markup.html.panel.Panel;
26  
27  public class ProgressPanel extends Panel {
28  
29      private static final long serialVersionUID = -8854916811656228816L;
30  
31      public ProgressPanel(final String id, final ProgressBean progressBean) {
32          super(id);
33          setOutputMarkupId(true);
34  
35          add(new Label("text", progressBean.getText()));
36          add(new Label("fraction", progressBean.getFraction()));
37          add(new Label("total", progressBean.getTotal()));
38  
39          WebMarkupContainer progress = new WebMarkupContainer("progress");
40          progress.add(new AttributeModifier("style", "width: " + progressBean.getPercent() + '%'));
41          progress.add(new AttributeAppender("class", ' ' + progressBean.getCssClass()));
42          add(progress);
43      }
44  
45  }