xxforms:tree view of xforms:select1 control - orbeon

I am trying to display items retrieved from an XML DB using xforms:select1 control using appearance=xxforms:tree. The items appear collapsed or expanded automatically and the behaviour is not the same for all the items retrieved. I have the following questions regarding xxforms:tree view:
how to make sure this view shows sub-nodes (those expandable/collapsable using +/- icon) as collapsed or expanded always, irrespective of, for example, the no. of nodes covered by the + icon?
how to render select1 with tree appearance without making any of the items hyperlinks?
how to make sure no item is highlighted/selected by default?
...and although the docs say xxforms:menu is also a possible appearance (URL http://www.orbeon.com/orbeon/doc/reference-xforms-extensions#tree), the details are not available...

About which branches of the tree should be open — By default all the nodes leading to selected nodes are open, this so the selected values are all visible. But you can change this default behavior and specify which nodes should be open using the xxforms:open attribute. For more on this, see the section "Controlling which tree nodes are initially open" on Selection Controls. Note that this feature was added in October 2010, so it is not included in Orbeon Forms 3.8, and until Orbeon Forms 3.9 is released, you'll need to get a nightly build for this.
About using links in the tree — At this point, the nodes you can click on in the select1 appearance="xxforms:tree control are rendered as links, so users know that this is something they can click on to make a selection. I assume that you don't want them to show as links because the tree might be "read-only" in your case (for information only, not to make a selection). This isn' supported at this point. As a workaround, you could use CSS to change the pointer and appearance of links in the tree so to users they don't even notice that this those are links.
About the menu appearance — It works very much like the tree appearance. See for instance this example using the menu.

Related

Can the text description at the lower left of the configurator be changed to show nothing?

At the lower left hand side of the Configurator screen there is Text that is driven from the Catalogue name and the name of the ROOT component, is there anyway of removing the text that appears from the ROOT Component? Ideally I want this is only show the Catalogue name
There is no native way of doing this in the standard implementation. You could delete the database label using CSV import (RuAd won't accept empty label field via UI):
"component_id","label_de","label_en"
"your_component_id","",""
I also tried using whitespace as a database label - see https://emptycharacter.com/, which works, but the catalogue label is not "promoted" to the place of the component label. Also it might not work as expected when pricing is used.
There is a pending update on 2021-03-20 on this article, should you have interest in more details on how this works: https://docs.roomle.com/scripting/resources/200_110_advancedpartlist.html#where-are-component-labels-used

Firemonkey styles - duplicate a certain style lookup to customize

In a Firemonkey project, I have a TListBox with numerous items. Depending on the state of any given item, I intend to show the Detail as either red or white (on a black background). Of course I need to use the styles to do this.
I right-click one of the TListBoxItem controls and choose "Edit Custom Style...". It's my understanding that it's supposed to produce a new copy of whatever the current style lookup is just for this one control. In my case, I had already set it to listboxitemrightdetail prior to trying to customize it. What I would expect is that when I make a change to the font color in this style and "Apply and Close", that one single list box item should get that change.
However, instead of that one, ALL of the items in this list box got that change. The change I made actually modified the listboxitemrightdetail rather than producing a copy of it just for that one control.
In the end, I intend to have two style lookups, for example listboxitemreddetail and listboxitemwhitedetail which I can toggle on each list item in runtime.
What am I doing wrong, and what's the appropriate way to duplicate a style lookup to have two different versions?

Filtering product backlog items in TFS

I have created multiple area paths for each module in our system.
When working in the Backlog I'd like to filter backlog items for one of the modules (Area Path). I could not figure out how to do that, so I simply added the Are Path field to the Backlog view and used the Filter for filtering on the requested module.
This worked, but when there are Tasks associated to the backlog item, they also show up in the Backlog, which quickly pollutes the view. Is there another way to either enable filtering on Area path or hiding Tasks from the backlog view?
The filter box in the (Product) Backlog view only works on keywords, unfortunately, and you can't exclude items. There is also a Tags filter. If you click the filter button, you can click the tags you want to include. This would require you to add a "backlog" tag to all the items you want to show (excluding tasks, of course) but, even though it works, it's not a great solution, because you have to manually add the tag to the work items you want to display.
If you're not tied to the Backlog view, you could switch over to the (Kanban) Board view. There is a more advanced filter there. Click "Board" at the top, then the filter button in the upper right, and then you can filter according to work item type and other values. This is probably what I would do.
The third option is to convert your view into a query by clicking Create Query at the top of the backlog (or just manually writing a new query). You can then edit the query to exclude Tasks. The advantage is that it's a lot easier to control what work items you see (or don't see), and how you see them. The disadvantage is that you lose the ability to drag-drop for stack ranking, and other backlog features.

Embedding other widgets in a GTK+ text entry

I would like to embed another widget in one end of a GTK+ 3 text entry box, a bit like many browsers do with search or protocol security "chips":
I know I can set an icon on a text entry with
entry = Gtk.Entry()
entry.set_icon_from_icon_name(Gtk.EntryIconPosition.PRIMARY, icon_name)
Even if I pass my own GdkPixbuf to set_icon_from_pixbuf this still limits me to icon sizes, when I want some arbitrary size (at least horizontally) depending on the "chip" content.
I also tried to "shunt" the text over with set_margin_left, but this moved the left edge of the whole entry box over, rather than the text within the box.
What would be an effective way to embed some other GTK+ widget (hopefully of any complexity, so I can make the chip more interactive) within a text entry?
GtkEntry is not a container, so it cannot have child widgets.
The appropriate way to implement what you see in the screenshot is to use a separate container and style it appropriately.
Have you considered putting the entry inside a frame, and restyling stuff to make it look like it was inside an entry? Then you could use standard containers to put whatever widgets next to the text entry spaces that you wanted.
The downside is that clicking your "icon" doesn't focus the entry automatically, but it makes that action totally configurable.

Adding multipage printing to Windows 8 ListView App

I have an app with a ListView showing a list of summary items.
I've added print support, but I'm stuck on splitting my content into different pages.
I can add multiple pages, but I don't know how to split my content into pages based on page size.
Currently I have a xaml user control for my print content with a bound ItemsControl in it. I'd either like to bind to a list of just the items that will fit on the page, or move the top visible item position up based on the page number.
I'm not sure which is the best approach and I'm not sure how to do either.
The only paging example I could find in the docs was for a rich text block, which relies on the RichTextBlockOverflow control. I don't think that will help me.

Resources