A Gtk uTorrent Front End… Any Interest?

20 January , 2014 bill Linux

Introduction
I have started developing a Gtk front end for the Linux uTorrent server. I know there is a Web UI but you can not click magnet links in web pages to add them. I was developing this for myself but if there is any interest in the project I will make it public.

gutorrent_indev
(Test data in the torrent list is just for testing the cell renderers)

Project Information
I have been working on this for 4 days now. I started off using wireshark to learn how to communicate with the uTorrent server. I then learnt that there is information on the uTorrent website but found it very incomplete. I found the information needed by reading the code in webui.zip.

The project is written in C++ using Gtkmm. I am coding the UI and not using Glade XML, I just find dealing with C++ code easier than going back and forwards from Glade to C++. The IDE I am using is Code::Blocks, I have tried a few and find this does the job. gutorrent is still in early development and this is what I have done so far:

  • (Complete) uTorrent Web API get token.
  • (Complete) uTorrent Web API get torrent list.
  • (Complete) uTorrent Web API get torrent files.
  • (Complete) uTorrent Web API get peer list.
  • (Complete) uTorrent Web API get job properties.
  • (Complete) uTorrent Web API set torrent priority.
  • (Complete) uTorrent Web API start.
  • (Complete) uTorrent Web API stop.
  • (Complete) uTorrent Web API pause.
  • (Complete) uTorrent Web API force start.
  • (Complete) uTorrent Web API unpause.
  • (Complete) uTorrent Web API recheck.
  • (Complete) uTorrent Web API remove.
  • (Complete) uTorrent Web API remove data.
  • (Complete) Main window UI.
  • (Complete) Add torrent dialog.
  • (Complete) Local settings dialog.
  • (Complete) Loading and saving local settings.
  • (Incomplete) uTorrent Web API send data.
  • (Incomplete) Some dialogs.
  • (Incomplete) Speed graph.
  • (Incomplete) Signal connections to buttons and menus.
  • (Incomplete) A few cell renderers to properly format data in the torrent list and general tab. The ones with TODO next to them in the pic.

I have to write the code for sending data to the uTorrent server. Signal connections to all the button and menus need to be made and I also have to make some dialogs for settings and confirmations.

The cell renderers take data such as an integer of seconds and displays it as time passed or an integer of bytes and displays it as a byte, kilobyte, megabyte, etc. I will complete the other cell renderers once I start driving the GUI with real data so I know how to display it.

The speed graph is something that I will complete last.

I will continue working on this, I just wanted to know if there is any interest in the project. If there is I will upload the code and binaries somewhere like GitHub.

Update:
Not very useful yet but source is uploaded to: https://github.com/mpshouse/gutorrent

New git commit: 3rd Feb 2014 (still not useful yet)
Local settings load, save and dialog.

Desktop, gui, linux, programming, ubuntu,

11 Responses to “A Gtk uTorrent Front End… Any Interest?”


Leave a Reply

Your email address will not be published. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Powered by WordPress. Designed by elogi.