Hot answers tagged

13

Just desing your interface in Qt-Designer and convert it to python file executing pyuic4. Eg: pyuic4 editorFrame.ui -o editorFrame.py then you can import it from your main class, in this case i'm using a QMainWindow: import sys from PyQt4 import QtGui from editorFrame import Ui_MainWindow class Editor(QtGui.QMainWindow): def __init__(self): ...


13

This isn't something that QML supports, the typical answer is to write a C++ plugin to handle that kind of thing. However, the SDK team is planning out various extensions to provide to QML app developers, and this may be something that they implement in a generic plugin that you can use.


13

You can use QChart.js - QML bindings for Charts.js (a simple HTML5 Charts javascript library using the canvas element) I forked the project here to support resize events (for a desktop use). I basically need to reset the canvas context to allow resize events to properly redraw the surface with an updated window size (See ...


10

Update: For 14.04 see the much simplified answer by int_ua. Original Text: At http://talk.maemo.org/showthread.php?t=87580 there is a basic overview of how to add the extension to QML. I decided to give it a shot using the ubuntu-sdk instead, which is slightly different. I'll document below. For this project I selected Ubuntu Touch/Simple UI with C++ ...


8

With the release of Qt Creator 2.8 things are changing. It now natively supports Python for code editing and there are few Python-based features. From Qt Creator 2.8 release announcement: An editor specific for Python was added, with highlighting and indentation, and a Python class wizard


8

Yes, Qt-Creator is a C++ IDE, with little support for other languages but since version 2.8.0 a quite basic python support has been added. That said you can use Qt-Designer (the form building tool), Qt-Translator (the translate tool), etc... easily with python. There are two Qt-Python bindings right now, the GPL/Commercial dual licensed PyQt, and the LGPL ...


8

Well, Qt is owned by Digia, not related to Ubuntu/Canonical. Qt itself is licensed under the GNU Lesser General Public License (LGPL) version 2.1. This allows you to create and redistribute your closed source apps very well, as long as you're dynamically linking to Qt, or adhere to the limitations of statically linking. See also these Q&A on SO: Use ...


8

Problem solved, the answer is to use QtMultimedia 5.0, which now provides the Audio element. http://qt-project.org/doc/qt-5.0/qtmultimedia/qml-qtmultimedia5-audio.html


8

A convenient way for developers to do app testing is by starting them through adb. To make that convenient we are providing a cli tool, called ubuntu-app-launch. So create a remote connection with phablet-shell and start your applications using their desktop filename: ubuntu-app-launch com.ubuntu.calculator_calculator_1.3.316 ubuntu-app-launch ...


7

These instructions were tested on Ubuntu 12.04, Ubuntu 12.10 both 32-bit and 64-bit. First off we need to install some dependencies. Install these even if you already have Qt5 installed: sudo apt-get install build-essential libgtk2.0-dev libgl1-mesa-dev If you haven't already, download and install the QtSDK from http://qt-project.org/downloads. For ...


7

There will be; we're working on it. I plan to have the QML U1DB declarative API published soon. In the meantime, until that arrives, you may find this code interesting; it is a simple notes app, but written with QML and using U1DB. This U1DB QML addition follows the declarative QML U1DB API I mentioned above, but it's a Python-based prototype of that API. ...


7

gu is short for grid unit. From the user interface manual: Measurement Units A new measurement unit is defined called the grid unit, abbreviated gu. 1 grid unit translates to a given number of pixels depending on the type of screen that the user interface is displayed on. For example, on a laptop computer 1 grid unit will typically translate to 8 ...


6

If there is no QML module that can help you accessing IRC servers, you will probably need to write a QML plugin in C++ that does that work as a backend. You can then use QML to implement the UI frontend.


6

You can us the SQLite offline storage API directly from Qml using Javascript: import QtQuick.LocalStorage 2.0 If you want in-depth examples, I'd suggest looking at the source of some of the Ubuntu Touch Core-Apps. I know that at least the weather, clock, and RSS reader apps all use this. For now though, here's a simple example: import QtQuick.LocalStorage ...


6

The i18n portion is the component name, and the tr() function is the function to translate a string, in the Ubuntu SDK, with QML. This method of translation support uses gettext, and not the built-in localization features of Qt/QML, which are not compatible with gettext.


6

The Ubuntu SDK comes with its own styled TextField element. On dark background you can use the default Qt version by importing QtQuick.Controls (14.04 only). It will always render a white background but can also be styled with TextFieldStyle: import QtQuick 2.0 import Ubuntu.Components 0.1 import QtQuick.Controls 1.1 import QtQuick.Controls.Styles 1.1 ...


6

The following code should do what you need by putting the Image into a MouseArea component: import QtQuick 2.0 MouseArea { width: my_background.width height: my_background.height Image { id: my_background source: "background.png" } onClicked: my_background.source = "background.png" }


6

Try: text: text ? text : "default text" "undefined" is just a string representation of a reference not referencing anything, just like None, or NULL in other languages. === is strict comparison operator, you might want to read this thread: http://stackoverflow.com/questions/523643/difference-between-and-in-javascript


6

Logs for your application can be found in the ~/.cache/upstart/ folder on your device. I'd recommend to open/cat them using a remote connection (with phablet-shell)


6

You can also install the LogViewer app from the store to see the logs with a graphical interface. The application provides the following features, Graphical interface for viewing logs Exporting logs to pastebin


6

I'm no expert on JSONListModel so I may be mistaken, but it seems to be expecting to iterate over a list of Objects. What you get from rad.io is a list of strings, which seems to be causing your problems. But since you don't need to do any fancy processing of the result, it's easy to roll this by hand. What you want to do is parse the response into a list ...


5

I'm afraid that adding tabs dynamically it is currently not possible The SDK team tell me that this is a limitation of the VisualItemModel type (which the the Tabs component uses), as it does not allow adding children dynamically. There is an open bug to keep track of this issue.


5

There is already a bug assigned. See here: https://bugs.launchpad.net/ubuntu-ui-toolkit/+bug/1158246 The ui toolkit is still under heavy development, the bug is confirmed and assigned to the tutorials author David Planella.


5

We've now reviewed the content on the App developers site so that it is clearly stated that the focus and the recommended way to write Ubuntu apps is the Ubuntu SDK. While Quickly will still be available in the archives, and you will still be able to write Python + GTK applications with it, the only supported and recommended technology to develop ...


5

Generally speaking there is no way to use gettext translation in QT because the library uses an internal translation mechanism (Qtranslate and .ts files) as stated here QTBUG-2404. However, there is a viable alternative. Shipping with QT there is a toolkit called lconvert that can be used to convert .ts files to .po and vice versa. So you can extract all ...


5

Ubuntu 14.04 The concept of QProcess Launcher type is now working without problems in Trusty with ubuntu-sdk-team PPA. Just create QML Extension Library + Tabbed UI project (don't use hyphens in project name yet), replace contents of mytype.h #ifndef LAUNCHER_H #define LAUNCHER_H #include <QObject> #include <QProcess> class Launcher : ...


5

Apparently a drop needs to be generated explicitly by calling the drop() method on the Drag object Try adding this line inside of the MouseArea, just above drag.target: parent onReleased: parent.Drag.drop()


5

No. You can also use Java, Python, C, Javascript, QML, Vala, and C#, and probably other launguages too. Source of image


5

Changing aspects of the layout depending on the size of the window can be accomplished in a number of ways. At the most basic level, you can just set properties to different values based on the dimensions. Here is a minimal example that draws a grey square that turns orange if you make the window bigger: Run with qmlscene path/to/file.qml import QtQuick ...


5

Here's a quick example of how to display the contents of a folder using a FolderListModel: import QtQuick 2.0 import Qt.labs.folderlistmodel 1.0 import Ubuntu.Components 0.1 import Ubuntu.Components.ListItems 0.1 as ListItem MainView { id: root width: units.gu(50) height: units.gu(75) Page { id: home visible: true ...



Only top voted, non community-wiki answers of a minimum length are eligible