Showing posts with label gtk. Show all posts
Showing posts with label gtk. Show all posts

Friday, May 24, 2013

Compiling Geany on Windows

Can't remember exactly how many times I've tried compiling Geany or even thought of trying to compile it on Windows.  But I remember that my last try was last 2011 -- about February or March.

It's been a while that I've been trying to find a stable and reliable free and open source (not to mention cross-platform) Source Code Editing software so I could strip it down to provide an IDE specifically functioning for my open source game creation project called KAGE.  Finally, -- finally! -- I successfully compiled it yesterday!

I know that Geany's project page has a how-to page for compiling it on Windows but I still had bumps along the way.  This tutorial is simply to compliment what seems to be missing in the official tutorial.

So, just a recap. You need to have this things done already:

Not sure if we also need the GtkMM for Scintilla, but I did have that installed on my machine before I tried compiling Geany for the last time.

Before we proceed, let's make sure that you had the contents of GCC and GTK+ under C:\libs directory.  And that C:\libs\bin is added on your %PATH%, as well as C:\libs\msys\1.0\bin.

Now, for the `complimentary' part of my tutorial.

First, download the Manifest file from Geany's Git repo, which was not included in the downloadable zipped source code.

Rename win32-config.h to config.h then change the content of makefile.win32 from

all: config.h
 $(MAKE) -C tagmanager/ctags -f makefile.win32
 $(MAKE) -C tagmanager/mio -f makefile.win32
 $(MAKE) -C tagmanager/src -f makefile.win32
 $(MAKE) -C scintilla -f makefile.win32
 $(MAKE) -C plugins -f makefile.win32
 $(MAKE) -C src -f makefile.win32

config.h: win32-config.h
 $(CP) $< $@


to this

all: $(MAKE) -C tagmanager/ctags -f makefile.win32
 $(MAKE) -C tagmanager/mio -f makefile.win32
 $(MAKE) -C tagmanager/src -f makefile.win32
 $(MAKE) -C scintilla -f makefile.win32
 $(MAKE) -C plugins -f makefile.win32
 $(MAKE) -C src -f makefile.win32


The reason behind is that, there seems to be wrong with the makefile that the command COPY thinks config.h is supposed to be a directory.

Now, open a command line then run cd to the directory where you extracted Geany's source code.

Finally, type-in: make -f makefile.win32

Wait for it to compile and you'll then end up a very fresh build of Geany on Windows.

~creek23

Wednesday, May 5, 2010

GTK#: How to Change Font of Entry

This tutorial assumes that you are using MonoDevelop and created a C# GUI application using GTK#.

Supposing you already have a Window with an Entry, named txtSource, this is how you change the Font.

First, include Pango in imports.
  • using Pango;

Second, use the FontDescription class and instanciate one.
  • FontDescription fontDesc = new FontDescription();

Third, set the Family property of FontDescription object to any font family you want (ex, "Arial", "Tahoma", "Courier).
  • fontDesc.Family = "Courier";

Lastly, set the FontDescription object to Entry using ModifyFont method.
  • txtSource.ModifyFont(fontDesc);

The whole code should look something like this:

using System;
using Gtk;
using Pango;

public partial class MainWindow : Gtk.Window {
  public MainWindow () :base(Gtk.WindowType.Toplevel) {
    Build();

    FontDescription fontDesc = new FontDescription();
    
    fontDesc.Family = "Courier";
    
    txtSource.ModifyFont(fontDesc);
  }
}

Thursday, March 4, 2010

Getting Started with GTK on Windows

I am assuming that you already know GTK+ and wanted to try it out for the first time. This article will discuss how to setup your development environment to start writing GTK+ based applications.

First things first, download everything you need.

Download GTK from GTK.org -- I downloaded gtk+-bundle_2.18.7-20100213_win32.zip.

Optionally, download libiconv from GTK.org -- as of this writing libiconv is version 1.9.1.

For C editor, I am using MinGW Developer Studio. It is the easiest to setup in compiling GTK+ applications since it already works well with MingGW, the recommended toolchain when using GTK. Sadly, the developer's website is somewhat down or possibly currently doing a revamp. But you can easily get version 2.0.5 from list of mirrors courtesy of TextEditors.org.

Setting them up

Install MinGW Developer Studio.

Extract gtk+-bundle_2.18.7-20100213_win32.zip then place content in C:\Gtk+\{here}

Same with libiconv, extract libiconv-1.9.1.bin.woe32.zip then place all contents in C:\Gtk+\{here}

Configuring MinGW Develop Studio.
  1. Launch the editor
  2. Click Edit -> Options... to open the Option dialog box.
  3. Click the Directories tab
  4. On Show directories for,
    • select Include files then add the following paths:


      • C:\Gtk+\include
      • C:\Gtk+\lib\glib-2.0\include
      • C:\Gtk+\lib\gtk-2.0\include
      • C:\Gtk+\include\cairo
    • select Library files then add this path:


      • C:\Gtk+\lib
Testing it out.
  1. Launch MinGW Developer Studio
  2. Click Project -> New Project to open New dialog box.
  3. Select GTK+ Application and indicate HelloGTK as Project Name
  4. Click OK to create new project.
  5. Click File -> New to open New dialog box.
  6. Select C/C++ Source File and indicate hellogtk.c as File name.
  7. Click OK to create new file.
  8. Type in the code below then press F5 to compile and run the program.

If you are having problem running you hellogtk application, you might need to install GTK+ runtime. I use GIMP, which installs the runtime -- try to download and install a copy of GIMP for Windows.

Where to go from here? Read the official documentation and tutorials.