Windows launcher
There is a Microsoft Windows launcher for FreeMind, written in C.
Function
This launcher provides the following.
Feature | Description |
---|---|
Icon | Has an icon. |
Dropping a file | When a file is dragged and dropped over the launcher, it is passed to Java application as a parameter. |
Argument passing | When the launcher is run from a DOS console and given multiple arguments, all are passed to the Java application. |
Changing to directory | The launcher has to reside in a directory relative to the application directory. However, it can be run from any other directory. Therefore, if you assign the launcher to a file type, the application is run correctly with the file passed as an argument. |
Compilation
This launcher for Microsoft Windows was compiled using Dev-C++.
To download Dev-C++, go to project page at SourceForge.
To get Dev-C++ working on Windows Vista, follow this forum thread. The thread instructs you to install MinGW separately, and to set the directories in the settings of Dev-C++ to the ones of MinGW.
To recompile it, open the project Freemind.dev with Dev-C++, and compile the project.
The underlying compiler of Dev-C++ was MinGW.
Files
File | Description |
---|---|
Freemind.dev | Project file, to be opened in Dev-C++ |
Freemind.c | The source code |
Makefile.win | Written by Dev-C++. Contains compiler settings. |
FreeMind.ico | Application icon file, with light bulb. |
FreeMind-document.ico | Document icon file, with light bulb. |
FreeMind-butterfly.ico | Icon file, with butterfly icon, instead of light bulb icon. There is no document icon for butterfly. |
Icon1.rc | Plain text, resource file, describing the location of icons. Contains:
#include <windows.h> //100 ICON "FreeMind-butterfly.ico" 100 ICON "FreeMind.ico" 101 ICON "FreeMind-document.ico" |
Icon1.o | Object file compiled from Icon1.rc and FreeMind.ico (or FreeMind-buttefly.ico) |
Freemind.o | Object file compiled from Freemind.c |
Freemind.exe | Executable built from Freemind.o and Icon1.o |
strip-FreeMind-executable.bat | A batch file for reducing the size of the resulting Freemind.exe, to be executed after the Freemind.exe has been created. |
Not all of these files are present in CVS; some are only present in the patches.
Memory constraint
The launcher contains a memory constraint for the Java runtime environment:
- In Freemind.c
char *argument_allowing_more_memory = "-Xmx256M";
- the meaning of "-Xmx": the maximum heap size
When FreeMind reaches this upper limit, it starts to freeze.
If the maximum heap size is increased to 1024M, the launcher won't work on computers with less than 1024 MB.
Patches
Patch | Description |
---|---|
Windows launcher | Features butterfly icon. An updated launcher features more; see the patch. |
Launcher: Metadata, small cosmetic changes |
Gotchas
Things to watch
- FreeMind.ico must be a real icon, not an icon created by changing the extension of a file from bmp to ico.