Mercurial > pidgin
changeset 21164:dada0e6416cc
merge of 'eb14385d2f3d84e0bdd1b158200baa76f86da3a2'
and 'ff5b50d410a4c5d305fbbaacab5465581332c254'
author | Stu Tomlinson <stu@nosnilmot.com> |
---|---|
date | Thu, 08 Nov 2007 02:47:12 +0000 |
parents | 50970c85709a (diff) 1dd6704cd187 (current diff) |
children | 184f5991502d |
files | pidgin/pixmaps/icons/16/Makefile.mingw pidgin/pixmaps/icons/24/Makefile.mingw pidgin/pixmaps/icons/32/Makefile.mingw pidgin/pixmaps/icons/48/Makefile.mingw |
diffstat | 30 files changed, 700 insertions(+), 626 deletions(-) [+] |
line wrap: on
line diff
--- a/doc/pidgin.1.in Thu Nov 08 02:37:02 2007 +0000 +++ b/doc/pidgin.1.in Thu Nov 08 02:47:12 2007 +0000 @@ -32,7 +32,7 @@ which is capable of connecting to AIM, MSN, Yahoo!, XMPP, ICQ, IRC, SILC, Novell GroupWise, Lotus Sametime, Zephyr, Gadu-Gadu, and QQ all at once. It has many common features found in other clients, as well as many unique features. -Finch is not endorsed by or affiliated with America Online, ICQ, Microsoft, or +Pidgin is not endorsed by or affiliated with America Online, ICQ, Microsoft, or Yahoo. .SH OPTIONS @@ -49,6 +49,9 @@ .B \-h, \-\-help Print a summary of command line options and exit. .TP +.B \-m, \-\-multiple +Allow multiple instances of Pidgin to run. +.TP .B \-n, \-\-nologin Don't automatically login when Pidgin starts. Sets the global status to \fBOffline\fR. @@ -68,9 +71,9 @@ The \fBBuddy List\fR window contains a list of your buddies who are online and have allowed you to be notified of their presence. The icon to the -left of each buddy indicates the buddy's current state and the protocol -they are using. Double clicking a buddy will open a new \fBConversation\fR -window. Right clicking will pop up a menu: +left of each buddy indicates the buddy's current status. Double clicking +a buddy will open a new \fBConversation\fR window. Right clicking will +pop up a menu: .TP .B Get Info Retrieves and displays information about the buddy. This information is @@ -89,16 +92,17 @@ discussed later. .TP .B View Log -Pidgin is capable of automatically log its activities. These logs are +Pidgin is capable of automatically logging messages. These logs are either plain text files (with a .txt extension) or html files (with a \&.html extension) located under the \fI~/.purple/logs\fR directory. This menu command will display Pidgin's log viewer with logs loaded for that buddy or chat. .TP .B Alias -Create an alias for this buddy. This will open up a new dialog in which -one can give this buddy an alternate name to appear on the buddy list and -in conversations. +Create an alias for this buddy. This will show an editable text field where +the buddy's screen name was displayed. In this field one can give this +buddy an alternate, more friendly name to appear on the buddy list and in +conversations. For example, if a buddy's name screen name was jsmith1281xx and his real name was 'John Q. Smith,' one could create an alias as to identify the @@ -106,39 +110,27 @@ .LP The remainder of the menu will consist of protocol specific commands. These commands vary depending on the protocol. -.LP -At the bottom of the \fBBuddy List\fR are several buttons (if enabled in -\fBPreferences\fR): .TP -.B IM -Opens a new \fBConversation\fR window to to the selected buddy, or brings -up the \fBNew Message\fR dialog box if no buddy is selected. -.TP -.B Info -Retrieves and display information about the selected buddy, or brings up -the \fBGet User Info\fR dialog box if no buddy is selected. -.TP -.B Chat -Brings up the \fBJoin Chat\fR dialog box, prompting the user to select -which username to use and what chat group to join. -.TP -.B Away -Brings up a menu of all available \fBAway Messages\fR. If an item is -selected, all online accounts will use this item as their away message. +.B Status Selector +At the bottom of the \fBBuddy List\fR is a status selector which allows +one to change his/her status. This will be discussed further below. +.T .SH ACCOUNT EDITOR The account editor consists of a list of accounts and information about -them. Clicking \fIDelete\fR will delete the currently selected account. +them. It can be accessed by selecting \fBManage\fR from the Tools menu. +Clicking \fIDelete\fR will delete the currently selected account. Clicking \fIAdd\fR or \fIModify\fR will invoke a \fBModify Account\fR window. Here, you can add or alter account information. When creating a new account, you will submit your screen name and password. You will also choose your protocol. If \fIRemember Password\fR is chosen, the password will be saved in -Pidgin's configuration file. +Pidgin's \fI~/.purple/accounts.xml\fR configuration file. -If \fIAuto-Login\fR is chosen, this account will automatically login upon -starting Pidgin. +If \fIEnabled\fR is checked in the accounts dialog, this account will +follow the status currently selected in the status selector. If it is +not checked, the account will always be offline. Each protocol has its own specific options that can be found in the modify screen. @@ -149,120 +141,84 @@ .SH Interface -\fIDisplay remote nicknames if no alias is set\fR: Toggles whether server -nickname data should be used if no local alias exists. - -.SH Buddy List -\fISorting\fR: Toggles the order in which buddies are shown in your -\fBBuddy List\fR between none, alphabetical, by status and by log size. +.TP +.B Show system tray icon +Specifies when to show a Pidgin icon in the notification area of your +panel (commonly referred to as the System Tray). -\fIShow buttons as\fR: Toggles between picture-only, text-only, picture and -text or no buttons view of the buttons on the \fBBuddy List\fR. - -\fIRaise window on events\fR: Tells Pidgin to bring the \fBBuddy -List\fR window to the top when buddies sign in or out. - -\fIShow numbers in groups\fR: The number of buddies from each group -currently logged in will be shown along with the total number of buddies in -the group. +.TP +.B Hide new IM conversations +Specifies when to hide new IM messages. Messages will queue under the +specified condition until shown. Clicking the Pidgin icon in the +notification area or system tray will display the queued messages. An +icon also appears in the buddy list's menu bar; this icon may also be +used to display queued messages. -\fIShow buddy icons\fR: Toggles the display of buddies' custom icons. - -\fIShow warning levels\fR: Each buddy's warning level will be displayed -next to the screen name. As a buddy's warning level increases, outgoing -messages are more and more severely rate-limited. +.TP +.B Show IMs and chats in tabbed windows +When checked, this option will cause IM and chat sessions to appear in +windows with multiple tabs. One tab will represent one conversation or +chat. Where tabs are placed will be dictated by the preferences below. -\fIShow idle times\fR: The amount of time each buddy has been idle will be -displayed next to the screen name (if the buddy has opted to have their -client report this information). +.TP +.B Show close buttons on tabs +When checked, this option will cause a clickable "U+2715 MULTIPLICATION X" +unicode character to appear at the right edge of each tab. Clicking this +will cause the tab to be closed. -\fIDim idle buddies\fR: If enabled, idle buddies will be displayed in grey -text instead of black text. +.TP +.B Placement +Specifies where to place tabs in the window. Some tab orientations may +allow some users to fit more tabs into a single window comfortably. -\fIAutomatically expand contacts\fR: If enabled, contacts will -automatically expand to show the associated buddies when the mouse is held -over the contact for a short period. +.TP +.B New conversations +Specifies under which conditions tabs are placed into existing windows or +into new windows. For a single window, select \fILast created window\fR here. .SH Conversations -\fIShow buttons as...\fR: The selected item will determine whether -picture-only, text-only, combined picture/text, or no buttons will be used -for \fBConversation\fR windows. - -\fIShow formatting toolbar\fR: Display the formatting toolbar between the -upper and lower text boxes in conversations. - -\fIShow aliases in tabs/titles\fR: Displays buddy alias instead of screen -name in window tabs and titles. - -\fIShow buddy icons\fR: For protocols that support it, buddy icons allow -buddies to send small pictures to be displayed during the course of a -conversation. Turning this option off hides those pictures. - -\fIEnable buddy icon animation\fR: If these pictures happen to be animated, -this option will enable the animation, otherwise only the first frame will -be displayed. - -\fINotify buddies that you are typing to them\fR: Some protocols allow -clients to tell their buddies when they are typing. This option enables -this feature for protocols that supports it. - -\fIRaise IM windows on events\fR: If enabled, IM \fBConversation\fR windows -will be brought to the top when new messages are received. - -\fIRaise Chat windows on events\fR: If enabled, chat \fBConversation\fR windows -will be brought to the top when new messages are received. - -\fIUse multi-colored screen names in chats\fR: Color code the screen names of -users in chat rooms. +.TP +.B Enable buddy icon animation +If a buddy's icon happens to be animated, this option will enable the +animation, otherwise only the first frame will be displayed. .TP -.B Tab Options -\fIShow IMs and chats in tabbed windows\fR: Tabbed chatting allows one to -have multiple conversations without multiple windows. - -\fIShow close buttons on tabs\fR: Adds a close button to each tab. - -\fITab Placement...\fR: Specifies where tabs are shown in the conversation -window. - -\fI New conversation placement...\fR: Determines where new conversations will -be placed (Last created window / New window / windows grouped by group or -account / separate windows for IMs and Chats). +.B Notify buddies that you are typing to them +Some protocols allow clients to tell their buddies when they are typing. +This option enables this feature for protocols that supports it. For XMPP, +this also enables sending the "User has left the conversation" message +when ending the conversation. .TP -.B Message Text -\fIShow timestamp on messages\fR: Toggles the timestamp behavior for -conversations. Per-conversation behavior can be changed by pressing -\fIF2\fR in the \fBConversation\fR window. - -\fIHighlight misspelled words\fR: Toggles highlighting of misspelled words -as you type. - -\fIIgnore colors/font faces/font sizes\fR: Tells Pidgin to disregard -buddies' color/font/size information in displaying IMs or Chats. +.B Default Formatting +Allows specifying the default formatting to apply to all outgoing messages +(only applicable to protocols that support formatting in messages). -\fIDefault Formatting\fR: Allows specifying the default formatting to apply -to all outgoing messages (only applicable to protocols that support -formatting in messages). - -.TP -.B Shortcuts -Allows the user to determine which keyboard shortcuts are available. - -.TP -.B Smiley Themes +.SH Smiley Themes Allows the user to choose between different smiley themes. The "none" theme will disable graphical emoticons - they will be displayed as text instead. +The \fBAdd\fR and \fBRemove\fR buttons may be used to install or uninstall +smiley themes. Themes may also be installed by dragging and dropping them +onto the list of themes. .SH Sounds -\fISounds while away\fR: Determines whether sounds are played when an away -message is up. +.TP +.B Method +Lets the user choose between different playback methods. The user can also +manually enter a command to be executed when a sound is to be played\ +(\fI%s\fR expands to the full path to the file name). -\fISound Method\fR lets the user choose between different playback methods. -The user can also manually enter a command to be executed when a sound is -to be played (\fI%s\fR expands to the full path to the file name). +.TP +.B Sounds when conversation has focus +When checked, sounds will play for events in the active conversation if +the window is focused. When unchecked, sounds will not play for the +active conversation when the window is focused. + +.TP +.B Enable Sounds +Determines when to play sounds. .TP .B Sound Events @@ -271,17 +227,28 @@ .SH Network .TP -.B IP Address -\fIAutodetect IP Address\fR: Pidgin will attempt to automatically determine -your IP address for use in file transfers and Direct IMs. - -\fIPublic IP\fR: What IP address to use for file transfer and Direct IMs. This -is mainly useful for users with multiple network interfaces or behind NAT. +.B STUN server +This allows specifying a server which uses the STUN protocol to determine +a host's public IP address. This can be particularly useful for some +protocols. .TP -.B Ports -\fIManually specify range of ports to listen on\fR: Specify specific ports to -listen on, overriding any defaults. +.B Autodetect IP address +When checked, causes Pidign to attempt to determine the public IP address +of the host on which Pidgin is running and disables the \fBPublic IP\fR +text field listed below. + +.TP +.B Public IP +If \fBAutodetect IP address\fR is disabled, this field allows manually +specifying the public IP address for the host on which Pidgin is running. +This is mainly useful for users with multiple network interfaces or behind +NATs. + +.TP +.B Manually specify range of ports to listen on +Specify a range ports to listen on, overriding any defaults. This is +sometimes useful for file transfers and Direct IM. .TP .B Proxy Server @@ -290,56 +257,82 @@ .SH Browser +.TP +.B Browser Allows the user to select Pidgin's default web browser. Firefox, Galeon, Konqueror, Mozilla, Netscape and Opera are supported natively. The user can also manually enter a command to be executed when a link is clicked (\fI%s\fR expands to the URL). For example, \fIxterm -e lynx "%s"\fR will -open the link with lynx. \fIOpen new window by default\fR makes the -browser use a new window instead of using the current window (or spawning a -new tab). +open the link with lynx. + +.TP +.B Open link in +Allows the user to specify whether to use an existing window, a new tab, a +new window, or to let the browser to decide what to do when calling the +browser to open a link. Which options are available will depend on which +browser is selected. .SH Logging -\fIMessage Logs\fR lets the user choose whether \fBConversations\fR and/or -\fBBuddy Chats\fR will be logged as well as whether logs will be in HTML or -plain text format. \fISystem Logs\fR describes the types of events to be -logged. +.TP +.B Log format +Specifies how to log. Pidgin supports HTML and plain text, but plugins can +provide other logging methods. -.SH Away / Idle - -\fIQueue new messages when away\fR: Messages received since going Away will -not be shown until away status is removed. +.TP +.B Log all instant messages +When enabled, all IM conversations are logged. This can be overridden on a +per-conversation basis in the conversation window. -\fISend auto-response\fR: If someone messages you while away, your -auto-response will be sent. +.TP +.B Log all chats +When enabled, all chat conversations are logged. This can be overridden on a +per-conversation basis in the conversation window. -\fIOnly send auto-response when idle\fR: If someone messages you while -away, your auto-response will only be sent if Pidgin decides that the -connection is idle. +.TP +.B Log all status changes to system log +When enabled, status changes are logged. -\fIIdle time reporting\fR: If \fINone\fR is selected, account idle time -will not be reported. \fIPidgin usage\fR infers your idle time from your -usage of Pidgin. \fIX usage\fR infers your idle time from \fBX\fR -(this option may not be universally available). +.SH Status / Idle -\fIAuto-away\fR: Determines if and under what conditions Pidgin will -automatically turn on the Away status. +.TP +.B Report idle time +Determines under which conditions to report idle time. \fBBased on keyboard +and mouse use\fR uses keyboard and mouse activity to determine idle time. +\fBFrom last sent message\fR uses the time at which you last sent a message +in Pidgin to determine idle. \fBNever\fR disables idle reporting. .TP -.B Away Messages -Lets the user add/edit/remove available \fBAway Messages\fR. +.B Auto-reply +Determines when to send an auto-reply on protocols which support it +(currently only AIM). -.SH Plugins +.TP +.B Change status when idle +When enabled, this uses the \fBMinutes before becoming idle\fR and \fBChange +status to\fR preferences described below to set status on idle. + +.TP +.B Minutes before becoming idle +Specifies how many minutes of inactivity are required before considering the +user to be idle. -Allows the user to enable add-on plugins for Pidgin. Several of these -come with Pidgin, while others must be downloaded separately. The -\fIDescription\fR field gives the plugin author's description of the -plugin, while the \fIDetails\fR field gives the plugin's authorship, URL, -and file name/location information. +.TP +.B Change status to +Specifies which "primitive" or "saved" status to use when setting status on +idle. -Some plugins can be configured. If you load such a plugin, its -configuration preferences will appear as a submenu to \fBPlugins\fR, with -the submenu title determined by the plugin's name. +.TP +.B Use status from last exit at startup +If this is checked, Pidgin will remember what status was active when the +user closed Pidgin and restore it at the next run. When disabled, Pidgin +will always set the status selected in \fBStatus to apply at startup\fR +at startup. + +.TP +.B Status to apply at startup +When \fBUse status from last exit at startup\fR is disabled, this specifies +which "primitive" or "saved" status to use at startup. .SH CONVERSATIONS When starting a new conversation, the user is presented with the @@ -420,23 +413,25 @@ more information about Tcl scripting. .SH FILES -\fI@prefix@/bin/pidgin\fR: Pidgin's location. + \fI@prefix@/bin/pidgin\fR: Pidgin's location. .br -\fI@prefix@/lib/pidgin/\fR: Pidgin's plugins directory. + \fI@prefix@/lib/pidgin/\fR: Pidgin's plugins directory. .br -\fI~/.purple/prefs.xml\fR: Pidgin's configuration file. + \fI@prefix@/lib/purple-2/\fR: libpurple's plugins directory. .br -\fI~/.purple/accounts.xml\fR: information about your accounts. + \fI~/.purple/prefs.xml\fR: Pidgin's configuration file. +.br + \fI~/.purple/accounts.xml\fR: information about your accounts. .br -\fI~/.purple/status.xml\fR: stores your away messages. + \fI~/.purple/status.xml\fR: stores your away messages. .br -\fI~/.purple/pounces.xml\fR: stores your buddy pounces. + \fI~/.purple/pounces.xml\fR: stores your buddy pounces. .br -\fI~/.purple/logs/PROTOCOL/ACCOUNT/SCREENNAME/DATE.{html,txt}\fR: conversation logs. + \fI~/.purple/logs/PROTOCOL/ACCOUNT/SCREENNAME/DATE.{html,txt}\fR: conversation logs. .br -\fI~/.purple/blist.xml\fR: the buddy list. + \fI~/.purple/blist.xml\fR: the buddy list. .br -\fI~/.purple/plugins/\fR: users' local plugins + \fI~/.purple/plugins/\fR: users' local plugins .SH BUGS The bug tracker can be reached by visiting \fIhttp://developer.pidgin.im/query\fR @@ -572,4 +567,8 @@ .br -This manpage was originally written by Dennis Ristuccia <\fIdennis@dennisr.net\fR>. It has been updated and largely rewritten by Sean Egan <\fIseanegan@gmail.com\fR> and Ben Tegarden <\fItegarden@uclink.berkeley.edu\fR>. +This manpage was originally written by Dennis Ristuccia +<\fIdennis@dennisr.net\fR>. It has been updated and largely rewritten by +Sean Egan <\fIseanegan@gmail.com\fR>, +Ben Tegarden <\fItegarden@uclink.berkeley.edu\fR>, +and John Bailey <\fIrekkanoryo@pidgin.im\fR>.
--- a/finch/libgnt/gnt.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gnt.h Thu Nov 08 02:47:12 2007 +0000 @@ -46,19 +46,19 @@ #endif /** - * + * Initialize GNT. */ void gnt_init(void); /** - * + * Start running the mainloop for gnt. */ void gnt_main(void); /** - * + * Check whether the terminal is capable of UTF8 display. * - * @return + * @return @c FALSE if the terminal is capable of drawing UTF-8, @c TRUE otherwise. */ gboolean gnt_ascii_only(void); @@ -71,106 +71,133 @@ * @since 2.0.0 (gnt), 2.1.0 (pidgin) */ void gnt_window_present(GntWidget *window); + /** - * - * @param widget + * @internal + * Use #gnt_widget_show instead. */ void gnt_screen_occupy(GntWidget *widget); /** - * - * @param widget + * @internal + * Use #gnt_widget_hide instead. */ void gnt_screen_release(GntWidget *widget); /** - * - * @param widget + * @internal + * Use #gnt_widget_draw instead. */ void gnt_screen_update(GntWidget *widget); /** - * - * @param widget - * @param width - * @param height + * Resize a widget. + * + * @param widget The widget to resize. + * @param width The desired width. + * @param height The desired height. */ void gnt_screen_resize_widget(GntWidget *widget, int width, int height); /** - * - * @param widget - * @param x - * @param y + * Move a widget. + * + * @param widget The widget to move. + * @param x The desired x-coordinate. + * @param y The desired y-coordinate. */ void gnt_screen_move_widget(GntWidget *widget, int x, int y); /** - * - * @param widget - * @param text + * Rename a widget. + * + * @param widget The widget to rename. + * @param text The new name for the widget. */ void gnt_screen_rename_widget(GntWidget *widget, const char *text); /** - * - * @param widget + * Check whether a widget has focus. * - * @return + * @param widget The widget. + * + * @return @c TRUE if the widget has the current focus, @c FALSE otherwise. */ gboolean gnt_widget_has_focus(GntWidget *widget); /** - * - * @param widget + * Set the URGENT hint for a widget. + * + * @param widget The widget to set the URGENT hint for. */ void gnt_widget_set_urgent(GntWidget *widget); /** - * - * @param label - * @param callback + * Register a global action. + * + * @param label The user-visible label for the action. + * @param callback The callback function for the action. */ void gnt_register_action(const char *label, void (*callback)()); /** - * - * @param menu + * Show a menu. * - * @return + * @param menu The menu to display. + * + * @return @c TRUE if the menu is displayed, @c FALSE otherwise (e.g., if another menu is currently displayed). */ gboolean gnt_screen_menu_show(gpointer menu); /** - * + * Terminate the mainloop of gnt. */ void gnt_quit(void); /** - * + * Get the global clipboard. * - * @return + * @return The clipboard. */ GntClipboard * gnt_get_clipboard(void); /** - * + * Get the string in the clipboard. * - * @return + * @return A copy of the string in the clipboard. The caller must @c g_free the string. */ gchar * gnt_get_clipboard_string(void); /** - * - * @param string + * Set the contents of the global clipboard. + * + * @param string The new content of the new clipboard. */ -void gnt_set_clipboard_string(gchar *string); +void gnt_set_clipboard_string(const gchar *string); /** * Spawn a different application that will consume the console. + * + * @param wd The working directory for the new application. + * @param argv The argument vector. + * @param envp The environment, or @c NULL. + * @param stin Location to store the child's stdin, or @c NULL. + * @param stout Location to store the child's stdout, or @c NULL. + * @param sterr Location to store the child's stderr, or @c NULL. + * @param callback The callback to call after the child exits. + * @param data The data to pass to the callback. + * + * @return @c TRUE if the child was successfully spawned, @c FALSE otherwise. */ gboolean gnt_giveup_console(const char *wd, char **argv, char **envp, gint *stin, gint *stout, gint *sterr, void (*callback)(int status, gpointer data), gpointer data); +/** + * Check whether a child process is in control of the current terminal. + * + * @return @c TRUE if a child process (eg., PAGER) is occupying the current + * terminal, @c FALSE otherwise. + */ gboolean gnt_is_refugee(void); +
--- a/finch/libgnt/gntbindable.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntbindable.h Thu Nov 08 02:47:12 2007 +0000 @@ -160,8 +160,8 @@ /** * Returns a GntTree populated with "key" -> "binding" for the widget. - * - * @param widget The object to list the bindings for. + * + * @param bind The object to list the bindings for. * * @return The GntTree. */ @@ -170,9 +170,9 @@ /** * Builds a window that list the key bindings for a GntBindable object. * From this window a user can select a listing to rebind a new key for the given action. - * + * * @param bindable The object to list the bindings for. - * + * * @return @c TRUE */
--- a/finch/libgnt/gntfilesel.c Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntfilesel.c Thu Nov 08 02:47:12 2007 +0000 @@ -719,6 +719,7 @@ void gnt_file_sel_set_suggested_filename(GntFileSel *sel, const char *suggest) { + g_free(sel->suggest); sel->suggest = g_strdup(suggest); }
--- a/finch/libgnt/gntfilesel.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntfilesel.h Thu Nov 08 02:47:12 2007 +0000 @@ -98,113 +98,123 @@ G_BEGIN_DECLS /** - * - * - * @return + * @return GType for GntFileSel. */ GType gnt_file_sel_get_gtype(void); /** - * + * Create a new file selector. * - * @return + * @return The newly created file selector. */ GntWidget * gnt_file_sel_new(void); /** - * - * @param sel - * @param path + * Set the current location of the file selector. * - * @return + * @param sel The file selector. + * @param path The current path of the selector. + * + * @return @c TRUE if the current location was successfully changed, @c FALSE otherwise. */ gboolean gnt_file_sel_set_current_location(GntFileSel *sel, const char *path); /** - * - * @param sel - * @param dirs + * Set wheter to only allow selecting directories. + * + * @param sel The file selector. + * @param dirs @c TRUE if only directories can be selected, @c FALSE if files + * can also be selected. */ void gnt_file_sel_set_dirs_only(GntFileSel *sel, gboolean dirs); /** - * - * @param sel + * Check whether the file selector allows only selecting directories. * - * @return + * @param sel The file selector. + * + * @return @c TRUE if only directories can be selected. */ gboolean gnt_file_sel_get_dirs_only(GntFileSel *sel); /** - * - * @param sel - * @param must + * Set whether a selected file must exist. + * + * @param sel The file selector. + * @param must @c TRUE if the selected file must exist. */ void gnt_file_sel_set_must_exist(GntFileSel *sel, gboolean must); /** - * - * @param sel + * Check whether the selector allows selecting non-existent files. * - * @return + * @param sel The file selector. + * + * @return @c TRUE if the selected file must exist, @c FALSE if a non-existent + * file can be selected. */ gboolean gnt_file_sel_get_must_exist(GntFileSel *sel); /** - * - * @param sel + * Get the selected file in the selector. * - * @return + * @param sel The file selector. + * + * @return The path of the selected file. The caller should g_free the returned + * string. */ char * gnt_file_sel_get_selected_file(GntFileSel *sel); - /* The returned value should be free'd */ - /** - * - * @param sel + * Get the list of selected files in the selector. * - * @return + * @param sel The file selector. + * + * @return A list of paths for the selected files. The caller must g_free the + * contents of the list, and g_list_free the list. */ GList * gnt_file_sel_get_selected_multi_files(GntFileSel *sel); /** - * - * @param sel - * @param set + * Allow selecting multiple files. + * + * @param sel The file selector. + * @param set @c TRUE if selecting multiple files should be allowed. */ void gnt_file_sel_set_multi_select(GntFileSel *sel, gboolean set); /** - * - * @param sel - * @param suggest + * Set the suggested file to have selected at startup. + * + * @param sel The file selector. + * @param suggest The suggested filename. */ void gnt_file_sel_set_suggested_filename(GntFileSel *sel, const char *suggest); /** - * - * @param sel - * @param path - * @param files - * @param error) + * Set custom functions to read the names of files. + * + * @param sel The file selector. + * @param read_fn The custom read function. */ void gnt_file_sel_set_read_fn(GntFileSel *sel, gboolean (*read_fn)(const char *path, GList **files, GError **error)); /** - * - * @param name - * @param size + * Create a new GntFile. * - * @return + * @param name The name of the file. + * @param size The size of the file. + * + * @return The newly created GntFile. */ GntFile* gnt_file_new(const char *name, unsigned long size); /** - * - * @param name + * Create a new GntFile for a directory. * - * @return + * @param name The name of the directory. + * + * @return The newly created GntFile. */ GntFile* gnt_file_new_dir(const char *name);
--- a/finch/libgnt/gntkeys.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntkeys.h Thu Nov 08 02:47:12 2007 +0000 @@ -104,41 +104,59 @@ #define GNT_KEY_F12 SAFE(key_f12) /** - * This will do stuff with the terminal settings and stuff. - */ -/** - * + * Initialize the keys. */ void gnt_init_keys(void); /** - * - * @param text + * Refine input text. This usually looks at what the terminal claims it is, + * and tries to change the text to work around some oft-broken terminfo entries. + * + * @param text The input text to refine. */ void gnt_keys_refine(char *text); +/** + * Translate a user-readable representation of an input to a machine-readable representation. + * + * @param name The user-readable representation of an input (eg.: c-t) + * + * @return A machine-readable representation of the input. + */ const char *gnt_key_translate(const char *name); + +/** + * Translate a machine-readable representation of an input to a user-readable representation. + * + * @param key The machine-readable representation of an input. + * + * @return A user-readable representation of the input (eg.: c-t). + */ const char *gnt_key_lookup(const char *key); /** - * - * @param path + * Add a key combination to the internal key-tree. + * + * @param key The key to add */ -void gnt_keys_add_combination(const char *path); +void gnt_keys_add_combination(const char *key); /** - * - * @param path + * Remove a key combination from the internal key-tree. + * + * @param key The key to remove. */ -void gnt_keys_del_combination(const char *path); +void gnt_keys_del_combination(const char *key); /** - * - * @param path + * Find a combination from the given string. + * + * @param key The input string. * - * @return + * @return The number of bytes in the combination that starts at the beginning + * of key (can be 0). */ -int gnt_keys_find_combination(const char *path); +int gnt_keys_find_combination(const char *key); /* A lot of commonly used variable names are defined in <term.h>. * #undef them to make life easier for everyone. */
--- a/finch/libgnt/gntlabel.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntlabel.h Thu Nov 08 02:47:12 2007 +0000 @@ -67,33 +67,34 @@ G_BEGIN_DECLS /** - * - * - * @return + * @return GType for GntLabel. */ GType gnt_label_get_gtype(void); /** - * - * @param text + * Create a new GntLabel. * - * @return + * @param text The text of the label. + * + * @return The newly created label. */ GntWidget * gnt_label_new(const char *text); /** - * - * @param text - * @param flags + * Create a new label with specified text attributes. * - * @return + * @param text The text. + * @param flags Text attributes for the text. + * + * @return The newly created label. */ GntWidget * gnt_label_new_with_format(const char *text, GntTextFormatFlags flags); /** - * - * @param label - * @param text + * Change the text of a label. + * + * @param label The label. + * @param text The new text to set in the label. */ void gnt_label_set_text(GntLabel *label, const char *text);
--- a/finch/libgnt/gntline.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntline.h Thu Nov 08 02:47:12 2007 +0000 @@ -67,9 +67,7 @@ G_BEGIN_DECLS /** - * - * - * @return + * @return GType for GntLine. */ GType gnt_line_get_gtype(void); @@ -77,10 +75,11 @@ #define gnt_vline_new() gnt_line_new(TRUE) /** - * - * @param vertical + * Create new line * - * @return + * @param vertical @c TRUE if the line should be vertical, @c FALSE for a horizontal line. + * + * @return The newly created line. */ GntWidget * gnt_line_new(gboolean vertical);
--- a/finch/libgnt/gntmain.c Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntmain.c Thu Nov 08 02:47:12 2007 +0000 @@ -646,7 +646,7 @@ return TRUE; } -void gnt_set_clipboard_string(gchar *string) +void gnt_set_clipboard_string(const gchar *string) { gnt_clipboard_set_string(clipboard, string); }
--- a/finch/libgnt/gntmenu.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntmenu.h Thu Nov 08 02:47:12 2007 +0000 @@ -86,24 +86,24 @@ G_BEGIN_DECLS /** - * - * - * @return + * @return The GType for GntMenu. */ GType gnt_menu_get_gtype(void); /** - * - * @param type + * Create a new menu. * - * @return + * @param type The type of the menu, whether it's a toplevel menu or a popup menu. + * + * @return The newly created menu. */ GntWidget * gnt_menu_new(GntMenuType type); /** - * - * @param menu - * @param item + * Add an item to the menu. + * + * @param menu The menu. + * @param item The item to add to the menu. */ void gnt_menu_add_item(GntMenu *menu, GntMenuItem *item);
--- a/finch/libgnt/gntmenuitem.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntmenuitem.h Thu Nov 08 02:47:12 2007 +0000 @@ -86,32 +86,33 @@ G_BEGIN_DECLS /** - * - * - * @return + * @return GType for GntMenuItem. */ GType gnt_menuitem_get_gtype(void); /** - * - * @param text + * Create a new menuitem. * - * @return + * @param text Label for the menuitem. + * + * @return The newly created menuitem. */ GntMenuItem * gnt_menuitem_new(const char *text); /** - * - * @param item - * @param callback - * @param data + * Set a callback function for a menuitem. + * + * @param item The menuitem. + * @param callback The callback function. + * @param data Data to send to the callback function. */ void gnt_menuitem_set_callback(GntMenuItem *item, GntMenuItemCallback callback, gpointer data); /** - * - * @param item - * @param menu + * Set a submenu for a menuitem. A menuitem with a submenu cannot have a callback. + * + * @param item The menuitem. + * @param menu The submenu. */ void gnt_menuitem_set_submenu(GntMenuItem *item, GntMenu *menu);
--- a/finch/libgnt/gntmenuitemcheck.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntmenuitemcheck.h Thu Nov 08 02:47:12 2007 +0000 @@ -66,32 +66,33 @@ G_BEGIN_DECLS /** - * - * - * @return + * @return GType for GntMenuItemCheck. */ GType gnt_menuitem_check_get_gtype(void); /** - * - * @param text + * Create a new menuitem. * - * @return + * @param text The text for the menuitem. + * + * @return The newly created menuitem. */ GntMenuItem * gnt_menuitem_check_new(const char *text); /** - * - * @param item + * Check whether the menuitem is checked or not. * - * @return + * @param item The menuitem. + * + * @return @c TRUE if the item is checked, @c FALSE otherwise. */ gboolean gnt_menuitem_check_get_checked(GntMenuItemCheck *item); /** - * - * @param item - * @param set + * Set whether the menuitem is checked or not. + * + * @param item The menuitem. + * @param set @c TRUE if the item should be checked, @c FALSE otherwise. */ void gnt_menuitem_check_set_checked(GntMenuItemCheck *item, gboolean set);
--- a/finch/libgnt/gntstyle.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntstyle.h Thu Nov 08 02:47:12 2007 +0000 @@ -38,11 +38,17 @@ } GntStyle; /** - * - * @param filename + * Read configuration from a file. + * + * @param filename The filename to read configuration from. */ void gnt_style_read_configure_file(const char *filename); +/** + * Get the user-setting for a style. + * @param style The style. + * @return The user-setting, or @c NULL. + */ const char *gnt_style_get(GntStyle style); /** @@ -70,38 +76,40 @@ gboolean gnt_style_parse_bool(const char *value); /** - * - * @param style - * @param def + * Get the boolean value for a user-setting. * - * @return + * @param style The style. + * @param def The default value (i.e, the value if the user didn't define + * any value) + * + * @return The value of the setting. */ gboolean gnt_style_get_bool(GntStyle style, gboolean def); -/* This should be called only once for the each type */ /** - * - * @param type - * @param hash + * @internal */ void gnt_styles_get_keyremaps(GType type, GHashTable *hash); /** - * - * @param type - * @param klass + * @internal */ void gnt_style_read_actions(GType type, GntBindableClass *klass); +/** + * @internal + * Read workspace information. + */ void gnt_style_read_workspaces(GntWM *wm); /** - * + * Initialize style settings. */ void gnt_init_styles(void); /** - * + * Uninitialize style settings. */ void gnt_uninit_styles(void); +
--- a/finch/libgnt/gnttextview.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gnttextview.h Thu Nov 08 02:47:12 2007 +0000 @@ -88,116 +88,144 @@ G_BEGIN_DECLS /** - * - * - * @return + * @return GType for GntTextView. */ GType gnt_text_view_get_gtype(void); -/* XXX: For now, don't set a textview to have any border. - * If you want borders real bad, put it in a box. */ /** - * + * Create a new textview. * - * @return + * @return The newly created textview. */ GntWidget * gnt_text_view_new(void); -/* scroll > 0 means scroll up, < 0 means scroll down, == 0 means scroll to the end */ /** - * - * @param view - * @param scroll + * Scroll the textview. + * @param view The textview to scroll. + * @param scroll scroll > 0 means scroll up, < 0 means scroll down, == 0 means scroll to the end. */ void gnt_text_view_scroll(GntTextView *view, int scroll); /** - * - * @param view - * @param text - * @param flags + * Append new text in a textview. + * + * @param view The textview. + * @param text The text to append to the textview. + * @param flags The text-flags to apply to the new text. */ void gnt_text_view_append_text_with_flags(GntTextView *view, const char *text, GntTextFormatFlags flags); /** - * - * @param view - * @param text - * @param flags - * @param tag + * Append text in the textview, with some identifier (tag) for the added text. + * + * @param view The textview. + * @param text The text to append. + * @param flags The text-flags to apply to the new text. + * @param tag The tag for the appended text, so it can be changed later (@see gnt_text_view_tag_change) */ void gnt_text_view_append_text_with_tag(GntTextView *view, const char *text, GntTextFormatFlags flags, const char *tag); -/* Move the cursor to the beginning of the next line and resets text-attributes. - * It first completes the current line with the current text-attributes. */ /** - * - * @param view + * Move the cursor to the beginning of the next line and resets text-attributes. + * It first completes the current line with the current text-attributes. + * + * @param view The textview. */ void gnt_text_view_next_line(GntTextView *view); /** - * - * @param flags + * Convert GNT-text formats to ncurses-text attributes. * - * @return + * @param flags The GNT text format. + * + * @return Nucrses text attribute. */ chtype gnt_text_format_flag_to_chtype(GntTextFormatFlags flags); /** - * - * @param view + * Clear the contents of the textview. + * + * @param view The textview. */ void gnt_text_view_clear(GntTextView *view); /** - * - * @param view + * The number of lines below the bottom-most visible line. * - * @return + * @param view The textview. + * + * @return Number of lines below the bottom-most visible line. */ int gnt_text_view_get_lines_below(GntTextView *view); /** - * - * @param view + * The number of lines above the topmost visible line. * - * @return + * @param view The textview. + * + * @return Number of lines above the topmost visible line. */ int gnt_text_view_get_lines_above(GntTextView *view); -/* If text is NULL, then the tag is removed. */ /** - * - * @param view - * @param name - * @param text - * @param all + * Change the text of a tag. * - * @return + * @param view The textview. + * @param name The name of the tag. + * @param text The new text for the text. If 'text' is @c NULL, the tag is removed. + * @param all @c TRUE if all of the instancess of the tag should be changed, @c FALSE if + * only the first instance should be changed. + * + * @return The number of instances changed. */ int gnt_text_view_tag_change(GntTextView *view, const char *name, const char *text, gboolean all); /** - * - * @param view - * @param widget + * Setup hooks so that pressing up/down/page-up/page-down keys when 'widget' is + * in focus scrolls the textview. + * + * @param view The textview. + * @param widget The trigger widget. */ void gnt_text_view_attach_scroll_widget(GntTextView *view, GntWidget *widget); /** - * - * @param view - * @param widget + * Setup appropriate hooks so that pressing some keys when the 'pager' widget + * is in focus triggers the PAGER to popup with the contents of the textview + * in it. + * + * The default key-combination to trigger the pager is a-v, and the default + * PAGER application is $PAGER. Both can be changed in ~/.gntrc like this: + * + * @code + * [pager] + * key = a-v + * path = /path/to/pager + * @endcode + * + * @param view The textview. + * @param pager The widget to trigger the PAGER. */ void gnt_text_view_attach_pager_widget(GntTextView *view, GntWidget *pager); /** - * - * @param view - * @param widget + * Setup appropriate hooks so that pressing some keys when 'widget' + * is in focus triggers the EDITOR to popup with the contents of the textview + * in it. + * + * The default key-combination to trigger the pager is a-e, and the default + * EDITOR application is $EDITOR. Both can be changed in ~/.gntrc like this: + * + * @code + * [editor] + * key = a-e + * path = /path/to/editor + * @endcode + * + * @param view The textview. + * @param widget The widget to trigger the EDITOR. */ -void gnt_text_view_attach_editor_widget(GntTextView *view, GntWidget *pager); +void gnt_text_view_attach_editor_widget(GntTextView *view, GntWidget *widget); /** * Set a GntTextViewFlag for the textview widget.
--- a/finch/libgnt/gntutils.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntutils.h Thu Nov 08 02:47:12 2007 +0000 @@ -153,5 +153,5 @@ * * @since 2.0.0 (gnt), 2.1.0 (pidgin) */ -void gnt_util_set_trigger_widget(GntWidget *wid, const char *text, GntWidget *button); +void gnt_util_set_trigger_widget(GntWidget *widget, const char *key, GntWidget *button);
--- a/finch/libgnt/gntwidget.c Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntwidget.c Thu Nov 08 02:47:12 2007 +0000 @@ -617,7 +617,7 @@ return; while (widget->parent) widget = widget->parent; - + if (!g_object_get_data(G_OBJECT(widget), "gnt:queue_update")) { int id = g_timeout_add(0, update_queue_callback, widget);
--- a/finch/libgnt/gntwidget.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntwidget.h Thu Nov 08 02:47:12 2007 +0000 @@ -140,167 +140,176 @@ G_BEGIN_DECLS /** - * - * - * @return + * @return GType for GntWidget. */ GType gnt_widget_get_gtype(void); /** - * - * @param widget + * Destroy a widget. + * @param widget The widget to destroy. */ void gnt_widget_destroy(GntWidget *widget); /** - * - * @param widget + * Show a widget. This should only be used for toplevel widgets. For the rest + * of the widgets, use #gnt_widget_draw instead. + * + * @param widget The widget to show. */ void gnt_widget_show(GntWidget *widget); /** - * - * @param widget + * Draw a widget. + * @param widget The widget to draw. */ void gnt_widget_draw(GntWidget *widget); /** - * - * @param widget - * @param x - * @param y - * @param width - * @param height + * @internal + * Expose part of a widget. */ void gnt_widget_expose(GntWidget *widget, int x, int y, int width, int height); /** - * - * @param widget + * Hide a widget. + * @param widget The widget to hide. */ void gnt_widget_hide(GntWidget *widget); /** - * - * @param widget - * @param x - * @param y + * Get the position of a widget. + * + * @param widget The widget. + * @param x Location to store the x-coordinate of the widget. + * @param y Location to store the y-coordinate of the widget. */ void gnt_widget_get_position(GntWidget *widget, int *x, int *y); /** - * - * @param widget - * @param x - * @param y + * Set the position of a widget. + * @param widget The widget to reposition. + * @param x The x-coordinate of the widget. + * @param y The x-coordinate of the widget. */ void gnt_widget_set_position(GntWidget *widget, int x, int y); /** - * - * @param widget + * Request a widget to calculate its desired size. + * @param widget The widget. */ void gnt_widget_size_request(GntWidget *widget); /** - * - * @param widget - * @param width - * @param height + * Get the size of a widget. + * @param widget The widget. + * @param width Location to store the width of the widget. + * @param height Location to store the height of the widget. */ void gnt_widget_get_size(GntWidget *widget, int *width, int *height); /** - * - * @param widget - * @param width - * @param height + * Set the size of a widget. * - * @return + * @param widget The widget to resize. + * @param width The width of the widget. + * @param height The height of the widget. + * + * @return If the widget was resized to the new size. */ gboolean gnt_widget_set_size(GntWidget *widget, int width, int height); /** - * - * @param widget - * @param width - * @param height + * Confirm a requested a size for a widget. * - * @return + * @param widget The widget. + * @param width The requested width. + * @param height The requested height. + * + * @return @c TRUE if the new size was confirmed, @c FALSE otherwise. */ gboolean gnt_widget_confirm_size(GntWidget *widget, int width, int height); /** - * - * @param widget - * @param keys + * Trigger the key-press callbacks for a widget. * - * @return + * @param widget The widget. + * @param keys The keypress on the widget. + * + * @return @c TRUE if the key-press was handled, @c FALSE otherwise. */ gboolean gnt_widget_key_pressed(GntWidget *widget, const char *keys); /** - * - * @param widget - * @param event - * @param x - * @param y + * Trigger the 'click' callback of a widget. * - * @return + * @param widget The widget. + * @param event The mouseevent. + * @param x The x-coordinate of the mouse. + * @param y The y-coordinate of the mouse. + * + * @return @c TRUE if the event was handled, @c FALSE otherwise. */ gboolean gnt_widget_clicked(GntWidget *widget, GntMouseEvent event, int x, int y); /** - * - * @param widget - * @param set + * Give or remove focus to a widget. + * @param widget The widget. + * @param set @c TRUE of focus should be given to the widget, @c FALSE if + * focus should be removed. * - * @return + * @return @c TRUE if the focus has been changed, @c FALSE otherwise. */ gboolean gnt_widget_set_focus(GntWidget *widget, gboolean set); /** - * - * @param widget + * Activate a widget. This only applies to widgets that can be activated (eg. GntButton) + * @param widget The widget to activate. */ void gnt_widget_activate(GntWidget *widget); /** - * - * @param widget - * @param name + * Set the name of a widget. + * @param widget The widget. + * @param name A new name for the widget. */ void gnt_widget_set_name(GntWidget *widget, const char *name); +/** + * Get the name of a widget. + * @param widget The widget. + * @return The name of the widget. + */ const char *gnt_widget_get_name(GntWidget *widget); -/* Widget-subclasses should call this from the draw-callback. - * Applications should just call gnt_widget_draw instead of this. */ /** - * - * @param widget + * @internal + * Use #gnt_widget_draw instead. */ void gnt_widget_queue_update(GntWidget *widget); /** - * - * @param widget - * @param set + * Set whether a widget can take focus or not. + * + * @param widget The widget. + * @param set @c TRUE if the widget can take focus. */ void gnt_widget_set_take_focus(GntWidget *widget, gboolean set); /** - * - * @param widget - * @param set + * Set the visibility of a widget. + * + * @param widget The widget. + * @param set Whether the widget is visible or not. */ void gnt_widget_set_visible(GntWidget *widget, gboolean set); /** - * - * @param widget + * Check whether the widget has shadows. * - * @return + * @param widget The widget. + * + * @return @c TRUE if the widget has shadows. This checks both the user-setting + * and whether the widget can have shadows at all. */ gboolean gnt_widget_has_shadow(GntWidget *widget);
--- a/finch/libgnt/gntwindow.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntwindow.h Thu Nov 08 02:47:12 2007 +0000 @@ -77,25 +77,27 @@ #define gnt_hwindow_new(homo) gnt_window_box_new(homo, FALSE) /** - * + * Create a new window. * - * @return + * @return The newly created window. */ GntWidget * gnt_window_new(void); /** - * - * @param homo - * @param vert + * Create a new window. * - * @return + * @param homo @c TRUE if the widgets inside the window should have the same dimensions. + * @param vert @c TRUE if the widgets inside the window should be stacked vertically. + * + * @return The newly created window. */ GntWidget * gnt_window_box_new(gboolean homo, gboolean vert); /** - * - * @param window - * @param menu + * Set the menu for a window. + * + * @param window The window. + * @param menu The menu for the window. */ void gnt_window_set_menu(GntWindow *window, GntMenu *menu);
--- a/finch/libgnt/gntwm.c Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntwm.c Thu Nov 08 02:47:12 2007 +0000 @@ -1675,7 +1675,7 @@ { while (widget->parent) widget = widget->parent; - + if (GNT_WIDGET_IS_FLAG_SET(widget, GNT_WIDGET_INVISIBLE) || g_hash_table_lookup(wm->nodes, widget)) { update_screen(wm);
--- a/finch/libgnt/gntwm.h Thu Nov 08 02:37:02 2007 +0000 +++ b/finch/libgnt/gntwm.h Thu Nov 08 02:47:12 2007 +0000 @@ -113,7 +113,7 @@ * whether to give focus to a new window. */ gboolean event_stack; - + GntKeyPressMode mode; GHashTable *positions; @@ -184,108 +184,149 @@ G_BEGIN_DECLS /** - * - * - * @return + * @return GType for GntWM. */ GType gnt_wm_get_gtype(void); +/** + * Add a workspace. + * @param wm The window-manager. + * @param ws The workspace to add. + */ void gnt_wm_add_workspace(GntWM *wm, GntWS *ws); +/** + * Switch to a workspace. + * @param wm The window-manager. + * @param n Index of the workspace to switch to. + * + * @return @c TRUE if the switch was successful. + */ gboolean gnt_wm_switch_workspace(GntWM *wm, gint n); + +/** + * Switch to the previous workspace from the current one. + * @param wm The window-manager. + */ gboolean gnt_wm_switch_workspace_prev(GntWM *wm); + +/** + * Switch to the next workspace from the current one. + * @param wm The window-manager. + */ gboolean gnt_wm_switch_workspace_next(GntWM *wm); + +/** + * Move a window to a specific workspace. + * @param wm The window manager. + * @param neww The new workspace. + * @param widget The widget to move. + */ void gnt_wm_widget_move_workspace(GntWM *wm, GntWS *neww, GntWidget *widget); + +/** + * Set the list of workspaces . + * @param wm The window manager. + * @param workspaces The list of workspaces. + */ void gnt_wm_set_workspaces(GntWM *wm, GList *workspaces); + +/** + * Find the workspace that contains a specific widget. + * @param wm The window-manager. + * @param widget The widget to find. + * @return The workspace that has the widget. + */ GntWS *gnt_wm_widget_find_workspace(GntWM *wm, GntWidget *widget); /** - * - * @param wm - * @param widget + * Process a new window. + * + * @param wm The window-manager. + * @param widget The new window. */ void gnt_wm_new_window(GntWM *wm, GntWidget *widget); /** - * - * @param wm - * @param widget + * Decorate a window. + * @param wm The window-manager. + * @param widget The widget to decorate. */ void gnt_wm_window_decorate(GntWM *wm, GntWidget *widget); /** - * - * @param wm - * @param widget + * Close a window. + * @param wm The window-manager. + * @param widget The window to close. */ void gnt_wm_window_close(GntWM *wm, GntWidget *widget); /** - * - * @param wm - * @param string + * Process input. * - * @return + * @param wm The window-manager. + * @param string The input string to process. + * + * @return @c TRUE of the string was processed, @c FALSE otherwise. */ gboolean gnt_wm_process_input(GntWM *wm, const char *string); /** - * - * @param wm - * @param event - * @param x - * @param y - * @param widget + * Process a click event. + * @param wm The window manager. + * @param event The mouse event. + * @param x The x-coordinate of the mouse. + * @param y The y-coordinate of the mouse. + * @param widget The widget under the mouse. * - * @return + * @return @c TRUE if the event was handled, @c FALSE otherwise. */ gboolean gnt_wm_process_click(GntWM *wm, GntMouseEvent event, int x, int y, GntWidget *widget); /** - * - * @param wm - * @param widget - * @param width - * @param height + * Resize a window. + * @param wm The window manager. + * @param widget The window to resize. + * @param width The desired width of the window. + * @param height The desired height of the window. */ void gnt_wm_resize_window(GntWM *wm, GntWidget *widget, int width, int height); /** - * - * @param wm - * @param widget - * @param x - * @param y + * Move a window. + * @param wm The window manager. + * @param widget The window to move. + * @param x The desired x-coordinate of the window. + * @param y The desired y-coordinate of the window. */ void gnt_wm_move_window(GntWM *wm, GntWidget *widget, int x, int y); /** - * - * @param wm - * @param widget + * Update a window. + * @param wm The window-manager. + * @param widget The window to update. */ void gnt_wm_update_window(GntWM *wm, GntWidget *widget); /** - * - * @param wm - * @param widget + * Raise a window. + * @param wm The window-manager. + * @param widget The window to raise. */ void gnt_wm_raise_window(GntWM *wm, GntWidget *widget); /** - * - * @param wm - * @param set + * @internal */ void gnt_wm_set_event_stack(GntWM *wm, gboolean set); +/** + * @internal + */ void gnt_wm_copy_win(GntWidget *widget, GntNode *node); /** - * - * - * @return + * @return The idle time of the user. */ time_t gnt_wm_get_idle_time(void);
--- a/libpurple/prefs.h Thu Nov 08 02:37:02 2007 +0000 +++ b/libpurple/prefs.h Thu Nov 08 02:47:12 2007 +0000 @@ -45,9 +45,20 @@ } PurplePrefType; /** - * Pref change callback type + * The type of callbacks for preference changes. + * + * @param name the name of the preference which has changed. + * @param type the type of the preferenced named @a name + * @param val the new value of the preferencs; should be cast to the correct + * type. For instance, to recover the value of a #PURPLE_PREF_INT + * preference, use <tt>GPOINTER_TO_INT(val)</tt>. Alternatively, + * just call purple_prefs_get_int(), purple_prefs_get_string_list() + * etc. + * @param data Arbitrary data specified when the callback was connected with + * purple_prefs_connect_callback(). + * + * @see purple_prefs_connect_callback() */ - typedef void (*PurplePrefCallback) (const char *name, PurplePrefType type, gconstpointer val, gpointer data);
--- a/libpurple/protocols/msn/nexus.c Thu Nov 08 02:37:02 2007 +0000 +++ b/libpurple/protocols/msn/nexus.c Thu Nov 08 02:47:12 2007 +0000 @@ -194,7 +194,7 @@ ); /*build the SOAP windows Live ID XML body */ - tail = g_strdup_printf(TWN_ENVELOP_TEMPLATE,username,password,challenge_str ); + tail = g_strdup_printf(TWN_ENVELOP_TEMPLATE, username, password, challenge_str); g_free(challenge_str); #else rst1_str = g_strdup_printf( @@ -214,6 +214,7 @@ g_free(fs); soap = msn_soap_message_new(NULL, xmlnode_from_str(tail, -1)); + g_free(tail); msn_soap_message_send(nexus->session, soap, MSN_TWN_SERVER, TWN_POST_URL, nexus_got_response_cb, nexus); }
--- a/pidgin/gtkimhtml.c Thu Nov 08 02:37:02 2007 +0000 +++ b/pidgin/gtkimhtml.c Thu Nov 08 02:47:12 2007 +0000 @@ -2833,8 +2833,8 @@ { gtk_imhtml_toggle_underline(imhtml); font->underline = 1; - } else - g_free(textdec); + } + g_free(textdec); if (oldfont) {
--- a/pidgin/gtksavedstatuses.c Thu Nov 08 02:37:02 2007 +0000 +++ b/pidgin/gtksavedstatuses.c Thu Nov 08 02:47:12 2007 +0000 @@ -1201,6 +1201,7 @@ gtk_box_pack_start(GTK_BOX(hbox), frame, TRUE, TRUE, 0); focus_chain = g_list_prepend(focus_chain, dialog->message); gtk_container_set_focus_chain(GTK_CONTAINER(hbox), focus_chain); + g_list_free(focus_chain); if ((saved_status != NULL) && (purple_savedstatus_get_message(saved_status) != NULL)) gtk_imhtml_append_text(GTK_IMHTML(text),
--- a/pidgin/pixmaps/Makefile.am Thu Nov 08 02:37:02 2007 +0000 +++ b/pidgin/pixmaps/Makefile.am Thu Nov 08 02:47:12 2007 +0000 @@ -11,10 +11,6 @@ buddy_icons/qq/Makefile.mingw \ dialogs/16/Makefile.mingw \ dialogs/64/Makefile.mingw \ - icons/16/Makefile.mingw \ - icons/24/Makefile.mingw \ - icons/32/Makefile.mingw \ - icons/48/Makefile.mingw \ emotes/default/Makefile.mingw \ emotes/default/24/Makefile.mingw \ emotes/none/Makefile.mingw \
--- a/pidgin/pixmaps/Makefile.mingw Thu Nov 08 02:37:02 2007 +0000 +++ b/pidgin/pixmaps/Makefile.mingw Thu Nov 08 02:47:12 2007 +0000 @@ -15,7 +15,7 @@ install: if test '$(SUBDIRS)'; then \ list='$(SUBDIRS)'; for subdir in $$list; do \ - if [ "$$subdir" != "icons/22" ]; then \ + if [[ "$$subdir" != icons/* ]]; then \ $(MAKE) -C $$subdir -f $(MINGW_MAKEFILE) install || exit 1 ;\ fi \ done; \
--- a/pidgin/pixmaps/icons/16/Makefile.mingw Thu Nov 08 02:37:02 2007 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,20 +0,0 @@ -# -# Makefile.mingw -# -# Description: Makefile for win32 (mingw) version of Pidgin pixmaps -# - -PIDGIN_TREE_TOP := ../../../.. -include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak - -datadir = $(PIDGIN_INSTALL_DIR) -include ./Makefile.am - -.PHONY: install - -install: - if test '$(pidginiconspix_DATA)'; then \ - mkdir -p $(pidginiconspixdir); \ - cp $(pidginiconspix_DATA) $(pidginiconspixdir); \ - fi; -
--- a/pidgin/pixmaps/icons/24/Makefile.mingw Thu Nov 08 02:37:02 2007 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,20 +0,0 @@ -# -# Makefile.mingw -# -# Description: Makefile for win32 (mingw) version of Pidgin pixmaps -# - -PIDGIN_TREE_TOP := ../../../.. -include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak - -datadir = $(PIDGIN_INSTALL_DIR) -include ./Makefile.am - -.PHONY: install - -install: - if test '$(pidginiconspix_DATA)'; then \ - mkdir -p $(pidginiconspixdir); \ - cp $(pidginiconspix_DATA) $(pidginiconspixdir); \ - fi; -
--- a/pidgin/pixmaps/icons/32/Makefile.mingw Thu Nov 08 02:37:02 2007 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,20 +0,0 @@ -# -# Makefile.mingw -# -# Description: Makefile for win32 (mingw) version of Pidgin pixmaps -# - -PIDGIN_TREE_TOP := ../../../.. -include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak - -datadir = $(PIDGIN_INSTALL_DIR) -include ./Makefile.am - -.PHONY: install - -install: - if test '$(pidginiconspix_DATA)'; then \ - mkdir -p $(pidginiconspixdir); \ - cp $(pidginiconspix_DATA) $(pidginiconspixdir); \ - fi; -
--- a/pidgin/pixmaps/icons/48/Makefile.mingw Thu Nov 08 02:37:02 2007 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,20 +0,0 @@ -# -# Makefile.mingw -# -# Description: Makefile for win32 (mingw) version of Pidgin pixmaps -# - -PIDGIN_TREE_TOP := ../../../.. -include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak - -datadir = $(PIDGIN_INSTALL_DIR) -include ./Makefile.am - -.PHONY: install - -install: - if test '$(pidginiconspix_DATA)'; then \ - mkdir -p $(pidginiconspixdir); \ - cp $(pidginiconspix_DATA) $(pidginiconspixdir); \ - fi; -