</layout>
</item>
<item>
- <spacer name="verticalSpacer">
- <property name="orientation">
- <enum>Qt::Vertical</enum>
- </property>
- <property name="sizeType">
- <enum>QSizePolicy::Fixed</enum>
- </property>
- <property name="sizeHint" stdset="0">
+ <widget class="QFrame" name="frame_2">
+ <property name="maximumSize">
<size>
- <width>20</width>
- <height>3</height>
+ <width>16777215</width>
+ <height>2</height>
</size>
</property>
- </spacer>
+ <property name="frameShape">
+ <enum>QFrame::HLine</enum>
+ </property>
+ <property name="frameShadow">
+ <enum>QFrame::Sunken</enum>
+ </property>
+ <property name="lineWidth">
+ <number>1</number>
+ </property>
+ </widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_4">
</property>
<property name="icon">
<iconset resource="../res/Icons.qrc">
- <normaloff>:/icons/door_out.png</normaloff>:/icons/door_out.png</iconset>
+ <normaloff>:/icons/door_in.png</normaloff>:/icons/door_in.png</iconset>
</property>
</widget>
</item>
<bool>true</bool>
</property>
<property name="icon">
- <iconset resource="../res/Flags.qrc">
+ <iconset>
<normaloff>:/flags/gb.png</normaloff>:/flags/gb.png</iconset>
</property>
<property name="text">
<include location="../res/Images.qrc"/>
<include location="../res/Icons.qrc"/>
<include location="../res/Images.qrc"/>
+ <include location="../res/Icons.qrc"/>
+ <include location="../res/Images.qrc"/>
+ <include location="../res/Icons.qrc"/>
+ <include location="../res/Images.qrc"/>
</resources>
<connections>
<connection>
<file>icons/delete.png</file>
<file>icons/disk.png</file>
<file>icons/door_out.png</file>
+ <file>icons/door_in.png</file>
<file>icons/drive_cd.png</file>
<file>icons/exclamation.png</file>
<file>icons/error.png</file>
#define VER_LAMEXP_MAJOR 4
#define VER_LAMEXP_MINOR_HI 0
#define VER_LAMEXP_MINOR_LO 0
-#define VER_LAMEXP_BUILD 213
+#define VER_LAMEXP_BUILD 215
#define VER_LAMEXP_SUFFIX TechPreview
/*
moreAboutText += LINK("http://www.ac3filter.net/projects/tools");
moreAboutText += "<div style=\"font-size:1pt\"><br></div>";
- moreAboutText += VSTR(QString("<li><b>%1 (%2)</b><br>").arg(tr("MediaInfo - Media File Analysis Tool")), "mediainfo_i386.exe", "v?.?.?");
+ moreAboutText += VSTR(QString("<li><b>%1 (%2)</b><br>").arg(tr("MediaInfo - Media File Analysis Tool")), "mediainfo_i386.exe", "v?.?.??");
moreAboutText += QString("<nobr>%1</nobr><br>").arg(tr("Released under the terms of the GNU Leser General Public License."));
moreAboutText += LINK("http://mediainfo.sourceforge.net/");
moreAboutText += "<div style=\"font-size:1pt\"><br></div>";
#define TEMP_HIDE_DROPBOX(CMD) { bool __dropBoxVisible = m_dropBox->isVisible(); if(__dropBoxVisible) m_dropBox->hide(); CMD; if(__dropBoxVisible) m_dropBox->show(); }
//Helper class
-class Index: public QObjectUserData
-{
-public:
- Index(int index) { m_index = index; }
- int value(void) { return m_index; }
-private:
- int m_index;
-};
+//class Index: public QObjectUserData
+//{
+//public:
+// Index(int index) { m_index = index; }
+// int value(void) { return m_index; }
+//private:
+// int m_index;
+//};
////////////////////////////////////////////////////////////
// Constructor
m_tabActionGroup->addAction(actionCompression);
m_tabActionGroup->addAction(actionMetaData);
m_tabActionGroup->addAction(actionAdvancedOptions);
- actionSourceFiles->setUserData(0, new Index(0));
- actionOutputDirectory->setUserData(0, new Index(1));
- actionMetaData->setUserData(0, new Index(2));
- actionCompression->setUserData(0, new Index(3));
- actionAdvancedOptions->setUserData(0, new Index(4));
+ actionSourceFiles->setData(0);
+ actionOutputDirectory->setData(1);
+ actionMetaData->setData(2);
+ actionCompression->setData(3);
+ actionAdvancedOptions->setData(4);
actionSourceFiles->setChecked(true);
connect(m_tabActionGroup, SIGNAL(triggered(QAction*)), this, SLOT(tabActionActivated(QAction*)));
m_styleActionGroup->addAction(actionStyleWindowsVista);
m_styleActionGroup->addAction(actionStyleWindowsXP);
m_styleActionGroup->addAction(actionStyleWindowsClassic);
- actionStylePlastique->setUserData(0, new Index(0));
- actionStyleCleanlooks->setUserData(0, new Index(1));
- actionStyleWindowsVista->setUserData(0, new Index(2));
- actionStyleWindowsXP->setUserData(0, new Index(3));
- actionStyleWindowsClassic->setUserData(0, new Index(4));
+ actionStylePlastique->setData(0);
+ actionStyleCleanlooks->setData(1);
+ actionStyleWindowsVista->setData(2);
+ actionStyleWindowsXP->setData(3);
+ actionStyleWindowsClassic->setData(4);
actionStylePlastique->setChecked(true);
actionStyleWindowsXP->setEnabled((QSysInfo::windowsVersion() & QSysInfo::WV_NT_based) >= QSysInfo::WV_XP && lamexp_themes_enabled());
actionStyleWindowsVista->setEnabled((QSysInfo::windowsVersion() & QSysInfo::WV_NT_based) >= QSysInfo::WV_VISTA && lamexp_themes_enabled());
if(m_fileListModel->rowCount() < 1)
{
- QMessageBox::warning(this, tr("LameXP"), tr("You must add at least one file to the list before proceeding!"));
+ QMessageBox::warning(this, tr("LameXP"), QString("<nobr>%1</nobr>").arg(tr("You must add at least one file to the list before proceeding!")));
tabWidget->setCurrentIndex(0);
return;
}
QList<QAction*> actions = m_tabActionGroup->actions();
for(int i = 0; i < actions.count(); i++)
{
- if(actions.at(i)->userData(0) && dynamic_cast<Index*>(actions.at(i)->userData(0))->value() == idx)
+ bool ok = false;
+ int actionIndex = actions.at(i)->data().toInt(&ok);
+ if(ok && actionIndex == idx)
{
actions.at(i)->setChecked(true);
}
*/
void MainWindow::tabActionActivated(QAction *action)
{
- if(action && action->userData(0))
+ if(action && action->data().isValid())
{
- int index = dynamic_cast<Index*>(action->userData(0))->value();
- tabWidget->setCurrentIndex(index);
+ bool ok = false;
+ int index = action->data().toInt(&ok);
+ if(ok)
+ {
+ tabWidget->setCurrentIndex(index);
+ }
}
}
*/
void MainWindow::styleActionActivated(QAction *action)
{
- if(action && action->userData(0))
+ if(action && action->data().isValid())
{
- m_settings->interfaceStyle(dynamic_cast<Index*>(action->userData(0))->value());
+ bool ok = false;
+ int actionIndex = action->data().toInt(&ok);
+ m_settings->interfaceStyle(actionIndex);
}
switch(m_settings->interfaceStyle())
*/
static bool lamexp_check_elevation(void)
{
- typedef enum { lamexp_token_elevation_class = 20 };
- typedef struct { DWORD TokenIsElevated; } LAMEXP_TOKEN_ELEVATION;
+ typedef enum { lamexp_token_elevationType_class = 18, lamexp_token_elevation_class = 20 } LAMEXP_TOKEN_INFORMATION_CLASS;
+ typedef enum { lamexp_elevationType_default = 1, lamexp_elevationType_full, lamexp_elevationType_limited } LAMEXP_TOKEN_ELEVATION_TYPE;
HANDLE hToken = NULL;
bool bIsProcessElevated = false;
if(OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &hToken))
{
- LAMEXP_TOKEN_ELEVATION tokenElevation;
+ LAMEXP_TOKEN_ELEVATION_TYPE tokenElevationType;
DWORD returnLength;
- if(GetTokenInformation(hToken, (TOKEN_INFORMATION_CLASS) lamexp_token_elevation_class, &tokenElevation, sizeof(LAMEXP_TOKEN_ELEVATION), &returnLength))
+ if(GetTokenInformation(hToken, (TOKEN_INFORMATION_CLASS) lamexp_token_elevationType_class, &tokenElevationType, sizeof(LAMEXP_TOKEN_ELEVATION_TYPE), &returnLength))
{
- if(returnLength == sizeof(LAMEXP_TOKEN_ELEVATION) && tokenElevation.TokenIsElevated != 0)
+ if(returnLength == sizeof(LAMEXP_TOKEN_ELEVATION_TYPE))
{
- qWarning("Process token is elevated -> potential security risk!\n");
- bIsProcessElevated = true;
+ switch(tokenElevationType)
+ {
+ case lamexp_elevationType_default:
+ qDebug("Process token elevation type: Default -> UAC is disabled.\n");
+ break;
+ case lamexp_elevationType_full:
+ qWarning("Process token elevation type: Full -> potential security risk!\n");
+ bIsProcessElevated = true;
+ break;
+ case lamexp_elevationType_limited:
+ qDebug("Process token elevation type: Limited -> not elevated.\n");
+ break;
+ }
}
}
CloseHandle(hToken);