How to disable nodes in JFace CheckboxTreeViewer? - eclipse

How can I disable a tree node in a CheckboxTreeViewer? Basically what I want is whenever a parent is selected in a check box tree all its children should be disabled and should not be possible to select. Also all the children should get unselected if any of them are previously selected before disabling them.
Any ways??

This isn't really supported by the viewer.
The best you can do is use the addCheckStateListener method to add an ICheckStateListener which reverses any unwanted check actions.

Related

Drag and drop between treeview in uwp

I want to drap items from one treeview to another treeview.
I want to use this control TreeView from this link https://learn.microsoft.com/en-us/windows/uwp/controls-and-patterns/tree-view. Whenever i drag control from one treeview to another treeview it throws exception. How to use this control as drag and drop item between treeviews.
Dragging and dropping items between TreeView is not supported in the reference implementation.
The sample supports:
N-level nesting
Expanding/collapsing of nodes
Dragging and dropping of nodes within the TreeView
Built-in accessibility
For more information, please see Hierarchical layout with TreeView.
If you need this feature, you may try to implement your own tree view.

How can I add a custom column menu tab in ag-grid?

Is there a way to add a custom column menu tab with my own favourite icon which on click would render my custom react component?
something like
myColDef.menuTabs: ['generalMenuTab', 'filterMenuTab', 'myCustomMenuTab']
FYI I'm using v12.0.2
What you're after can't be done I'm afraid. The grid supports React components in all sorts of ways (renderers, editors, filters etc), but not via the column menu.
I've updated the docs page to remove the gibberish issue - it'll be fixed properly in the next release, thanks for highlighting this.
This would be helpful to have. In particular for us, we'd like to filter based off row properties, and not row values. Creating our own tab to filter by cell colors that we have assigned with our own set of labels would be useful.
I agree that it would be a nice feature to have. Apparently, there's no quick out-of-the-box solution to do it. The only workaround I see is to implement your own custom Header component which would display any buttons your want.
There you can put a button to open your own custom menu, which you can implement as any regular UI component. It also means you'll need to manually implement all standard menu options that Ag-Grid provides out of the box if you need them.

Material-ui List select multiple items

As shown in the documentation example you can implement a selectable List.
I was wondering how would one be able to make the list to support multiple selections.
The method that was used in the example is makeSelectable. There doesn't seem to be any documentation regarding that method and I wasn't able to find anything substantial in the issues of their git project.
Any help will be appreciated.
Create a state variable selectedItems to keep track of selected items of the list.
ListItem supports checkboxes, so you can create a checkbox for each ListItem, add an onCheck handler to it and pass to it a unique value to identify which checkbox is checked and based on that you can modify the state variable selectedItems.
Alternatively, you can use Menu in place of List as it has the property multiple. You can set it to true and that's it.

Stacked UI elements: how to have only the visible ones to respond to click

I have 3 dropdown that are stacked on top of each other; I use canvas group to make the non relevant ones invisible; although the click is intercepted only on the topmost control.
How do you work around this? Should I keep track of the position in the hierarchy and swap it when I need to have a specific dropdown control so I can use it? Feels like a lot of work...hopefully is there an easier way?
The image component of UI elements has a Raycast Target property that you can set to false. This will make them unclickable.

SWT Tree, JFaces, TreeViewer

Could you give me some ideas on how I can achieve this.
I have SWT Tree with me, which is managed by means of Tree Viewer.
I want every item in the tree to be editable (I mean, if you put mouse on it and start editing its string value , it should change). But the Root item should not change.
User should not be able to modify the top item's name.
As of now Editing Support is provided for all the items in the tree including the top item.
But top item shouldn't be editable.
Kindly give me some idea about it.
Regards,
Venkata Vineel.
If you use JFace you should set a org.eclipse.jface.viewers.EditingSupport implemetation on your org.eclipse.jface.viewers.TreeViewerColumn. The editing-support class has a method org.eclipse.jface.viewers.EditingSupport.canEdit(Object) you have to implement and that should return false for your top-items. For some examples how to use TreeViewers, EditingSupport and all the other stuff regarding JFace see also the JFace Snippets page.