1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145
|
/*
*
*
* Copyright (C) 2008, 2010, 2011 Benjamin Scott <benscott@nwlink.com>
*
* This file is part of the kvpm project.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License, version 3, as
* published by the Free Software Foundation.
*
* See the file "COPYING" for the exact licensing terms.
*/
#include "misc.h"
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <errno.h>
#include <KPushButton>
#include <QtGui>
NoMungeCheck::NoMungeCheck(const QString text, QWidget *parent) : QCheckBox(text, parent)
{
m_unmunged_text = text;
}
QString NoMungeCheck::getAlternateText()
{
return m_alternate_text;
}
QStringList NoMungeCheck::getAlternateTextList()
{
return m_alternate_text_list;
}
QString NoMungeCheck::getUnmungedText()
{
return m_unmunged_text;
}
void NoMungeCheck::setAlternateText(QString alternateText)
{
m_alternate_text = alternateText;
}
void NoMungeCheck::setAlternateTextList(QStringList alternateTextList)
{
m_alternate_text_list = alternateTextList;
}
void NoMungeCheck::setData(QVariant data)
{
m_data = data;
}
QVariant NoMungeCheck::getData()
{
return m_data;
}
NoMungeRadioButton::NoMungeRadioButton(const QString text, QWidget *parent) : QRadioButton(text, parent)
{
m_unmunged_text = text;
}
QString NoMungeRadioButton::getAlternateText()
{
return m_alternate_text;
}
QString NoMungeRadioButton::getUnmungedText()
{
return m_unmunged_text;
}
void NoMungeRadioButton::setAlternateText(QString alternateText)
{
m_alternate_text = alternateText;
}
void NoMungeRadioButton::setData(QVariant data)
{
m_data = data;
}
QVariant NoMungeRadioButton::getData()
{
return m_data;
}
QStringList splitUuid(QString const uuid) // Turns a one line uuid into two shorter lines for veiwing
{
int split_index = 0;
if( uuid.count('-') < 4 ){
return QStringList(uuid) << "";
}
else if( uuid.count('-') < 5 ){
for(int x = 0; x < 4; x++)
split_index = uuid.indexOf('-', split_index + 1);
}
else{
for(int x = 0; x < 5; x++)
split_index = uuid.indexOf('-', split_index + 1);
}
if( split_index <= 0)
split_index = uuid.size() - 1;
QString const uuid_start = uuid.left(split_index + 1);
QString const uuid_end = uuid.right((uuid.size() - split_index) - 1);
return QStringList(uuid_start) << uuid_end;
}
// Checks to see if a device is busy on linux 2.6+
bool isBusy(const QString device)
{
struct stat st_buf;
int fd;
QByteArray dev_qba = device.toLocal8Bit();
if (stat(dev_qba.data(), &st_buf) != 0)
return false;
fd = open(dev_qba.data(), O_RDONLY | O_EXCL);
if (fd < 0) {
if (errno == EBUSY)
return true;
}
else
close(fd);
return false;
}
|