Changeset 35cffea in mainline for uspace/lib/ui/private


Ignore:
Timestamp:
2022-05-19T08:02:31Z (4 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
master, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
ad698f4
Parents:
fd05ea6
git-author:
Jiri Svoboda <jiri@…> (2022-05-18 17:02:12)
git-committer:
Jiri Svoboda <jiri@…> (2022-05-19 08:02:31)
Message:

Maximizing/unmaximizing a window

Location:
uspace/lib/ui/private
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/ui/private/wdecor.h

    rfd05ea6 r35cffea  
    11/*
    2  * Copyright (c) 2020 Jiri Svoboda
     2 * Copyright (c) 2022 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    6363        /** Window is active */
    6464        bool active;
     65        /** Window is maximized */
     66        bool maximized;
     67        /** Maximize button */
     68        struct ui_pbutton *btn_max;
    6569        /** Close button */
    6670        struct ui_pbutton *btn_close;
     
    7680        /** Title bar rectangle */
    7781        gfx_rect_t title_bar_rect;
     82        /** Maximize button rectangle */
     83        gfx_rect_t btn_max_rect;
    7884        /** Close button rectangle */
    7985        gfx_rect_t btn_close_rect;
     
    8288} ui_wdecor_geom_t;
    8389
     90extern void ui_wdecor_maximize(ui_wdecor_t *);
     91extern void ui_wdecor_unmaximize(ui_wdecor_t *);
    8492extern void ui_wdecor_close(ui_wdecor_t *);
    8593extern void ui_wdecor_move(ui_wdecor_t *, gfx_coord2_t *);
  • uspace/lib/ui/private/window.h

    rfd05ea6 r35cffea  
    11/*
    2  * Copyright (c) 2021 Jiri Svoboda
     2 * Copyright (c) 2022 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    7777        /** Window rectangle */
    7878        gfx_rect_t rect;
     79        /** Normal window rectangle (when not maximized) */
     80        gfx_rect_t normal_rect;
    7981        /** Display position (if fullscreen mode) */
    8082        gfx_coord2_t dpos;
     
    99101};
    100102
     103/** Size change operation */
     104typedef enum {
     105        /** Resize window */
     106        ui_wsc_resize,
     107        /** Maximize window */
     108        ui_wsc_maximize,
     109        /** Unmaximize window */
     110        ui_wsc_unmaximize
     111} ui_wnd_sc_op_t;
     112
    101113extern display_stock_cursor_t wnd_dcursor_from_cursor(ui_stock_cursor_t);
     114extern void ui_window_send_maximize(ui_window_t *);
     115extern void ui_window_send_unmaximize(ui_window_t *);
    102116extern void ui_window_send_close(ui_window_t *);
    103117extern void ui_window_send_focus(ui_window_t *);
     
    106120extern void ui_window_send_pos(ui_window_t *, pos_event_t *);
    107121extern void ui_window_send_unfocus(ui_window_t *);
     122extern errno_t ui_window_size_change(ui_window_t *, gfx_rect_t *,
     123    ui_wnd_sc_op_t);
    108124
    109125#endif
Note: See TracChangeset for help on using the changeset viewer.