1 #ifndef DIALOG_MULTIPLAYER_MEDIA_SCREENSHOT_H
2 #define DIALOG_MULTIPLAYER_MEDIA_SCREENSHOT_H
4 CLASS(XonoticScreenshotBrowserTab, XonoticTab)
5 METHOD(XonoticScreenshotBrowserTab, fill, void(entity))
6 ATTRIB(XonoticScreenshotBrowserTab, intendedWidth, float, 1)
7 ATTRIB(XonoticScreenshotBrowserTab, rows, float, 21)
8 ATTRIB(XonoticScreenshotBrowserTab, columns, float, 6.5)
9 ATTRIB(XonoticScreenshotBrowserTab, name, string, "ScreenshotBrowser")
11 METHOD(XonoticScreenshotBrowserTab, loadPreviewScreenshot, void(entity, string))
12 ATTRIB(XonoticScreenshotBrowserTab, screenshotImage, entity, NULL)
13 ATTRIB(XonoticScreenshotBrowserTab, currentScrPath, string, string_null)
14 ENDCLASS(XonoticScreenshotBrowserTab)
15 entity makeXonoticScreenshotBrowserTab();
19 entity makeXonoticScreenshotBrowserTab()
22 me = NEW(XonoticScreenshotBrowserTab);
23 me.configureDialog(me);
26 void XonoticScreenshotBrowserTab_loadPreviewScreenshot(entity me, string scrImage)
28 if (me.currentScrPath == scrImage)
30 if (me.currentScrPath)
31 strunzone(me.currentScrPath);
32 me.currentScrPath = strzone(scrImage);
33 me.screenshotImage.load(me.screenshotImage, me.currentScrPath);
35 void XonoticScreenshotBrowserTab_fill(entity me)
38 slist = makeXonoticScreenshotList();
39 float slist_height = me.rows - 2;
43 me.TD(me, 1, 0.6, e = makeXonoticTextLabel(1, _("Filter:")));
44 me.TD(me, 1, 2.4, e = makeXonoticInputBox(0, string_null));
45 e.onChange = ScreenshotList_Filter_Would_Change;
46 e.onChangeEntity = slist;
47 slist.screenshotViewerDialog = main.screenshotViewerDialog;
48 main.screenshotViewerDialog.scrList = slist;
50 me.gotoRC(me, 0, 3.1);
51 me.TD(me, 1, 1.9, e = makeXonoticCheckBoxEx(2, 1, "cl_autoscreenshot", _("Auto screenshot scoreboard")));
52 me.TD(me, 1, 1, e = makeXonoticButton(_("Refresh"), '0 0 0'));
53 e.onClick = ScreenshotList_Refresh_Click;
54 e.onClickEntity = slist;
57 me.TD(me, 1, 0.5, e = makeXonoticTextLabel(0, "Filter:"));
58 me.TD(me, 1, me.columns - 1.5, e = makeXonoticInputBox(0, string_null));
59 e.onChange = ScreenshotList_Filter_Would_Change;
60 e.onChangeEntity = slist;
61 slist.screenshotViewerDialog = main.screenshotViewerDialog;
62 main.screenshotViewerDialog.scrList = slist;
63 me.TD(me, 1, 1, e = makeXonoticButton(_("Refresh"), '0 0 0'));
64 e.onClick = ScreenshotList_Refresh_Click;
65 e.onClickEntity = slist;*/
67 me.gotoRC(me, 1.5, 0);
68 me.TD(me, me.rows - 2.5, me.columns, slist);
70 me.gotoRC(me, slist_height + 1, 0);
71 me.TD(me, 1, me.columns, e = makeXonoticButton(_("Open in the viewer"), '0 0 0'));
72 e.onClick = StartScreenshot_Click;
73 e.onClickEntity = slist;
76 me.TD(me, me.rows - me.currentRow, me.columns, e = makeXonoticScreenshotImage());
78 me.screenshotImage = e;
79 slist.screenshotPreview = e;
80 slist.screenshotBrowserDialog = me;