AMIGIFT Documentation

Browsing /General Usage/Main Window

main window toolbar

Thats the main window toolbar, the buttons are as follow: (from left to right)

infoNote: those ghosted buttons are due we grab the screenshot without being connected to the daemon, once connected they are in normal state and the 'Connect' button ghosted.

- Connect

This button connects you to the daemon.   If the daemon isn't running already, and you are using the launch on startup option, it will be automatically launched. Some daemon's command-line/process options can be configured from the preferences which will be used by GiFTMui at time of using SystemTags()

- Disconnect

This buttons closes the connection established with the daemon, Note it only disconnects you from the daemon, which is keep running in the background.

- Search

Use this button to start a search once you adjusted the search criteria from the search panel.   Multiple search requests at the same time are possible if you set the multi-lists switch on (registered users only). Pressing the Enter key over the search string has the same effect than clicking this button.

- Stop

This button stops the current search request.   On previous versions/builds when you click it all further result's additions are rejected ensuring you'll have upto search box's max-results as maximum - this no longer works in this way because there is no real need to ignore further results since the daemon will continue sending them to us until it receives the stop request from the socket connection and process it. note this action is launched in real-time whatever you use sockopt's send queue or no, and once the request has been sent the button gets ghosted.

- Download

This button request the daemon to start downloading the selected entry from the list of results, thats the same as double-click a entry from the results-list. Multiple download requests at once are perfectly possible.

infoNote: There are some options at the preferences about certain actions to be performed at time of downloading (and with each selected download in case of multiple requests)

- Statistics

This button opens a window for network statistics, you'll see number of users, files and bytes for each network, as well the number of downloads/uploads from/to a particular network which GiFTMui itself track internally.

infoNote: Recent Ares versions don't report real stats, it's not a bug, at least not on our part, we just set what the supernode tells us, if it's an old supernode then i'll work, if it's won't...

- Shares

This button shows your list of shares (shared files). If multi-lists are enabled it will show your shares on a new list.

- Transfers Window

This button opens the window where transfers can be watched. Explained below.

- Preferences Window

This button opens the Preferences Window, where you can define the settings for everything. (well, almost everything, there are some options managed by tooltypes and environment variables). Explained below.


Here we have a little amigift anim loaded via GIFAnim.mcc from AMIGIFT:Images/amigift.gif. If you do not have GIFAnim.mcc installed on your system that will be just a noop (hidden) object, not causing any failure at all. You could also replace that GIF anim for anything else you'll like to see here, or rename the image filename if you do not want that anim to be shown.

- Network's Status Lamps

As a last toolbar member we have here a group of status lamps (created with Lamp.mcc, which is therefore required). Since AMIGIFT 2.0 build #156 those lamps are dinamicaly created based on the network plugins currently installed rather than for known plugins.

Follow are the default color specification, the name between quotes is the color name as it appears on the MUI Settings for Lamp.mcc (Its mcp) which you can change to something else:

green "Ok" the plugin is active and connected to the network.
yellow "Processing" the plugin is active but not connected to the network.
black "Off" the plugin is installed but it's neither connected nor active.

Those lamps acts as buttons as well, it serves to enable searching at certain networks only in the same way of using the advanced search panel's protocol checkmarks, when some lamp is pressed the corresponding checkmark will be activated as well, and the lamp will blink using the color "Looking Up"

infoNote: BLACK status lamp at startup means we have not received a stats report from the daemon yet, same if we have reloaded the daemon.


search panel

This is the normal search box, just below of the toolbar, follow explained from left to right:
- Search String

Here you put the string you want to look for, normal searches would be a single word... but you can use any number of words without problems (while the network plugin where to send the search allow it), when you use more than one word is the destination network plugin (supernode) the responsible of handling it on a "human readable" way... unfortunately this does not seems to happen most of the times... to work against this behavior GiFTMui implements some filters to get results e.g. on ordered words (as you typed it).   This object hasn't notification to the return key and therefore you'll need to click on the Search Button to start the search.

The object is created using a String.mui subclass with history/cache facility, when a new search request is sent the string you typed is stored on a private cache, you can access such cache by using the RMB (right mouse button) over the string object and a context-menu with the cached entrys will be shown. If you want the cache saved upon exit you'll have to active the 'save on exit' switch available from the same context menu.

Attached to the string object there is a button as you can see (MUI's "tape down" image), this is here to expand/replace the standard search panel to the advanced search panel mode, where you can finetune the searches (explained below).

- Realm

Here you can define what type of results you want to be returned, this could be everything meaning any type of files, audio, video, images, documents, or software. There are options as well to found files based on its hash, or to browse a single user shares (if the protocol support it).

- Max (Maximum number of results)

How many results do you want as maximum for your search requests, read the notes given to the toolbar's stop button for additional info.

infoNote: The value set here is valid and used as well while the advanced search panel is being used.

- Paths

Activating this switch causes the paths to the files in the results to be shown, this is only usefull if the network/supernode who give us the results uses pathed files.

info bar

Thats the main window's informational string, (no connection to the internet at time of the capture causes the message shown here), where periodic actions are shown, most of them are inserted on the debug window as well (accessible from the program menu).

That info-string is really a Gauge.mui object, we'll use the gauge feature as a progress indicator for the number of results currently received against the maximum value defined defined above

Attached to the info string are two more objects, those are used as counter for the number of selected entrys (to download) and the number of sources for the active entry, respectively.


results nlistview

This is the list of results.   What we see here is three simultaneous searches, on the list title are the search string as you typed it, followed by the current number of results found and then the formated size of all results.   The list title will be highlighted when new results are found for a list which isn't the active one, and changed to bold when the search finishes.

Currently the list of results are formed by 27 columns to give accurate info about the result, Note there isn't returned always enough info to full fill all of the columns, that depends on which software used the peer who gave you the result(s) and the file type/format. A summary of all of the columns contents can be seen by selecting an entry and keeping the mouse quiet over the list, a bubble-help will popup with the info.

The currently being used columns are the follow:   availability, file, size, user, node, url, mime, hash, bitrate, frequency, duration, audioformat, audiofreq, audiobitrate, videoformat, resolution, fps, width, height, format, comment, title, album, track, artist, year. - You can disable as many as you would want using the context-menu over the NList-title, as for adjust the width or the order.

  In Detail:
Column Description
   av  Availability of the file:

* RED: 0 slots available to download at this time.
* YELLOW: 1 slot available, we may download it but probably too slow.
* SHADOWGREEN: 2-6 slots available, we should be able to download it.
* GREEN: all slots available, the peer isn't uploading to other users atm.

infoNote: When the lamp isn't GREEN means the peer is uploading to other users which could make our download to be [somewhat] slow. Consider as well the inet connection that peer have, obviously isn't the same uploading to 4 users/peers with a 1MB-DSL than with a 20MB-DSL connection (Well, if you live at Spain, or want to download from Spanish people, note it's the same...), above all this it could be as well the peer who owns the file has limited its bandwidth usage and/or other inet programs he may have running are limiting the bandwidth as well, as a result your download speed could be ridiculous. just remember those points and do not blame the amigift authors by low download speeds as some of you did, it is something we have not on our hands.   - Note also there are sometimes where we may be able to download files with RED lamp, this only means from the time passed from the supernode to give us that result and we try to download it some slot goes free, it may worth a try to try to download such result if there aren't other good alternatives.
   File  Filename (may contains a path, whatever it's saved without a path)
   MIME  MIME type of the file
   User  User supplying the file
   Node  (super)node this user is connected to
   Bitrate  Bitrate for audio or video files (On videos it's the general bitrate)
   Frequency  Frequency for audio or video files (On videos it's the general frequency)
   Duration  Running time of audio/video files
   AudioFormat  For video files, this contains the format of the audio stream
   AudioFreq  For video files, this contains the frequency of the audio stream
   Bps  bits per second
   Audiobitrate  For video files, this contains the bitrate of the audio stream
   VideoFormat  Which Codec used on video files (AVI, MPEG, etc)
   Resolution  Resolution of video files
   Fps  Frames per second
   Width  Width of images
   Height  Height of images
   Format  Image format
   Comment  Comment supported from some formats (eg MP3)
   Title  Song title
   Album  Album the song was taken from
   Track  Track number of a song on the album
   Artist  Performer of a song
   Year  Release time of the song/album
   Network  Network that the file was found on
   Hash  ASCII Representation of the file's CheckSum (MD5, SHA1, etc)

When AMIGIFT 0.1 was created, we checked all those are the data returned as meta-tags from the various networks, Todays we have noticed new tags are being used but to avoid adding even more columns all those unrecognized tags will be appended to the Comment column.

Build in the list of results are available a context-menu with certain actions we'll explain now, some of the options are actions to be performed over a selected entry, for those click RMB over the desired file.
- Use multi-lists

Toggle the multi-list option that determines whether to open a new list upon each search or not.

regwarn(for registered users only)

- Format Bytes

Toggle the Convert Sizes option that allows you to convert file sizes from bytes to something better readable (eg: 1234567 -> 1.23MB). Here we use 64-bit functions which allow us to convert upto one exabyte (1152921504606846976 Bytes) what does not mean we may be able to download something higher than 2GB ...

- Add new (page) list

Opens a new results listview.

- Remove current list

Closes the current list when the Multi-Lists option is active. If the current list is the only one, nothing will happen.

- Clear current list

Removes all contents from the current list.

- Load results from disk

Loads a previously saved results list from disk into the listview.

- Save results to disk

Saves the current search results to disk. Only the columns required to download or to create a GiFTMui's cache entry are saved, the availability field will obviously be inaccurate if you load the list some day(s) later (or even some minutes/hours later)

- Downloading

- Add all sources

Scans the search results for identical files and adds them as sources. You can define how many sources to add at once from the preferences window.

- Check if exists locally

Checks if the desired file has already been downloaded before. At which paths to check are defined on the downcheck settings.

- Select

- All

Select all entrys on the current list.

- None

Deselect all entrys on the current list.

- Toggle

Toggles the status of all items in the current list. Selected entrys becomes deselected and vice versa.

- By Pattern

Opens a tiny window allowing you to specify a name pattern for files to be selected and a cycle gadget that determines where to search for this pattern. Valid options are File (name), MIME (type), User, Node, Comment, Title, Album and Artist. Clicking the "Go!" button perform the selection inserting the matches on a new list. This pattern allows to use regular expressions.

- Max Sources

Search the list for the entry with the highest number of sources, and auto-select such entry.

- Browse 'user' shares list

Request the shares list of the user under the active entry. This option is only available for networks which support user browsing (eg: OpenFT)

- BAN xx.xx.xx.xx

This option is available for FastTrack and Gnutella only. It will add the shown IP to the banlist (for FastTrack) or hosttiles.txt (Gnutella) files which contains lists of banned IPs (by spam, fakes, etc). You can ban a single user or a whole (super)node.

- Where is this file from?

This is an external service provided by where the AMIGIFT project is affiliated to. When you use it, we'll use openurl.library to redirect you to the ShareMonkey website where you could found addtional info about the selected entry on the results listview, you'll find several places where to legally buy [online] the file or the album where it is.
infoNote: Please support AMIGIFT by clicking on it as many times as you can. (and buy something as it's the way we are rewarded) :-)

advanced search panel
Thats the advanced search panel which hidden by default and opened clicking the tape down image from the normal search panel.

Clicking on the tape up image (read 'switch panel') will exchanged the panel to the normal one.

Search String and Search Realm was already explained before, Exclude is a string (allowing unix wildcars, teorically..) which will be used to hide certain results from the search, of course the network/supernode where we have sent the search request must accept exclude tokens or giving something here will be a no-op.

Protocol contains a list of currently installed network plugins where we are able to send search requests to certain networks only, or individually. It's default to All Networks.

Filters is a in-depth way of giving more accurate results with the cost of more cpu usage with each request, on previous builds the filters was always "on" and we was checking if the options contains something useable, as it looked like it used here some unneeded cpu (GetAttr() usage on each object for each inserted result) we decided to disable the filters completely by default, and therefore you'll need to Enable it prior to use

Following we are going to explain all of the Filters options:
- Pattern

This is either an AmigaOS or REGEXP (Regular Expression) pattern, which will be compared against received results and only filenames matching will be inserted on the results list. The first character of the string must be colon to use a REGEXP pattern (eg: ":/.*?(mp3|wav)$/i"), if you are new to regexp take a look here, or here.

Regular Expressions support is provided by the PCRE library:
PCRE is a library of functions to support regular expressions whose syntax
and semantics are as close as possible to those of the Perl 5 language.

                       Written by Philip Hazel
           Copyright (c) 1997-2008 University of Cambridge

- Availability

Here you are able to define the minimum availability a file must have to be added to the results list.

meaning of the values was previously explained

- Max FileSize

How many bytes for a file are valid to be inserted on the results list. Files with higher bytes will be just ignored.

- Min FileSize

This is just the opposite to Max FileSize, files with lower bytes than the value entered here will be ignored. You can specify a range of bytes using both fields altogether.

- Match

When you use more than a single word in the search string, most supernodes of certain networks ignores the order or number of words you typed and just returns results matching any word, this is indeed a too annoying behavior at time of looking for phrases with common words - by that reason this filter was created, here you can specify some criterion of how results should be returned. We'll only perform the check on the returned filename field.

The contents of the cycle object are now explained:

- Disabled

Ignores the filter.

- any word

Return results matching any word.

- all words

Only return results which contains all of the words in no particular order.

- all order

Only return results which contains all of the words ordered, just as you typed them.

1 mw_dtrack1
2 mw_dtrack2
3 mw_dtrack3

Just below the main window's results listview you have a 6-pixels height gauge-button as shown on the image 1, When you click it a downloads list will appear as shown on image 2, It's disabled by default and you need to activate it by using its context-menu under the option "enable this (cloned) list", thats a NList's cloned-list meaning the list do not handles anything in his own but inherit the entrys of the main downloads list form the transfers window. Once activated it will look as shown on the image 3, you have quite the same functionality as the main downloads list by using its context-menu options. Shown on image 3 are the gauge activated as well, which also is disabled by default and activated from its context-menu option, This gauge serves as a global counter for all the active downloads, measuring download rate and time all of them will took to complete. Also, there is a Balance object above that cloned list which allows you to resize that list against the results listview. - Note both functionalities could increment the cpu usage substantialy!

regwarnThis feature is available for registered users only

go to index

 $Id: index.php,v 2.0 2009/08/06 22:47:32 diegocr Exp $