How to remove the splash screen/welcome screen

Compiling, libraries, modules, coding guidelines and porting

Moderators: jesterKing, stiv

Post Reply
monsieurouxx
Posts: 0
Joined: Wed Oct 19, 2011 2:45 pm

How to remove the splash screen/welcome screen

Post by monsieurouxx » Wed Oct 19, 2011 2:51 pm

Several topics already explain how to change the splash screen picture.
However I can't understand how to prevent it from appearing, or customize it (buttons, text, etc.).

Indeed, the source file containing the image is included in a function apparently meant at displaying something the said function describes as a "button" (that's not a button!?!), which in turn is used in a function containing a big "switch" choosing between all possible types of UI controls to display, incuding this so-called button.

In other words, it's like this picture is ready-to-use, but I can't find where it's used.

I can't find where this splash pop-up is actually designed (position of text, buttons, etc.) and displayed.

SirDude
Posts: 233
Joined: Sun Oct 13, 2002 7:37 pm
Location: University of Minnesota (USA)
Contact:

Post by SirDude » Wed Oct 19, 2011 5:47 pm

This is a good intro to getting around the source project.

So I'll expand on it a little...

First step lets try grep -I --exclude="*.svn*" -r splash *
we get stuff in the following files:
editors/include/ED_datafiles.h
editors/interface/interface.c
editors/datafiles/CMakeLists.txt
editors/datafiles/splash.png.c
makesrna/intern/rna_userdef.c
windowmanager/intern/wm_init_exit.c
windowmanager/intern/wm_operators.c
windowmanager/intern/wm_window.c

We know we can skip that stuff in datafiles
In wm_operators.c I see a lot going on. I should probably know how operators work:
http://wiki.blender.org/index.php/Dev:2 ... /Operators
http://wiki.blender.org/index.php/Dev:2 ... s/Tutorial

There are multiple ways to tackle this problem, you could change how the operator works, you could also attack it from where does this operator get activated...

Another way to do it would be to note that a lot seems to be going on in
the function: wm_block_create_splash
so look through the code and see where the heck it's used.

I'm going to stop here because its useful for you to do the legwork and figure this out. I'll answer questions though so feel free to ask. :)

monsieurouxx
Posts: 0
Joined: Wed Oct 19, 2011 2:45 pm

Post by monsieurouxx » Thu Oct 20, 2011 4:40 pm

Thanks a lot! I hadn't managed to locate "wm_block_create_splash" -- that's a big step forward for me.

So I take it that, unlike the general UI, the splash window cannot be modified using Python scripts?

SirDude
Posts: 233
Joined: Sun Oct 13, 2002 7:37 pm
Location: University of Minnesota (USA)
Contact:

Post by SirDude » Mon Oct 24, 2011 5:17 pm

cd blender/release/scripts/startup/bl_ui

grep -i splash


space_info.py: row.operator("wm.splash", text="", icon='BLENDER', emboss=False)
space_info.py: layout.operator("wm.splash", icon='BLENDER')
space_userpref.py:class USERPREF_MT_splash(Menu):
space_userpref.py: bl_label = "Splash"
space_userpref.py: col.prop(view, "show_splash")


:)

monsieurouxx
Posts: 0
Joined: Wed Oct 19, 2011 2:45 pm

Post by monsieurouxx » Mon Oct 24, 2011 5:23 pm

SirDude wrote:cd blender/release/scripts/startup/bl_ui

grep -i splash


space_info.py: row.operator("wm.splash", text="", icon='BLENDER', emboss=False)
space_info.py: layout.operator("wm.splash", icon='BLENDER')
space_userpref.py:class USERPREF_MT_splash(Menu):
space_userpref.py: bl_label = "Splash"
space_userpref.py: col.prop(view, "show_splash")


:)
I've seen that.
But then again it only allows to show or hide the splash screen, using this hard-coded operator "wm.splash".

But one cannot modify the controls on the splash screen (for example I've read in the C source code comments that one cannot intercept UI events at the time the splashscreen is displayed).


PS: I apologize if my questions make it seem like I'm lazy. It's just that I'm entirely new to both Python and this "operators" system, so I don't understand everything and usually overlook the most important elements. this makes me ask apparently obvious things.

dfelinto
Posts: 0
Joined: Wed May 17, 2006 8:44 pm
Location: Rio de Janeiro, Brasil

Post by dfelinto » Fri Nov 18, 2011 7:39 am

in the user preferences you can disable it. save the default file (Ctrl+U) and you will never see it again.
Rio de Janeiro - Brasil
http://blenderecia.orgfree.com

monsieurouxx
Posts: 0
Joined: Wed Oct 19, 2011 2:45 pm

Post by monsieurouxx » Tue Nov 22, 2011 3:52 pm

dfelinto wrote:in the user preferences you can disable it. save the default file (Ctrl+U) and you will never see it again.
Thanks, I've seen that.

In the meatime I've done some progress with my thought process:
Because of my development cycle, I'd rather find a non-intrusive way of modifying the splash screen (e.g. by using only Python). I'm not happy with having to recompile Blender, and having to re-apply my changes to each new release of Blender.

So I think I'll go with this solution :
1. disable the splash screen using the options
2. Use an external launcher that will display a fake splash screen window.

Post Reply