summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Meyer <james.meyer@operamail.com>2008-10-28 18:58:08 (GMT)
committerJames Meyer <james.meyer@operamail.com>2008-10-28 18:58:08 (GMT)
commit4c15ac9ff2959d902099498ba44169037d355cf2 (patch)
tree5858eaffe5e83c08dd2749990ceb4c4ffc9c11ee
parent333cc4f08c1039e47e0fdb5b816dfd8a1e15707d (diff)
downloadlinhes_pkgbuild-4c15ac9ff2959d902099498ba44169037d355cf2.zip
linhes_pkgbuild-4c15ac9ff2959d902099498ba44169037d355cf2.tar.gz
linhes_pkgbuild-4c15ac9ff2959d902099498ba44169037d355cf2.tar.bz2
Add main menu popup.
-about entry -reboot -shutdown Add jumpoint for mythsmolt
-rw-r--r--abs/core-testing/mythtv/stable/mythtv/PKGBUILD24
-rw-r--r--abs/core-testing/mythtv/stable/mythtv/myththemedmenu.cpp.patch125
-rw-r--r--abs/core-testing/mythtv/stable/mythtv/myththemedmenu.h.patch25
-rw-r--r--abs/core-testing/mythtv/stable/mythtv/smolt_jump.patch9
4 files changed, 173 insertions, 10 deletions
diff --git a/abs/core-testing/mythtv/stable/mythtv/PKGBUILD b/abs/core-testing/mythtv/stable/mythtv/PKGBUILD
index f72bf49..af6a718 100644
--- a/abs/core-testing/mythtv/stable/mythtv/PKGBUILD
+++ b/abs/core-testing/mythtv/stable/mythtv/PKGBUILD
@@ -1,21 +1,17 @@
-# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
-# Contributor: <kleptophobiac@gmail.com>
-# Contributor: dorphell <dorphell@archlinux.org>
-# Maintainer: Paul Mattal <paul@archlinux.org>
-
pkgname=mythtv
pkgver=0.21
-pkgrel=10
+pkgrel=14
pkgdesc="A Homebrew PVR project"
arch=('i686' 'x86_64')
depends=('bash' 'mysql-clients>=5.0' 'qt3' 'lame' 'lirc-utils' 'ffmpeg' \
'libxvmc')
backup=(etc/mythtv/mythbackend.conf etc/mythtv/mysql.txt)
source=(ftp://ftp.knoppmyth.net/R6/sources/${pkgname}-${pkgver}-fixes.tar.bz2 \
- mythbackend\
- QUICKSTART.archlinux)
-md5sums=('08506f0c5120c072085b6995f529167a' '7ef6de58240e7aad389a0b13d91b1cf6'\
- 'a0ecb7f476cb71c0c1ac90d349fc7695')
+ mythbackend myththemedmenu.cpp.patch myththemedmenu.h.patch smolt_jump.patch )
+
+#md5sums=('08506f0c5120c072085b6995f529167a' '7ef6de58240e7aad389a0b13d91b1cf6'\
+# 'a0ecb7f476cb71c0c1ac90d349fc7695')
+
license=('GPL2')
makedepends=(libgl subversion)
groups=('pvr')
@@ -24,6 +20,14 @@ install=mythtv.install
build() {
cd $startdir/src/${pkgname}-${pkgver} || return 1
+
+#apply patches
+ patch -p0 < ../myththemedmenu.cpp.patch
+ patch -p0 < ../myththemedmenu.h.patch
+# patch -p0 < ../pop_be_restart.h.patch
+# patch -p0 < ../pop_be_restart.cpp.patch
+ patch -p0 < ../smolt_jump.patch
+
. /etc/profile.d/qt3.sh
# use QT3 qmake
diff --git a/abs/core-testing/mythtv/stable/mythtv/myththemedmenu.cpp.patch b/abs/core-testing/mythtv/stable/mythtv/myththemedmenu.cpp.patch
new file mode 100644
index 0000000..3bc7a38
--- /dev/null
+++ b/abs/core-testing/mythtv/stable/mythtv/myththemedmenu.cpp.patch
@@ -0,0 +1,125 @@
+--- libs/libmythui/myththemedmenu.cpp.orig 2008-01-31 15:26:38.000000000 +0000
++++ libs/libmythui/myththemedmenu.cpp 2008-02-07 22:24:27.000000000 +0000
+@@ -2102,6 +2102,10 @@
+ }
+ lastbutton = NULL;
+ }
++ else if (action == "MENU")
++ {
++ parent->doMenu();
++ }
+ else if (action == "EJECT")
+ {
+ myth_eject();
+@@ -2482,6 +2486,8 @@
+
+ if (d->foundtheme)
+ d->parseMenu(menufile);
++
++ m_menuPopup = NULL;
+ }
+
+ MythThemedMenu::~MythThemedMenu(void)
+@@ -2592,3 +2598,102 @@
+ MythScreenType::aboutToShow();
+ d->updateLCD();
+ }
++void MythThemedMenu::doMenu()
++{
++ int allowsd = gContext->GetNumSetting("AllowQuitShutdown");
++ if (m_menuPopup)
++ return;
++ QString label = "System Menu";
++ MythScreenStack *mainStack = GetMythMainWindow()->GetMainStack();
++ m_menuPopup = new MythDialogBox(label, mainStack, "menuPopup");
++ if (m_menuPopup->Create())
++ mainStack->AddScreen(m_menuPopup);
++
++ //changed line to always show shutdown/reboot
++ if ( allowsd != 10 && allowsd !=14 )
++ {
++ m_menuPopup->SetReturnEvent(this,"popmenu_exit");
++ m_menuPopup->AddButton("Shutdown");
++ m_menuPopup->AddButton("Reboot");
++ m_menuPopup->AddButton("About");
++ m_menuPopup->AddButton("Cancel");
++ }
++ else
++ {
++ m_menuPopup->SetReturnEvent(this,"popmenu_noexit");
++ m_menuPopup->AddButton("About");
++ m_menuPopup->AddButton("Cancel");
++ }
++}
++
++void MythThemedMenu::aboutScreen()
++{
++{
++ extern const char *myth_source_version;
++ extern const char *myth_source_path;
++ QString distro_line;
++ distro_line="";
++
++ QFile file("/etc/os_myth_release");
++ if ( file.open(IO_ReadOnly | IO_Translate) )
++ {
++ QTextStream t( &file ); // use a text stream
++ distro_line = t.readLine();
++ file.close();
++ }
++
++ QString label = "";
++ label.append(QObject::tr("Revision: ") + myth_source_version + " \n Branch:" + myth_source_path + "\n" + distro_line );
++
++ MythScreenStack *mainStack = GetMythMainWindow()->GetMainStack();
++ m_menuPopup = new MythDialogBox(label, mainStack, "About");
++ if (m_menuPopup->Create())
++ mainStack->AddScreen(m_menuPopup);
++
++ m_menuPopup->SetReturnEvent(this,"About");
++ m_menuPopup->AddButton("OK!");
++ }
++}
++
++void MythThemedMenu::customEvent(QCustomEvent *event)
++{
++ if (event->type() == kMythDialogBoxCompletionEventType)
++ {
++ DialogCompletionEvent *dce =
++ dynamic_cast<DialogCompletionEvent*>(event);
++
++ QString resultid= dce->GetId();
++ int buttonnum = dce->GetResult();
++ if (resultid == "popmenu_exit")
++ {
++ if (buttonnum == 0)
++ {
++ QString halt_cmd = gContext->GetSetting("HaltCommand",
++ "sudo /sbin/halt -p");
++ if (!halt_cmd.isEmpty())
++ system(halt_cmd.ascii());
++ }
++
++ if (buttonnum == 1)
++ {
++ QString reboot_cmd = gContext->GetSetting("RebootCommand",
++ "sudo /sbin/reboot");
++ if (!reboot_cmd.isEmpty())
++ system(reboot_cmd.ascii());
++ }
++
++ if (buttonnum == 2)
++ {
++ aboutScreen();
++ }
++ }
++
++ if (resultid == "popmenu_noexit")
++ {
++ if (buttonnum == 0)
++ aboutScreen();
++ }
++
++ m_menuPopup = NULL;
++ }
++}
diff --git a/abs/core-testing/mythtv/stable/mythtv/myththemedmenu.h.patch b/abs/core-testing/mythtv/stable/mythtv/myththemedmenu.h.patch
new file mode 100644
index 0000000..9744b11
--- /dev/null
+++ b/abs/core-testing/mythtv/stable/mythtv/myththemedmenu.h.patch
@@ -0,0 +1,25 @@
+--- libs/libmythui/myththemedmenu.h.orig 2008-01-31 15:26:45.000000000 +0000
++++ libs/libmythui/myththemedmenu.h 2008-02-07 21:00:22.000000000 +0000
+@@ -2,6 +2,7 @@
+ #define MYTHTHEMEDMENU_H_
+
+ #include "mythscreentype.h"
++#include "mythdialogbox.h"
+
+ class MythMainWindow;
+ class MythThemedMenuPrivate;
+@@ -26,8 +27,14 @@
+
+ void ReloadTheme(void);
+ void ReloadExitKey(void);
++
+ virtual void aboutToShow(void);
+
++ void doMenu();
++ void aboutScreen();
++ MythDialogBox *m_menuPopup;
++ void customEvent(QCustomEvent *event);
++
+ protected:
+ virtual bool keyPressEvent(QKeyEvent *e);
+ virtual void gestureEvent(MythUIType *origtype, MythGestureEvent *ge);
diff --git a/abs/core-testing/mythtv/stable/mythtv/smolt_jump.patch b/abs/core-testing/mythtv/stable/mythtv/smolt_jump.patch
new file mode 100644
index 0000000..696be80
--- /dev/null
+++ b/abs/core-testing/mythtv/stable/mythtv/smolt_jump.patch
@@ -0,0 +1,9 @@
+--- programs/mythfrontend/networkcontrol.cpp.orig 2008-03-23 23:00:25.000000000 +0000
++++ programs/mythfrontend/networkcontrol.cpp 2008-03-23 23:01:33.000000000 +0000
+@@ -81,6 +81,7 @@
+ jumpMap["zoneminderliveview"] = "ZoneMinder Live View";
+ jumpMap["zoneminderevents"] = "ZoneMinder Events";
++ jumpMap["mythsmolt"] = "MythSmolt";
+
+ // These jump point names match the (lowercased) locations from gContext
+ jumpMap["channelrecpriority"] = "Channel Recording Priorities";