PATCH: URL handling extension (long, sorry)



Hi all!

Attached is a patch against today's cvs which adds the missing features for
URL handling:

* user configurable ftp application
ftp[s] links may either be processed by the default browser application or by
any other user-defined helper app. The default is gftp, but it might also be
e.g. wget or ncftp in a terminal;

* news support
news and nntp links call a user-defined helper app. Unfortunately, I did not
find a news reader which looks nice (pan does) *and* supports "remote" calls
with uri's (pan doesn't). Currently the default is calling slrn in a terminal,
but without actually processing the link. No good solution, please feel free
to point me to better ones!

I dont't feel really happy with supporting nntp links. It does not add more
features than news, and keeping the following statement from RFC 1738 (I know
it's obsolete...) in mind, it might be better to just drop it:

  "Note that while nntp: URLs specify a unique location for the article
   resource, most NNTP servers currently on the Internet today are
   configured only to allow access from local clients, and thus nntp
   URLs do not designate globally accessible resources. Thus, the news:
   form of URL is preferred as a way of identifying news articles."

Opinions?

Some details about the patch and changed files:

* src/balsa-app.h:
  add three fields to the balsa_app structure to hold the ftp and news helper
  app plus a gboolean to select if the browser should be used for ftp or not.

* src/balsa-message.c:
  - drop the URL_NNTP protocol type (now covered by URL_NEWS);
  - news and nntp select URL_NEWS protocol type (around line 1305)
  - handle calling URL_FTP individually (line 1515 ff.)
  - added calling URL_NEWS (line 1542 ff.)

* src/pref-manager.c
  I added a frame in the `misc' notebook page to select applications. IMHO,
  adding a new page is plain overkill...
  - connect signals (line 435 ff.)
  - read the values from the widgets (line 682 ff.)
  - set current values to the widgets (line 894 ff.)
  - draw widgets in the `misc' page (line 1908 ff.)
  - (de)activate ftp app selection according to radio button (line 2233 ff.)

* src/save-restore.c
  - load application settings /w defaults (line 720 ff.)
  - save application settings (line 957 ff.)

Hope you like it,
Cheers,

	Albrecht.

-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Albrecht Dreß  -  Monschauer Straße 22  -  D-53121 Bonn (Germany)
      Phone (+49) 228 6199571  -  mailto:albrecht.dress@arcormail.de
_________________________________________________________________________

balsa-patches-20010821.gz



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]