Browse Source

* make panel widget library dynamic

(not sure this is done correctly)
* add alternative launcher plugin
  This is definitely unfinished. I consider this my playground, so things
  will surely break ;-)
* keep Brian happy with a detailed cvs commit message ;-)


(Old svn revision: 4310)
upstream/xfce4-panel-4.10.1
Jasper Huijsmans 18 years ago
parent
commit
1a159bc63c
  1. 14
      configure.ac
  2. 2
      iconbox/Makefile.am
  3. 12
      iconbox/iconbox-settings.c
  4. 1
      iconbox/iconbox-settings.h
  5. 18
      iconbox/iconbox.c
  6. 7
      libs/Makefile.am
  7. 305
      libs/xfce-arrow-button.c
  8. 76
      libs/xfce-arrow-button.h
  9. 2
      panel/Makefile.am
  10. 14
      panel/add-control-dialog.c
  11. 4
      panel/controls_dialog.c
  12. 75
      panel/item_dialog.c
  13. 1
      plugins/Makefile.am
  14. 31
      plugins/launcher/Makefile.am
  15. 2003
      plugins/launcher/launcher.c
  16. 235
      po/xfce4-panel.pot
  17. 2
      taskbar/Makefile.am

14
configure.ac

@ -5,9 +5,11 @@ dnl
dnl 2003 Benedikt Meurer <benedikt.meurer@unix-ag.uni-siegen.de>
dnl
m4_define([libxfce4panel_verinfo], [1:0:0])
AC_INIT([panel/main.c])
AM_INIT_AUTOMAKE([xfce4-panel], [4.3.1])
AM_INIT_AUTOMAKE([xfce4-panel], [4.3.2])
AM_CONFIG_HEADER([config.h])
@ -28,6 +30,9 @@ dnl disable static libs
AC_DISABLE_STATIC
AC_PROG_LIBTOOL
LIBXFCE4PANEL_VERINFO=libxfce4panel_verinfo()
AC_SUBST([LIBXFCE4PANEL_VERINFO])
dnl Check for standard header files
AC_HEADER_STDC
AC_CHECK_HEADERS([signal.h stddef.h sys/wait.h time.h netinet/in.h])
@ -86,13 +91,14 @@ taskbar/Makefile
iconbox/Makefile
settings/Makefile
plugins/Makefile
plugins/mailcheck/Makefile
plugins/clock/Makefile
plugins/switcher/Makefile
plugins/systembuttons/Makefile
plugins/launcher/Makefile
plugins/mailcheck/Makefile
plugins/pager/Makefile
plugins/sample-plugin/Makefile
plugins/separator/Makefile
plugins/switcher/Makefile
plugins/systembuttons/Makefile
plugins/systray/Makefile
])

2
iconbox/Makefile.am

@ -14,7 +14,7 @@ xfce4_iconbox_CFLAGS = \
-DPACKAGE_LOCALE_DIR=\"$(localedir)\"
xfce4_iconbox_LDADD = \
../libs/libxfce4panel.la \
-L$(top_srcdir)/libs -lxfce4panel \
@LIBXFCEGUI4_LIBS@ \
@LIBXFCE4MCS_CLIENT_LIBS@

12
iconbox/iconbox-settings.c

@ -147,3 +147,15 @@ iconbox_disconnect_mcs_client (McsClient *client)
client = NULL;
}
void
mcs_open_dialog (GdkScreen *screen, const char *channel)
{
if (channel)
{
int scr = gdk_screen_get_number (screen);
Display *dpy =
gdk_x11_display_get_xdisplay (gdk_screen_get_display (screen));
mcs_client_show (dpy, scr, channel);
}
}

1
iconbox/iconbox-settings.h

@ -27,3 +27,4 @@ McsClient *iconbox_connect_mcs_client (GdkScreen *screen, Iconbox *ib);
void iconbox_disconnect_mcs_client (McsClient *client);
void mcs_open_dialog (GdkScreen *screen, const char *channel);

18
iconbox/iconbox.c

@ -589,6 +589,12 @@ menu_about (GtkWidget *w, Iconbox *ib)
xfce_about_info_free (info);
}
static void
menu_properties (GtkWidget *w, Iconbox *ib)
{
mcs_open_dialog (ib->gdk_screen, "iconbox");
}
static void
menu_quit (GtkWidget *w, Iconbox *ib)
{
@ -602,17 +608,23 @@ create_menu (Iconbox *ib)
menu = gtk_menu_new ();
mi = gtk_menu_item_new_with_label (_("About"));
mi = gtk_menu_item_new_with_mnemonic (_("_About"));
gtk_widget_show (mi);
gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
g_signal_connect (mi, "activate", G_CALLBACK (menu_about), ib);
mi = gtk_menu_item_new_with_mnemonic (_("_Properties..."));
gtk_widget_show (mi);
gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
g_signal_connect (mi, "activate", G_CALLBACK (menu_properties), ib);
mi = gtk_separator_menu_item_new ();
gtk_widget_show (mi);
gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
mi = gtk_image_menu_item_new_from_stock (GTK_STOCK_QUIT, NULL);
mi = gtk_menu_item_new_with_mnemonic (_("E_xit"));
gtk_widget_show (mi);
gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
@ -1020,6 +1032,8 @@ main (int argc, char **argv)
{
Iconbox *ib;
xfce_textdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR, "UTF-8");
iconbox_check_options (argc, argv);
gtk_init (&argc, &argv);

7
libs/Makefile.am

@ -1,10 +1,12 @@
noinst_LTLIBRARIES = libxfce4panel.la
lib_LTLIBRARIES = libxfce4panel.la
libxfce4panel_la_SOURCES = \
xfce-enum-types.h \
xfce-enum-types.c \
xfce-marshal.h \
xfce-marshal.c \
xfce-arrow-button.c \
xfce-arrow-button.h \
xfce-paint-private.c \
xfce-paint-private.h \
xfce-panel-window.c \
@ -14,6 +16,9 @@ libxfce4panel_la_CFLAGS = \
-I$(top_srcdir) \
-I$(top_srcdir)/lib \
@LIBXFCEGUI4_CFLAGS@
libxfce4panel_la_LDFLAGS = \
-version-info @LIBXFCE4PANEL_VERINFO@
xfce_headers = \
xfce-panel-window.h

305
libs/xfce-arrow-button.c

@ -0,0 +1,305 @@
/* vim: set expandtab ts=8 sw=4: */
/* $Id$
*
* Copyright © 2004-2005-2005 Jasper Huijsmans <jasper@xfce.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Library General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#include <stdio.h>
#include <string.h>
#include <gtk/gtk.h>
#include "xfce-marshal.h"
#include "xfce-enum-types.h"
#include "xfce-arrow-button.h"
#define ARROW_WIDTH 8
#define ARROW_PADDING 2
#define DEFAULT_ARROW_TYPE GTK_ARROW_UP
#ifndef _
#define _(x) (x)
#endif
enum
{
ARROW_TYPE_CHANGED,
LAST_SIGNAL
};
enum
{
PROP_0,
PROP_ARROW_TYPE,
};
static void xfce_arrow_button_class_init (XfceArrowButtonClass * klass);
static void xfce_arrow_button_init (XfceArrowButton * button);
static void xfce_arrow_button_set_property (GObject * object,
guint prop_id,
const GValue * value,
GParamSpec * pspec);
static void xfce_arrow_button_get_property (GObject * object,
guint prop_id,
GValue * value,
GParamSpec * pspec);
static int xfce_arrow_button_expose (GtkWidget * widget,
GdkEventExpose * event);
static void xfce_arrow_button_size_request (GtkWidget * widget,
GtkRequisition * requisition);
static void xfce_arrow_button_add (GtkContainer * container,
GtkWidget *child);
static GType xfce_arrow_button_child_type (GtkContainer * container);
/* global vars */
static GtkToggleButtonClass *parent_class = NULL;
static guint arrow_button_signals[LAST_SIGNAL] = { 0 };
GType
xfce_arrow_button_get_type (void)
{
static GtkType type = 0;
if (!type)
{
static const GTypeInfo type_info = {
sizeof (XfceArrowButtonClass),
(GBaseInitFunc) NULL,
(GBaseFinalizeFunc) NULL,
(GClassInitFunc) xfce_arrow_button_class_init,
(GClassFinalizeFunc) NULL,
NULL,
sizeof (XfceArrowButton),
0, /* n_preallocs */
(GInstanceInitFunc) xfce_arrow_button_init,
};
type = g_type_register_static (GTK_TYPE_TOGGLE_BUTTON,
"XfceArrowButton", &type_info, 0);
}
return type;
}
static void
xfce_arrow_button_class_init (XfceArrowButtonClass * klass)
{
GObjectClass *gobject_class;
GtkWidgetClass *widget_class;
GtkContainerClass *container_class;
GParamSpec *pspec;
parent_class = g_type_class_peek_parent (klass);
gobject_class = (GObjectClass *) klass;
widget_class = (GtkWidgetClass *) klass;
container_class = (GtkContainerClass *) klass;
gobject_class->get_property = xfce_arrow_button_get_property;
gobject_class->set_property = xfce_arrow_button_set_property;
widget_class->expose_event = xfce_arrow_button_expose;
widget_class->size_request = xfce_arrow_button_size_request;
container_class->add = xfce_arrow_button_add;
container_class->child_type = xfce_arrow_button_child_type;
/* properties */
/**
* XfceArrowButton::arrow_type
*
* The arrow type of the button. This value also determines the direction
* of the popup menu.
*/
pspec = g_param_spec_enum ("arrow_type",
_("Arrow type"),
_("The arrow type of the menu button"),
GTK_TYPE_ARROW_TYPE,
GTK_ARROW_UP,
G_PARAM_READWRITE);
g_object_class_install_property (gobject_class, PROP_ARROW_TYPE, pspec);
/* signals */
/**
* XfceArrowButton::arrow_type_changed:
* @button: the object which emitted the signal
* @type: the new #GtkArrowType of the button
*
* Emitted when the arrow direction of the menu button changes.
* This value also determines the direction of the popup menu.
*/
arrow_button_signals[ARROW_TYPE_CHANGED] =
g_signal_new ("arrow-type-changed",
G_OBJECT_CLASS_TYPE (klass),
G_SIGNAL_RUN_FIRST,
G_STRUCT_OFFSET (XfceArrowButtonClass,
arrow_type_changed),
NULL, NULL,
g_cclosure_marshal_VOID__ENUM,
G_TYPE_NONE, 1, GTK_TYPE_ARROW_TYPE);
}
static void
xfce_arrow_button_init (XfceArrowButton * arrow_button)
{
GTK_WIDGET_SET_FLAGS (GTK_WIDGET (arrow_button), GTK_NO_WINDOW);
arrow_button->arrow_type = DEFAULT_ARROW_TYPE;
}
static void
xfce_arrow_button_set_property (GObject * object, guint prop_id,
const GValue * value, GParamSpec * pspec)
{
XfceArrowButton *button = XFCE_ARROW_BUTTON (object);
switch (prop_id)
{
case PROP_ARROW_TYPE:
xfce_arrow_button_set_arrow_type (button,
g_value_get_enum (value));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
static void
xfce_arrow_button_get_property (GObject * object,
guint prop_id, GValue * value,
GParamSpec * pspec)
{
XfceArrowButton *button = XFCE_ARROW_BUTTON (object);
switch (prop_id)
{
case PROP_ARROW_TYPE:
g_value_set_enum (value, button->arrow_type);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
static int
xfce_arrow_button_expose (GtkWidget * widget, GdkEventExpose *event)
{
if (GTK_WIDGET_DRAWABLE (widget))
{
int x, y, w;
w = MIN (widget->allocation.height, widget->allocation.width)
- 2 * MAX (widget->style->xthickness, widget->style->ythickness);
w = MIN (w, ARROW_WIDTH);
x = widget->allocation.x + (widget->allocation.width - w) / 2;
y = widget->allocation.y + (widget->allocation.height - w) / 2;
GTK_WIDGET_CLASS (parent_class)->expose_event (widget, event);
gtk_paint_arrow (widget->style, widget->window,
GTK_WIDGET_STATE (widget), GTK_SHADOW_NONE,
&(event->area), widget, "xfce_arrow_button",
XFCE_ARROW_BUTTON (widget)->arrow_type, FALSE,
x, y, w, w);
}
return TRUE;
}
static void
xfce_arrow_button_size_request (GtkWidget * widget,
GtkRequisition * requisition)
{
int size = ARROW_WIDTH + ARROW_PADDING +
2 * MAX (widget->style->xthickness, widget->style->ythickness);
requisition->width = requisition->height = size;
}
static void xfce_arrow_button_add (GtkContainer * container, GtkWidget *child)
{
g_warning ("XfceArrowButton cannot contain any children");
}
static GType xfce_arrow_button_child_type (GtkContainer * container)
{
return GTK_TYPE_NONE;
}
/* public interface */
GtkWidget *
xfce_arrow_button_new (GtkArrowType type)
{
XfceArrowButton *button;
button = g_object_new (XFCE_TYPE_ARROW_BUTTON, "arrow_type", type, NULL);
return GTK_WIDGET (button);
}
void
xfce_arrow_button_set_arrow_type (XfceArrowButton * button,
GtkArrowType type)
{
g_return_if_fail (XFCE_IS_ARROW_BUTTON (button));
button->arrow_type = type;
g_signal_emit (button, arrow_button_signals[ARROW_TYPE_CHANGED],
0, type);
g_object_notify (G_OBJECT (button), "arrow_type");
gtk_widget_queue_draw (GTK_WIDGET (button));
}
GtkArrowType
xfce_arrow_button_get_arrow_type (XfceArrowButton * button)
{
g_return_val_if_fail (XFCE_IS_ARROW_BUTTON (button),
DEFAULT_ARROW_TYPE);
return button->arrow_type;
}

76
libs/xfce-arrow-button.h

@ -0,0 +1,76 @@
/* vim: set expandtab ts=8 sw=4: */
/* $Id$
*
* Copyright © 2004-2005 Jasper Huijsmans <jasper@xfce.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Library General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef _XFCE_ARROW_BUTTON_H
#define _XFCE_ARROW_BUTTON_H
#include <gtk/gtkenums.h>
#include <gtk/gtkbutton.h>
#define XFCE_TYPE_ARROW_BUTTON (xfce_arrow_button_get_type ())
#define XFCE_ARROW_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), XFCE_TYPE_ARROW_BUTTON, XfceArrowButton))
#define XFCE_ARROW_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), XFCE_TYPE_ARROW_BUTTON, XfceArrowButtonClass))
#define XFCE_IS_ARROW_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XFCE_TYPE_ARROW_BUTTON))
#define XFCE_IS_ARROW_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), XFCE_TYPE_ARROW_BUTTON))
#define XFCE_ARROW_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), XFCE_TYPE_ARROW_BUTTON, XfceArrowButtonClass))
G_BEGIN_DECLS
typedef struct _XfceArrowButton XfceArrowButton;
typedef struct _XfceArrowButtonClass XfceArrowButtonClass;
struct _XfceArrowButton
{
GtkToggleButton parent;
GtkArrowType arrow_type;
};
struct _XfceArrowButtonClass
{
GtkToggleButtonClass parent_class;
/* signals */
void (*arrow_type_changed) (GtkWidget * widget,
GtkArrowType type);
/* Padding for future expansion */
void (*_xfce_reserved1) (void);
void (*_xfce_reserved2) (void);
void (*_xfce_reserved3) (void);
};
GType xfce_arrow_button_get_type (void) G_GNUC_CONST;
GtkWidget *xfce_arrow_button_new (GtkArrowType type);
GtkArrowType xfce_arrow_button_get_arrow_type (XfceArrowButton * button);
void xfce_arrow_button_set_arrow_type (XfceArrowButton * button,
GtkArrowType type);
G_END_DECLS
#endif /* _XFCE_ARROW_BUTTON_H */

2
panel/Makefile.am

@ -65,7 +65,6 @@ xfce4_panel_CFLAGS = \
-DLOCALEDIR=\"$(localedir)\"
xfce4_panel_LDFLAGS = \
../libs/libxfce4panel.la \
-export-dynamic
if HAVE_CYGWIN
@ -73,6 +72,7 @@ xfce4_panel_LDFLAGS += -no-undefined
endif
xfce4_panel_LDADD = \
-L$(top_srcdir)/libs -lxfce4panel \
@LIBSTARTUP_NOTIFICATION_LIBS@ \
@LIBX11_LIBS@ \
@LIBXFCEGUI4_LIBS@ \

14
panel/add-control-dialog.c

@ -150,6 +150,20 @@ treeview_dblclick (GtkWidget * tv, GdkEventButton * evt, ControlList * list)
if (evt->type == GDK_2BUTTON_PRESS)
{
GtkTreeSelection *sel;
GtkTreeModel *model;
GtkTreeIter iter;
ControlInfo *info;
sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (tv));
gtk_tree_selection_get_selected (sel, &model, &iter);
gtk_tree_model_get (model, &iter, 0, &info, -1);
if (!info->can_be_added)
return FALSE;
gtk_widget_set_sensitive (list->add_button, FALSE);
dlg = gtk_widget_get_toplevel (tv);
if (dlg && GTK_WIDGET_TOPLEVEL (dlg))

4
panel/controls_dialog.c

@ -53,7 +53,7 @@ add_container (GtkBox * box, GtkWidget * close, Control * control)
align = gtk_alignment_new (0, 0, 1, 1);
gtk_widget_show (align);
gtk_container_set_border_width (GTK_CONTAINER (align), BORDER);
gtk_container_set_border_width (GTK_CONTAINER (align), 2 * BORDER - 2);
gtk_box_pack_start (box, align, TRUE, TRUE, 0);
control_create_options (control, GTK_CONTAINER (align), close);
@ -82,7 +82,7 @@ add_position_option (GtkBox * box, Control * control)
int n;
hbox = gtk_hbox_new (FALSE, BORDER);
gtk_container_set_border_width (GTK_CONTAINER (hbox), BORDER);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 2 * BORDER - 2);
gtk_widget_show (hbox);
gtk_box_pack_start (box, hbox, FALSE, FALSE, 0);

75
panel/item_dialog.c

@ -78,7 +78,7 @@ struct _ItemDialog
static GtkWidget *menudialog = NULL; /* keep track of this for signal
handling */
static GtkTargetEntry entry[] = {
static GtkTargetEntry target_entry[] = {
{"text/uri-list", 0, 0},
{"UTF8_STRING", 0, 1},
{"STRING", 0, 2}
@ -92,8 +92,7 @@ static const char *keys[] = {
"Categories",
"OnlyShowIn",
"Exec",
"Terminal",
NULL
"Terminal"
};
/* useful widgets */
@ -191,51 +190,44 @@ drag_drop_cb (GtkWidget * widget, GdkDragContext * context, gint x,
gint y, GtkSelectionData * sd, guint info,
guint time, CommandOptions * opts)
{
gchar *filename = NULL;
gchar *temp = NULL;
gchar *buf = NULL;
gchar *exec = NULL;
gchar *execp = NULL;
XfceDesktopEntry *dentry;
if (sd->data)
{
if (g_str_has_prefix (sd->data, "file://"))
buf = g_strdup (&(sd->data)[7]);
else if (g_str_has_prefix (sd->data, "file:"))
buf = g_strdup (&(sd->data)[5]);
else
buf = g_strdup (sd->data);
/* Remove \n at the end of filename (if present) */
temp = strtok (buf, "\n");
if (!temp)
filename = g_strdup (buf);
else if (!g_file_test (temp, G_FILE_TEST_EXISTS))
filename = g_strndup (temp, strlen (temp) - 1);
else
filename = g_strdup (temp);
g_free (buf);
char *exec = NULL;
char *buf, *s;
XfceDesktopEntry *dentry;
if (g_file_test (filename, G_FILE_TEST_EXISTS) &&
XFCE_IS_DESKTOP_ENTRY (dentry =
xfce_desktop_entry_new (filename, keys,
G_N_ELEMENTS (keys))))
{
s = (char *) sd->data;
if (!strncmp (s, "file", 5))
{
s += 5;
if (!strncmp (s, "//", 2))
s += 2;
}
buf = g_strdup (s);
if ((s = strchr (buf, '\n')))
*s = '\0';
if (g_file_test (buf, G_FILE_TEST_EXISTS) &&
(dentry = xfce_desktop_entry_new (buf, keys, G_N_ELEMENTS (keys))))
{
xfce_desktop_entry_get_string (dentry, "Exec", FALSE, &exec);
g_object_unref (dentry);
g_free (filename);
g_free (buf);
}
else
{
exec = filename;
exec = buf;
}
if (exec)
{
if ((execp = g_strrstr (exec, " %")) != NULL)
if ((s = g_strrstr (exec, " %")) != NULL)
{
execp[0] = '\0';
s[0] = '\0';
}
command_options_set_command (opts, exec, FALSE, FALSE);
@ -243,7 +235,7 @@ drag_drop_cb (GtkWidget * widget, GdkDragContext * context, gint x,
}
}
gtk_drag_finish (context, sd->data != NULL, FALSE, time);
gtk_drag_finish (context, TRUE, FALSE, time);
}
G_MODULE_EXPORT /* EXPORT:create_command_options */
@ -289,12 +281,15 @@ create_command_options (GtkSizeGroup * sg)
g_signal_connect (w, "clicked", G_CALLBACK (command_browse_cb), opts);
/* xfce4-appfinder support (desktop files / menu spec) */
gtk_drag_dest_set (opts->base, GTK_DEST_DEFAULT_ALL, entry, 2,
GDK_ACTION_COPY);
g_signal_connect (opts->base, "drag-data-received",
gtk_drag_dest_set (opts->command_entry, GTK_DEST_DEFAULT_ALL,
target_entry, G_N_ELEMENTS (target_entry),
GDK_ACTION_COPY);
g_signal_connect (opts->command_entry, "drag-data-received",
G_CALLBACK (drag_drop_cb), opts);
g_signal_connect (opts->command_entry, "drag-data-received",
gtk_drag_dest_set (opts->base, GTK_DEST_DEFAULT_ALL, target_entry,
G_N_ELEMENTS (target_entry), GDK_ACTION_COPY);
g_signal_connect (opts->base, "drag-data-received",
G_CALLBACK (drag_drop_cb), opts);
hbox = gtk_hbox_new (FALSE, BORDER);

1
plugins/Makefile.am

@ -1,5 +1,6 @@
SUBDIRS = \
clock \
launcher \
mailcheck \
pager \
sample-plugin \

31
plugins/launcher/Makefile.am

@ -0,0 +1,31 @@
plugindir = $(libdir)/xfce4/panel-plugins
plugin_LTLIBRARIES = liblauncher.la
liblauncher_la_LDFLAGS = \
-avoid-version \
-module
liblauncher_la_SOURCES = \
launcher.c
liblauncher_la_CFLAGS = \
-I$(top_srcdir) \
@LIBXFCEGUI4_CFLAGS@ \
@LIBXML_CFLAGS@ \
-DLOCALEDIR=\"$(localedir)\"
liblauncher_la_LIBADD = \
@LIBS@
if HAVE_CYGWIN
liblauncher_la_LDFLAGS += \
-no-undefined \
-export-symbols $(top_srcdir)/panel/panel.def \
@LIBXML_LDFLAGS@ \
@LIBX11_LDFLAGS@
liblauncher_la_LIBADD += \
@LIBXFCEGUI4_LIBS@ \
@LIBXML_LIBS@ \
@LIBX11_LIBS@
endif

2003
plugins/launcher/launcher.c

File diff suppressed because it is too large

235
po/xfce4-panel.pot

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2005-01-02 11:01+0100\n"
"POT-Creation-Date: 2005-01-20 21:44+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -24,7 +24,8 @@ msgstr ""
msgid "No data was found. The panel will be empty."
msgstr ""
#: panel/controls_dialog.c:89 panel/item_dialog.c:1178
#: panel/controls_dialog.c:89 panel/item_dialog.c:1175
#: settings/xftaskbar_plugin.c:393
msgid "Position:"
msgstr ""
@ -40,60 +41,60 @@ msgstr ""
msgid "Select command"
msgstr ""
#: panel/item_dialog.c:268
#: panel/item_dialog.c:262
msgid "Command:"
msgstr ""
#: panel/item_dialog.c:311
#: panel/item_dialog.c:308
msgid "Run in _terminal"
msgstr ""
#: panel/item_dialog.c:329
#: panel/item_dialog.c:326
msgid "Use startup _notification"
msgstr ""
#: panel/item_dialog.c:515
#: panel/item_dialog.c:512
msgid "Other Icon"
msgstr ""
#: panel/item_dialog.c:626
#: panel/item_dialog.c:623
msgid "Drag file onto this frame to change the icon"
msgstr ""
#: panel/item_dialog.c:938
#: panel/item_dialog.c:935
msgid "Caption:"
msgstr ""
#: panel/item_dialog.c:967
#: panel/item_dialog.c:964
msgid "Tooltip:"
msgstr ""
#: panel/item_dialog.c:995
#: panel/item_dialog.c:992
msgid "Attach menu to launcher"
msgstr ""
#: panel/item_dialog.c:1215
#: panel/item_dialog.c:1212
msgid "Change menu item"
msgstr ""
#. add buttons
#: panel/item_dialog.c:1221 panel/controls.c:748
#: panel/item_dialog.c:1218 panel/controls.c:748
msgid "_Remove"
msgstr ""
#: panel/item_dialog.c:1233 panel/item.c:668
#: panel/item_dialog.c:1230 panel/item.c:738
msgid "Launcher"
msgstr ""
#: panel/item.c:496
#: panel/item.c:566
msgid "Click mouse button 3 to change item"
msgstr ""
#: panel/item.c:521
#: panel/item.c:591
msgid "Add launcher"
msgstr ""
#: panel/item.c:526
#: panel/item.c:596
msgid "Add new item"
msgstr ""
@ -130,11 +131,11 @@ msgstr ""
msgid "Could not create panel item \"%s\"."
msgstr ""
#: panel/controls.c:743 panel/panel.c:647
#: panel/controls.c:743 panel/panel.c:675 iconbox/iconbox.c:617
msgid "_Properties..."
msgstr ""
#: panel/controls.c:757 panel/panel.c:637
#: panel/controls.c:757 panel/panel.c:665
msgid "Add _new item"
msgstr ""
@ -142,28 +143,28 @@ msgstr ""
msgid "This item has no configuration options"
msgstr ""
#: panel/panel.c:628 panel/panel.c:1055 settings/xfce_settings_plugin.c:86
#: panel/panel.c:656 panel/panel.c:1012 settings/xfce_settings_plugin.c:86
#: settings/xfce_settings_dialog.c:450
msgid "Xfce Panel"
msgstr ""
#: panel/panel.c:652
#: panel/panel.c:680
msgid "_About Xfce"
msgstr ""
#: panel/panel.c:657
#: panel/panel.c:685
msgid "_Help"
msgstr ""
#: panel/panel.c:666
#: panel/panel.c:694
msgid "_Lock screen"
msgstr ""
#: panel/panel.c:671
#: panel/panel.c:699
msgid "_Restart"
msgstr ""
#: panel/panel.c:680
#: panel/panel.c:708 iconbox/iconbox.c:627
msgid "E_xit"
msgstr ""
@ -227,7 +228,54 @@ msgstr ""
msgid "Menu"
msgstr ""
#: settings/xfce_settings_dialog.c:87
#: taskbar/xftaskbar.c:510
msgid "There is already a system tray running on this screen"
msgstr ""
#: taskbar/xftaskbar.c:516
#, c-format
msgid "Unable to register system tray: %s"
msgstr ""
#. Use format characters from strftime(3)
#. * to get the proper string for your locale.
#. * I used these:
#. * %A : full weekday name
#. * %d : day of the month
#. * %B : full month name
#. * %Y : four digit year
#.
#: taskbar/xftaskbar.c:612
msgid "%A %d %B %Y"
msgstr ""
#: taskbar/xftaskbar.c:633
msgid "%H:%M"
msgstr ""
#: taskbar/xftaskbar.c:906 settings/xftaskbar_plugin.c:696
#: settings/xftaskbar_plugin.c:706 settings/xftaskbar_plugin.c:987
msgid "Taskbar"
msgstr ""
#: taskbar/xftaskbar.c:1022
msgid "Cannot create MCS client channel"
msgstr ""
#: iconbox/iconbox.c:567
msgid "Xfce Iconbox"
msgstr ""
#: iconbox/iconbox.c:575
msgid "Developer"
msgstr ""
#: iconbox/iconbox.c:611
msgid "_About"
msgstr ""
#: settings/xfce_settings_dialog.c:87 settings/xftaskbar_plugin.c:480
#: settings/xftaskbar_plugin.c:511
msgid "Small"
msgstr ""
@ -235,7 +283,8 @@ msgstr ""
msgid "Medium"
msgstr ""
#: settings/xfce_settings_dialog.c:95
#: settings/xfce_settings_dialog.c:95 settings/xftaskbar_plugin.c:499
#: settings/xftaskbar_plugin.c:532
msgid "Large"
msgstr ""
@ -295,10 +344,142 @@ msgstr ""
msgid "Appearance"
msgstr ""
#: settings/xfce_settings_dialog.c:492
#. show only hidden
#: settings/xfce_settings_dialog.c:492 settings/iconbox_plugin.c:685
msgid "Behaviour"
msgstr ""
#. position
#: settings/xftaskbar_plugin.c:383 settings/iconbox_plugin.c:298
msgid "Position"
msgstr ""
#: settings/xftaskbar_plugin.c:399
msgid "_Top"
msgstr ""
#: settings/xftaskbar_plugin.c:409
msgid "_Bottom"
msgstr ""
#: settings/xftaskbar_plugin.c:422
msgid "Alignment:"
msgstr ""
#: settings/xftaskbar_plugin.c:429
msgid "_Left"
msgstr ""
#: settings/xftaskbar_plugin.c:439
msgid "_Center"
msgstr ""
#: settings/xftaskbar_plugin.c:447
msgid "_Right"
msgstr ""
#. size
#: settings/xftaskbar_plugin.c:464
msgid "Size"
msgstr ""
#: settings/xftaskbar_plugin.c:474
msgid "Height:"
msgstr ""
#: settings/xftaskbar_plugin.c:505
msgid "Width:"
msgstr ""
#: settings/xftaskbar_plugin.c:541
msgid "_Shrink to fit"
msgstr ""
#. Autohide
#: settings/xftaskbar_plugin.c:561
msgid "Autohide"
msgstr ""
#: settings/xftaskbar_plugin.c:566
msgid "Auto _hide taskbar"
msgstr ""
#. tasklist
#: settings/xftaskbar_plugin.c:583
msgid "Tasklist"
msgstr ""
#: settings/xftaskbar_plugin.c:592
msgid "Show tasklist"
msgstr ""
#: settings/xftaskbar_plugin.c:604
msgid "Show tasks from _all workspaces"
msgstr ""
#: settings/xftaskbar_plugin.c:613
msgid "Always _group tasks"
msgstr ""
#: settings/xftaskbar_plugin.c:621
msgid "Show application _names"
msgstr ""
#. pager
#: settings/xftaskbar_plugin.c:629
msgid "Pager"
msgstr ""
#: settings/xftaskbar_plugin.c:634
msgid "Show _pager in taskbar"
msgstr ""
#. status area
#: settings/xftaskbar_plugin.c:641
msgid "Status area"
msgstr ""
#: settings/xftaskbar_plugin.c:650
msgid "Show _notification icons"
msgstr ""
#: settings/xftaskbar_plugin.c:657
msgid "Show _time"
msgstr ""
#: settings/xftaskbar_plugin.c:718
msgid "General"
msgstr ""
#: settings/xftaskbar_plugin.c:729
msgid "Components"
msgstr ""
#: settings/iconbox_plugin.c:629
msgid "Icon size"
msgstr ""
#: settings/iconbox_plugin.c:691
msgid "_Show only minimized applications"
msgstr ""
#: settings/iconbox_plugin.c:754
msgid "Transparency"
msgstr ""
#: settings/iconbox_plugin.c:762
msgid "None"
msgstr ""
#: settings/iconbox_plugin.c:777
msgid "Full"
msgstr ""
#: settings/iconbox_plugin.c:831 settings/iconbox_plugin.c:841
#: settings/iconbox_plugin.c:992
msgid "Iconbox"
msgstr ""
#. Use format characters from strftime(3)
#. * to get the proper string for your locale.
#. * I used these:

2
taskbar/Makefile.am

@ -10,7 +10,7 @@ xfce4_taskbar_CFLAGS = \
-DPACKAGE_LOCALE_DIR=\"$(localedir)\"
xfce4_taskbar_LDADD = \
../libs/libxfce4panel.la \
-L$(top_srcdir)/libs -lxfce4panel \
@LIBXFCEGUI4_LIBS@ \
@LIBXFCE4MCS_CLIENT_LIBS@

Loading…
Cancel
Save