You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by fm...@apache.org on 2013/03/15 14:15:00 UTC

svn commit: r1456943 - in /syncope/trunk/console/src/main: java/org/apache/syncope/console/pages/ java/org/apache/syncope/console/pages/panels/ java/org/apache/syncope/console/wicket/extensions/markup/html/repeater/data/table/ java/org/apache/syncope/c...

Author: fmartelli
Date: Fri Mar 15 13:14:59 2013
New Revision: 1456943

URL: http://svn.apache.org/r1456943
Log:
Fixes for SYNCOPE-329 and some major improvements about reload and change view table icons position

Added:
    syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/extensions/markup/html/repeater/data/table/ActionColumn.java
      - copied, changed from r1456807, syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/extensions/markup/html/repeater/data/table/CheckGroupColumn.java
    syncope/trunk/console/src/main/webapp/img/actions/reload.png   (with props)
    syncope/trunk/console/src/main/webapp/img/actions/settings-icon.png   (with props)
Removed:
    syncope/trunk/console/src/main/webapp/img/reload.png
    syncope/trunk/console/src/main/webapp/img/settings-icon.png
Modified:
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ReportModalPage.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Reports.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/TaskModalPage.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/AbstractSearchResultPanel.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/NotificationTasks.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/PropagationTasks.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/SchedTasks.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/SyncTasks.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/UserSearchResultPanel.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/markup/html/form/ActionLink.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/markup/html/form/ActionLinksPanel.java
    syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/NotificationTaskModalPage.html
    syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/PropagationTaskModalPage.html
    syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/ReportModalPage.html
    syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/Reports.html
    syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SchedTaskModalPage.html
    syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SyncTaskModalPage.html
    syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/AbstractSearchResultPanel.html
    syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/NotificationTasks.html
    syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/PropagationTasks.html
    syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/SchedTasks.html
    syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/SyncTasks.html
    syncope/trunk/console/src/main/resources/org/apache/syncope/console/wicket/markup/html/form/ActionLinksPanel.html
    syncope/trunk/console/src/main/webapp/css/   (props changed)
    syncope/trunk/console/src/main/webapp/css/style.css

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ReportModalPage.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ReportModalPage.java?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ReportModalPage.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ReportModalPage.java Fri Mar 15 13:14:59 2013
@@ -36,7 +36,7 @@ import org.apache.syncope.console.markup
 import org.apache.syncope.console.rest.ReportRestClient;
 import org.apache.syncope.console.wicket.ajax.form.AbstractAjaxDownloadBehavior;
 import org.apache.syncope.console.wicket.ajax.markup.html.ClearIndicatingAjaxButton;
-import org.apache.syncope.console.wicket.ajax.markup.html.ClearIndicatingAjaxLink;
+import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.ActionColumn;
 import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.DatePropertyColumn;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLink;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLinksPanel;
@@ -53,9 +53,7 @@ import org.apache.wicket.ajax.markup.htm
 import org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDataRoleAuthorizationStrategy;
 import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
 import org.apache.wicket.extensions.ajax.markup.html.repeater.data.table.AjaxFallbackDefaultDataTable;
-import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
 import org.apache.wicket.extensions.markup.html.repeater.data.sort.SortOrder;
-import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
 import org.apache.wicket.extensions.markup.html.repeater.util.SortableDataProvider;
@@ -64,7 +62,6 @@ import org.apache.wicket.markup.html.bas
 import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.markup.html.form.IChoiceRenderer;
 import org.apache.wicket.markup.html.form.ListChoice;
-import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.model.AbstractReadOnlyModel;
 import org.apache.wicket.model.CompoundPropertyModel;
 import org.apache.wicket.model.IModel;
@@ -416,7 +413,7 @@ public class ReportModalPage extends Bas
     }
 
     private void setupExecutions() {
-        final WebMarkupContainer executions = new WebMarkupContainer("executions");
+        final WebMarkupContainer executions = new WebMarkupContainer("executionContainer");
         executions.setOutputMarkupId(true);
         form.add(executions);
 
@@ -449,18 +446,12 @@ public class ReportModalPage extends Bas
         columns.add(new DatePropertyColumn(new ResourceModel("startDate"), "startDate", "startDate"));
         columns.add(new DatePropertyColumn(new ResourceModel("endDate"), "endDate", "endDate"));
         columns.add(new PropertyColumn(new ResourceModel("status"), "status", "status"));
-        columns.add(new AbstractColumn<ReportExecTO, String>(new ResourceModel("actions", "")) {
+        columns.add(new ActionColumn<ReportExecTO, String>(new ResourceModel("actions", "")) {
 
             private static final long serialVersionUID = 2054811145491901166L;
 
             @Override
-            public String getCssClass() {
-                return "action";
-            }
-
-            @Override
-            public void populateItem(final Item<ICellPopulator<ReportExecTO>> cellItem, final String componentId,
-                    final IModel<ReportExecTO> model) {
+            public ActionLinksPanel getActions(final String componentId, final IModel<ReportExecTO> model) {
 
                 final ReportExecTO taskExecutionTO = model.getObject();
 
@@ -528,36 +519,41 @@ public class ReportModalPage extends Bas
                     }
                 }, ActionLink.ActionType.DELETE, "Reports");
 
-                cellItem.add(panel);
+                return panel;
             }
-        });
 
-        final AjaxFallbackDefaultDataTable table = new AjaxFallbackDefaultDataTable("executionsTable", columns,
-                new ReportExecutionsProvider(reportTO), 10);
-        executions.add(table);
+            @Override
+            public Component getHeader(final String componentId) {
+                final ActionLinksPanel panel = new ActionLinksPanel(componentId, new Model(), getPageReference());
 
-        final AjaxLink reload = new ClearIndicatingAjaxLink("reload", getPageReference()) {
+                panel.add(new ActionLink() {
 
-            private static final long serialVersionUID = -7978723352517770644L;
+                    private static final long serialVersionUID = -7978723352517770644L;
 
-            @Override
-            protected void onClickInternal(final AjaxRequestTarget target) {
-                if (target != null) {
-                    final ReportTO currentReportTO = reportTO.getId() == 0
-                            ? reportTO
-                            : restClient.read(reportTO.getId());
-                    reportTO.setExecutions(currentReportTO.getExecutions());
-                    final AjaxFallbackDefaultDataTable currentTable =
-                            new AjaxFallbackDefaultDataTable("executionsTable", columns,
-                            new ReportExecutionsProvider(reportTO), 10);
-                    currentTable.setOutputMarkupId(true);
-                    target.add(currentTable);
-                    executions.addOrReplace(currentTable);
-                }
+                    @Override
+                    public void onClick(final AjaxRequestTarget target) {
+                        if (target != null) {
+                            final ReportTO currentReportTO = reportTO.getId() == 0
+                                    ? reportTO
+                                    : restClient.read(reportTO.getId());
+                            reportTO.setExecutions(currentReportTO.getExecutions());
+                            final AjaxFallbackDefaultDataTable currentTable =
+                                    new AjaxFallbackDefaultDataTable("executionsTable", columns,
+                                    new ReportExecutionsProvider(reportTO), 10);
+                            currentTable.setOutputMarkupId(true);
+                            target.add(currentTable);
+                            executions.addOrReplace(currentTable);
+                        }
+                    }
+                }, ActionLink.ActionType.RELOAD, "Tasks", "list");
+
+                return panel;
             }
-        };
+        });
 
-        executions.add(reload);
+        final AjaxFallbackDefaultDataTable table = new AjaxFallbackDefaultDataTable("executionsTable", columns,
+                new ReportExecutionsProvider(reportTO), 10);
+        executions.add(table);
     }
 
     public void setExportFormat(final ReportExecExportFormat exportFormat) {

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Reports.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Reports.java?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Reports.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Reports.java Fri Mar 15 13:14:59 2013
@@ -37,6 +37,7 @@ import org.apache.syncope.console.pages.
 import org.apache.syncope.console.rest.LoggerRestClient;
 import org.apache.syncope.console.rest.ReportRestClient;
 import org.apache.syncope.console.wicket.ajax.markup.html.ClearIndicatingAjaxLink;
+import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.ActionColumn;
 import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.DatePropertyColumn;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLink;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLinksPanel;
@@ -47,18 +48,14 @@ import org.apache.wicket.ajax.form.AjaxF
 import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
 import org.apache.wicket.ajax.markup.html.AjaxLink;
 import org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDataRoleAuthorizationStrategy;
-import org.apache.wicket.behavior.Behavior;
 import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
 import org.apache.wicket.extensions.ajax.markup.html.repeater.data.table.AjaxFallbackDefaultDataTable;
-import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
 import org.apache.wicket.extensions.markup.html.repeater.data.sort.SortOrder;
-import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
 import org.apache.wicket.extensions.markup.html.repeater.util.SortableDataProvider;
 import org.apache.wicket.extensions.markup.html.tabs.AbstractTab;
 import org.apache.wicket.extensions.markup.html.tabs.ITab;
-import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.form.Check;
@@ -69,7 +66,6 @@ import org.apache.wicket.markup.html.for
 import org.apache.wicket.markup.html.list.ListItem;
 import org.apache.wicket.markup.html.list.ListView;
 import org.apache.wicket.markup.html.panel.Panel;
-import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.model.AbstractReadOnlyModel;
 import org.apache.wicket.model.IModel;
 import org.apache.wicket.model.Model;
@@ -138,18 +134,12 @@ public class Reports extends BasePage {
         columns.add(new DatePropertyColumn(new ResourceModel("startDate"), "startDate", "startDate"));
         columns.add(new DatePropertyColumn(new ResourceModel("endDate"), "endDate", "endDate"));
         columns.add(new PropertyColumn(new ResourceModel("latestExecStatus"), "latestExecStatus", "latestExecStatus"));
-        columns.add(new AbstractColumn<ReportTO, String>(new ResourceModel("actions", "")) {
+        columns.add(new ActionColumn<ReportTO, String>(new ResourceModel("actions", "")) {
 
             private static final long serialVersionUID = 2054811145491901166L;
 
             @Override
-            public String getCssClass() {
-                return "action";
-            }
-
-            @Override
-            public void populateItem(final Item<ICellPopulator<ReportTO>> cellItem, final String componentId,
-                    final IModel<ReportTO> model) {
+            public ActionLinksPanel getActions(final String componentId, final IModel<ReportTO> model) {
 
                 final ReportTO reportTO = model.getObject();
 
@@ -211,46 +201,34 @@ public class Reports extends BasePage {
                     }
                 }, ActionLink.ActionType.DELETE, "Reports");
 
-                cellItem.add(panel);
+                return panel;
             }
-        });
-
-        final AjaxFallbackDefaultDataTable reportTable = new AjaxFallbackDefaultDataTable("reportTable", columns,
-                new ReportProvider(), paginatorRows);
-
-        reportContainer.add(reportTable);
-        reportContainer.setOutputMarkupId(true);
-
-        final AjaxLink reload = new ClearIndicatingAjaxLink("reload", getPageReference()) {
-
-            private static final long serialVersionUID = -7978723352517770644L;
 
             @Override
-            protected void onClickInternal(final AjaxRequestTarget target) {
-                if (target != null) {
-                    target.add(reportTable);
-                }
-            }
-        };
+            public Component getHeader(final String componentId) {
+                final ActionLinksPanel panel = new ActionLinksPanel(componentId, new Model(), getPageReference());
 
-        reload.add(new Behavior() {
+                panel.add(new ActionLink() {
 
-            private static final long serialVersionUID = 1469628524240283489L;
+                    private static final long serialVersionUID = -7978723352517770644L;
 
-            @Override
-            public void onComponentTag(final Component component, final ComponentTag tag) {
+                    @Override
+                    public void onClick(final AjaxRequestTarget target) {
+                        if (target != null) {
+                            target.add(reportContainer);
+                        }
+                    }
+                }, ActionLink.ActionType.RELOAD, "Tasks", "list");
 
-                if (reportTable.getRowCount() > paginatorRows) {
-                    tag.remove("class");
-                    tag.put("class", "settingsPosMultiPage");
-                } else {
-                    tag.remove("class");
-                    tag.put("class", "settingsPos");
-                }
+                return panel;
             }
         });
 
-        reportContainer.add(reload);
+        final AjaxFallbackDefaultDataTable reportTable = new AjaxFallbackDefaultDataTable("reportTable", columns,
+                new ReportProvider(), paginatorRows);
+
+        reportContainer.add(reportTable);
+        reportContainer.setOutputMarkupId(true);
 
         add(reportContainer);
 

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/TaskModalPage.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/TaskModalPage.java?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/TaskModalPage.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/TaskModalPage.java Fri Mar 15 13:14:59 2013
@@ -31,6 +31,7 @@ import org.apache.syncope.common.to.Task
 import org.apache.syncope.common.validation.SyncopeClientCompositeErrorException;
 import org.apache.syncope.console.commons.SortableDataProviderComparator;
 import org.apache.syncope.console.rest.TaskRestClient;
+import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.ActionColumn;
 import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.DatePropertyColumn;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLink;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLinksPanel;
@@ -38,25 +39,19 @@ import org.apache.syncope.console.wicket
 import org.apache.wicket.Component;
 import org.apache.wicket.Page;
 import org.apache.wicket.ajax.AjaxRequestTarget;
-import org.apache.wicket.ajax.markup.html.AjaxLink;
-import org.apache.wicket.behavior.Behavior;
-import org.apache.wicket.extensions.ajax.markup.html.IndicatingAjaxLink;
 import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
 import org.apache.wicket.extensions.ajax.markup.html.repeater.data.table.AjaxFallbackDefaultDataTable;
-import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
 import org.apache.wicket.extensions.markup.html.repeater.data.sort.SortOrder;
-import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
 import org.apache.wicket.extensions.markup.html.repeater.util.SortableDataProvider;
-import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.form.Form;
-import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.model.AbstractReadOnlyModel;
 import org.apache.wicket.model.CompoundPropertyModel;
 import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.model.ResourceModel;
 import org.apache.wicket.spring.injection.annot.SpringBean;
@@ -92,20 +87,23 @@ public abstract class TaskModalPage exte
         profile.setOutputMarkupId(true);
         form.add(profile);
 
-        executions = new WebMarkupContainer("executions");
+        executions = new WebMarkupContainer("executionContainer");
         executions.setOutputMarkupId(true);
         form.add(executions);
 
         final Label idLabel = new Label("idLabel", new ResourceModel("id"));
         profile.add(idLabel);
 
-        final AjaxTextFieldPanel id = new AjaxTextFieldPanel("id", getString("id"), new PropertyModel<String>(taskTO,
-                "id"));
+        final AjaxTextFieldPanel id =
+                new AjaxTextFieldPanel("id", getString("id"), new PropertyModel<String>(taskTO, "id"));
 
         id.setEnabled(false);
         profile.add(id);
 
         final List<IColumn> columns = new ArrayList<IColumn>();
+
+        final int paginatorRows = 10;
+
         columns.add(new PropertyColumn(new ResourceModel("id"), "id", "id"));
 
         columns.add(new DatePropertyColumn(new ResourceModel("startDate"), "startDate", "startDate"));
@@ -114,18 +112,12 @@ public abstract class TaskModalPage exte
 
         columns.add(new PropertyColumn(new ResourceModel("status"), "status", "status"));
 
-        columns.add(new AbstractColumn<TaskExecTO, String>(new ResourceModel("actions", "")) {
+        columns.add(new ActionColumn<TaskExecTO, String>(new ResourceModel("actions", "")) {
 
             private static final long serialVersionUID = 2054811145491901166L;
 
             @Override
-            public String getCssClass() {
-                return "action";
-            }
-
-            @Override
-            public void populateItem(final Item<ICellPopulator<TaskExecTO>> cellItem, final String componentId,
-                    final IModel<TaskExecTO> model) {
+            public ActionLinksPanel getActions(final String componentId, final IModel<TaskExecTO> model) {
 
                 final TaskExecTO taskExecutionTO = model.getObject();
 
@@ -171,51 +163,38 @@ public abstract class TaskModalPage exte
                     }
                 }, ActionLink.ActionType.DELETE, "Tasks");
 
-                cellItem.add(panel);
+                return panel;
             }
-        });
-
-        final int paginatorRows = 10;
-        final AjaxFallbackDefaultDataTable table = new AjaxFallbackDefaultDataTable("executionsTable", columns,
-                new TaskExecutionsProvider(getCurrentTaskExecution(taskTO)), paginatorRows);
-
-        executions.add(table);
-
-        final AjaxLink<Void> reload = new IndicatingAjaxLink<Void>("reload") {
-
-            private static final long serialVersionUID = -7978723352517770644L;
 
             @Override
-            public void onClick(final AjaxRequestTarget target) {
-                if (target != null) {
-                    final AjaxFallbackDefaultDataTable currentTable =
-                            new AjaxFallbackDefaultDataTable("executionsTable", columns,
-                            new TaskExecutionsProvider(getCurrentTaskExecution(taskTO)), paginatorRows);
-                    currentTable.setOutputMarkupId(true);
-                    target.add(currentTable);
-                    executions.addOrReplace(currentTable);
-                }
-            }
-        };
+            public Component getHeader(final String componentId) {
+                final ActionLinksPanel panel = new ActionLinksPanel(componentId, new Model(), getPageReference());
 
-        reload.add(new Behavior() {
+                panel.add(new ActionLink() {
 
-            private static final long serialVersionUID = 1469628524240283489L;
+                    private static final long serialVersionUID = -7978723352517770644L;
 
-            @Override
-            public void onComponentTag(final Component component, final ComponentTag tag) {
+                    @Override
+                    public void onClick(final AjaxRequestTarget target) {
+                        if (target != null) {
+                            final AjaxFallbackDefaultDataTable currentTable =
+                                    new AjaxFallbackDefaultDataTable("executionsTable", columns,
+                                    new TaskExecutionsProvider(getCurrentTaskExecution(taskTO)), paginatorRows);
+                            currentTable.setOutputMarkupId(true);
+                            target.add(currentTable);
+                            executions.addOrReplace(currentTable);
+                        }
+                    }
+                }, ActionLink.ActionType.RELOAD, "Tasks", "list");
 
-                if (table.getRowCount() > paginatorRows) {
-                    tag.remove("class");
-                    tag.put("class", "settingsPosMultiPage");
-                } else {
-                    tag.remove("class");
-                    tag.put("class", "settingsPos");
-                }
+                return panel;
             }
         });
 
-        executions.addOrReplace(reload);
+        final AjaxFallbackDefaultDataTable table = new AjaxFallbackDefaultDataTable("executionsTable", columns,
+                new TaskExecutionsProvider(getCurrentTaskExecution(taskTO)), paginatorRows);
+
+        executions.add(table);
     }
 
     protected static class TaskExecutionsProvider extends SortableDataProvider<TaskExecTO, String> {

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/AbstractSearchResultPanel.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/AbstractSearchResultPanel.java?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/AbstractSearchResultPanel.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/AbstractSearchResultPanel.java Fri Mar 15 13:14:59 2013
@@ -27,25 +27,16 @@ import org.apache.syncope.console.common
 import org.apache.syncope.console.commons.PreferenceManager;
 import org.apache.syncope.console.commons.XMLRolesReader;
 import org.apache.syncope.console.pages.AbstractBasePage;
-import org.apache.syncope.console.pages.DisplayAttributesModalPage;
 import org.apache.syncope.console.rest.AbstractAttributableRestClient;
-import org.apache.syncope.console.rest.UserRestClient;
-import org.apache.syncope.console.wicket.ajax.markup.html.ClearIndicatingAjaxLink;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLink;
-import org.apache.wicket.Component;
-import org.apache.wicket.Page;
 import org.apache.wicket.PageReference;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
-import org.apache.wicket.ajax.markup.html.AjaxLink;
-import org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDataRoleAuthorizationStrategy;
-import org.apache.wicket.behavior.Behavior;
 import org.apache.wicket.event.Broadcast;
 import org.apache.wicket.event.IEvent;
 import org.apache.wicket.event.IEventSource;
 import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
-import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.form.DropDownChoice;
 import org.apache.wicket.markup.html.form.Form;
@@ -211,97 +202,6 @@ public abstract class AbstractSearchResu
         updateResultTable(false);
         // ---------------------------
 
-        final AjaxLink displayAttrsLink;
-        if (restClient instanceof UserRestClient) {
-            // ---------------------------
-            // Link to select schemas/columns to be shown (User)
-            // ---------------------------
-            displayAttrsLink = new ClearIndicatingAjaxLink("displayAttrsLink", pageRef) {
-
-                private static final long serialVersionUID = -7978723352517770644L;
-
-                @Override
-                protected void onClickInternal(final AjaxRequestTarget target) {
-                    displaymodal.setPageCreator(new ModalWindow.PageCreator() {
-
-                        private static final long serialVersionUID = -7834632442532690940L;
-
-                        @Override
-                        public Page createPage() {
-                            return new DisplayAttributesModalPage(page.getPageReference(), displaymodal);
-                        }
-                    });
-
-                    displaymodal.show(target);
-                }
-            };
-
-            // Add class to specify relative position of the link.
-            // Position depends on result pages number.
-            displayAttrsLink.add(new Behavior() {
-
-                private static final long serialVersionUID = 1469628524240283489L;
-
-                @Override
-                public void onComponentTag(final Component component, final ComponentTag tag) {
-                    if (resultTable.getRowCount() > rows) {
-                        tag.remove("class");
-                        tag.put("class", "settingsPosMultiPage");
-                    } else {
-                        tag.remove("class");
-                        tag.put("class", "settingsPos");
-                    }
-                }
-            });
-
-            MetaDataRoleAuthorizationStrategy.authorize(
-                    displayAttrsLink, ENABLE, xmlRolesReader.getAllAllowedRoles("Users", "changeView"));
-        } else {
-            displayAttrsLink = new AjaxLink("displayAttrsLink") {
-
-                private static final long serialVersionUID = -7978723352517770644L;
-
-                @Override
-                public void onClick(final AjaxRequestTarget target) {
-                }
-            };
-            displayAttrsLink.setVisible(false);
-        }
-        container.add(displayAttrsLink);
-
-        final AjaxLink reload = new ClearIndicatingAjaxLink("reload", pageRef) {
-
-            private static final long serialVersionUID = -7978723352517770644L;
-
-            @Override
-            protected void onClickInternal(final AjaxRequestTarget target) {
-                if (target != null) {
-                    target.add(resultTable);
-                }
-            }
-        };
-
-        reload.add(new Behavior() {
-
-            private static final long serialVersionUID = 1469628524240283489L;
-
-            @Override
-            public void onComponentTag(final Component component, final ComponentTag tag) {
-
-                if (resultTable.getRowCount() > rows) {
-                    tag.remove("class");
-                    tag.put("class", "settingsPosMultiPage");
-                } else {
-                    tag.remove("class");
-                    tag.put("class", "settingsPos");
-                }
-            }
-        });
-
-        container.add(reload);
-
-        // ---------------------------
-
         // ---------------------------
         // Rows-per-page selector
         // ---------------------------

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/NotificationTasks.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/NotificationTasks.java?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/NotificationTasks.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/NotificationTasks.java Fri Mar 15 13:14:59 2013
@@ -30,7 +30,7 @@ import org.apache.syncope.console.pages.
 import org.apache.syncope.console.pages.Tasks;
 import org.apache.syncope.console.pages.Tasks.TasksProvider;
 import org.apache.syncope.console.rest.TaskRestClient;
-import org.apache.syncope.console.wicket.ajax.markup.html.ClearIndicatingAjaxLink;
+import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.ActionColumn;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLink;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLinksPanel;
 import org.apache.wicket.Component;
@@ -38,21 +38,16 @@ import org.apache.wicket.Page;
 import org.apache.wicket.PageReference;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
-import org.apache.wicket.ajax.markup.html.AjaxLink;
-import org.apache.wicket.behavior.Behavior;
 import org.apache.wicket.event.IEvent;
 import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
-import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
-import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
-import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.form.DropDownChoice;
 import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.markup.html.panel.Panel;
-import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.model.StringResourceModel;
 import org.apache.wicket.request.http.WebResponse;
@@ -113,18 +108,12 @@ public class NotificationTasks extends P
         columns.add(new PropertyColumn<TaskTO, String>(
                 new StringResourceModel("latestExecStatus", this, null), "latestExecStatus", "latestExecStatus"));
 
-        columns.add(new AbstractColumn<TaskTO, String>(new StringResourceModel("actions", this, null, "")) {
+        columns.add(new ActionColumn<TaskTO, String>(new StringResourceModel("actions", this, null, "")) {
 
             private static final long serialVersionUID = 2054811145491901166L;
 
             @Override
-            public String getCssClass() {
-                return "action";
-            }
-
-            @Override
-            public void populateItem(final Item<ICellPopulator<TaskTO>> cellItem, final String componentId,
-                    final IModel<TaskTO> model) {
+            public ActionLinksPanel getActions(final String componentId, final IModel<TaskTO> model) {
 
                 final TaskTO taskTO = model.getObject();
 
@@ -186,7 +175,26 @@ public class NotificationTasks extends P
                     }
                 }, ActionLink.ActionType.DELETE, "Tasks");
 
-                cellItem.add(panel);
+                return panel;
+            }
+
+            @Override
+            public Component getHeader(String componentId) {
+                final ActionLinksPanel panel = new ActionLinksPanel(componentId, new Model(), pageRef);
+
+                panel.add(new ActionLink() {
+
+                    private static final long serialVersionUID = -7978723352517770644L;
+
+                    @Override
+                    public void onClick(final AjaxRequestTarget target) {
+                        if (target != null) {
+                            target.add(table);
+                        }
+                    }
+                }, ActionLink.ActionType.RELOAD, "Tasks", "list");
+
+                return panel;
             }
         });
 
@@ -200,36 +208,6 @@ public class NotificationTasks extends P
 
         container.add(table);
 
-        final AjaxLink reload = new ClearIndicatingAjaxLink("reload", pageRef) {
-
-            private static final long serialVersionUID = -7978723352517770644L;
-
-            @Override
-            public void onClickInternal(final AjaxRequestTarget target) {
-                if (target != null) {
-                    target.add(table);
-                }
-            }
-        };
-
-        reload.add(new Behavior() {
-
-            private static final long serialVersionUID = 1469628524240283489L;
-
-            @Override
-            public void onComponentTag(final Component component, final ComponentTag tag) {
-
-                if (table.getRowCount() > paginatorRows) {
-                    tag.remove("class");
-                    tag.put("class", "settingsPosMultiPage");
-                } else {
-                    tag.remove("class");
-                    tag.put("class", "settingsPos");
-                }
-            }
-        });
-
-        container.add(reload);
         window.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {
 
             private static final long serialVersionUID = 8804221891699487139L;
@@ -280,7 +258,7 @@ public class NotificationTasks extends P
         paginatorForm.add(rowsChooser);
         add(paginatorForm);
     }
-    
+
     @Override
     public void onEvent(final IEvent<?> event) {
         if (event.getPayload() instanceof AbstractSearchResultPanel.EventDataWrapper) {

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/PropagationTasks.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/PropagationTasks.java?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/PropagationTasks.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/PropagationTasks.java Fri Mar 15 13:14:59 2013
@@ -31,7 +31,7 @@ import org.apache.syncope.console.pages.
 import org.apache.syncope.console.pages.Tasks.TasksProvider;
 import org.apache.syncope.console.pages.panels.AbstractSearchResultPanel.EventDataWrapper;
 import org.apache.syncope.console.rest.TaskRestClient;
-import org.apache.syncope.console.wicket.ajax.markup.html.ClearIndicatingAjaxLink;
+import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.ActionColumn;
 import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.DatePropertyColumn;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLink;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLinksPanel;
@@ -40,21 +40,16 @@ import org.apache.wicket.Page;
 import org.apache.wicket.PageReference;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
-import org.apache.wicket.ajax.markup.html.AjaxLink;
-import org.apache.wicket.behavior.Behavior;
 import org.apache.wicket.event.IEvent;
 import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
-import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
-import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
-import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.form.DropDownChoice;
 import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.markup.html.panel.Panel;
-import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.model.StringResourceModel;
 import org.apache.wicket.request.http.WebResponse;
@@ -129,7 +124,7 @@ public class PropagationTasks extends Pa
         columns.add(new PropertyColumn<TaskTO, String>(
                 new StringResourceModel("latestExecStatus", this, null), "latestExecStatus", "latestExecStatus"));
 
-        columns.add(new AbstractColumn<TaskTO, String>(new StringResourceModel("actions", this, null, "")) {
+        columns.add(new ActionColumn<TaskTO, String>(new StringResourceModel("actions", this, null, "")) {
 
             private static final long serialVersionUID = 2054811145491901166L;
 
@@ -139,8 +134,7 @@ public class PropagationTasks extends Pa
             }
 
             @Override
-            public void populateItem(final Item<ICellPopulator<TaskTO>> cellItem, final String componentId,
-                    final IModel<TaskTO> model) {
+            public ActionLinksPanel getActions(final String componentId, final IModel<TaskTO> model) {
 
                 final TaskTO taskTO = model.getObject();
 
@@ -202,7 +196,26 @@ public class PropagationTasks extends Pa
                     }
                 }, ActionLink.ActionType.DELETE, "Tasks");
 
-                cellItem.add(panel);
+                return panel;
+            }
+
+            @Override
+            public Component getHeader(String componentId) {
+                final ActionLinksPanel panel = new ActionLinksPanel(componentId, new Model(), pageRef);
+
+                panel.add(new ActionLink() {
+
+                    private static final long serialVersionUID = -7978723352517770644L;
+
+                    @Override
+                    public void onClick(final AjaxRequestTarget target) {
+                        if (target != null) {
+                            target.add(table);
+                        }
+                    }
+                }, ActionLink.ActionType.RELOAD, "Tasks", "list");
+
+                return panel;
             }
         });
 
@@ -234,37 +247,6 @@ public class PropagationTasks extends Pa
         window.setInitialWidth(WIN_WIDTH);
         window.setCookieName("view-task-win");
 
-        final AjaxLink reload = new ClearIndicatingAjaxLink("reload", pageRef) {
-
-            private static final long serialVersionUID = -7978723352517770644L;
-
-            @Override
-            protected void onClickInternal(AjaxRequestTarget target) {
-                if (target != null) {
-                    target.add(table);
-                }
-            }
-        };
-
-        reload.add(new Behavior() {
-
-            private static final long serialVersionUID = 1469628524240283489L;
-
-            @Override
-            public void onComponentTag(final Component component, final ComponentTag tag) {
-
-                if (table.getRowCount() > paginatorRows) {
-                    tag.remove("class");
-                    tag.put("class", "settingsPosMultiPage");
-                } else {
-                    tag.remove("class");
-                    tag.put("class", "settingsPos");
-                }
-            }
-        });
-
-        container.add(reload);
-
         Form paginatorForm = new Form("PaginatorForm");
 
         final DropDownChoice rowsChooser = new DropDownChoice(

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/SchedTasks.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/SchedTasks.java?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/SchedTasks.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/SchedTasks.java Fri Mar 15 13:14:59 2013
@@ -31,6 +31,7 @@ import org.apache.syncope.console.pages.
 import org.apache.syncope.console.pages.Tasks.TasksProvider;
 import org.apache.syncope.console.rest.TaskRestClient;
 import org.apache.syncope.console.wicket.ajax.markup.html.ClearIndicatingAjaxLink;
+import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.ActionColumn;
 import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.DatePropertyColumn;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLink;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLinksPanel;
@@ -41,20 +42,16 @@ import org.apache.wicket.ajax.AjaxReques
 import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
 import org.apache.wicket.ajax.markup.html.AjaxLink;
 import org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDataRoleAuthorizationStrategy;
-import org.apache.wicket.behavior.Behavior;
 import org.apache.wicket.event.IEvent;
 import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
-import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
-import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
-import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.form.DropDownChoice;
 import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.markup.html.panel.Panel;
-import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.model.StringResourceModel;
 import org.apache.wicket.request.http.WebResponse;
@@ -123,18 +120,12 @@ public class SchedTasks extends Panel {
         columns.add(new PropertyColumn<TaskTO, String>(
                 new StringResourceModel("latestExecStatus", this, null), "latestExecStatus", "latestExecStatus"));
 
-        columns.add(new AbstractColumn<TaskTO, String>(new StringResourceModel("actions", this, null, "")) {
+        columns.add(new ActionColumn<TaskTO, String>(new StringResourceModel("actions", this, null, "")) {
 
             private static final long serialVersionUID = 2054811145491901166L;
 
             @Override
-            public String getCssClass() {
-                return "action";
-            }
-
-            @Override
-            public void populateItem(final Item<ICellPopulator<TaskTO>> cellItem, final String componentId,
-                    final IModel<TaskTO> model) {
+            public ActionLinksPanel getActions(final String componentId, final IModel<TaskTO> model) {
 
                 final SchedTaskTO taskTO = (SchedTaskTO) model.getObject();
 
@@ -213,7 +204,26 @@ public class SchedTasks extends Panel {
                     }
                 }, ActionLink.ActionType.DELETE, "Tasks");
 
-                cellItem.add(panel);
+                return panel;
+            }
+
+            @Override
+            public Component getHeader(String componentId) {
+                final ActionLinksPanel panel = new ActionLinksPanel(componentId, new Model(), pageRef);
+
+                panel.add(new ActionLink() {
+
+                    private static final long serialVersionUID = -7978723352517770644L;
+
+                    @Override
+                    public void onClick(final AjaxRequestTarget target) {
+                        if (target != null) {
+                            target.add(table);
+                        }
+                    }
+                }, ActionLink.ActionType.RELOAD, "Tasks", "list");
+
+                return panel;
             }
         });
 
@@ -227,37 +237,6 @@ public class SchedTasks extends Panel {
 
         container.add(table);
 
-        final AjaxLink reload = new ClearIndicatingAjaxLink("reload", pageRef) {
-
-            private static final long serialVersionUID = -7978723352517770644L;
-
-            @Override
-            protected void onClickInternal(AjaxRequestTarget target) {
-                if (target != null) {
-                    target.add(table);
-                }
-            }
-        };
-
-        reload.add(new Behavior() {
-
-            private static final long serialVersionUID = 1469628524240283489L;
-
-            @Override
-            public void onComponentTag(final Component component, final ComponentTag tag) {
-
-                if (table.getRowCount() > paginatorRows) {
-                    tag.remove("class");
-                    tag.put("class", "settingsPosMultiPage");
-                } else {
-                    tag.remove("class");
-                    tag.put("class", "settingsPos");
-                }
-            }
-        });
-
-        container.add(reload);
-
         Form paginatorForm = new Form("PaginatorForm");
 
         final DropDownChoice rowsChooser = new DropDownChoice("rowsChooser", new PropertyModel(this, "paginatorRows"),
@@ -312,7 +291,7 @@ public class SchedTasks extends Panel {
 
         add(createLink);
     }
-    
+
     @Override
     public void onEvent(final IEvent<?> event) {
         if (event.getPayload() instanceof AbstractSearchResultPanel.EventDataWrapper) {

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/SyncTasks.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/SyncTasks.java?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/SyncTasks.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/SyncTasks.java Fri Mar 15 13:14:59 2013
@@ -33,6 +33,7 @@ import org.apache.syncope.console.pages.
 import org.apache.syncope.console.pages.UserTemplateModalPage;
 import org.apache.syncope.console.rest.TaskRestClient;
 import org.apache.syncope.console.wicket.ajax.markup.html.ClearIndicatingAjaxLink;
+import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.ActionColumn;
 import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.DatePropertyColumn;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLink;
 import org.apache.syncope.console.wicket.markup.html.form.ActionLinksPanel;
@@ -43,20 +44,16 @@ import org.apache.wicket.ajax.AjaxReques
 import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
 import org.apache.wicket.ajax.markup.html.AjaxLink;
 import org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDataRoleAuthorizationStrategy;
-import org.apache.wicket.behavior.Behavior;
 import org.apache.wicket.event.IEvent;
 import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
-import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
-import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
-import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.form.DropDownChoice;
 import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.markup.html.panel.Panel;
-import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.model.StringResourceModel;
 import org.apache.wicket.request.http.WebResponse;
@@ -123,18 +120,12 @@ public class SyncTasks extends Panel {
                 new StringResourceModel("nextExec", this, null), "nextExec", "nextExec"));
         columns.add(new PropertyColumn<TaskTO, String>(
                 new StringResourceModel("latestExecStatus", this, null), "latestExecStatus", "latestExecStatus"));
-        columns.add(new AbstractColumn<TaskTO, String>(new StringResourceModel("actions", this, null, "")) {
+        columns.add(new ActionColumn<TaskTO, String>(new StringResourceModel("actions", this, null, "")) {
 
             private static final long serialVersionUID = 2054811145491901166L;
 
             @Override
-            public String getCssClass() {
-                return "action";
-            }
-
-            @Override
-            public void populateItem(final Item<ICellPopulator<TaskTO>> cellItem, final String componentId,
-                    final IModel<TaskTO> model) {
+            public ActionLinksPanel getActions(final String componentId, final IModel<TaskTO> model) {
 
                 final SyncTaskTO taskTO = (SyncTaskTO) model.getObject();
 
@@ -256,7 +247,26 @@ public class SyncTasks extends Panel {
                     }
                 }, ActionLink.ActionType.DELETE, "Tasks");
 
-                cellItem.add(panel);
+                return panel;
+            }
+
+            @Override
+            public Component getHeader(String componentId) {
+                final ActionLinksPanel panel = new ActionLinksPanel(componentId, new Model(), pageRef);
+
+                panel.add(new ActionLink() {
+
+                    private static final long serialVersionUID = -7978723352517770644L;
+
+                    @Override
+                    public void onClick(final AjaxRequestTarget target) {
+                        if (target != null) {
+                            target.add(table);
+                        }
+                    }
+                }, ActionLink.ActionType.RELOAD, "Tasks", "list");
+
+                return panel;
             }
         });
 
@@ -270,36 +280,6 @@ public class SyncTasks extends Panel {
 
         container.add(table);
 
-        final AjaxLink reload = new ClearIndicatingAjaxLink("reload", pageRef) {
-
-            private static final long serialVersionUID = -7978723352517770644L;
-
-            @Override
-            protected void onClickInternal(AjaxRequestTarget target) {
-                if (target != null) {
-                    target.add(table);
-                }
-            }
-        };
-
-        reload.add(new Behavior() {
-
-            private static final long serialVersionUID = 1469628524240283489L;
-
-            @Override
-            public void onComponentTag(final Component component, final ComponentTag tag) {
-                if (table.getRowCount() > paginatorRows) {
-                    tag.remove("class");
-                    tag.put("class", "settingsPosMultiPage");
-                } else {
-                    tag.remove("class");
-                    tag.put("class", "settingsPos");
-                }
-            }
-        });
-
-        container.add(reload);
-
         Form paginatorForm = new Form("PaginatorForm");
 
         final DropDownChoice rowsChooser = new DropDownChoice("rowsChooser", new PropertyModel(this, "paginatorRows"),

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/UserSearchResultPanel.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/UserSearchResultPanel.java?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/UserSearchResultPanel.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/UserSearchResultPanel.java Fri Mar 15 13:14:59 2013
@@ -36,6 +36,7 @@ import org.apache.syncope.console.pages.
 import org.apache.syncope.console.pages.StatusModalPage;
 import org.apache.syncope.console.rest.AbstractAttributableRestClient;
 import org.apache.syncope.console.rest.UserRestClient;
+import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.ActionColumn;
 import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.AttrColumn;
 import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.DatePropertyColumn;
 import org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table.TokenColumn;
@@ -46,12 +47,10 @@ import org.apache.wicket.Page;
 import org.apache.wicket.PageReference;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
-import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
-import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
-import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
 import org.apache.wicket.model.ResourceModel;
 import org.springframework.util.ReflectionUtils;
 
@@ -108,18 +107,12 @@ public class UserSearchResultPanel exten
                     Arrays.asList(DisplayAttributesModalPage.DEFAULT_SELECTION));
         }
 
-        columns.add(new AbstractColumn<AbstractAttributableTO, String>(new ResourceModel("actions", "")) {
+        columns.add(new ActionColumn<AbstractAttributableTO, String>(new ResourceModel("actions", "")) {
 
             private static final long serialVersionUID = -3503023501954863131L;
 
             @Override
-            public String getCssClass() {
-                return "action";
-            }
-
-            @Override
-            public void populateItem(final Item<ICellPopulator<AbstractAttributableTO>> cellItem,
-                    final String componentId, final IModel<AbstractAttributableTO> model) {
+            public ActionLinksPanel getActions(final String componentId, final IModel<AbstractAttributableTO> model) {
 
                 final ActionLinksPanel panel = new ActionLinksPanel(componentId, model, page.getPageReference());
 
@@ -194,7 +187,46 @@ public class UserSearchResultPanel exten
                     }
                 }, ActionLink.ActionType.DELETE, PAGEID);
 
-                cellItem.add(panel);
+                return panel;
+            }
+
+            @Override
+            public ActionLinksPanel getHeader(final String componentId) {
+                final ActionLinksPanel panel = new ActionLinksPanel(componentId, new Model(), page.getPageReference());
+
+                panel.add(new ActionLink() {
+
+                    private static final long serialVersionUID = -7978723352517770644L;
+
+                    @Override
+                    public void onClick(final AjaxRequestTarget target) {
+                        displaymodal.setPageCreator(new ModalWindow.PageCreator() {
+
+                            private static final long serialVersionUID = -7834632442532690940L;
+
+                            @Override
+                            public Page createPage() {
+                                return new DisplayAttributesModalPage(page.getPageReference(), displaymodal);
+                            }
+                        });
+
+                        displaymodal.show(target);
+                    }
+                }, ActionLink.ActionType.CHANGE_VIEW, PAGEID);
+
+                panel.add(new ActionLink() {
+
+                    private static final long serialVersionUID = -7978723352517770644L;
+
+                    @Override
+                    public void onClick(final AjaxRequestTarget target) {
+                        if (target != null) {
+                            target.add(container);
+                        }
+                    }
+                }, ActionLink.ActionType.RELOAD, PAGEID, "list");
+
+                return panel;
             }
         });
 

Copied: syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/extensions/markup/html/repeater/data/table/ActionColumn.java (from r1456807, syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/extensions/markup/html/repeater/data/table/CheckGroupColumn.java)
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/extensions/markup/html/repeater/data/table/ActionColumn.java?p2=syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/extensions/markup/html/repeater/data/table/ActionColumn.java&p1=syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/extensions/markup/html/repeater/data/table/CheckGroupColumn.java&r1=1456807&r2=1456943&rev=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/extensions/markup/html/repeater/data/table/CheckGroupColumn.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/extensions/markup/html/repeater/data/table/ActionColumn.java Fri Mar 15 13:14:59 2013
@@ -18,45 +18,42 @@
  */
 package org.apache.syncope.console.wicket.extensions.markup.html.repeater.data.table;
 
+import org.apache.syncope.console.wicket.markup.html.form.ActionLinksPanel;
 import org.apache.wicket.Component;
 import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
-import org.apache.wicket.markup.html.form.CheckGroup;
 import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.model.IModel;
-import org.apache.wicket.model.Model;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-public class CheckGroupColumn<T, S> extends AbstractColumn<T, S> {
+public abstract class ActionColumn<T, S> extends AbstractColumn<T, S> {
 
-    private static final long serialVersionUID = 7955560320949560715L;
+    private static final long serialVersionUID = 7955560320949560725L;
 
     /**
      * Logger.
      */
-    protected static final Logger LOG = LoggerFactory.getLogger(CheckGroupColumn.class);
+    protected static final Logger LOG = LoggerFactory.getLogger(ActionColumn.class);
 
-    private CheckGroup<T> group;
-
-    public CheckGroupColumn(CheckGroup<T> checkGroup) {
-        super(new Model());
-        this.group = checkGroup;
+    public ActionColumn(final IModel<String> displayModel) {
+        super(displayModel);
     }
 
     @Override
     public String getCssClass() {
-        return "checkGroupColumn";
+        return "action";
     }
 
     @Override
-    public Component getHeader(String componentId) {
-        return new CheckBoxGroupSelectorPanel(componentId, group);
+    public Component getHeader(final String componentId) {
+        return super.getHeader(componentId);
     }
 
     @Override
-    public void populateItem(Item<ICellPopulator<T>> item, String componentId, IModel<T> rowModel) {
-        item.add(new CheckBoxPanel<T>(componentId, rowModel, group));
+    public void populateItem(final Item<ICellPopulator<T>> item, final String componentId, final IModel<T> rowModel) {
+        item.add(getActions(componentId, rowModel));
     }
-    
+
+    public abstract ActionLinksPanel getActions(final String componentId, final IModel<T> rowModel);
 }

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/markup/html/form/ActionLink.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/markup/html/form/ActionLink.java?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/markup/html/form/ActionLink.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/markup/html/form/ActionLink.java Fri Mar 15 13:14:59 2013
@@ -40,7 +40,9 @@ public abstract class ActionLink impleme
         SELECT("read"),
         EXPORT("read"),
         SUSPEND("update"),
-        REACTIVATE("update");
+        REACTIVATE("update"),
+        RELOAD("reload"),
+        CHANGE_VIEW("changeView");
 
         private final String actionId;
 

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/markup/html/form/ActionLinksPanel.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/markup/html/form/ActionLinksPanel.java?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/markup/html/form/ActionLinksPanel.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/markup/html/form/ActionLinksPanel.java Fri Mar 15 13:14:59 2013
@@ -62,6 +62,8 @@ public class ActionLinksPanel extends Pa
         super.add(new Fragment("panelExport", "emptyFragment", this));
         super.add(new Fragment("panelSuspend", "emptyFragment", this));
         super.add(new Fragment("panelReactivate", "emptyFragment", this));
+        super.add(new Fragment("panelReload", "emptyFragment", this));
+        super.add(new Fragment("panelChangeView", "emptyFragment", this));
     }
 
     public void add(
@@ -292,6 +294,33 @@ public class ActionLinksPanel extends Pa
                 });
                 break;
 
+            case RELOAD:
+                fragment = new Fragment("panelReload", "fragmentReload", this);
+
+                fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("reloadLink", pageRef) {
+
+                    private static final long serialVersionUID = -6957616042924610293L;
+
+                    @Override
+                    protected void onClickInternal(final AjaxRequestTarget target) {
+                        link.onClick(target);
+                    }
+                });
+                break;
+
+            case CHANGE_VIEW:
+                fragment = new Fragment("panelChangeView", "fragmentChangeView", this);
+
+                fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("changeViewLink", pageRef) {
+
+                    private static final long serialVersionUID = -6957616042924610292L;
+
+                    @Override
+                    protected void onClickInternal(final AjaxRequestTarget target) {
+                        link.onClick(target);
+                    }
+                });
+                break;
             default:
             // do nothink
         }
@@ -352,6 +381,14 @@ public class ActionLinksPanel extends Pa
             case REACTIVATE:
                 super.addOrReplace(new Fragment("panelReactivate", "emptyFragment", this));
                 break;
+
+            case RELOAD:
+                super.addOrReplace(new Fragment("panelReload", "emptyFragment", this));
+                break;
+
+            case CHANGE_VIEW:
+                super.addOrReplace(new Fragment("panelChangeView", "emptyFragment", this));
+                break;
             default:
             // do nothing
         }

Modified: syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/NotificationTaskModalPage.html
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/NotificationTaskModalPage.html?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/NotificationTaskModalPage.html (original)
+++ syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/NotificationTaskModalPage.html Fri Mar 15 13:14:59 2013
@@ -16,25 +16,6 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-<wicket:head>
-  <style>
-    .settingsPos{
-      position:relative; 
-      top:30px;
-      left:90%;
-      width:10px;
-      text-decoration: none;
-    }
-
-    .settingsPosMultiPage{
-      position:relative; 
-      top:50px;
-      left:90%;
-      width:10px;
-      text-decoration: none;
-    }
-  </style>
-</wicket:head>
 <wicket:extend>
   <div id="dialog-form">
     <p class="ui-widget ui-corner-all ui-widget-header"><wicket:message key="title"/></p>
@@ -116,10 +97,7 @@ under the License.
           </div>
         </div>
         <div id="executions" class="ui-widget">
-          <span wicket:id="executions" id="executions">
-            <a wicket:id="reload" class="settingsPos">
-              <img src="img/reload.png" alt="reload" class="drop_button" />
-            </a>
+          <span wicket:id="executionContainer" id="executionContainer">
             <table class="ui-widget ui-widget-content"
                    wicket:id="executionsTable" style="width: 100%"/>
           </span>

Modified: syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/PropagationTaskModalPage.html
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/PropagationTaskModalPage.html?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/PropagationTaskModalPage.html (original)
+++ syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/PropagationTaskModalPage.html Fri Mar 15 13:14:59 2013
@@ -16,25 +16,6 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-<wicket:head>
-  <style>
-    .settingsPos{
-      position:relative; 
-      top:30px;
-      left:90%;
-      width:10px;
-      text-decoration: none;
-    }
-
-    .settingsPosMultiPage{
-      position:relative; 
-      top:50px;
-      left:90%;
-      width:10px;
-      text-decoration: none;
-    }
-  </style>
-</wicket:head>
 <wicket:extend>
   <div id="dialog-form">
     <p class="ui-widget ui-corner-all ui-widget-header"><wicket:message key="title"/></p>
@@ -80,10 +61,7 @@ under the License.
           </div>
         </div>
         <div id="executions" class="ui-widget">
-          <span wicket:id="executions" id="executions">
-            <a wicket:id="reload" class="settingsPos">
-              <img src="img/reload.png" alt="reload" class="drop_button" />
-            </a>
+          <span wicket:id="executionContainer" id="executionContainer">
             <table class="ui-widget ui-widget-content"
                    wicket:id="executionsTable" style="width: 100%"/>
           </span>

Modified: syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/ReportModalPage.html
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/ReportModalPage.html?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/ReportModalPage.html (original)
+++ syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/ReportModalPage.html Fri Mar 15 13:14:59 2013
@@ -16,17 +16,6 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-<wicket:head>
-  <style>
-    .settingsPos{
-      position:relative; 
-      top:30px;
-      left:90%;
-      width:10px;
-      text-decoration: none;
-    }
-  </style>
-</wicket:head>
 <wicket:extend>
   <div style="margin:10px">
     <p class="ui-widget ui-corner-all ui-widget-header"><wicket:message key="title"/></p>
@@ -137,10 +126,7 @@ under the License.
           </span>
         </div>
         <div id="executions" class="ui-widget">
-          <span wicket:id="executions" id="executions">
-            <a wicket:id="reload" class="settingsPos">
-              <img src="img/reload.png" alt="reload" class="drop_button" />
-            </a>
+          <span wicket:id="executionContainer" id="executionContainer">
             <table class="ui-widget ui-widget-content"
                    wicket:id="executionsTable" style="width: 100%"/>
           </span>

Modified: syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/Reports.html
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/Reports.html?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/Reports.html (original)
+++ syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/Reports.html Fri Mar 15 13:14:59 2013
@@ -16,25 +16,6 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-<wicket:head>
-  <style>
-    .settingsPos{
-      position:relative; 
-      top:34px;
-      left:93.2%;
-      width:10px;
-      text-decoration: none;
-    }
-
-    .settingsPosMultiPage{
-      position:relative; 
-      top:64px;
-      left:93.2%;
-      width:10px;
-      text-decoration: none;
-    }
-  </style>
-</wicket:head>
 <wicket:extend>
 
   <div id="tabs">
@@ -46,9 +27,6 @@ under the License.
     <div id="tabs-1">
       <div id="users-contain" class="ui-widget" style="width:inherit;">
         <span wicket:id="reportContainer">
-          <a wicket:id="reload" class="settingsPos">
-            <img src="img/reload.png" alt="reload" class="drop_button" />
-          </a>
           <table class="ui-widget ui-widget-content table-hover" wicket:id="reportTable"/>
         </span>
         <span style="float:right">

Modified: syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SchedTaskModalPage.html
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SchedTaskModalPage.html?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SchedTaskModalPage.html (original)
+++ syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SchedTaskModalPage.html Fri Mar 15 13:14:59 2013
@@ -16,25 +16,6 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-<wicket:head>
-  <style>
-    .settingsPos{
-      position:relative; 
-      top:30px;
-      left:90%;
-      width:10px;
-      text-decoration: none;
-    }
-
-    .settingsPosMultiPage{
-      position:relative; 
-      top:50px;
-      left:90%;
-      width:10px;
-      text-decoration: none;
-    }
-  </style>
-</wicket:head>
 <wicket:extend>
   <div style="margin:10px">
     <p class="ui-widget ui-corner-all ui-widget-header"><wicket:message key="title"/></p>
@@ -137,10 +118,7 @@ under the License.
           </span>
         </div>
         <div id="executions" class="ui-widget">
-          <span wicket:id="executions" id="executions">
-            <a wicket:id="reload" class="settingsPos">
-              <img src="img/reload.png" alt="reload" class="drop_button" />
-            </a>
+          <span wicket:id="executionContainer" id="executionContainer">
             <table class="ui-widget ui-widget-content"
                    wicket:id="executionsTable" style="width: 100%"/>
           </span>

Modified: syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SyncTaskModalPage.html
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SyncTaskModalPage.html?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SyncTaskModalPage.html (original)
+++ syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SyncTaskModalPage.html Fri Mar 15 13:14:59 2013
@@ -16,25 +16,6 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-<wicket:head>
-  <style>
-    .settingsPos{
-      position:relative; 
-      top:30px;
-      left:90%;
-      width:10px;
-      text-decoration: none;
-    }
-
-    .settingsPosMultiPage{
-      position:relative; 
-      top:50px;
-      left:90%;
-      width:10px;
-      text-decoration: none;
-    }
-  </style>
-</wicket:head>
 <wicket:extend>
   <div style="margin:10px">
     <p class="ui-widget ui-corner-all ui-widget-header"><wicket:message key="title"/></p>
@@ -183,10 +164,7 @@ under the License.
           </span>
         </div>
         <div id="executions" class="ui-widget">
-          <span wicket:id="executions" id="executions">
-            <a wicket:id="reload" class="settingsPos">
-              <img src="img/reload.png" alt="reload" class="drop_button" />
-            </a>
+          <span wicket:id="executionContainer" id="executionContainer">
             <table class="ui-widget ui-widget-content"
                    wicket:id="executionsTable" style="width: 100%"/>
           </span>

Modified: syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/AbstractSearchResultPanel.html
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/AbstractSearchResultPanel.html?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/AbstractSearchResultPanel.html (original)
+++ syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/AbstractSearchResultPanel.html Fri Mar 15 13:14:59 2013
@@ -16,36 +16,10 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-<wicket:head>
-  <style>
-    .settingsPos{
-      position:relative; 
-      top:34px;
-      left:93.2%;
-      width:10px;
-      text-decoration: none;
-    }
-
-    .settingsPosMultiPage{
-      position:relative; 
-      top:64px;
-      left:93.2%;
-      width:10px;
-      text-decoration: none;
-    }
-  </style>
-</wicket:head>
 <html>
   <wicket:panel>
 
     <div wicket:id="container">
-      <a wicket:id="reload">
-        <img src="img/reload.png" alt="reload" class="drop_button" />
-      </a>
-      <a wicket:id="displayAttrsLink">
-        <img src="img/settings-icon.png" alt="settings icon" class="drop_button" />
-      </a>
-
       <span wicket:id="resultTable">[Table]</span>
 
       <span style="float:right">

Modified: syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/NotificationTasks.html
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/NotificationTasks.html?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/NotificationTasks.html (original)
+++ syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/NotificationTasks.html Fri Mar 15 13:14:59 2013
@@ -16,32 +16,10 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-<wicket:head>
-    <style>
-        .settingsPos{
-            position:relative; 
-            top:34px;
-            left:93.2%;
-            width:10px;
-            text-decoration: none;
-        }
-
-        .settingsPosMultiPage{
-            position:relative; 
-            top:64px;
-            left:93.2%;
-            width:10px;
-            text-decoration: none;
-        }
-    </style>
-</wicket:head>
 <html>
   <wicket:panel>
     <div id="users-contain" class="ui-widget" style="width:auto">
       <span wicket:id="container">
-        <a wicket:id="reload">
-          <img src="img/reload.png" alt="reload" class="drop_button" />
-        </a>
         <span wicket:id="datatable">[datatabel]</span>
       </span>
 

Modified: syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/PropagationTasks.html
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/PropagationTasks.html?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/PropagationTasks.html (original)
+++ syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/PropagationTasks.html Fri Mar 15 13:14:59 2013
@@ -16,32 +16,10 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-<wicket:head>
-    <style>
-        .settingsPos{
-            position:relative; 
-            top:34px;
-            left:93.2%;
-            width:10px;
-            text-decoration: none;
-        }
-
-        .settingsPosMultiPage{
-            position:relative; 
-            top:64px;
-            left:93.2%;
-            width:10px;
-            text-decoration: none;
-        }
-    </style>
-</wicket:head>
 <html>
   <wicket:panel>
     <div id="users-contain" class="ui-widget" style="width:auto">
       <span wicket:id="container">
-        <a wicket:id="reload">
-          <img src="img/reload.png" alt="reload" class="drop_button" />
-        </a>
         <span wicket:id="datatable">[datatabel]</span>
       </span>
       <span style="float:right">

Modified: syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/SchedTasks.html
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/SchedTasks.html?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/SchedTasks.html (original)
+++ syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/SchedTasks.html Fri Mar 15 13:14:59 2013
@@ -16,32 +16,10 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-<wicket:head>
-    <style>
-        .settingsPos{
-            position:relative; 
-            top:34px;
-            left:93.2%;
-            width:10px;
-            text-decoration: none;
-        }
-
-        .settingsPosMultiPage{
-            position:relative; 
-            top:64px;
-            left:93.2%;
-            width:10px;
-            text-decoration: none;
-        }
-    </style>
-</wicket:head>
 <html>
   <wicket:panel>
     <div id="users-contain" class="ui-widget" style="width:auto">
       <span wicket:id="container">
-        <a wicket:id="reload">
-          <img src="img/reload.png" alt="reload" class="drop_button" />
-        </a>
         <span wicket:id="datatable">[datatabel]</span>
       </span>
 

Modified: syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/SyncTasks.html
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/SyncTasks.html?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/SyncTasks.html (original)
+++ syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/panels/SyncTasks.html Fri Mar 15 13:14:59 2013
@@ -16,32 +16,10 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-<wicket:head>
-    <style>
-        .settingsPos{
-            position:relative; 
-            top:34px;
-            left:93.2%;
-            width:10px;
-            text-decoration: none;
-        }
-
-        .settingsPosMultiPage{
-            position:relative; 
-            top:64px;
-            left:93.2%;
-            width:10px;
-            text-decoration: none;
-        }
-    </style>
-</wicket:head>
 <html>
   <wicket:panel>
     <div id="users-contain" class="ui-widget" style="width:auto">
       <span wicket:id="container">
-        <a wicket:id="reload">
-          <img src="img/reload.png" alt="reload" class="drop_button" />
-        </a>
         <span wicket:id="datatable">[datatable]</span>
       </span>
 

Modified: syncope/trunk/console/src/main/resources/org/apache/syncope/console/wicket/markup/html/form/ActionLinksPanel.html
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/resources/org/apache/syncope/console/wicket/markup/html/form/ActionLinksPanel.html?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/resources/org/apache/syncope/console/wicket/markup/html/form/ActionLinksPanel.html (original)
+++ syncope/trunk/console/src/main/resources/org/apache/syncope/console/wicket/markup/html/form/ActionLinksPanel.html Fri Mar 15 13:14:59 2013
@@ -39,6 +39,8 @@ under the License.
   <span id="action" wicket:id="panelSelect">[plus]</span>
   <span id="action" wicket:id="panelSuspend">[plus]</span>
   <span id="action" wicket:id="panelReactivate">[plus]</span>
+  <span id="action" wicket:id="panelReload">[plus]</span>
+  <span id="action" wicket:id="panelChangeView">[plus]</span>
 
   <wicket:fragment wicket:id="fragmentClaim">
     <a href="#" wicket:id="claimLink"><img src="img/actions/claim.png" alt="claim icon" title="Claim"/></a>
@@ -96,6 +98,14 @@ under the License.
     <a href="#" wicket:id="reactivateLink"><img src="img/actions/reactivate.png" alt="reactivate icon"  title="Reactivate"/></a>
   </wicket:fragment>
 
+  <wicket:fragment wicket:id="fragmentReload">
+    <a href="#" wicket:id="reloadLink"><img src="img/actions/reload.png" alt="reload icon"  title="Reload"/></a>
+  </wicket:fragment>
+
+  <wicket:fragment wicket:id="fragmentChangeView">
+    <a href="#" wicket:id="changeViewLink"><img src="img/actions/settings-icon.png" alt="Change view icon"  title="Change view"/></a>
+  </wicket:fragment>
+
   <wicket:fragment wicket:id="emptyFragment">
   </wicket:fragment>
 </wicket:panel>

Propchange: syncope/trunk/console/src/main/webapp/css/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Fri Mar 15 13:14:59 2013
@@ -0,0 +1 @@
+.style.css.swp

Modified: syncope/trunk/console/src/main/webapp/css/style.css
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/webapp/css/style.css?rev=1456943&r1=1456942&r2=1456943&view=diff
==============================================================================
--- syncope/trunk/console/src/main/webapp/css/style.css (original)
+++ syncope/trunk/console/src/main/webapp/css/style.css Fri Mar 15 13:14:59 2013
@@ -370,7 +370,7 @@ em img {
 }
 
 th.action{
-  width: 136px;
+  width: 140px;
 }
 
 td.action{

Added: syncope/trunk/console/src/main/webapp/img/actions/reload.png
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/webapp/img/actions/reload.png?rev=1456943&view=auto
==============================================================================
Binary file - no diff available.

Propchange: syncope/trunk/console/src/main/webapp/img/actions/reload.png
------------------------------------------------------------------------------
    svn:mime-type = image/png

Added: syncope/trunk/console/src/main/webapp/img/actions/settings-icon.png
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/webapp/img/actions/settings-icon.png?rev=1456943&view=auto
==============================================================================
Binary file - no diff available.

Propchange: syncope/trunk/console/src/main/webapp/img/actions/settings-icon.png
------------------------------------------------------------------------------
    svn:mime-type = image/png