|
Oh w00t! It's been a while since I uploaded a version of the FoxEditor
program, and it's been a doozy of a build in creating this version. One
of the main reasons for the extended delay in releasing a build was
locating a library system which would permit me to transparently load
and save image files other than BMP, and currently, using the FreeImage library, which is free and open. A must requirement for an open source project.
However's,
the library is not source code, nor is the fox editor's current source
code included in this build, maybe with the next build, or as a
separate download. And the FreeImage is a compiled DLL which needs to
be in the same folder as the program, it's a separate download at the
website, it's one of those things where I'd rather not force you to
download the entire thing every time I update my program.
Onwards to the goodies.
UnDo!
The currently enabled undo's in the program are:
- KitterSpeak Edits:
- The
program will make an undo action for anything which affects
KitterSpeak. So if you cut one line out of a chunk of KitterSpeak, it
will create an undo for that. Cut another from the same shape, it will
create another. Edit the KitterSpeak, and when you save and exit, it
will create another. Paste some KitterSpeak, and yet one more. Undo's
of course, as expected, work their way backwards from the last thing
you did.
- Walk / Sit / Get:
- Each change to the
WSG properties of a shape causes an undo action to be created for the
shape, Unlike the positioning text, it does not matter which frame you
are on when you edit those elements, they are total shape affecting
flags. If you use the mass changer to change a bunch of elements in the
file, the program creates a mass undo for them, that is, if you affect
10 shapes, it will undo those 10 shapes.
- Positions; (both furre and shape):
- Because
I use a set of scrolls with the position variables, it would be total
lunacy to undo each change in the properties, so the undo system takes
a snapshot before the first change is implemented and ignores any
changes after that. So the undo will restore the shape's position
properties back to the exact state they were in before you started
tinkering with them. This extends to clicking on other shapes before
coming back to the one you were editing, until you make some other type
of edit on that shape, or edit another shape, the last undo for that
shape remains valid.
- Image changes: O.O
- Well,
here's a new feature of the program which required an undo action, you
can import a variety of image types into the program at this point, and
export them as well.
Currently, you can import: Public Const BmpFiles = "Bitmap Images (*.bmp)|*.bmp" Public Const GifFiles = "GIF Images (*.gif)|*.gif" Public Const JpgFiles = "JPG Images (*.jpg)|*.jpg;*.jpeg" Public Const PcxFiles = "PCX Files (*.pcx)|*.pcx" Public Const PngFiles = "PNG Images (*.png)|*.png" Public Const TgaFiles = "Targa Images (*.tga)|*.tga"
Note
that the need to select the transparent color is not defined in the
program, so yes, you will have to wait just a bit for me to get that
working correctly. (I just noticed that.) though if you have something
which uses the current "background" color {RGB(199, 144, 186)} in the
image, that will become the transparent color.
And export them
as well, though for some reason, the DLL is not able to export export
PCX files at this time. Will have to write a hard wrapper around the
function to get PCX file saving to work. Just need to add the study of
the PCX file format and how to save them to my really, really, messy
desktops.
Also,
currently, if you save to PNG, GIF, & TGA, it will set transparency
to the image, will need to wrap the save command to include a function
switch to disable that.
When you import images, until I get a go
on formatting, it will convert the images to furcadia palette images,
in the Fox Editor, the Image Editor does not, nor will not do that.
Oh,
yes, the Image Editor. From the outset of this project my intention was
to have the image editing part of the program separate from the "Fox
Editing" part of the program. Mainly because I wanted to be able to get
seriously fancy with image editing. Currently you can open up several
images, either from the Fox File, or from your drive, zoom in, out,
make the cursor color stick to a position on the image when you click
the mouse, but just not be able to do anything else with them. I'm
still working out the details on how the image editor should work, it
took me a couple of months of research into various schemes and ideas
before settling on this implementation.
And paused that briefly
to implement the undo scheme because I considered it very important to
have a solid undo system in place first.
And also, for a
drumroll please, under the view menu there's a menu selection called
"View Placement" which will switch the program mode into a grabbable
image position setting window. Will have the furre positioning system
in shortly, and that will include the ability to open any player patch.
And
you will also note lots of placeholder menu items for future
development, one of the more interesting ideas is the View With Family.
I am not 100% sure how I'm going to implement it, however, it will
permit you to create family groups of objects, and display them
together so you can fine tune a patch without having to save, reload
patch in dream editor, check the positioning, switch back to the patch
editor, ... |