Windows launcher: Difference between revisions

From FreeMind
Jump to navigationJump to search
m (Reverted edit of Yvyfyjeh, changed back to last version by Dan Polansky)
No edit summary
 
Line 1: Line 1:
There is a Microsoft Windows launcher for FreeMind, written in C.
==Function==
==Function==


Line 19: Line 21:
| 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.
| 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 [http://www.bloodshed.net/devcpp.html Dev-C++].
To download Dev-C++, go to [http://sourceforge.net/projects/dev-cpp/ project page at SourceForge].
To get Dev-C++ working on Windows Vista, follow this [http://sourceforge.net/forum/forum.php?thread_id=1715032&forum_id=48211 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==
{| {{Table style}}
! 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:
<pre>
#include <windows.h>
//100 ICON "FreeMind-butterfly.ico"
100 ICON "FreeMind.ico"
101 ICON "FreeMind-document.ico"
</pre>
|-
| 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
** <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.
If the maximum heap size is increased to 1024M, the launcher won't work on computers with less than 1024 MB.
==Patches==
{| {{Table style}}
! Patch
! Description
|-
| [http://sourceforge.net/tracker/index.php?func=detail&aid=1361629&group_id=7118&atid=307118 Windows launcher]
| Features butterfly icon. An updated launcher features more; see the patch.
|-
| [http://sourceforge.net/tracker/index.php?func=detail&aid=2023895&group_id=7118&atid=307118 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.
==Links==
* [http://freemind.cvs.sourceforge.net/freemind/freemind/windows-launcher/ Windows launcher in CVS - directory]
* [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://en.wikipedia.org/wiki/MinGW MinGW]
[[Category:Development]]

Latest revision as of 11:30, 22 November 2010

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

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

Links