I have a Firefox addon that creates several buttons with dropdowns. Each dropdown contains several menu items representing bookmarks.
Almost identical to bookmark folders or tags on the bookmarks toolbar (after having dragged them there) which also have dropdowns with bookmark menu items.
I would like to reuse bookmarks contextmenu already existing on those latter dropdown menu-items.
I have found this way of doing it partly, but I'l stuck (see below how):
var mi = doc.createElementNS(XUL_NS,'menuitem');
mi.setAttribute('class', 'menuitem-iconic bookmark-item menuitem-with-favicon');
mi.setAttribute('scheme', 'http');
//this gets the existing contextmenu all right
mi.setAttribute("context", "placesContext");
//this.pp = my own dropdown menupopup,
this.pp.appendChild(mi);
Resulting contextmenu screenshot:
First (minor) problem:
Everything is grayed out until I first right-click on one of the latter dropdown items before right-clicking my own.
Second (major) problem:
When hitting a command/menu-item of the placesContext menu, the commands (e.g. "Open" or "Open in new tab") are not done. Nothing happens. Is there some attributes that my menu-item misses so that the "placesCmd_open" ignores it or do I really have to override the existing event listeners of placesContext or even different?!
Related
If you have a TreeView in a VS Code extension, when you click on the items in it, they get selected (highlighted green, in my color theme). Click away from them and they get un-highlighted. See the below screenshot, in the file explorer view:
I'd like to "take control" of this behavior. I want to disable the highlighting that happens by default when the user clicks on these items, disable the un-highlighting that happens when they click away, and control in my extension code when the items get highlighted. I'd like to do this in my extension's custom TreeView, not an existing one.
Use the 'reveal' method of the treeview item. You can specify if it's to be 'selected' and also 'focused'.
Basically, you can change to the structure you want by forcing a refresh of the whole treeview. You probably already know that if you started making treeview extensions for vscode...
But then, right as it finishes re-rendering the tree, you 'reveal' a node, with the 'select' parameter option, to have that node as the selection in the tree. ...To have another node selected, just 'reveal' another one. (no need to force a full refresh of the treeview if it's only to have another node selected without changing the structure of the tree.)
see the 'reveal' method of the treeview here treeview API
Also see the leointeg extension on vscode for actual code example of controlling which node is selected
I am trying to create an item that is a button "show more" and when you press on it you can show a kind of context menu / drop down that all of the items in that drop down are with checkboxes and there is a search component in it too, so you can search some items in the dropdown by their name. For example: (instead of "c++,c#,Object c" it's should show "show more", i.e. static text)
I tried to use kendoContextMenu. But I don't know if it's could work because the problem with context menu is that when I will click on a checkbox the menu will close. Please advise me of a way to do that or if you have an example of code. Thanks!
The MultiSelect component might be a good starting point
https://docs.telerik.com/kendo-ui/api/javascript/ui/multiselect.
My understanding is that MultiSelect does not have a "select more than one at a time in dropdown" feature.
You might consider using a pop up window and within that implement your own custom ui that features everything you want
search term box
scrolling list of selected and selectable items
accept or cancel changes in selection
Regarding your dojo that extends drop down list, I can't code the extension for you. However, changing the dataSource assignment to a setDataSource call will populate the extension component according to the template.
// kendo.ui.DropDownList.fn.dataSource = options.testItemSource;
me.setDataSource(options.testItemSource);
On the order form, there is a products section that has uses the default Order Product Inline Edit View. This view is not editable, but you can copy it and save it as a different name.
However, when you copy the view, the new view does not display all of the same buttons when viewing the sub-grid.
default view:
copied view (the lock pricing, move up and move down buttons are missing):
The copied view shows the + button and it's drop down menu correctly. Why hasn't it copied the other buttons, and how can i get them to show on my custom view?
I am happy to edit xml and upload that back to CRM if necessary.
Update:
FYI, this is all a pointless effort as the word template ignores the sequence order. What an utter waste of time.
I'm going to guess it's because the default view on the order of order products is a special one. It has special behaviours that arn't seen in the rest of 365, i.e. you don't get up, down, or lock on other views.
I would assume that the extra buttons only get shown on that default view and arn't really supported outside of that view.
Turns out it is actually quite easy to show these buttons for other views using the ribbon workbench.
Right click on the button in ribbon workbench under the subgrid section and click on customise
Select the command in the "solution elements" pane at the bottom
In the bottom right hand pane, right click on the enable rule "Mscrm.IsInlineEditView" and click "Remove from Command"
Publish
These buttons now show up for all views.
My goal is to Programmatically select items from the List of the combo box, but without updating the edit control. The same can be achieved with the mouse. E.g. when you drop down and hover an item from the list, that item is highlited. And that is all. If you want to select in it the combo box (e.g. move it to the edit control) - you must click on the LisBox.
I tried with CB_SELECTSTRING. But it automatically updates the ComboBox edit control with the selected text which is not what I want. I want to do this using raw Win32 or VB6
Thanks
There is a big difference between highlighting an item in the drop-down list and actually selecting an item to make it active. CB_SELECTSTRING selects an item, as its name implies. But there is no official ComboBox API to highlight an item, though.
However, you can display the drop-down list manually (CB_SHOWDROPDOWN), and either:
move the mouse over the desired item so the list can perform hot-tracking logic.
manipulate the list directly. Use CB_GETCOMBOBOXINFO or GetComboBoxInfo() to get the list's HWND, and then send LB_SETCURSEL to it.
I have a programming problem in Visual FoxPro, create a form that contains PageFrame with 2 Page.
1. On Page 1, Create a program to display data in the grid and give the sorting facilities, navigation and search.
2. On Page 2, create a program to calculate volumeTabung and spacious blanket.
Can anyone provide a solution? thank you
Although this is not DOING the answer, but a simple guide.
In the VFP command window,
Create Form [whatever form name you want]
Once form is up, look at the toolbar for "Form Controls". Click on the "PageFrame" control and then click on the form... There, you have a default pageframe with 2 pages as a default.
The "Properties" window should be visible by default. Click on the combobox on at the top which shows all controls. Open the drop-down and you will see "Page1" and "Page2" of the page frame control. Click on either page, and that will bring focus to that respective page.
Now, click on the Forms Controls toolbar again, such as to grab textbox, label, combobox, whatever and then click on the page and your controls are there. Then get focus to the second page and do the same for whatever you want.
Save and run the form. This just gets you to see the controls and how simple to put them on. Actual pulling your data and populating is really more your "to do" list.