As you can see, much of the styling for popup menus (also drop-downs, checkboxes, etc.) cannot be directly edited in the Inspector. The result is that sometimes modifying attributes such as fill color or gradient can affect the various object subcomponents (e.g., button and icon) differently from the main body of the object, with unexpected results.
So, when you say you "saved a style," do you mean a named, custom style? In that case, can you reapply the object "default" style? Reading btwn the lines of your post, I'm guessing no, i.e., that you may have overwritten the popup menu's default style in your theme. So, same question, but one level up: is it a custom theme, or did you modify a built-in theme? If the latter, you might try copying a popup menu object from another layout with the built-in theme that your custom one started with, and pasting onto your current layout. Sometimes copying objects btwn layouts with different themes can, itself, have unanticipated results, but the odds of success are higher when copying from the built-in theme that was the basis for your custom one. Failing that, another thing to try is creating a new file with that exact built-in theme, copying a default-styled popup menu from that new file and pasting onto your current layout.
It seems that I saved over top of the default theme. I tried copying from another layout from an older file but it doesn't seem to change the appearance. I even tried copying an entire object from an older file and the second I click paste the layout theme changes it to the new and accidently saved theme.
It's causing a few eye sores throughout ugh.
The second thing that I find confusing is when I go to File>Manage>Themes. I see an option to import my theme but not export.
Custom themes, and changes to the default themes don't exist as independent files and cannot be exported. They live in the .fmp12 file in which they are created. Thus, the "Import Theme" button allows one file to import a custom theme from another file without the intermediary of an independent style-sheet file.
A "last resort" approach would be to rebuild your custom theme in a separate file (starting from the same, original default theme, but being sure to save the theme under a custom name). Make sure to replicate all of your custom object styles using the exact same names (in fact that is more important than getting all the styling exact, as you'll be able to tweak that later). Then, import that new custom theme into your main file and remap each layout to the new theme. If the custom object style names all match exactly, objects will adopt the styles from the new theme. It's a bit (maybe a lot) of work, but it'll solve the problem reliably. Lastly, if you rely on local formatting on layout objects (not an ideal habit unless used in moderation), then as you apply your imported theme to each layout, you'll need to immediately follow up with a single Undo to restore the layout's local object styling.
You can't export a theme. You can only import them. Save the theme with a name you will recognize. Then in the next file go into layout mode, and import the theme you want from the other file.
In trying to get your old style setting back, Have you tried the following:
- Creating a new file,
- setup a layout with original version of the theme you started with.
- Save that as a custom theme.
- Then import that theme into your current file.
- On a new layout create a pop up field that hopefully looks the way you want using the imported theme.
- Copy and paste it on to your current layout then use the format painter to update your current field's style.
- Finally have it save that version of the style to you theme and update the theme.
Thanks Bruce this worked nicely. I noticed that when I add a new theme all of the objects go all wonky, but if I press undo they look the way I want. Not sure if this is a feature or a glitch, but I got it to work.
I noticed that when I add a new theme all of the objects go all wonky, but if I press undo they look the way I want. Not sure if this is a feature or a glitch…
That sounds like that "Undo to restore local formatting" thing. It's intentional behavior and allows you to change a theme without losing local object formatting. The rule is that when you apply a new theme to a layout, one (immediate!) Undo restores local formatting (In cases where that is the desired outcome), while a second Undo undoes the entire change-theme operation.
Bruce, as far as I can remember, once you start using themes you should completely forget about the existence of the format painter tool, as extra css gets added, but I maybe might be remembering wrong... ?
Happy to hear it worked.
<once you start using themes you should completely forget about the existence of the format painter tool>
I definitely heard that guidance several times over at DevCon.
Thanks for laying this out in words Mark, makes sense.
As I remember this, you don't want to use format painter. Instead you want to get the field the way you want it and save it as a part of the theme. Which is what the painter step did in what I was suggesting.
Once the setup is part of the theme, the majority of the CSS gets downloaded once and applied to every item that uses that part of the theme. So if he had 5 Pop-up fields all using the new version of the pop-up style, then only one copy of the CSS would be downloaded.
Tweak one of the fields and don't update the style, then that field will download the entire CSS required to render it.
A bit convoluted.... but I think I have the gist of the devcon presentation.