1
1

329 Коммитов

Автор SHA1 Сообщение Дата
Andrew Borodin
562ad3e84b More usage of gettext context.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-10-23 18:50:13 +04:00
Andrew Borodin
10e8d008d7 Ticket #1704: fixed quick search show.
If "show Mini status" option is off, the quick search box
is shown incorrect. In this case the quick seach box
must be invisible, because this is common MC behavior.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-10-15 20:45:24 +04:00
Slava Zanko
8fe4dc26c2 Cosmetic changes of panel interfase (relative to history list):
* Panel widget: History list button  changed  from v to [^]
 * Change drawing of history control elements for panel. Now if panel is active, show in reverse color just panel path.
 * Add reaction on mouse click on [] chars at top of panel
 * Added call of repaint_screen() function for correctly show panels content after click by mouse on 'hidden files' indicator.

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-15 14:51:30 +03:00
Slava Zanko
bd29603b41 Relative to Ticket #1643: restore patch 'Mouse support in first line when menu is hidden'
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-15 14:51:24 +03:00
Slava Zanko
d11de35343 Ticket #1716: Adding fully featured skin
As David Martin proposed, this skin support all newest features
May be used as modern skin, but with some restrictions (must be UTF-8 system codepage)

Also, changed src/screen.c for demonstrate skin features :)

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-15 14:51:16 +03:00
Andrew Borodin
2328baf7a3 Place choose panel codepage dialog at the centre of the screen. 2009-10-15 11:40:30 +04:00
Andrew Borodin
47c4744347 Ticket #1451: fixed placement of choose encoding dialog window.
The "Choose codepage" dialog (for file panel) is centered
over the according panel.

Renamed create_listbox_window_delta() function to
create_listbox_window_centered(). Now this function takes in
coordinates of dialog center.
Changed argumets order to unified dialogs API.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-10-15 11:40:30 +04:00
David Martin
415c10e880 Ticket #1714: Sort types: use context for indicator translations.
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-13 15:04:36 +03:00
Slava Zanko
55fe1bb86e Ticket #397: Fix initialization of structure.
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-12 09:09:41 +03:00
Slava Zanko
0fdb3488e5 Ticket #397: i18n for sort indicator
Fixed translations of sort indicator. Now it separate string for better translate.

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-09 09:48:38 +03:00
Slava Zanko
ba9ac667d2 Cleanup of code. Remove unused panel_field_t::use_in_gui variable
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-06 10:18:55 +03:00
Slava Zanko
08e6e1caf4 Added indicators for current sort type and sort direction.
Added parameters into skin-files for showing sort indicator.

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-06 10:18:55 +03:00
Slava Zanko
9766359a1b Fixed segfault in 'Brief file list' listing mode
Segfault was been raised after clink on header of right column.

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-06 10:18:55 +03:00
Slava Zanko
13220bfc6c Added reversing sort order ability if one keybind raised multiple times.
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-06 10:18:55 +03:00
Slava Zanko
9fa3347fc1 Added keymaps for some sort types.
* PanelSortOrderByName
 * PanelSortOrderByExt
 * PanelSortOrderBySize
 * PanelSortOrderByMTime

Also added 'PanelReverseSort' keymap.

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-06 10:18:54 +03:00
Slava Zanko
3def4aeb0e Remove code for reverse search direction when toggle search types.
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-06 10:18:54 +03:00
Slava Zanko
fe73db4227 Fixed behavior of CK_PanelSelectSortOrder event.
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-06 10:18:54 +03:00
Slava Zanko
7896ea84f6 Added handlers for panel sort keybind actions.
* PanelSelectSortOrder - show 'Sort order' dialog
 * PanelToggleSortOrderPrev - toggle next sort type (or reverse sort order)
 * PanelToggleSortOrderNext - toggle previous sort type (or cancel reverse)

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-06 10:18:54 +03:00
Slava Zanko
b4f7ea071f Remove array of hardcoded format names from listmode.c
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-06 10:18:54 +03:00
Slava Zanko
82a384d8f4 Some changes for better toggle sort types of panel.
Now we have just one array for formats of panel and for sort types.

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-06 10:18:53 +03:00
Andrew Borodin
3631f810cc Fixed length of panel header (current directory).
Minor optimization of panel buttons draw.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-10-06 10:18:53 +03:00
Slava Zanko
d1c686c9f0 Ticket #397: Mouse click on column heading sorts panel on that column
Attached patch that adds the following 2 enhancements:
1) Using the mouse to click on a panel column heading re-sorts
  the panel on that column. If already sorted on that column,
  the sort order is reversed.

2) added a button "." next to "v" that toggles the display
   of hidden files.

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-10-06 10:18:53 +03:00
Andrew Borodin
c422f67bd3 Ticket #1643: menu events handling in file panel in case of invisible menu.
Fixed: when main menu is invisible, pressing mouse button
on the first line makes the menu display, even on panel
widgets as "<" ".v>".

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-09-30 08:44:53 +04:00
Ilia Maslakov
c893dcf1dd fix: movement in Lynx navigation mode
Signed-off-by: Ilia Maslakov <il.smind@gmail.com>
2009-09-29 17:42:39 +00:00
Andrew Borodin
100a8d02ae Some minor optimization.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-09-29 17:42:37 +00:00
Slava Zanko
5bdd17a6ec Rename widget_* functions and variables into input_* functions and variables.
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-09-29 17:42:36 +00:00
Ilia Maslakov
8830338411 little cosmetic refactoring
Signed-off-by: Ilia Maslakov <il.smind@google.com>
2009-09-29 17:42:34 +00:00
Ilia Maslakov
606dce4e8b add redefine keys support in viewer
Signed-off-by: Ilia Maslakov <il.smind@google.com>
2009-09-29 17:42:33 +00:00
Ilia Maslakov
27545f1745 rework screen.c keymapping
Signed-off-by: Ilia Maslakov <il.smind@google.com>
2009-09-29 17:42:33 +00:00
Ilia Maslakov
71b1a8bf99 Ticket #212 (User defined hotkeys)
created structs:
    struct name_key_map_t
    struct key_config_t
    global_key_map_t
    add lookup_action
    replace editor key map struct to global_key_map_t
    add main_map screen_map
    replace command CK_* to src/cmddef.h
    add mc.keymap
    fix misc/Makefile.am
    add x_keymap
    add more commands

Signed-off-by: Ilia Maslakov <il.smind@google.com>
2009-09-29 17:42:32 +00:00
Andrew Borodin
b04d568620 Ticket #1451: Incorrect charset menu location for 'Long file list' lising mode.
In 'Long file list' the panel width is equal to the screen
width. In this case, choose charset menu is placed in the
center of the screen.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-09-23 16:57:34 +04:00
Slava Zanko
981fe001d1 Base support of skins.
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-09-18 11:49:44 +03:00
Andrew Borodin
8f5ae1983a Ticket #276: display marked files size accurately.
Centered horizontally. Removed rubbish symbols at the end
of displayed text.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-09-16 09:27:10 +04:00
Andrew Borodin
64f5497b67 Ignore mouse wheel events for inactive panel.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-09-14 15:11:59 +04:00
Andrew Borodin
15354fdbb4 Call menu using mouse for all panel types.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-09-14 15:11:59 +04:00
Andrew Borodin
aa601f831b Fixed smooth scrolling of split panels.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-09-14 15:11:59 +04:00
David Martin
a252136766 Smooth scrolling in file panel.
If listing panels is operated with the mouse wheel, when window is
at top or bottom of the list, then selection "jumps" to first/last item.
Now it smoother: keep window and decrease/increase selection in
single steps.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-09-14 15:11:59 +04:00
Andrew Borodin
f559aeb6b9 Ticket #59: display file size in full precision.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-09-07 15:34:41 +04:00
Ilia Maslakov
465d4d2cc5 Ticket #1497 (stickchars)
add frm_* vars
    read frame lines from ini
[Lines]
lefttop
righttop
centertop
centerbottom
leftbottom
rightbottom
leftmiddle
rightmiddle
centermiddle
horiz
vert
thinhoriz
thinvert

    fix draw frames in stickchar mode

Signed-off-by: Ilia Maslakov <il.smind@google.com>
2009-09-07 10:17:27 +00:00
Slava Zanko
4afc04eedc Ticket #418: File coloring
Added support of filenames highlighting in panels.

Now rules of highlighting described into external file filehighlight.ini
Number of highlight rules is unlimited (in opposite to X-Stranger patch).

Highlight will made by:
 * file type (directory, regular, symlink, special device etc.)
 * extensions of filenames (ends of filenames)
 * regular expressions

Big thanks to X-Stranger <x@linux.by> for idea
and to Alexey Kaminsky <alexeykaminsky@gmail.com> for testing.

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-09-03 13:12:17 +03:00
Andrew Borodin
4881dd7c90 Ticket #1561: fixed wrong position of select panel encoding dialog.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-08-31 15:43:19 +04:00
Denys Vlasenko
e064bd60df De-inline a few functions which are large
...or not-so-large but nevertheless
contain more than one function call,
or contain loops, or contain if's and at least one
function call, or contain largish objects on stack.

In my experience, in those cases the code size
growth is big enough to not inline stuff.

I guess some of the really big functions
are defined inline because they have, or had in the past,
just one callsite.

But for a few years gcc already does it automatically,
no need to do it by hand and risk code size explosion
when later during code evolution another callsite
is created. This optimization by hand is simply
no longer needed.

Anyway, here is the code size difference:

   text    data     bss     dec     hex filename
 572337   17944  177820  768101   bb865 mc.t5/.obj/src/mc
 567697   17944  177820  763461   ba645 mc.t6/.obj/src/mc

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Sergei Trofimovich <slyfox@inbox.ru>
2009-08-31 07:12:59 +03:00
Andrew Borodin
bc09ff3888 Ticket #1414: implemented scalable TUI.
Thanks to E.L.K.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-08-17 15:54:39 +04:00
IMDagger
a57ff08d12 Ticket #38: use MC_MAXPATHLEN insterd of MAXPATHLEN.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-08-14 09:40:45 +04:00
IMDagger
c17ebc96ac Ticket 38: return from Info panel to wrong directory.
When viewing two file lists, if user presses C-x i for info on
a panel's directory or file, the info pops up correctly in the
other panel. However, when the user closes the info screen, the
directory of the current panel is shown -- NOT the directory
which was being viewed before the info panel appeared.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-08-13 17:00:58 +04:00
Andrew Borodin
16ceccc6df Panel: fixed width of second column in brief listing mode.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-08-12 21:23:55 +04:00
Andrew Borodin
d21c8dc448 Screen: moved maybe_cd() function from main.c to screen.c.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-08-12 21:23:55 +04:00
Andrew Borodin
5cd4a8ad83 Moved panel update functions from main.c to screen.c.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-08-12 21:23:55 +04:00
Andrew Borodin
05f3ee1f6c TTY: modifed initialization.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-08-12 21:23:54 +04:00
Andrew Borodin
3225c15e69 Removed draw_double_box() function.
Since S-Lang library actually doesn't provide double boxes drawing,
the draw_box() function is used always.
2009-08-12 21:23:13 +04:00