Merge branch 'master' into terencehill/music_player
authorTimePath <andrew.hardaker1995@gmail.com>
Wed, 17 Dec 2014 01:14:43 +0000 (12:14 +1100)
committerTimePath <andrew.hardaker1995@gmail.com>
Wed, 17 Dec 2014 01:29:22 +0000 (12:29 +1100)
Conflicts:
qcsrc/menu/classes.c
qcsrc/menu/xonotic/dialog_multiplayer.c

1  2 
defaultXonotic.cfg
qcsrc/menu/classes.c
qcsrc/menu/xonotic/dialog_multiplayer_media.c
qcsrc/menu/xonotic/dialog_multiplayer_media_musicplayer.c

Simple merge
  #include "xonotic/dialog_singleplayer_winner.c"
  #include "xonotic/dialog_credits.c"
  #include "xonotic/credits.c"
- #include "xonotic/dialog_multiplayer_playersetup_crosshair.c"
- #include "xonotic/dialog_multiplayer_playersetup_hud.c"
- #include "xonotic/dialog_multiplayer_playersetup_hudconfirm.c"
- #include "xonotic/dialog_multiplayer_playersetup_model.c"
- #include "xonotic/dialog_multiplayer_playersetup_view.c"
- #include "xonotic/dialog_multiplayer_playersetup_weapons.c"
+ #include "xonotic/dialog_settings_game_crosshair.c"
+ #include "xonotic/dialog_settings_game_hud.c"
+ #include "xonotic/dialog_settings_game_hudconfirm.c"
+ #include "xonotic/dialog_settings_game_model.c"
+ #include "xonotic/dialog_settings_game_messages.c"
+ #include "xonotic/dialog_settings_game_view.c"
+ #include "xonotic/dialog_settings_game_weapons.c"
  #include "xonotic/weaponslist.c"
- #include "xonotic/dialog_multiplayer_demo.c"
+ #include "xonotic/dialog_multiplayer_media.c"
+ #include "xonotic/dialog_multiplayer_media_demo.c"
+ #include "xonotic/dialog_multiplayer_media_demo_startconfirm.c"
+ #include "xonotic/dialog_multiplayer_media_demo_timeconfirm.c"
  #include "xonotic/demolist.c"
- #include "xonotic/dialog_multiplayer_musicplayer.c"
+ #include "xonotic/screenshotimage.c"
+ #include "xonotic/dialog_multiplayer_media_screenshot.c"
+ #include "xonotic/dialog_multiplayer_media_screenshot_viewer.c"
+ #include "xonotic/screenshotlist.c"
+ #include "xonotic/statslist.c"
++#include "xonotic/dialog_multiplayer_media_musicplayer.c"
 +#include "xonotic/soundlist.c"
 +#include "xonotic/playlist.c"
  #include "xonotic/colorpicker.c"
  #include "xonotic/colorpicker_string.c"
  #include "xonotic/cvarlist.c"
index 0000000,9c47ef5..a0b49b1
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,33 +1,34 @@@
 -      ATTRIB(XonoticMediaTab, title, string, _("Demo"))
+ #ifdef INTERFACE
+ CLASS(XonoticMediaTab) EXTENDS(XonoticTab)
+       METHOD(XonoticMediaTab, fill, void(entity))
 -      ATTRIB(XonoticMediaTab, columns, float, 2)
++      ATTRIB(XonoticMediaTab, title, string, _("Media"))
+       ATTRIB(XonoticMediaTab, intendedWidth, float, 0.9)
+       ATTRIB(XonoticMediaTab, rows, float, 23)
++      ATTRIB(XonoticMediaTab, columns, float, 3)
+       ATTRIB(XonoticMediaTab, name, string, "Media")  
+ ENDCLASS(XonoticMediaTab)
+ entity makeXonoticMediaTab();
+ #endif
+ #ifdef IMPLEMENTATION
+ entity makeXonoticMediaTab()
+ {
+       entity me;
+       me = spawnXonoticMediaTab();
+       me.configureDialog(me);
+       return me;
+ }
+ void XonoticMediaTab_fill(entity me)
+ {
+       entity mc, e;
+       mc = makeXonoticTabController(me.rows - 2);
+       me.gotoRC(me, 0.5, 0);
+               me.TD(me, 1, 1, e = mc.makeTabButton(mc, _("Demos"), makeXonoticDemoBrowserTab()));
+               me.TD(me, 1, 1, e = mc.makeTabButton(mc, _("Screenshots"), makeXonoticScreenshotBrowserTab()));
++              me.TD(me, 1, 1, e = mc.makeTabButton(mc, _("Music Player"), makeXonoticMusicPlayerTab()));
+       me.gotoRC(me, 3, 0);
+               me.TD(me, me.rows - 2, me.columns, mc);
+ }
+ #endif
index 0000000,0000000..68e40d5
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,87 @@@
++#ifdef INTERFACE
++CLASS(XonoticMusicPlayerTab) EXTENDS(XonoticTab)
++      METHOD(XonoticMusicPlayerTab, fill, void(entity))
++      ATTRIB(XonoticMusicPlayerTab, title, string, _("Music"))
++      ATTRIB(XonoticMusicPlayerTab, intendedWidth, float, 0.9)
++      ATTRIB(XonoticMusicPlayerTab, rows, float, 21)
++      ATTRIB(XonoticMusicPlayerTab, columns, float, 6.5)
++      ATTRIB(XonoticMusicPlayerTab, name, string, "MusicPlayer")
++ENDCLASS(XonoticMusicPlayerTab)
++entity makeXonoticMusicPlayerTab();
++#endif
++
++#ifdef IMPLEMENTATION
++entity makeXonoticMusicPlayerTab()
++{
++      entity me;
++      me = spawnXonoticMusicPlayerTab();
++      me.configureDialog(me);
++      return me;
++}
++void XonoticMusicPlayerTab_fill(entity me)
++{
++      entity e;
++      entity soundList, playList;
++      float columns_nospacing = (me.columns - 0.2);
++
++      me.TR(me);
++              me.TD(me, 1, 0.5, e = makeXonoticTextLabel(0, _("Filter:")));
++              me.TD(me, 1, 2.5, e = makeXonoticInputBox(0, string_null));
++                      soundList = makeXonoticSoundList();
++                      e.onChange = SoundList_Filter_Change;
++                      e.onChangeEntity = soundList;
++                      soundList.controlledTextbox = e;
++                      playList = makeXonoticPlayList();
++                      soundList.playlist = playList;
++
++      me.TR(me);
++              me.TD(me, me.rows - 4, columns_nospacing / 2, soundList);
++
++      me.gotoRC(me, me.rows - 3, 0);
++              me.TD(me, 1, columns_nospacing / 4, e = makeXonoticButton(ZCTX(_("MUSICPL^Add")), '0 0 0'));
++                      e.onClick = SoundList_Add;
++                      e.onClickEntity = soundList;
++              me.TD(me, 1, columns_nospacing / 4, e = makeXonoticButton(ZCTX(_("MUSICPL^Add all")), '0 0 0'));
++                      e.onClick = SoundList_Add_All;
++                      e.onClickEntity = soundList;
++      me.TR(me);
++              me.TD(me, 1, columns_nospacing / 2, e = makeXonoticButton(_("Set as menu track"), '0 0 0'));
++                      e.onClick = SoundList_Menu_Track_Change;
++                      e.onClickEntity = soundList;
++      me.TR(me);
++              me.TD(me, 1, columns_nospacing / 2, e = makeXonoticButton(_("Reset default menu track"), '0 0 0'));
++                      e.onClick = SoundList_Menu_Track_Reset;
++                      e.onClickEntity = soundList;
++      me.TR(me);
++      me.TR(me);
++      me.gotoRC(me, 0, columns_nospacing / 2 + 0.2); me.setFirstColumn(me, me.currentColumn);
++              me.TD(me, 1, columns_nospacing / 4, e = makeXonoticTextLabel(0, _("Playlist:")));
++              me.TD(me, 1, columns_nospacing / 4, e = makeXonoticCheckBox(0, "music_playlist_random0", _("Random order")));
++      me.TR(me);
++              me.TD(me, me.rows - 3, columns_nospacing / 2, playList);
++
++      me.gotoRC(me, me.rows - 2, columns_nospacing / 2 + 0.2);
++              me.TD(me, 1, columns_nospacing / 10, e = makeXonoticButton(ZCTX(_("MUSICPL^Stop")), '0 0 0'));
++                      e.onClick = StopSound_Click;
++                      e.onClickEntity = playList;
++              me.TD(me, 1, columns_nospacing / 10, e = makeXonoticButton(ZCTX(_("MUSICPL^Play")), '0 0 0'));
++                      e.onClick = StartSound_Click;
++                      e.onClickEntity = playList;
++              me.TD(me, 1, columns_nospacing / 10, e = makeXonoticButton(ZCTX(_("MUSICPL^Pause/Play")), '0 0 0'));
++                      e.onClick = PauseSound_Click;
++                      e.onClickEntity = playList;
++              me.TD(me, 1, columns_nospacing / 10, e = makeXonoticButton(ZCTX(_("MUSICPL^Prev")), '0 0 0'));
++                      e.onClick = PrevSound_Click;
++                      e.onClickEntity = playList;
++              me.TD(me, 1, columns_nospacing / 10, e = makeXonoticButton(ZCTX(_("MUSICPL^Next")), '0 0 0'));
++                      e.onClick = NextSound_Click;
++                      e.onClickEntity = playList;
++      me.TR(me);
++              me.TD(me, 1, columns_nospacing / 4, e = makeXonoticButton(ZCTX(_("MUSICPL^Remove")), '0 0 0'));
++                      e.onClick = PlayList_Remove;
++                      e.onClickEntity = playList;
++              me.TD(me, 1, columns_nospacing / 4, e = makeXonoticButton(ZCTX(_("MUSICPL^Remove all")), '0 0 0'));
++                      e.onClick = PlayList_Remove_All;
++                      e.onClickEntity = playList;
++}
++#endif