Is there a manual/list of special Gtk CSS properties? - gtk3

I'm trying to redesign some Gtk3 widgets in my application (like scrollbars or paned) but was unable to set borders and other properties for paned specifically.
I then found some CSS data in /usr/share/themes/Adwaita/gtk-3.0/gtk.gresource, which use special Gtk properties like "-GtkPaned-handle-size", "-GtkCheckButton-indicator-size" etc.
These were not listed in DevHelp, nor was I able to find it on developer.gnome.org. I think such properties could be exactly what I need. Is there a listing of them with or without a possible description?
EDIT: I wouldn't mind too much searching for them in source code if it is the only way to find names of the properties. Could anyone point me to the right place where to look, please?
Thank you.

These are taken from the names of "style properties" - you can find them in Devhelp, in the sections below the regular properties.
The corresponding CSS property names are built like -ClassName-property-name; so -GtkPaned-handle-size would be the handle-size property of GtkPaned.
Note that style properties are going to be removed in GTK 4, and everything will be customizable by regular CSS properties.

Is there a listing of them with or without a possible description?
Run your program
open the inspector (Ctrl + shift + i)
How to enable GTK inspector
select the widget you're interested in.
From the combo-box, select CSS Nodes

Related

QgsRelationEditorWidget configuration example with python code

I'm learning to use python to control forms in a Qgis project where I use some QgsRelationEditorWidgets to edit attributes of entities in various related layers.
I need information (if possible, some code example) on how to control the Widget with phyton: select the editing buttons to show, activate/deactivate these buttons depending on whether the entity is being edited, etc.
Any idea or reference where to look?
Thanks in advance.

Is it possible to create your own drag and drop Mailchimp template?

I'd like to create a custom drag and drop template so I can increase the design possibilities without losing the functionality. I can't find anything in their documentation.
I was hoping to create something like this, not sure if I'm missing something obvious but I can't find a drag and drop that allows for the different coloured background with columns too.
I could use a block of code but I can't edit the css styles so it wouldn't be responsive for mobile and also not very friendly for those who don't know html.
Rather old question, but to who it might be helpfull:
If you code your own template and upload it to Mailchimp you lose the 'drag & drop' system/UX interface with the different blocks. You are able to create repeatable blocks but then it works with a dropdown list. This is (in my humble opinion) not that user friendly and takes a while before you fully understand how to use the dropdown. I had to explain it to a client earlier today and took a while before they understood it, so I decided to write them a manual for it.
But the design you want to create should be possible to make with a standard MC template. In the 'design' tab you will find settings to control background colors etc.
Still not possible, answer from the Mailchimp support: "At the moment, it's not currently possible to code a drag and drop template completely--one of our drag and drop template layouts will need to be selected, but you can drop in Code blocks to get a little more control over the styling of certain sections."
Though, if it's any help, it is possible to fully custom code your own template, and then add in mailchimps special Template language to the template to open up sections as editable within the campaign builder--or even duplicate certain sections of content. It's not quite the same as the drag drop templates, but adds similar functionality. More info on working with template language can be found here: https://mailchimp.com/help/getting-started-with-mailchimps-template-language/
I know this is an old question, but while searching for this myself I stumbled upon a solution posted here.
Basically it is possible to code your own drag n' drop template, but the solution has not been documented.
Find one of the Mailchimp templates (either one of the basic templates or a custom template from the 'Themes' menu.
Use 'Inspect element' and copy the source code of the iFramed html-email.
Paste in your preferred HTML-editor and modify as intended
Create your own template from the 'Paste in code' mode
If you want custom modules to be added by default, edit using the menu 'Edit design' in the bottom of the screen.
Save and exit :)
I found part of the answer on another topic: [Is it possible to code drag&drop templates for mailchimp?
If you add the following code into your main content div or td it will enable the drag and drop block editor:
mc:container="body_container" mccontainer="body_container"
example:
<div mc:container="body_container" mccontainer="body_container"></div>
This code will add a block editor region to the preheader section:
mc:container="preheader_container" mccontainer="preheader_container"
For the header:
mc:container="header_container" mccontainer="header_container"
For the footer:
mc:container="footer_container" mccontainer="footer_container"
Note: It doesn't seem to matter what you call the mc:container. Creating a new container with a different name worked. Although using just mc:container tag seems to work at first by itself, the mccontainer (no colon) tag is required for it to save properly.
You can create your own drag and drop template you need to add the following into your html coded template where you want the 'drag and drop' feature to exist.
<div id="templateBody" mc:container="container_name" mccontainer="container_name" class="tpl-container">
<div mc:block="3502204" mc:blocktype="text" mcblock="3502204" mcblocktype="text" class="tpl-block"></div>
</div>
This can be repeated in your code multiple times for multiple insertions. I could not find documentation to indicate if the container name or block number needs to be unique, I did make it unique in my template.

How to tune a GTK theme? Is there an exhaustive list of properties?

I'm trying to make GTK-based applications look more compact by customizing a theme, as suggested by an answer for my other question.
I reduced some values I saw in the gtkrc and it got better, but not enough.
I want to shrink it further:
How to do it?
Are there any tools helps me to adjust various paddings or at least show me the exhaustive list of properties I can set in gtkrc? Is there a document with full list of properties can be in gtkrc?
You can try gtkparasite, which is a Firebug-like for GTK+. You have to run it as:
$ GTK_MODULES=gtkparasite my_program
And then you can inspect the properties of each widget, change its values, etc. In the web page you will also see a screencast on how to use it.

What is the best way to enable content authors to add images with captions in Expression Engine

There's a module to do this in Drupal land, but I've been frustrated with the hacks that've been necessary in Wygwam. What is the best way to go about implementing this in such a way that you don't need to totally override the default image handling in ChannelImages/Wygwam?
Assets is a good suggestion, but I believe Devdemon's channel images might be a better fit for the workflow you're suggesting.
http://www.devdemon.com/channel_images/
Clients can add (and see) a caption and more and it's fully integrated with Wygwam and other editors. Devdemon's support is also excellent.
The Assets module from Pixel & Tonic allows you to double-click on the image (or any other file) and add metadata. You then have access to the metadata in your templates.
Check the screenshot: http://pixelandtonic.com/assets
You can also add metadata using the native File Manager. Click the edit icon from the File Manager and you'll see a few fields. You can use the File Entries tag to access it.
http://expressionengine.com/user_guide/modules/file/file_tag.html
I typically use Matrix with one column for the image, one column for the caption, and if a link is needed another column for the link. This of course works best if the image is in a fixed location within your template.
On possible way to accomplish this that I have used is to run some jQuery that looks for images within a certain area, and if they have alt attributes, rewrite the image tag within a tag with a tag inside.
so:
jQuery(document).ready(function() {
$('#page-content > .wrapper img').each(function(){
if($(this).attr('alt') !== undefined && $(this).attr('alt').length > 0){
if(!$(this).parent().hasClass('content-image')){
$(this).replaceWith("<figure class='content-image "+$(this).attr('class')+"'>"+$($('<div></div>').html($(this).clone().attr('class',''))).html()+"<figcaption>"+$(this).attr('alt')+"</figcaption></figure>");
}
}
});
});
will do just that. It's looking within a #page-content div for img tags with alt attributes. And then rewriting it as
<figure><img src='....' .... /><figcaption>This is the text that was in the alt attribute</figcaption></figure>
Soooo, that kinda works. The only caveat is that you had better not use any double-quotes within your alt text, or it will break thangs. Not the cleanest of solutions, but a solution, nonetheless.

ICEFaces: values for the "icon" attribute

I'm writing a menu bar made up of icons.
The easiest way, in my opinion, is relying on the icon attribute of the ace:menuItem component.
Unfortunately, I couldn't find, neither in the showcase nor in the documentation, a complete list of the built-in values allowed for that attribute (i.e. ui-icon, ui-icon-contact etc.).
Where could I find it? In case there isn't such a list, how could I work it out?
You can check the source of the page, then open theme.css
Have a look at:
http://jquery-ui.googlecode.com/svn/tags/1.6rc5/tests/static/icons.html