3 * \brief Header: this is a main module header
13 /* Toggling functions */
14 void toggle_fast_reload (void);
15 void toggle_mix_all_files (void);
16 void toggle_show_backup (void);
17 void toggle_show_hidden (void);
21 #define UP_ONLY_CURRENT 2
23 #define UP_KEEPSEL ((char *) -1)
26 extern volatile int quit
;
28 /* If true, after executing a command, wait for a keystroke */
29 enum { pause_never
, pause_on_dumb_terminals
, pause_always
};
31 void subshell_chdir (const char *command
);
33 /* See main.c for details on these variables */
34 extern int mark_moves_down
;
36 extern int pause_after_run
;
37 extern int auto_save_setup
;
38 extern int use_internal_view
;
39 extern int use_internal_edit
;
40 extern int fast_reload_w
;
41 extern int clear_before_exec
;
42 extern int mou_auto_repeat
;
43 extern char *other_dir
;
44 extern int mouse_move_pages
;
47 extern int source_codepage
;
48 extern int display_codepage
;
49 extern int utf8_display
;
51 extern int eight_bit_clean
;
52 extern int full_eight_bits
;
53 #endif /* !HAVE_CHARSET */
55 extern int confirm_view_dir
;
56 extern int fast_refresh
;
57 extern int navigate_with_arrows
;
58 extern int force_ugly_line_drawing
;
59 extern int drop_menus
;
60 extern int cd_symlinks
;
61 extern int show_all_if_ambiguous
;
62 extern int slow_terminal
;
63 extern int update_prompt
; /* To comunicate with subshell */
64 extern int safe_delete
;
65 extern int confirm_delete
;
66 extern int confirm_directory_hotlist_delete
;
67 extern int confirm_execute
;
68 extern int confirm_exit
;
69 extern int confirm_overwrite
;
70 extern int force_colors
;
71 extern int boot_current_is_left
;
72 extern int use_file_to_check_type
;
73 extern int vfs_use_limit
;
74 extern int alternate_plus_minus
;
75 extern int only_leading_plus_minus
;
76 extern int output_starts_shell
;
77 extern int midnight_shutdown
;
78 extern char cmd_buf
[512];
79 extern const char *shell
;
80 extern int auto_fill_mkdir_name
;
82 /* Ugly hack in order to distinguish between left and right panel in menubar */
83 extern int is_right
; /* If the selected menu was the right */
84 #define MENU_PANEL (is_right ? right_panel : left_panel)
85 #define MENU_PANEL_IDX (is_right ? 1 : 0)
86 #define SELECTED_IS_PANEL (get_display_type (is_right ? 1 : 0) == view_listing)
88 typedef void (*key_callback
) (void);
90 /* The keymaps are of this type */
96 void update_panels (int force_update
, const char *current_file
);
97 void repaint_screen (void);
98 void do_update_prompt (void);
105 int do_cd (const char *new_dir
, enum cd_enum cd_type
); /* For find.c */
106 void change_panel (void);
107 int load_prompt (int, void *);
108 void save_cwds_stat (void);
109 void quiet_quit_cmd (void); /* For cmd.c and command.c */
111 void touch_bar (void);
112 void update_xterm_title_path (void);
113 void load_hint (int force
);
115 void print_vfs_message(const char *msg
, ...)
116 __attribute__ ((format (__printf__
, 1, 2)));
118 extern const char *prompt
;
119 extern const char *edit_one_file
;
120 extern char *mc_home
;
121 extern char *mc_home_alt
;
122 char *get_mc_lib_dir (void);
124 int maybe_cd (int move_up_dir
);
125 void do_possible_cd (const char *dir
);
127 void done_menu (void);
128 void init_menu (void);
130 char *remove_encoding_from_path (const char *);
132 #define MC_BASE "/.mc/"
134 void directory_history_add (struct WPanel
*panel
, const char *dir
);
135 int do_panel_cd (struct WPanel
*panel
, const char *new_dir
, enum cd_enum cd_type
);