Added popup menu item: Change current working directory.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1560 ea778897-0a13-0410-b9d1-a72fbfd435f5
This commit is contained in:
parent
cb91043def
commit
2f7fc48bf4
@ -1,3 +1,8 @@
|
||||
2007-05-23 Enrico Tröger <enrico.troeger@uvena.de>
|
||||
|
||||
* src/vte.c: Added popup menu item: Change current working directory.
|
||||
|
||||
|
||||
2007-05-23 Nick Treleaven <nick.treleaven@btinternet.com>
|
||||
|
||||
* src/filetypes.c, src/symbols.c, tagmanager/parsers.h,
|
||||
|
||||
33
src/vte.c
33
src/vte.c
@ -39,6 +39,7 @@
|
||||
#include "prefs.h"
|
||||
#include "ui_utils.h"
|
||||
#include "utils.h"
|
||||
#include "document.h"
|
||||
|
||||
|
||||
VteInfo vte_info;
|
||||
@ -66,6 +67,14 @@ static void vte_popup_menu_clicked(GtkMenuItem *menuitem, gpointer user_data);
|
||||
static GtkWidget *vte_create_popup_menu(void);
|
||||
|
||||
|
||||
enum
|
||||
{
|
||||
POPUP_COPY,
|
||||
POPUP_PASTE,
|
||||
POPUP_CHANGEPATH,
|
||||
POPUP_PREFERENCES
|
||||
};
|
||||
|
||||
/* taken from anjuta, thanks */
|
||||
static gchar **vte_get_child_environment(void)
|
||||
{
|
||||
@ -334,18 +343,25 @@ static void vte_popup_menu_clicked(GtkMenuItem *menuitem, gpointer user_data)
|
||||
{
|
||||
switch (GPOINTER_TO_INT(user_data))
|
||||
{
|
||||
case 0:
|
||||
case POPUP_COPY:
|
||||
{
|
||||
if (vf->vte_terminal_get_has_selection(VTE_TERMINAL(vc->vte)))
|
||||
vf->vte_terminal_copy_clipboard(VTE_TERMINAL(vc->vte));
|
||||
break;
|
||||
}
|
||||
case 1:
|
||||
case POPUP_PASTE:
|
||||
{
|
||||
vf->vte_terminal_paste_clipboard(VTE_TERMINAL(vc->vte));
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
case POPUP_CHANGEPATH:
|
||||
{
|
||||
gint idx = document_get_cur_idx();
|
||||
if (DOC_IDX_VALID(idx))
|
||||
vte_cwd(doc_list[idx].file_name, TRUE);
|
||||
break;
|
||||
}
|
||||
case POPUP_PREFERENCES:
|
||||
{
|
||||
GtkWidget *notebook;
|
||||
|
||||
@ -369,12 +385,17 @@ static GtkWidget *vte_create_popup_menu(void)
|
||||
item = gtk_image_menu_item_new_from_stock("gtk-copy", NULL);
|
||||
gtk_widget_show(item);
|
||||
gtk_container_add(GTK_CONTAINER(menu), item);
|
||||
g_signal_connect((gpointer)item, "activate", G_CALLBACK(vte_popup_menu_clicked), GINT_TO_POINTER(0));
|
||||
g_signal_connect((gpointer)item, "activate", G_CALLBACK(vte_popup_menu_clicked), GINT_TO_POINTER(POPUP_COPY));
|
||||
|
||||
item = gtk_image_menu_item_new_from_stock("gtk-paste", NULL);
|
||||
gtk_widget_show(item);
|
||||
gtk_container_add(GTK_CONTAINER(menu), item);
|
||||
g_signal_connect((gpointer)item, "activate", G_CALLBACK(vte_popup_menu_clicked), GINT_TO_POINTER(1));
|
||||
g_signal_connect((gpointer)item, "activate", G_CALLBACK(vte_popup_menu_clicked), GINT_TO_POINTER(POPUP_PASTE));
|
||||
|
||||
item = gtk_image_menu_item_new_with_label("Change current working directory");
|
||||
gtk_widget_show(item);
|
||||
gtk_container_add(GTK_CONTAINER(menu), item);
|
||||
g_signal_connect((gpointer)item, "activate", G_CALLBACK(vte_popup_menu_clicked), GINT_TO_POINTER(POPUP_CHANGEPATH));
|
||||
|
||||
item = gtk_separator_menu_item_new();
|
||||
gtk_widget_show(item);
|
||||
@ -383,7 +404,7 @@ static GtkWidget *vte_create_popup_menu(void)
|
||||
item = gtk_image_menu_item_new_from_stock("gtk-preferences", NULL);
|
||||
gtk_widget_show(item);
|
||||
gtk_container_add(GTK_CONTAINER(menu), item);
|
||||
g_signal_connect((gpointer)item, "activate", G_CALLBACK(vte_popup_menu_clicked), GINT_TO_POINTER(2));
|
||||
g_signal_connect((gpointer)item, "activate", G_CALLBACK(vte_popup_menu_clicked), GINT_TO_POINTER(POPUP_PREFERENCES));
|
||||
|
||||
item = gtk_separator_menu_item_new();
|
||||
gtk_widget_show(item);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user