[scribus] scribus] DockWidgets and Workspaces
kabraham at gmx.com
Sat Aug 28 17:46:11 CEST 2010
> On 08/28/2010 07:04 AM, Keith Abraham wrote:
> >/ I'm using Debian sid and python 2.6 with qt 4.7.3
> />/ Lat night I tried the scripts on both scribus 22.214.171.124 and 1.3.8. Both
> />/ failed.
> />/ 126.96.36.199 crashed with the following report:
> />/ Unable to load icon /usr/share/scribus/icons/scribus.png: File not found
> />/ Scribus Crash
> />/ -------------
> />/ Scribus crashes due to Signal #11
> />/ Calling Emergency Save
> />/ Segmentation fault
> />/ I know little about python so I can't find anything in the scripts which
> />/ looks for scribus.png (anyway this icon is normally called
> />/ scribus_logo.png)
> />/ 1.3.8 docked a window OK but seemed to be locked in a loop with the
> />/ loading cursor running and the following in the terminal:
> />/ (4361) KSycocaPrivate::openDatabase: Trying to open ksycoca from
> />/ "/var/tmp/kdecache-keith/ksycoca4"
> />/ Probably a combination of KDE and qt4.7.3?
> 1.3.3.x probably won't work since it's using Qt3.
> I've tried it on 2 Fedora 13 machines, one a desktop, the other a netbook.
> To say that it's a bit fiddly is an understatement.
> Here is the sequence that seems to work for me in both environments
> (running 1.3.9svn):
> 1. Once you get the scripts, edit SaveWorkspace.py and LoadWorkspace.py
> so that the place to save fits your environment. (Example: I used
> /home/gregp/.scribus). I also edited the dialogs loaded, trimming them
> down to Properties, Layers, and Scrapbook, since I don't want all these
> others most of the time.
> 2. Start Scribus with or without a document. Go to File> Preferences>
> Scripter, enable Extension Scripts. Save the settings, close Scribus,
> then open again (this is so this setting is saved, since if Scribus
> crashes, it won't save your Preferences)
> 3. Now run DockWidgets.py -- you will likely be presented with a major
> distortion of your Scribus window, but hopefully it works, and you have
> a number of dialogs docked on the right. Clicking the expand/contract
> widget at the upper right corner of the main Scribus window may get
> everything on screen like you want. Get rid of unwanted dialogs. Also
> note that if you drag and drop dialogs you want from below up over the
> top one, you should be able to create a tabbed setup, with tabs at the
> bottom allowing you to switch from one dialog to another. Hint: don't
> drag all the way up to the top of the dialog, only go 1/3 to 1/2 the
> way, otherwise you'll just replace the top dialog with the one you are
> dragging instead of creating tabs.
This is as far as I got with Scribus 1.3.8. I had Properties, Layers and Arrange Pages docked and tabbed and it looked very nice.
But at this this point Scribus remained in a "loading" loop and I had to kill it.
Over the weekend I'll see if I can install some Python debugging tools and try to find out what the problem is.
I know there's not much point if the scripts are going to be re-written in C++ but it'll be an interesting exercise.
> 4. Now run SaveWorkspace.py
> 5. Go back to File> Preferences> Scripter, and change the startup
> script in Extensions to Scribus_Startup.py (I'm not quite sure this
> actually sticks, though)
It doesn't on my system.
> 6. Close Scribus, start again to see if it works as planned with your
> docked dialogs. On this netbook this morning, I find that I don't get an
> automatic running of the scripts, but running DockWidgets.py (and maybe
> LoadWorkspace.py restores my chosen setup, _but_ I may still have to do
> some fiddling with the window widget to get it sized properly.
> So in my hands it works after a fashion, is quite fiddly, but what I
> like is the tabbed feature it can create, especially useful on this
> netbook with its limited real estate. I would also add that you can
> still use and then close other dialogs, but they will pop up in their
> usual somewhat random locations.
> So if we can get a C++ version that is more integrated into Scribus, I
> think we will have a useful addition.
I second that. I liked what I saw of it and C++ should also provide a more compatible set of routines.
More information about the scribus