Windows launcher: Difference between revisions

From FreeMind
Jump to navigationJump to search
(+section: Memory constraint)
Line 85: Line 85:
The launcher contains a memory constraint for the Java runtime environment:
The launcher contains a memory constraint for the Java runtime environment:
*  In Freemind.c
*  In Freemind.c
** char *argument_allowing_more_memory = "-Xmx256M";
** <code>char *argument_allowing_more_memory = "-Xmx256M";</code>
** the meaning of "-Xmx": the maximum heap size
When FreeMind reaches this upper limit, it starts to freeze.
When FreeMind reaches this upper limit, it starts to freeze.



Revision as of 15:55, 19 September 2009

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.

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

  1. FreeMind.ico must be a real icon, not an icon created by changing the extension of a file from bmp to ico.

Links