#define ED_STICKYBUTTON_YPOS (ED_BUTTON_MINUS_YPOS + 66)
/* values for some special graphic buttons */
-#define ED_BUTTON_ELEM_XPOS 6
-#define ED_BUTTON_ELEM_YPOS 30
-#define ED_BUTTON_ELEM_XSIZE 22
-#define ED_BUTTON_ELEM_YSIZE 22
-
+#define ED_COPY_CHANGE_PAGE_XPOS 25
+#define ED_COPY_CHANGE_PAGE_YPOS 50
+#define ED_PASTE_CHANGE_PAGE_XPOS 25
+#define ED_PASTE_CHANGE_PAGE_YPOS 70
/* some values for text input, selectbox and counter gadgets */
#define ED_BUTTON_COUNT_YPOS 60
},
{
-1, ED_SETTINGS_YPOS(14),
- GADGET_ID_ADD_CHANGE_PAGE, GADGET_ID_NEXT_CHANGE_PAGE,
+ GADGET_ID_ADD_CHANGE_PAGE, GADGET_ID_PASTE_CHANGE_PAGE,
-1, "New",
- " ", NULL, "Add new change page"
+ NULL, NULL, "Add new change page"
},
{
-1, ED_SETTINGS_YPOS(14),
NULL, "change page", "select next change page"
},
{
- ED_BUTTON_PLUS_XPOS, ED_BUTTON_COUNT_YPOS,
+ ED_COPY_CHANGE_PAGE_XPOS, ED_COPY_CHANGE_PAGE_YPOS,
-1, ED_SETTINGS_YPOS(14),
ED_BUTTON_COUNT_XSIZE, ED_BUTTON_COUNT_YSIZE,
- GADGET_ID_NEXT_CHANGE_PAGE, GADGET_ID_SELECT_CHANGE_PAGE,
- NULL, NULL, "copy settings from this change page"
+ GADGET_ID_COPY_CHANGE_PAGE, GADGET_ID_NEXT_CHANGE_PAGE,
+ " ", NULL, "copy settings from this change page"
},
{
- ED_BUTTON_PLUS_XPOS, ED_BUTTON_COUNT_YPOS,
+ ED_PASTE_CHANGE_PAGE_XPOS, ED_PASTE_CHANGE_PAGE_YPOS,
-1, ED_SETTINGS_YPOS(14),
ED_BUTTON_COUNT_XSIZE, ED_BUTTON_COUNT_YSIZE,
- GADGET_ID_NEXT_CHANGE_PAGE, GADGET_ID_SELECT_CHANGE_PAGE,
+ GADGET_ID_PASTE_CHANGE_PAGE, GADGET_ID_COPY_CHANGE_PAGE,
NULL, NULL, "paste settings to this change page"
},
};
event_mask = GD_EVENT_PRESSED | GD_EVENT_REPEATED;
- gd_x1 = DOOR_GFX_PAGEX4 + graphicbutton_info[i].gd_x;
- gd_x2 = DOOR_GFX_PAGEX3 + graphicbutton_info[i].gd_x;
- gd_y1 = DOOR_GFX_PAGEY1 + graphicbutton_info[i].gd_y;
- gd_y2 = gd_y1;
+ if (i <= ED_GRAPHICBUTTON_ID_NEXT_CHANGE_PAGE)
+ {
+ gd_x1 = DOOR_GFX_PAGEX4 + graphicbutton_info[i].gd_x;
+ gd_y1 = DOOR_GFX_PAGEY1 + graphicbutton_info[i].gd_y;
+ gd_x2 = DOOR_GFX_PAGEX3 + graphicbutton_info[i].gd_x;
+ gd_y2 = gd_y1;
+ }
+ else /* (i <= ED_GRAPHICBUTTON_ID_PASTE_CHANGE_PAGE) */
+ {
+ gd_x1 = DOOR_GFX_PAGEX6 + graphicbutton_info[i].gd_x;
+ gd_y1 = DOOR_GFX_PAGEY1 + graphicbutton_info[i].gd_y;
+ gd_x2 = gd_x1 - ED_BUTTON_COUNT_XSIZE;
+ gd_y2 = gd_y1;
+ }
/* determine horizontal position to the right of specified gadget */
if (graphicbutton_info[i].gadget_id_align != GADGET_ID_NONE)
DrawPropertiesWindow();
}
+ else if (type_id == ED_GRAPHICBUTTON_ID_COPY_CHANGE_PAGE ||
+ type_id == ED_GRAPHICBUTTON_ID_PASTE_CHANGE_PAGE)
+ {
+ struct ElementInfo *ei = &element_info[properties_element];
+ int current_change_page = ei->current_change_page;
+
+ if (type_id == ED_GRAPHICBUTTON_ID_COPY_CHANGE_PAGE)
+ element_info[EL_INTERNAL_CLIPBOARD_CHANGE].change_page[0] =
+ ei->change_page[current_change_page];
+ else if (type_id == ED_GRAPHICBUTTON_ID_PASTE_CHANGE_PAGE)
+ ei->change_page[current_change_page] =
+ element_info[EL_INTERNAL_CLIPBOARD_CHANGE].change_page[0];
+
+ DrawPropertiesWindow();
+ }
}
static void HandleRadiobuttons(struct GadgetInfo *gi)
#define VIDEO_FFWD_LABEL_XSIZE VIDEO_LABEL_XSIZE
#define VIDEO_FFWD_LABEL_YSIZE VIDEO_LABEL_YSIZE
#define VIDEO_FFWD_SYMBOL_XPOS VIDEO_SYMBOL_XPOS
-#define VIDEO_FFWD_SYMBOL_YPOS 126
+#define VIDEO_FFWD_SYMBOL_YPOS 193
#define VIDEO_FFWD_SYMBOL_XSIZE 27
#define VIDEO_FFWD_SYMBOL_YSIZE VIDEO_SYMBOL_YSIZE
#define VIDEO_PBEND_LABEL_XSIZE VIDEO_LABEL_XSIZE
#define VIDEO_PBEND_LABEL_YSIZE VIDEO_LABEL_YSIZE
#define VIDEO_PBEND_SYMBOL_XPOS VIDEO_SYMBOL_XPOS
-#define VIDEO_PBEND_SYMBOL_YPOS 126
+#define VIDEO_PBEND_SYMBOL_YPOS 221
#define VIDEO_PBEND_SYMBOL_XSIZE 27
#define VIDEO_PBEND_SYMBOL_YSIZE VIDEO_SYMBOL_YSIZE
#define VIDEO_WARP_LABEL_XSIZE VIDEO_LABEL_XSIZE
#define VIDEO_WARP_LABEL_YSIZE VIDEO_LABEL_YSIZE
#define VIDEO_WARP_SYMBOL_XPOS VIDEO_SYMBOL_XPOS
-#define VIDEO_WARP_SYMBOL_YPOS 152
+#define VIDEO_WARP_SYMBOL_YPOS 165
#define VIDEO_WARP_SYMBOL_XSIZE 27
#define VIDEO_WARP_SYMBOL_YSIZE VIDEO_SYMBOL_YSIZE
#define VIDEO_WARP2_SYMBOL_XPOS VIDEO_SYMBOL_XPOS
-#define VIDEO_WARP2_SYMBOL_YPOS 139
+#define VIDEO_WARP2_SYMBOL_YPOS 152
#define VIDEO_WARP2_SYMBOL_XSIZE 27
#define VIDEO_WARP2_SYMBOL_YSIZE VIDEO_SYMBOL_YSIZE
#define VIDEO_1STEP_SYMBOL_XPOS (VIDEO_SYMBOL_XPOS + 18)
-#define VIDEO_1STEP_SYMBOL_YPOS 113
+#define VIDEO_1STEP_SYMBOL_YPOS 139
#define VIDEO_1STEP_SYMBOL_XSIZE (VIDEO_SYMBOL_XSIZE - 18)
#define VIDEO_1STEP_SYMBOL_YSIZE VIDEO_SYMBOL_YSIZE