comdlg32: Add a helper to access the margin rect.
This commit is contained in:
parent
30aa997b69
commit
2bd53e2786
|
@ -2789,6 +2789,11 @@ static inline POINT *pagesetup_get_papersize_pt(const pagesetup_data *data)
|
||||||
return &data->dlga->ptPaperSize;
|
return &data->dlga->ptPaperSize;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline RECT *pagesetup_get_margin_rect(const pagesetup_data *data)
|
||||||
|
{
|
||||||
|
return &data->dlga->rtMargin;
|
||||||
|
}
|
||||||
|
|
||||||
static inline void swap_point(POINT *pt)
|
static inline void swap_point(POINT *pt)
|
||||||
{
|
{
|
||||||
LONG tmp = pt->x;
|
LONG tmp = pt->x;
|
||||||
|
@ -3169,7 +3174,7 @@ static void update_margin_edits(HWND hDlg, const pagesetup_data *data, WORD id)
|
||||||
{
|
{
|
||||||
if(id == 0 || id == idx)
|
if(id == 0 || id == idx)
|
||||||
{
|
{
|
||||||
size2str(data, *element_from_margin_id(&data->dlga->rtMargin, idx), str);
|
size2str(data, *element_from_margin_id(pagesetup_get_margin_rect(data), idx), str);
|
||||||
SetDlgItemTextW(hDlg, idx, str);
|
SetDlgItemTextW(hDlg, idx, str);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3183,7 +3188,7 @@ static void margin_edit_notification(HWND hDlg, pagesetup_data *data, WORD msg,
|
||||||
{
|
{
|
||||||
WCHAR buf[10];
|
WCHAR buf[10];
|
||||||
LONG val = 0;
|
LONG val = 0;
|
||||||
LONG *value = element_from_margin_id(&data->dlga->rtMargin, id);
|
LONG *value = element_from_margin_id(pagesetup_get_margin_rect(data), id);
|
||||||
|
|
||||||
if (GetDlgItemTextW(hDlg, id, buf, sizeof(buf) / sizeof(buf[0])) != 0)
|
if (GetDlgItemTextW(hDlg, id, buf, sizeof(buf) / sizeof(buf[0])) != 0)
|
||||||
{
|
{
|
||||||
|
@ -3325,7 +3330,7 @@ static BOOL PRINTDLG_PS_WMCommandA(HWND hDlg, WPARAM wParam, LPARAM lParam, page
|
||||||
{
|
{
|
||||||
pagesetup_set_orientation(data, (id == rad1) ? DMORIENT_PORTRAIT : DMORIENT_LANDSCAPE);
|
pagesetup_set_orientation(data, (id == rad1) ? DMORIENT_PORTRAIT : DMORIENT_LANDSCAPE);
|
||||||
pagesetup_update_papersize(data);
|
pagesetup_update_papersize(data);
|
||||||
rotate_rect(&data->dlga->rtMargin, (id == rad2));
|
rotate_rect(pagesetup_get_margin_rect(data), (id == rad2));
|
||||||
update_margin_edits(hDlg, data, 0);
|
update_margin_edits(hDlg, data, 0);
|
||||||
pagesetup_change_preview(data);
|
pagesetup_change_preview(data);
|
||||||
}
|
}
|
||||||
|
@ -3566,10 +3571,10 @@ PRINTDLG_PagePaintProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
scaly = rcClient.bottom / (double)pagesetup_get_papersize_pt(data)->y;
|
scaly = rcClient.bottom / (double)pagesetup_get_papersize_pt(data)->y;
|
||||||
rcMargin = rcClient;
|
rcMargin = rcClient;
|
||||||
|
|
||||||
rcMargin.left += data->dlga->rtMargin.left * scalx;
|
rcMargin.left += pagesetup_get_margin_rect(data)->left * scalx;
|
||||||
rcMargin.top += data->dlga->rtMargin.top * scalx;
|
rcMargin.top += pagesetup_get_margin_rect(data)->top * scalx;
|
||||||
rcMargin.right -= data->dlga->rtMargin.right * scaly;
|
rcMargin.right -= pagesetup_get_margin_rect(data)->right * scaly;
|
||||||
rcMargin.bottom -= data->dlga->rtMargin.bottom * scaly;
|
rcMargin.bottom -= pagesetup_get_margin_rect(data)->bottom * scaly;
|
||||||
|
|
||||||
/* if the space is too small then we make sure to not draw anything */
|
/* if the space is too small then we make sure to not draw anything */
|
||||||
rcMargin.left = min(rcMargin.left, rcMargin.right);
|
rcMargin.left = min(rcMargin.left, rcMargin.right);
|
||||||
|
@ -3720,10 +3725,7 @@ PRINTDLG_PageDlgProcA(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
{
|
{
|
||||||
/* default is 1 inch */
|
/* default is 1 inch */
|
||||||
LONG size = thousandths_inch_to_size(data, 1000);
|
LONG size = thousandths_inch_to_size(data, 1000);
|
||||||
data->dlga->rtMargin.left = size;
|
SetRect(pagesetup_get_margin_rect(data), size, size, size, size);
|
||||||
data->dlga->rtMargin.top = size;
|
|
||||||
data->dlga->rtMargin.right = size;
|
|
||||||
data->dlga->rtMargin.bottom = size;
|
|
||||||
}
|
}
|
||||||
update_margin_edits(hDlg, data, 0);
|
update_margin_edits(hDlg, data, 0);
|
||||||
subclass_margin_edits(hDlg);
|
subclass_margin_edits(hDlg);
|
||||||
|
|
Loading…
Reference in New Issue