Copyright ã 1994,1995 David C. Lambert, All Rights Reserved

FAQ1;¬Fiend v1.4 FAQ

1. How can I change the Fiend icon?

To change the images displayed on the Fiend Dock icon, you can simply replace the files "FiendIcon.tiff" and "AltFiendIcon.tiff"  (the open and closed Fiend Dock images, respectively) in the Fiend.app package directory.  You can't change the displayed app icon (ie, the one that the Workspace file viewer shows) unless you use the segedit command.

2. How do I make my background image go away?  I keep changing it, but it keeps coming back.

Just open the Preferences panel, clear the "Image File for Background" field, then make sure you hit <RETURN>.  Failing to hit return causes Fiend to ignore the change.

3. My Fiend Dock icon is not accepting files that I drop onto it.  Why is this?

This is caused by one of two things:

        a. You already have this file on one of the Fiend Dock's
            levels.  If this is the case, you should hear a beep and
	     get a console message to this effect.

        b. The Fiend Dock icon is in the same column as the Workspace
            dock, and the Workspace dock is not in the lowest window
            tier.  When this is the case, even if the Fiend Dock icon appears
            to be above the Workspace dock, the Workspace dock gets
            the drag events.  There is only one solution for this that I
            know of, and that is toggling the Workspace dock's window
            tier by alt-clicking the Workspace icon.  This will place the
            Workspace dock in the lowest window tier and allow Fiend's
            Dock icon to receive drag events as usual.

4. How can I get only one icon for Fiend (that is, how can I get rid of the Fiend app icon, and just have the Fiend Dock icon visible)?

You need to take Fiend off of the Workspace dock and add the Fiend executable to the Workspace LaunchPaths.  You can use "TickleServices/Add to Launch Paths" if you have it, or you can use this shell script to do the job:

-----------------------------------> CUT HERE <---------------------------------
#!/bin/sh
# 
# edit the following line to correspond to wherever
# you have installed Fiend.app

FIENDPATH="/LocalApps/Fiend.app/Fiend"

OLD=`dread Workspace LaunchPaths | \
     awk '{print $3}' | grep -v Fiend`

if [ ! -z "$OLD" ]
then
    N="$OLD;$FIENDPATH"
    dwrite Workspace LaunchPaths $N
    echo "Fiend added to LaunchPaths"
else
    echo "Fiend is already in your LaunchPaths:"
    echo `dread Workspace LaunchPaths | awk '{print $3}'`
fi

exit 0
-----------------------------------> CUT HERE <---------------------------------

5. How can I disable the Fiend Shelf or Backspace?

These features can be disabled from the Preferences panel.

6. My BackSpace modules aren't being loaded properly by Fiend.  What's up?

Fiend will only be able to load BackSpace modules that were compiled with the same architectures as Fiend itself.  That means that if you have a QUAD FAT version of Fiend, it will only be able to load QUAD FAT BackSpace modules.  Conversely, if you have a version of Fiend that has been thinned for a particular architecture, you must have BackSpace modules that are compiled solely for that architecture.  Thinning multi-architecture modules with lipo does not work, in general.  You have to recompile.

The telltale symptom of this problem is that you get a console message saying that Fiend cannot load a given module.

7.  I can't do a "move" operation when dragging from the Fiend Shelf or Dock to the Workspace file viewer.  Why not?

The Workspace file viewer does not allow the drag move operation from foreign sources.  This is why you can't move something out of a Mail message, for example.

8. Fiend sometimes crashes when I launch an app on the Fiend Dock through services (or from the Workspace).  What can I do?

This is caused by a timing issue surrounding Fiend's forced activation of a docked application after launch.  In a Terminal window, try:

	unix> dwrite Fiend ActivationDelay X

where 'X' is measured in seconds (and defaults to 0.5 seconds).  Try values higher than 0.5 (although more than 5 seconds or so becomes very noticeable).  If this does not help, try setting it to a negative value.  This will disable the forced activation of the launched application, and should clear up the problem.

9. Fiend is hanging on startup!! What's going on?

There's only one thing that causes this (besides network delays, etc).  It's caused when the integrated BackSpace part of Fiend cannot load the default screen saver module when starting up.  Try disabling BackSpace in Fiend (see question #5) and restarting.  If it comes up, then this is your problem.  If you change your default screen saver module for Fiend, that should fix it.  (You should probably see some console messages when this happens, too.)

10. Where does Fiend keep its config files, and what is the format of
each config file?

Fiend stores its config files in ~/.AppInfo/Fiend.  It stores separate files for the Dock and the Shelf, and each different screen resolution under which you have run Fiend will result in the generation of a separate pair of config files.   For example, if you run screen resolutions of 1120x832 and 1024x768, you will
file the following files in ~/.AppInfo/Fiend:

     FiendDock.1120.832
     FiendShelf.1120.832
     FiendDock.1024.768
     FiendShelf.1024.768

In addition, you may find some files that are named as above, but with trailing tilde characters (~).  These are backups for their respective config files.

The format of the Fiend Dock file is as follows:

	V N
	n0 X0
	f0	x0	y0	/absolute_path/level1/file_name0
	f1	x1	y1	/absolute_path/level1/file_name1
		 .
		 .
		 .
	fn	xn	yn	/absolute_path/file_namen
	n1 X1
	f0	x0	y0	/absolute_path/level2/file_name0
	f0	x0	y0	/absolute_path/level2/file_name1
		 .
		 .
		 .
etc.

Where:

	V	is the version number of the config file (should be 4)
	N	is the number of Dock levels
	n0	is the number of icons on level 0
	X0	is the name of level 0
	f0	is the dock flags value for the first icon:
		where	bit 1 means auto-launch,
			bit 2 means animate,
			bit 3 means level-independent
	x0	is the x offset of the first icon, in units of the icon size
	y0	is the y offset of the first icon, in units of the icon size

The format of the Fiend Shelf file is as follows:

	x0	y0	/absolute_path/file_name0
	x1	y1	/absolute_path/file_name1
	x2	y2	/absolute_path/file_name2

11. How can I replace the Workspace dock entirely and just use Fiend?

I don't know. ;-)  

The most you can do (that I know of) is:

           a. Add Fiend's executable (Fiend.app/Fiend) to the
               Workspace LaunchPaths, as above;

               This will cause Fiend to be autolaunched at
               login.

           b. Add Fiend to the Workspace dock;

           c. Set the Workspace DockController default to
               N, where N is the index of the Fiend app icon
               on the Workspace dock (the index of the top
               position is 1 and increases as you move towards
               the bottom of the screen).

               This will cause Fiend to be the app that controls
               your login session - that way, when you quit Fiend,
               you will get the "Do you really want to logout?" panel.

	d. Set the Workspace DockLaunchFlags default to
               its current value, minus 1;

               This will disable the automatic launching of the
               Workspace at login.

               Note: This messes with Services (at least)
                         so I don't recommend it.

               Note also: If you have a non-standard screen
                                 size (ie, not 832), the proper default
                                 value to modify will be called:

                                      "DockLaunchFlagsForHtX"

                                 where X is your actual screen height.