This is an automated email from the ASF dual-hosted git repository. ahuber pushed a commit to branch maintenance-branch in repository https://gitbox.apache.org/repos/asf/causeway.git
commit bf933ba33bb3beaa8743ae6bca9f82d434a4c15c Merge: d27066bee00 7bd2c13e40c Author: Andi Huber <[email protected]> AuthorDate: Sun Jan 25 07:14:09 2026 +0100 Merge pull request #3360 from apache/3957-tablerow.action.backport CAUSEWAY-3957: [v2] Action Column for Tables adoc/changelog.adoc | 4 +- .../applib/services/i18n/TranslationService.java | 18 ++ .../services/metamodel/MetaModelServiceMenu.java | 2 +- .../log/PageRenderDomainObjectLogger.java | 8 - .../publishing/log/PageRenderValueLogger.java | 10 - .../applib/util/schema/CommonDtoUtils.java | 12 +- .../org/apache/causeway/applib/value/Blob.java | 67 ++-- .../org/apache/causeway/applib/value/Clob.java | 49 ++- .../causeway/applib/value/LocalResourcePath.java | 36 ++- .../causeway/applib/value/NamedWithMimeType.java | 30 +- .../value/semantics/TemporalValueSemantics.java | 2 - .../mixins/system/DomainChangeRecord_Test.java | 2 - .../commons/internal/base/_StableValue.java | 137 ++++++++ .../core/config/CausewayConfiguration.java | 12 +- .../core/metamodel/context/MetaModelContext.java | 12 +- .../core/metamodel/execution/ActionExecutor.java | 7 - .../grid/spi/LayoutResourceLoaderDefault.java | 2 - .../core/metamodel/spec/feature/ObjectAction.java | 23 ++ .../spec/feature/ObjectActionContainer.java | 5 + .../metamodel/spec/feature/ObjectAssociation.java | 29 +- .../specloader/specimpl/ObjectActionMixedIn.java | 4 - .../specimpl/dflt/ObjectSpecificationDefault.java | 10 +- ...ationsAsColumns.java => _MembersAsColumns.java} | 96 ++++-- .../metamodel/tabular/interactive/DataRow.java | 17 +- .../tabular/interactive/DataTableInteractive.java | 4 +- .../core/metamodel/tabular/simple/DataRow.java | 3 - .../core/metamodel/util/WhereContexts.java | 23 +- .../valuesemantics/BigDecimalValueSemantics.java | 1 - .../valuesemantics/BlobValueSemantics.java | 4 +- .../valuesemantics/ClobValueSemantics.java | 4 +- .../BigDecimalValueSemanticsProviderTest.java | 2 - .../ValueSemanticsProviderAbstractTestCase.java | 2 - .../command/CommandExecutorServiceDefault.java | 13 +- .../EntityPropertyChangePublisherDefault.java | 3 - .../applib/job/RunBackgroundCommandsJob.java | 3 - .../excel/applib/service/ExcelServiceDefault.java | 2 +- .../excel/applib/service/_ExcelServiceHelper.java | 2 +- ...uleDemoToDoItemBulkUpdateManager_IntegTest.java | 2 +- .../extensions/excel/testing/ExcelFixture.java | 2 +- .../extensions/excel/testing/ExcelFixture2.java | 2 +- .../ui/viewer/CalendaredCollectionAbstract.java | 2 +- .../pdfjs/wkt/ui/components/PdfJsViewerPanel.java | 6 +- .../PdfJsViewerPanelComponentFactory.java | 2 +- .../ui/CommandReplayOnSecondaryService.java | 2 +- .../changetracking/_ChangingEntitiesFactory.java | 15 - .../valuemappings/CausewayBlobMapping.java | 12 +- .../valuemappings/CausewayClobMapping.java | 12 +- .../jpa/applib/types/BlobJpaEmbeddable.java | 6 +- .../jpa/applib/types/ClobJpaEmbeddable.java | 6 +- .../jpa/integration/entity/JpaEntityFacet.java | 1 - .../applib/services/repo/QueryDslRepository.java | 13 +- .../facets/AutoCompleteGeneratedDslQuery.java | 1 - .../facets/AutoCompleteUsingQueryDslFacet.java | 1 - .../querydsl/testsupport/PredicatePrettifier.java | 7 +- .../testdomain/conf/Configuration_usingWicket.java | 6 +- .../util/interaction/DataTableTester.java | 8 +- .../WrapperInteraction_Caching_IntegTest.java | 3 - .../viewers/common/wkt/InteractionTestWkt.java | 2 +- .../applib/services/FakeDataServiceTest.java | 48 +-- .../fakedata/integtests/tests/Smoke_IntegTest.java | 4 +- .../commons/applib/src/main/java/module-info.java | 1 + .../applib/services/header/HeaderUiModel.java | 14 +- .../commons/applib/services/menu/MenuUiModel.java | 58 ---- .../applib/services/menu/MenuUiService.java | 7 +- .../commons/applib/services/menu/MenuVisitor.java | 11 +- .../applib/services/menu/model/MenuAction.java | 96 ++++++ .../applib/services/menu/model/MenuDropdown.java} | 20 +- .../services/menu/model/MenuDropdownBuilder.java} | 39 ++- .../{MenuUiService.java => model/MenuEntry.java} | 21 +- .../applib/services/menu/model/MenuSpacer.java} | 25 +- .../applib/services/menu/model/NavbarSection.java | 73 +++++ .../NavbarUiModel.java} | 20 +- .../commons/model/action/HasManagedAction.java | 42 ++- .../viewer/commons/model/action/UiActionForm.java | 19 +- .../commons/model/decorators/ActionDecorators.java | 156 +++++++++ .../commons/model/decorators/ConfirmDecorator.java | 24 +- .../model/decorators/DisablingDecorator.java | 12 +- .../model/decorators/FormLabelDecorator.java | 35 +- .../services/header/HeaderUiServiceDefault.java | 12 +- .../services/menu/MenuUiServiceDefault.java | 84 ++--- .../commons/services/menu/_MenuItemBuilder.java | 60 ++-- .../rich/query/RichPropertyGetBlobMimeType.java | 2 +- .../domain/rich/query/RichPropertyGetBlobName.java | 2 +- .../rich/query/RichPropertyGetClobMimeType.java | 2 +- .../domain/rich/query/RichPropertyGetClobName.java | 2 +- .../simple/query/SimplePropertyLobMimeType.java | 2 +- .../domain/simple/query/SimplePropertyLobName.java | 2 +- .../viewer/controller/ResourceController.java | 16 +- .../client/ActionParameterListBuilder.java | 10 +- .../staff/Staff_lowlevel_v1_IntegTest.java | 8 +- .../staff/Staff_lowlevel_v2_IntegTest.java | 2 +- .../wicket/model/src/main/java/module-info.java | 1 + .../viewer/wicket/model/links/LinkAndLabel.java | 113 ------- .../viewer/wicket/model/links/LinksProvider.java | 6 +- .../viewer/wicket/model/models/ActionModel.java | 294 ++++++++++++++++- .../wicket/model/models/ActionModelImpl.java | 163 ---------- .../wicket/model/models/ActionResultModel.java | 119 +++++++ .../models/EntityCollectionModelAbstract.java | 16 +- .../models/EntityCollectionModelStandalone.java | 2 +- .../viewer/wicket/model/models/FormExecutor.java | 23 ++ .../viewer/wicket/model/models/ScalarModel.java | 17 +- .../wicket/model/models/ScalarParameterModel.java | 2 - .../wicket/model/models/ServiceActionsModel.java | 31 +- .../viewer/wicket/model/models/ValueModel.java | 7 +- .../interaction/act/ActionInteractionWkt.java | 3 + viewers/wicket/ui/src/main/java/module-info.java | 4 +- .../ui/actionresponse/ActionResultResponse.java | 169 ---------- .../ActionResultResponseHandlingStrategy.java | 205 ------------ .../actionresponse/ActionResultResponseType.java | 360 --------------------- .../ui/actionresponse/PageRedirectRequest.java | 77 ----- .../wicket/ui/actionresponse/_RedirectHandler.java | 52 --- ...el.html => ActionLinksAsButtonInlinePanel.html} | 2 +- ...el.java => ActionLinksAsButtonInlinePanel.java} | 8 +- ...nPanel.html => ActionLinksAsDropDownPanel.html} | 2 +- ...ePanel.java => ActionLinksAsDropDownPanel.java} | 8 +- ...tionalLinksPanel.java => ActionLinksPanel.java} | 87 +++-- .../entityactions/LinkAndLabelFactory.java | 143 -------- .../actionmenu/serviceactions/CssMenuItem.java | 93 ++---- .../serviceactions/CssSubMenuItemsPanel.html | 2 +- .../actionmenu/serviceactions/MenuActionPanel.java | 12 +- .../serviceactions/ServiceActionUtil.java | 93 +++--- .../serviceactions/ServiceActionsPanel.html | 2 +- .../serviceactions/ServiceActionsPanelFactory.java | 9 +- .../serviceactions/TertiaryActionsPanel.html | 4 +- .../serviceactions/TertiaryMenuPanelFactory.java | 15 +- .../components/actions/ActionParametersForm.java | 4 +- .../ui/components/collection/CollectionPanel.java | 12 +- .../ajaxtable/CausewayAjaxDataTable.java | 4 +- .../CausewayAjaxHeadersToolbarAbstract.java | 8 +- .../CollectionContentsAsAjaxTablePanel.java | 29 +- .../CollectionContentsSortableDataProvider.java | 4 +- .../ajaxtable/columns/ActionColumn.java | 110 +++++++ .../columns/AssociationColumnAbstract.java | 4 +- .../ajaxtable/columns/GenericColumnAbstract.java | 50 +-- .../ajaxtable/columns/PluralColumn.java | 6 +- .../ajaxtable/columns/SingularColumn.java | 11 +- .../ajaxtable/columns/TitleColumn.java | 14 +- .../ajaxtable/columns/ToggleboxColumn.java | 4 +- .../icons/CollectionContentsAsIconsPanel.java | 2 +- .../summary/CollectionContentsAsSummary.java | 2 +- .../entity/collection/EntityCollectionPanel.java | 15 +- .../components/entity/fieldset/PropertyGroup.java | 34 +- .../entity/header/EntityHeaderPanel.java | 16 +- .../wicket/ui/components/header/HeaderPanel.java | 32 +- .../wicket/ui/components/layout/bs/col/Col.java | 16 +- .../components/menuable/MenuablePanelAbstract.java | 8 + .../ui/components/scalars/ScalarPanelAbstract.java | 54 ++-- .../components/scalars/ScalarPanelAbstract2.java | 46 +-- .../viewer/wicket/ui/components/scalars/_Util.java | 58 ++-- .../blobclob/CausewayBlobOrClobPanelAbstract.java | 2 +- .../scalars/blobclob/CausewayBlobPanel.java | 2 +- .../scalars/blobclob/CausewayClobPanel.java | 2 +- .../scalars/image/JavaAwtImagePanel.java | 2 +- .../{linkandlabel => actionlink}/ActionLink.java | 69 ++-- .../linkandlabel/LinkAndLabelFactoryAbstract.java | 56 ---- .../ui/{panels => exec}/FormExecutorDefault.java | 109 ++----- .../LobRequestHandler.java} | 114 +++---- .../causeway/viewer/wicket/ui/exec/Mediator.java | 228 +++++++++++++ .../viewer/wicket/ui/exec/MediatorFactory.java | 209 ++++++++++++ .../viewer/wicket/ui/exec/PageRedirectRequest.java | 112 +++++++ .../bootstrap/css/bootstrap-overrides-all-v2.css | 11 + .../viewer/wicket/ui/pages/entity/EntityPage.java | 2 - .../StandaloneCollectionPage.java | 4 - .../viewer/wicket/ui/pages/value/ValuePage.java | 2 +- .../wicket/ui/pages/voidreturn/VoidReturnPage.java | 22 +- .../wicket/ui/panels/PromptFormAbstract.java | 18 +- .../viewer/wicket/ui/util/WktDecorators.java | 240 ++++++++------ .../causeway/viewer/wicket/ui/util/WktLinks.java | 95 ++---- .../viewer/wicket/ui/util/WktTooltips.java | 2 +- .../ComponentFactoryRegistrarDefault.java | 2 - .../ComponentFactoryRegistryDefault.java | 3 - .../registries/pages/PageClassListDefault.java | 3 - .../registries/pages/PageClassRegistryDefault.java | 3 - .../pages/PageNavigationServiceDefault.java | 3 - .../services/ImageResourceCacheClassPath.java | 3 - .../config/WicketViewerCssBundleInit.java | 4 +- 176 files changed, 2967 insertions(+), 2742 deletions(-)
