Is it possible to use GTK/GDK/X11 to write a function which on call, hides the min/max/close buttons, and on call again I can show them again?
I found way to disable them but not remove them. Any help would be awesome.
Thanks
Yes. Use gtk_window_set_titlebar() to create a custom titlebar to replace the default titlebar. Create your own minimize, maximize, and close buttons for the titlebar. Then you can hide and show them as needed.
You can't do that with the default titlebar, as it is not under GTK's control, nor that of X; it's controlled by the window manager.
Related
I have noticed in the Interface Builder if I want to click on or drag from the Library panel, I only have to click on it once, even if the Library panel does not have the current focus.
I am trying to build a panel that behaves similarly.
Is there any simple way to let the NSTableView accept the click, even if the window does not have the focus?
Thanks.
Ok, I found the answer. Inside from awakeFromNib I call this:
[self setBecomesKeyOnlyIfNeeded:YES];
It seems to do the trick. It's a little bit different from Interface Builder where the Panel actually gets the focus simultaneously with a single click, but doing it this way is just what I was looking for.
Your view should override -acceptsFirstMouse: to return YES (or evaluate the event passed to you to determine what to return). You'll have to subclass NSTableView to do that of course.
I am searching for a way to make a SAPUI5 custom control accessible. I build a kind of tile (based on a VBox control) and try to get this custom control accessible over keyboard (tab) or by clicking the mouse.
My idea was to implement sap.ui.core.Control#getAccessibilityInfo in my control, but this seems never be called. Currently I am trying to debug how other stuff is doing it like https://github.com/SAP/openui5/blob/master/src/sap.m/src/sap/m/ListBase.js but I can't find a way that works.
My control is currently placed inside a table, if I click on it the focus will be set to the table column. If I press tab-key it jumps to an input control inside my control.
My assumption, I miss something so that the control would be considered as focusable somehow.
I think that you are looking for ItemNavigation. VBox wasn't design to support keyboard navigation on it's content, but you could add a hook to onAfterRendering of your custom control, collect all dom refs you need to navigate on and pass them to ItemNavigation.setItemDomRefs.
If you need an inspiration you can have a look at sap.m.List implementation.
The important thing is to add oRM.writeAttribute("tabindex", "0"); // allows selection into the renderer of my own control. That allows to use the tab handling. Full code in a different question: How to copy&paste SAPUI5 controls by pressing Ctrl+C and Ctrl.V?
With this the control can be selected.
Also notice the this._bExcludeFromTabChain = false; in init section.
I Want to change whole window content after button press. What is the best way to do that? Someting like "Next" button on installers but with custom buttons.
You probably want a GtkStack with your own buttons to change the visible child (but do have a look at GtkStackSwitcher and GtkAssistant for more ready-made but less flexible solutions).
I just want to make a moving button , Is there a way to do that in GWT? Thanks in advance.
BS
Out of the box, you can use a DialogBox to display your button. DialogBox can be moved around, but you will need to display something in a Caption that is used for dragging.
Another option is to use PopupPanel. It can be completely invisible (no Caption), but you will have to implement dragging functionality on your own. The advantage is that a PopupPanel floats on top of all the other layers in your UI.
Finally, you can simply add dragging functionality to a regular button. Just remember to check for the boundaries so that a user cannot drag your button outside of the visible browser area - or obscure some important elements of the UI.
I want to add a new toggle button to the figure toolbar. When it is clicked, I want to "untoggle" any other buttons that were toggled. E.g, if the "rotation" or "zoom" toggle buttons were pressed, I want to untoggle them and their effect.
Simply getting all their handles does not work, as this does not deactivate their effect.
You should first find all of the children of toolbar. You can do it by the following command (Assuming that currentToggleButton is a handle to current toggle button):
get( get(currentToggleButton,'Parent'),'Children');
Then do the following:
set(children,'State','off');
Of course, you need to return the state of your current button to on.
set(currentToggleButton,'State','on');
By the way, if you are using GUIDE, you can add zoom,rotate and pan as pre-defined tools. In that case, Matlab will handle the toggling automatically.
In order to turn off the effect of zooming/pan/rotation, you can do:
zoom('off')
pan('off')
rotate3d('off')
or you can use another syntax version (as #Eitan also mentions)
zoom off
pan off
rotate3d off