FSC: Container elements - typo3

I've used many different container solutions in the past, including FluidTYPO3's FCEs, DCE, gridelements and some more.
I primarily use the functionality of providing container elements that lets the backend user nest content elements in the page module.
But what I haven't seen so far is a solution with core functionality. Shouldn't it be possible to provide container elements via FSC? Does anyone know how to solve e.g. a two-column container element?
Thanks for your help!

Nested structures is a missing core functionality but has nothing to do with FSC (fluid_styled_content), because FSC is just an frontend element renderer. It can be replaced by other renderers like the old css_styled_content. Nested structures are more complex because they have affects on database structure and backend handling (dragNdrop, translation, work spaces).
So there is at this moment no other way to use an extension like flux, gridelements, templavoila, ...

Per default TYPO3 has no container elements. The gridelements is the way to go. That's state of the art.
Or you have a look at the extension mask which also brings container elements into TYPO3.

Related

How to put content elements side-by-side int typo3

I have just started my Typo3 journey. I want to put 2 content elements side-by-side (in one row). Can anyone tell how is it possible. Because whenever I place any content element, it is displayed as a block and fill the entire row.
Thank you for your time and consideration :)
You have to use container elements which come with the extension 'container'. Please have a look at https://extensions.typo3.org/extension/container
There is no build in solution for your problem.
But in TYPO3 you are free to build any kind of html structure for your output. This is necessary as you also can do any rendering of content. either with your own CSS and HTML-markup or if you use frameworks like Bootstrap.
You can build a new page layout, or any special content element which contains other content elements.
Changing layouts can (and should) be reflected in backend-layouts. (https://docs.typo3.org/m/typo3/reference-coreapi/11.5/en-us/ApiOverview/Backend/BackendLayout.html) (there are a lot of other tutorials)
But you also can build/ use individual defined containing content elements. Her you can get support by different extensions (eg. mask, DCE, gridelements) or define it completely on your own (https://docs.typo3.org/m/typo3/reference-coreapi/11.5/en-us/ApiOverview/ContentElements/Index.html)

Typo3 custom content element with content colPos

as I'm turning back to the real core functions of typo3 (which I used last before templatevoila), I wonder how I can create an content Element which acts like a container, where I can place content inside with the wizard.
As I got really enough from the flux-fluid update chaos, I think best solution ist to bet on the core functions.
I know, I can do this also with ext B13 container, but if it's possible somehow, I won't use any extensions as I can do it hopefully with core functions.
there is no container functionality inside TYPO3 core itself. I suggest using the b13 container extension which is well maintained and doesn't add much overhead.
First it depends what kind of container you want to realize.
If you don't really want to pack/wrap the contained CEs you can use the CE 'Records' which enables an editor to show multiple records from different positions in one place.
In the default rendering those records are rendered each without further wrapping.
Of course you can change the default rendering. but that would be an extension (except you do it by typoscript or templates below of fileadmin/), at least the site extension.
drawback:
no preview in page BE module
you need 'another' place to store the contained CEs, otherwise the CEs. would be shown twice (you could use another page, or another column (which does not get rendered)
You can vary the layout by evaluating the layout field of the records CE.
another solution with core oly:
add further 'layouts' so all ' contained' CEs get a special wrap which can be gathered with javascript into a container DOM object.

TYPO3: pass categories to mask content element

In a TYPO3 8.7 project I am using a DatabaseQueryProcessor to fetch the categories of a page and pass them as a parameter to fluid. Works.
But I want to have these categories in a mask content element as well. What is the best approach to achieve this?
Thank you!
I found a solution myself.
Problem was that I used the data processor on the page template level. Now I moved the data processor to a single typoscript object of type "FLUIDTEMPLATE" which is accessible inside a mask template as well.

Preferred way to add an extensions into Fluid Powered TYPO3 template

im working with Claus' Fluid Powered TYPO3 and I'm quiet happy with it. At the moment I have to implement a template wich should contain another extension (e.g. news) in the sidebar.
What is the preferred way to implement this.
My idea was to add the f:cObject ViewHelper and insert the extension in that way.
Is this the correct approach?
Thx
Markus
This depends on the type of template you are building:
Page templates should have proper content areas into which you can insert content. If the content needs to be shared, you have a few options: a) create the element in a sys folder and reference it from your Flux form settings then use v:content.render to render it by UID. b) Place any number of shared elements in a sys folder and render all by PID. c) Use content sliding in a column in your template which is there in all templates and is designed to contain elements which "slide" to every subpage (and can also be edited on subpages if editor has access).
Content templates can use flux:grid with flux:form.column, or flux:form.content as a shortcut to quickly make a single column, to add a content area, then flux:content.render to render those elements. This allows you to control that gets rendered around the plugin.
Plugin templates can associate a Flux form and use the steps described in point 2.
I think you're looking for 1a) or 1c) in this case.

How do I use an SWT Control to render the content of an SWT/JFace table?

I have a JFace TableViewer with an SWT Table, and I would like to custom render the content of some cells. I would like to use an SWT Control to render the cell content.
I would prefer to have only one instance of the Control doing the rendering, but if I have to instantiate one for each row, that would be acceptable.
Next, the solution MUST be compatible with the ContentProvider/LabelProvider approach (I am using EMF). This means that I cannot use the solution described in Sniplet 126 (http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.swt.snippets).
Next, I though about using custom drawing. But here the catch is, that I have to send individual drawing operations to the graphics context. I was trying to have the Control render the content for me by calling redraw() or print(GC) upon SWT.PaintItem, but that just lead to uncontrollable flickering.
At this point, my best guess is to use SWT.PaintItem to do the drawing. This will result in duplicate code, as I already have a Control that can render the content the way I'd like it. I'd like to prevent this redundancy.
Any help is appreciated!
Well, after banging my head against a wall several times I made some progress. Specifically, I found this formu entry:
http://www.eclipsezone.com/eclipse/forums/t115489.html
It actually offers two solutions: The first solution actually uses widgets (not recommended due to performance, but I knew that before). I will try this out, and may post here how it goes.
The second solution suggests using StyledCellLabelProvider. I looked into this before, but it isn't powerful enough for my purposes. At least that's what I think right now.