Никогда особо не увлекался базами данных, а тут приспичило, причем по работе. Надо создать портал для организации с элементами социальных сетей. С первого взгляда спроэктировать БД не трудно, но есть опасение, что могу спороть чушь. Либо медленно, либо не масштабируемо, либо что-то еще. Поэтому хотелось бы спросить у более опытных коллег, чтобы в последствии не наступить на грабли:
1. Есть ли информация, которую бы стоило почитать? (гуглил, не нашел)
2. Если есть какой-то личный опыт или советы - буду рад выслушать =)
Есть ГУИ приложение, к которому есть плагины. LoadPlugin добавляет QAction в меню приложения. Необходимо, чтобы по сигналу triggered() на QAction передавался дополнительный параметр в слот, хотя бы QString, либо была возможность узнать, какой QAction послал сигнал. Другими словами надо что-то типа такого:
До текущего дня не приходилось юзать динамическое подключение в Linux. Собственно поэтому прошу местных гуру помочь советом/примером.
Цель есть Qt4 приложение, в котором надо сделать расширяемость, т.е. расширение функциональной части за счет дополнительных библиотек (плагинов). Пусть есть какой-то API. Очень хотелось бы узнать как такое реализуется.
Имею ноутбук Acer Extensa 4220, в котором видеокарточка X3100 на 965 чипсете. BIOS показывает 8MB памяти, и не позволяет увеличить штатными средствами.
Собственно вопрос: имеется ли способ увеличить Video RAM? если да, то какие?
Очень интересно: есть ли на ЛОРе среди владельцов этого ноутбука те, кто смог завсети его на все 100%?
У кого что работает\не работает, было бы интересно узнать.
Купил себе такой вот девайс. Собственно говоя настраивать ноут ( в частности WiFi) еще никогда не приходилось. Поэтому решил послушать совета тех, кому уже приходилось настраивать этого зверя, а заодно узнать: какие могуть появиться проблемы в настройке.
Срочно нужно купить ноут до 15000 - 17000, на котором можно поднять линукс если не из коробки, то хотя бы с минимальными телодвижениями напильником.
От ноута требуется: обязательно WiFi, и RJ45 и аудио (микрофон и звук). Остальное не обязательно, но крайне желательно.
Есть несколько виджетов объединенных layout'ами. Layout'ы в свою очередь тоже сгруппированы. Допустим 2 layout'а с QTextEdit сгрупированы вертикально через сплитер.
При создании этого widget'a (dialog'a, etc...) размер обоих QTextEdit'ов равен и состовляет половину свободного пространства.
Как сделать так, чтобы не ограничивая размеров, по умолчанию ширина\высота одного составляла допустим 25%, а второго 75% ?
Собственно интересует вопрос: Есть ли у кого-нибудь такие телефоны и как их собственно можно подключить, ибо автоматом не подключается, приходится патчить ядро /drivers/usb/pl2303.c и заголовок соответсвенно. Даже при этом телефон можно использовать лишь как модем. BREW и OBEX не работают и приходится пользоваться оффтопиком.
Далее интересует вопрос: Кто-нибудь пытался подружить его с линуксом, то есть реально ли вместо прошивки залить в него линукс? На Сименсах, которые на S-Gold микросхеме народ нашел способ. Это же тело на QualComm 200Mhz. На allsiemens.com и siemens-club говорят - что нереально, но лично я не считаю эти ответы авторитетными ввиду обитающего там контингента. Если есть желающие помощь в "мучении" данного телефона - предлогаю объединить усилия.
Moderators: Просьба не удалять/перемещать топик. Он захватывает как хард, так и софт тематики.
Дабы не создавать велосипедов, решил сначала спросить:
как прочитать архив подаваемый через поток в С++ ?
Идея создать IconSet, для замены набора смайлов в клиенте в run-time.
Если в архиве один файл (тар не требуется) - то без проблем, как сжимается, так и разжимается.
А если есть папка с файлами (допустим их немного и размер не большой), т.е. требуется tar, как вытаскивать нужный файл из потока в котором tar-файл (unbunzip2 уже сделан)?
Буду рад услышать любые советы по реализации этого метода или идеи других алгоритмов. Заранее спасибо.
Не могу найти в интернете информатцию, о установке обработчиков UserFormatedText в RichText, который устанавливается в QTextEdit
Есть вот такой код:
static const int IconFormatType = QTextFormat::UserObject + 1;
//-------------------------------------------
// TextIconFormat
//-------------------------------------------
class TextIconFormat : public QTextCharFormat
{
public:
TextIconFormat(const QString &iconName, const QString &text);
enum Property {
IconName = QTextFormat::UserProperty + 1,
IconText = QTextFormat::UserProperty + 2
};
};
TextIconFormat::TextIconFormat(const QString &iconName, const QString &text) : QTextCharFormat()
{
Q_UNUSED(text);
setObjectType(IconFormatType);
QTextFormat::setProperty(IconName, iconName);
QTextFormat::setProperty(IconText, text);
}
//------------------------------------------------------
// IconTextObjectInterface
//------------------------------------------------------
class TextIconHandler : public QObject, public QTextObjectInterface
{
//Q_OBJECT
Q_INTERFACES(QTextObjectInterface)
public:
TextIconHandler(QObject *parent = 0);
virtual QSizeF intrinsicSize(QTextDocument *doc, int posInDocument, const QTextFormat &format);
virtual void drawObject(QPainter *painter, const QRectF &rect, QTextDocument *doc, int posInDocument, const QTextFormat &format);
};
TextIconHandler::TextIconHandler(QObject *parent) : QObject(parent)
{
}
QSizeF TextIconHandler::intrinsicSize(QTextDocument *doc, int posInDocument, const QTextFormat &format)
{
Q_UNUSED(doc);
Q_UNUSED(posInDocument)
const QTextCharFormat charFormat = format.toCharFormat();
return IconsetFactory::instance()->iconPixmap(charFormat.stringProperty(TextIconFormat
::IconName)).size();
}
void TextIconHandler::drawObject(QPainter *painter, const QRectF &rect, QTextDocument *doc, int posInDocument, const QTextFormat &format)
{
qDebug() << "drawObject";
Q_UNUSED(doc);
Q_UNUSED(posInDocument);
const QTextCharFormat charFormat = format.toCharFormat();
const QPixmap pixmap = IconsetFactory::instance()->iconPixmap(charFormat.stringProperty(TextIconFormat
::IconName));
painter->drawPixmap(rect, pixmap, pixmap.rect());
}
//------------------------------------------------
// StilRichText
//------------------------------------------------
void StilRichText::install(QTextDocument *doc)
{
Q_ASSERT(doc);
static TextIconHandler *handler = 0;
if (!handler) handler = new TextIconHandler(qApp);
doc->documentLayout()->registerHandler(IconFormatType, handler);
}
остальная часть кода ИМХО маловажна. Основное назначение - следующее: замена текста на графику, точнее смайлы.
Функция install проходит, обработчик создается, регистрируется.
Но просмотреть дебугером (gdb, ddd) что происходит внутри Qt - не возможно, ибо скомпилино без "debug".
Фунции обработчика drawObject и intrinsicSize не вызываются вообще.
Есть подозрение, что какой-то текст он не считает IconFormatType, тогда как заставить его считать его именно таким?
А может не в этом дело...
Может кто-то сталкивался с подобной проблемой? или знает как решить. Буду благодарен за любую информацию относительно сабжа. Ах, да Qt 4.3
Доброго времени суток! Не могу найти достаточно внятной информации по так называемых - "умным" указателям, как их окрестил какой-то автор. Но это пол беды. Вторая половина беды - заключается в том, что g++ не компилирует такой код, с "умными" указателями.