Updated italian translation
[midnight-commander.git] / src / main.h
blob5652c551b828a3c1f7f65e5f27dcddf55aa6deb4
1 #ifndef MC_MAIN_H
2 #define MC_MAIN_H
4 #include "menu.h"
5 #include "panel.h"
6 #include "widget.h"
8 /* Toggling functions */
9 void toggle_fast_reload (void);
10 void toggle_mix_all_files (void);
11 void toggle_show_backup (void);
12 void toggle_show_hidden (void);
14 #define UP_OPTIMIZE 0
15 #define UP_RELOAD 1
16 #define UP_ONLY_CURRENT 2
18 #define UP_KEEPSEL ((char *) -1)
20 extern int quote;
21 extern volatile int quit;
23 /* If true, after executing a command, wait for a keystroke */
24 enum { pause_never, pause_on_dumb_terminals, pause_always };
26 void subshell_chdir (const char *command);
28 /* See main.c for details on these variables */
29 extern int mark_moves_down;
30 extern int auto_menu;
31 extern int pause_after_run;
32 extern int auto_save_setup;
33 extern int use_internal_view;
34 extern int use_internal_edit;
35 extern int fast_reload_w;
36 extern int clear_before_exec;
37 extern int mou_auto_repeat;
38 extern char *other_dir;
39 extern int mouse_move_pages;
41 #ifdef HAVE_CHARSET
42 extern int source_codepage;
43 extern int display_codepage;
44 #else
45 extern int eight_bit_clean;
46 extern int full_eight_bits;
47 #endif /* !HAVE_CHARSET */
49 extern int confirm_view_dir;
50 extern int fast_refresh;
51 extern int navigate_with_arrows;
52 extern int force_ugly_line_drawing;
53 extern int drop_menus;
54 extern int cd_symlinks;
55 extern int show_all_if_ambiguous;
56 extern int slow_terminal;
57 extern int update_prompt; /* To comunicate with subshell */
58 extern int confirm_delete;
59 extern int confirm_execute;
60 extern int confirm_exit;
61 extern int confirm_overwrite;
62 extern int force_colors;
63 extern int boot_current_is_left;
64 extern int acs_vline;
65 extern int acs_hline;
66 extern int use_file_to_check_type;
67 extern int vfs_use_limit;
68 extern int alternate_plus_minus;
69 extern int only_leading_plus_minus;
70 extern int output_starts_shell;
71 extern int midnight_shutdown;
72 extern char cmd_buf [512];
73 extern const char *shell;
75 /* Ugly hack in order to distinguish between left and right panel in menubar */
76 extern int is_right; /* If the selected menu was the right */
77 #define MENU_PANEL (is_right ? right_panel : left_panel)
78 #define MENU_PANEL_IDX (is_right ? 1 : 0)
79 #define SELECTED_IS_PANEL (get_display_type (is_right ? 1 : 0) == view_listing)
81 typedef void (*key_callback) (void);
83 /* The keymaps are of this type */
84 typedef struct {
85 int key_code;
86 key_callback fn;
87 } key_map;
89 void update_panels (int force_update, const char *current_file);
90 void repaint_screen (void);
91 void do_update_prompt (void);
93 enum cd_enum {
94 cd_parse_command,
95 cd_exact
98 int do_cd (const char *new_dir, enum cd_enum cd_type); /* For find.c */
99 void change_panel (void);
100 int load_prompt (int, void *);
101 void save_cwds_stat (void);
102 void quiet_quit_cmd (void); /* For cmd.c and command.c */
104 void touch_bar (void);
105 void update_xterm_title_path (void);
106 void load_hint (int force);
108 void print_vfs_message(const char *msg, ...)
109 __attribute__ ((format (printf, 1, 2)));
111 extern char *prompt;
112 extern const char *edit_one_file;
113 extern char *mc_home;
114 char *get_mc_lib_dir (void);
116 int maybe_cd (int move_up_dir);
117 void do_possible_cd (const char *dir);
119 #ifdef WANT_WIDGETS
120 extern WButtonBar *the_bar;
121 extern WLabel *the_prompt;
122 extern WLabel *the_hint;
123 extern Dlg_head *midnight_dlg;
125 extern struct WMenu *the_menubar;
126 #endif /* WANT_WIDGETS */
128 void done_menu (void);
129 void init_menu (void);
131 #define MC_BASE "/.mc/"
133 void directory_history_add (struct WPanel *panel, const char *dir);
134 int do_panel_cd (struct WPanel *panel, const char *new_dir, enum cd_enum cd_type);
136 #endif