7
$\begingroup$

Please follow those steps:

CurrentValue[EvaluationNotebook[], ScreenStyleEnvironment] = "SlideShow"

SetOptions[
   EvaluationNotebook[],
   StyleDefinitions -> Notebook[{
     Cell[StyleData["Notebook"], 
       DockedCells -> {Inherited, Inherited, Cell[TextData["TEST"]]}]
    },
   StyleDefinitions -> "Reference.nb"
]]

enter image description here

As you can see, those double slideshow toolbars are inherited from somewhere even though there is no reference to Core/Default in StyleDefinitions.

Where are they from?

$\endgroup$
7
  • 2
    $\begingroup$ it comes from the style environment definition: Cell[StyleData[All, "SlideShow", StyleDefinitions -> StyleData[All, "Presentation"]], PageWidth->WindowWidth, DockedCells->FEPrivate`FrontEndResource["FEExpressions", "SlideshowToolbar"], ScrollingOptions->{"PagewiseDisplay"->True, "VerticalScrollRange"->Fit}, ShowGroupOpener->False, MenuSortingValue->1300] $\endgroup$ Jun 29, 2015 at 23:58
  • $\begingroup$ @MikeHoneychurch Well, that's what it is but where does it come from? $\endgroup$
    – Kuba
    Jun 30, 2015 at 6:17
  • $\begingroup$ don't understand your follow up question. This is defined in the default stylesheet. Whenever you switch to slideshow screen environment the docked cell appears as per stylesheet specification. local settings override global settings. you have made specific local settings for the notebook with use the inherited (global) value (i.e. FEPrivateFrontEndResource["FEExpressions", "SlideshowToolbar"]) for slideshows. So for me this does what is expected. $\endgroup$ Jun 30, 2015 at 7:39
  • 2
    $\begingroup$ @MikeHoneychurch When you edit private stylesheet for a notebook there is a reference to Default.nb at the top (which contains toolbar information). I've set StyleDefinitions without any further references. And this is my question, why something else is inherited at all. $\endgroup$
    – Kuba
    Jun 30, 2015 at 7:49
  • $\begingroup$ ok i see what you mean. there is always a default stylesheet. For example if you open a new notebook then edit the stylesheet and delete the reference to default.nb that doesn't mean you have no underlying styles. You will have default style definitions which you can find in the option inspector. For me my default is my own custom stylesheet so when I start with a default notebook (white) and then delete the ref to default stylesheet the notebook immediately changes to a yellowish background (my personal default). $\endgroup$ Jun 30, 2015 at 8:50

1 Answer 1

7
$\begingroup$

The FE always opens the stylesheet named in the DefaultStyleDefinitions option at the global level. In certain failsafe cases, it will fall back to this stylesheet if style definitions can't be found anywhere else. The one case I know for certain(*) where this happens is if the FE followed a stylesheet chain all the way to the end looking for stylename, and that end was not "Core.nb". There might be other cases, too, but if so, they're probably much less interesting for your purposes.

(*) To clarify, this means that I reminded myself by looking at the source code...I've not tried to run confirmational experiments, and if you find something slightly different, it's possible there's something I'm overlooking.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.