Windows launcher: Difference between revisions

From FreeMind
Jump to navigationJump to search
(+section: Memory constraint)
Line 81: Line 81:


Not all of these files are present in CVS; some are only present in the patches.
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";
When FreeMind reaches this upper limit, it starts to freeze.


==Patches==
==Patches==
Line 102: Line 108:
==Links==
==Links==
* [http://freemind.cvs.sourceforge.net/freemind/freemind/windows-launcher/ Windows launcher in CVS - directory]
* [http://freemind.cvs.sourceforge.net/freemind/freemind/windows-launcher/ Windows launcher in CVS - directory]
* [http://freemind.cvs.sourceforge.net/freemind/freemind/windows-launcher/Freemind.c?revision=1.1.18.1.4.1&view=markup Windows launcher in CVS - source code]
* [http://freemind.cvs.sourceforge.net/viewvc/freemind/freemind/windows-launcher/Freemind.c?view=log Windows launcher in CVS - source code]
* [http://sourceforge.net/projects/dev-cpp/ Dev-C++ at SourceForge]
* [http://sourceforge.net/projects/dev-cpp/ Dev-C++ at SourceForge]
* [http://en.wikipedia.org/wiki/MinGW MinGW]
* [http://en.wikipedia.org/wiki/MinGW MinGW]


[[Category:Development]]
[[Category:Development]]

Revision as of 15:44, 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";

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