You are not logged in.
I am digging threw freedesktop.org.xml and I am seeing mimetype entry's for things like "Quattro Pro spreadsheet"
Have to wikipedia that one.
Quattro Pro is a spreadsheet program developed by Borland and now sold by Corel, most often as part of Corel's WordPerfect Office.
And I am also seeing the same mimetype icon used for like 30 different entry's, x-office-generic.
and stuff like this for filetype patterns
<glob pattern="*.wb1"/>
<glob pattern="*.wb2"/>
<glob pattern="*.wb3"/>
I understand why they did things like the above but honestly I would assume that a
streamline approach would be better than a kitchen sink approach.
For instance I wouldn't have any non-native mimetypes.
Every mimetype for the most part would have its own icon
And instead of <glod pattern="*.wb1"/>... I would simply <pattern value="wb1, wb2, wb3"/>
and do a string spit on the result. And you don't need wildcards for extensions. Just about every programming language
or framework provides a function to get a strings suffix.
You might be thinking who cares if there are a bunch of obscure mimetypes in the freedesktop.org.xml file.
Well it makes a big difference and really depends on if your using Sax or Dom to parse the file. One is slower at parsing and uses less memory
and the other is faster at parsing but uses more memory.
Those little things add up. And when your freedesktop.org.xml is 1mb or larger
that's going to make a difference on how responsive whatever application is that uses that file, like your desktop, filemanager,
open, save - file and directory dialogs. Your media player.... etc.
The situation only gets worse when you have multiple applications opening at once that all use that same freedesktop.org.xml file.
Example: Session support when you restart your system and your desktop loads and starts all the previous applications you were working with in the last session.
Last edited by zester (2011-09-13 20:58:28)
Offline
Well we have a new library in the workings called QMimeType
It's MIT Licensed
In order to use the QMimeType library you need to ....
Build and Install it.
Add #include "qmimetype.h" in your source code
and
LIBS += -L/usr/lib -lQMimeType to .pro
Example:
#include <QtXml>
#include <QDebug>
#include "qmimetype.h"
int main(int argc, char *argv[])
{
QMimeType *mimeData = new QMimeType("shared-mime-info.xml");
mimeData->setByName("example.pdf");
qDebug() << mimeData->type();
qDebug() << mimeData->summery();
qDebug() << mimeData->description();
qDebug() << mimeData->icon();
qDebug() << mimeData->pattern();
qDebug() << mimeData->application();
return 0;
}
Output:
-----------------------------------------------
"application/pdf"
"PDF Document"
"Portable Document Format"
"application-pdf"
"pdf"
"okular"
The basic features of this library are working so now I can replace my current code in QDesktop that deals with mimetype's
freeing QDesktop of anymore GPL code. And hopefully get QDesktop usable for everyday use.
Last edited by zester (2011-09-14 03:23:26)
Offline
qDebug() << mimeData->summery();
I'd say that would be
summary()
... or is that
isWeatherSummery()
?
Offline
zester wrote:qDebug() << mimeData->summery();
I'd say that would be
summary()
... or is that
isWeatherSummery()
?
Crap lol I do that with get and git also ..... get add --all WTF why isn't it working!!!!!! F$%^ you linus, ohhhh whoops its git lol
Offline
stealthy wrote:Hey zester I'm gonna work on mate-desktop-environment, sorry.
What an odd comment to make, I wasn't aware that you were even working on this project.
Anyways good luck to you.
Nah its not odd, I was gonna work on this, but then I saw MDE, nothing personal.
clipodder-git A small simple cron-friendly podcast downloader, with support for arbitrary user defined media types (pdf, html, etc...)
Offline
There is now a Composite Manager called QCompositeManager in the repo and
a QML based Desklets example, seen below.
Desklets are like Bell Bottoms they never go out of style, in second thought. lol
Anyways I will be adding a few different types of desklets including C++ and Html/Css/JavaScript Based.
And eventually a Desklet Manager like SuperKaramba.
In order to use the example that you see below you will need to eather have your own Composite Manager
or use QCompositeManager.
Last edited by zester (2011-09-15 11:16:39)
Offline
Did some work on the Desktop Menu, particularly in setting desktop
icon size.
Offline
A composite manager? Sweet! Man, I really need to install the whole Quantum desktop and start playing around with it. But this weekend is for brewing beer. Hopefully next weekend.
Still, thanks for the hard work and glad to see you've picked up a few other developers. My free time should be increasing a bit in about a month so hopefully I can start poking around and learning by creating some of the simpler apps you guys are leaving for us inexperienced folk. I'm thinking of starting very simply with a QT leafpad clone but we'll see what happens in the next month.
Offline
Showing and Hiding Desktop Icons is now complete. When you hide your
desktop icons there not actual hidden there removed from the view and
the memory that they used is freed. And your settings are saved to the
desktops config file.
Desklets also have the capability to be rotated or resized like with kde plasma.
Offline
Added a new feature to QDesktop you can set your Desktop Icons or Menus to be Right or Left Handed and
started working on the QDesktopSettings so you can change your wallpaper and settings visually.
Ill update the repo later tonight.
Offline
Added thumbnails to QDesktopSettings Combobox, here is what the Desktop currently looks like, all from scratch in less than
30 days. There is still alot more work to do before I move on the the next Desktop but in my opinion not bad, not bad at all
Before using QDesktopSettings make sure you have a Pictures directory in your Home directory that
contain the wallpapers you would like to use. Thats where QDesktopSettings will look for your wallpapers.
And read QDesktops readme.
Offline
Beware I am about to RANT!!!!!!
Ok say you want to I don't know install a package using libalpm well naturally you need root privileges to do this and
AFAIK there is no C/C++ api for SUDO and setuid() and getuid() is disabled in just about every modern distro.
The answer everyone seams to be given to this problem is to use sudo via QProcess. Any time you rely on the shell
as a programmable function, that's just a dirty hack!
The next option is Policykit(polkit) first off it brings in Gtk dependencies, second there is nothing strait forward about
using it. It has a horrible api, Documents are entirely gobject based. GObject is huge pile of steaming dog SH#$.
Not to mention this is what polkit has to say about mounting removable filesystems..
Mounting removable filesystems, CDs, USB devices, and the like, is a classic example of a root-only task that some non-privileged users might be allowed to perform.
Ok sure in a Server environment, but not for a normal user!!!! and even in the case of a Server there wouldn't even be (shouldn't be) those types of devices attached in the first
place unless your doing some form of maintenance.
For god sakes this is what Permissions, and ACL's are for.
And even if a hacker was able to gain control of your user account well your totally screwed anyways. There is nothing polkit is going to be able to help you with.
Last edited by zester (2011-09-18 06:02:58)
Offline
Nice to see the progress here. As soon as there is a usable version of your project i will try it out.
Is it possible to install KDE and Quantum side by side?
Offline
Nice to see the progress here. As soon as there is a usable version of your project i will try it out.
Is it possible to install KDE and Quantum side by side?
You know what I haven't tested it on kde with the plasma desktop there shouldn't be a problem unless the kde plasma desktop forces itself
to the top layer, and it might. But if it does you can go a file a bug report with kde because it's not suppose to do that
it's considered bad form and plane out rude. I say that because I think someone mentioned that to me.
But on gnome and xfce and every window manager including kwin I have tested it works just fine.
You don't have to install it just build it with qmake and make and run it from its dir but be sure to read the README
file because you have to.....
Create $HOME ./config/chipara/desktop.conf
export QDESKTOP_CONFIG=$HOME/.config/chipara/desktop.conf
And Add
[window]
wallpaper=/home/steven/Picture/default.jpg
iconTheme=oxygen
iconSize=2
showIcons=1
layoutDirection=1
desktopSettings=/home/steven/Desktop/Quantum/QDesktopSettings/QDesktopSettings
the wallpaper= is the wallpaper you want to use to start with
and desktopSettings= is the path to the QDesktopSettings excutable
Its almost completely usable there are a few thing that need to be done but all .desktop file are executable
and almost all of the desktop menu is done. I need to work on things like opening dir and files with there
respected programs and I need to work on the desktop icon menu but QDesktop is getting real close.
If you give it a try and have any question fill free to ask
Last edited by zester (2011-09-18 08:24:37)
Offline
Hey. This looks pretty neat.
You should do a 10 minutes demo video of what you have so far and put it up on youtube. That way new people will be able to see why they should consider using it.
Offline
And perhaps you could provide a PKGBUILD? That would make more people try it, I guess. Are there any other plans other than providing the desktop?
If you can't sit by a cozy fire with your code in hand enjoying its simplicity and clarity, it needs more work. --Carlos Torres
Offline
A second vote for the PKGBUILD. I'm tempted to try and grab the source and compile it myself, but this would make life easier when it comes to updates.
"You can just deny pain… until infection leads to amputation. Then it’s really gone."
--Craig Benzine
Offline
A second vote for the PKGBUILD. I'm tempted to try and grab the source and compile it myself, but this would make life easier when it comes to updates.
I will work on it, the reason I haven't provided PKGBUILD files, is because it's not really ready for that. Some applications are seeing up to 10 updates a day. And I am still working out how I am going to do different things. And some applications need to be redesigned for performance reasons.
I was providing screenshots so you could see the progress.
Offline
It's looking like a great project so far though. Good job!
"You can just deny pain… until infection leads to amputation. Then it’s really gone."
--Craig Benzine
Offline
It has been pretty quiet around here.. How's the progress zester?
If you can't sit by a cozy fire with your code in hand enjoying its simplicity and clarity, it needs more work. --Carlos Torres
Offline
It has been pretty quiet around here.. How's the progress zester?
I am still here was just taking a short break to keep from getting burned out I will post some new stuff in a day or so.
Offline
Awesome!
If you can't sit by a cozy fire with your code in hand enjoying its simplicity and clarity, it needs more work. --Carlos Torres
Offline
I certainly don't want you getting burned out on this. This is one of the projects that I'm really excited about.
"You can just deny pain… until infection leads to amputation. Then it’s really gone."
--Craig Benzine
Offline
This is one of the projects that I'm really excited about.
Agreed - glad to know you're still around and working on this!
Offline
I will post some new stuff in a day or so.
zester, any update?
Offline