2
* Copyright 2010 Canonical Ltd.
4
* This program is free software: you can redistribute it and/or modify it
5
* under the terms of the GNU General Public License version 3, as published
6
* by the Free Software Foundation.
8
* This program is distributed in the hope that it will be useful, but
9
* WITHOUT ANY WARRANTY; without even the implied warranties of
10
* MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
11
* PURPOSE. See the GNU General Public License for more details.
13
* You should have received a copy of the GNU General Public License
14
* version 3 along with this program. If not, see
15
* <http://www.gnu.org/licenses/>
17
* Authored by: Gordon Allott <gord.allott@canonical.com>
22
#include "Nux/VLayout.h"
23
#include "Nux/Button.h"
24
#include "Nux/TextureArea.h"
25
#include "Nux/WindowThread.h"
26
#include "NuxGraphics/GraphicsEngine.h"
29
#include "PreviewBasicButton.h"
30
#include "PreviewApplications.h"
31
#include "DashStyle.h"
39
static void InitWindowThread (nux::NThread* thread, void* InitData);
47
TestRunner::TestRunner ()
51
TestRunner::~TestRunner ()
55
void TestRunner::Init ()
57
unity::dash::Preview::Properties properties;
58
unity::dash::ApplicationPreview* application_preview = new unity::dash::ApplicationPreview (properties);
60
application_preview->name = "Shotwell";
61
application_preview->version = "Version 0.9.3";
62
application_preview->size = "Size 56 MB";
63
application_preview->license = "Open Source (GPL)";
64
application_preview->last_updated = "Last updated 11th Apr 2011";
65
application_preview->rating = 0.5;
66
application_preview->n_ratings = 17;
67
application_preview->description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam nec fringilla ligula. Mauris posuere tempor fermentum. Maecenas aliquet elementum orci, porta molestie mauris blandit nec. Fusce ac tellus eu elit porta placerat ut ut nulla. Sed viverra magna id nibh egestas sodales. Fusce ut massa leo, a varius massa. Vivamus venenatis pretium diam. Nam dictum eleifend pulvinar. Aenean consequat diam sed enim mollis non adipiscing odio commodo. Donec orci lorem, viverra in convallis eget, volutpat nec tellus. Nulla at lobortis odio. Pellentesque porta, ante id convallis tincidunt, tellus nunc feugiat massa, sit amet porta mauris turpis ac enim. Integer porttitor bibendum justo, ut posuere mi commodo non. Nullam volutpat eros vel magna congue non lobortis urna pulvinar. Vivamus quis ante leo. Fusce mauris tellus, tincidunt quis rutrum vitae, feugiat venenatis nulla. Sed quis lorem vitae augue luctus sodales. Proin egestas nibh quam. Nulla cursus erat arcu, et mollis tortor. Maecenas ut scelerisque leo.\n\nNulla varius, neque at laoreet sodales, mauris risus ultricies risus, at convallis neque purus sodales purus. Vestibulum non ligula sit amet dui suscipit egestas. Aliquam lobortis tellus nec est pretium non accumsan turpis bibendum. Nunc condimentum dolor urna. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Suspendisse eros ante, rutrum sed tincidunt id, tempor vel arcu. Nullam in dui leo. Mauris orci metus, convallis vel cursus eget, mattis ut erat. Praesent condimentum metus cursus nulla feugiat eleifend. Fusce mattis congue sapien quis sagittis. Phasellus volutpat condimentum mauris, a rutrum enim pretium id. Phasellus non laoreet est. Mauris et dictum leo. Nunc interdum lacinia elit posuere imperdiet. In hac habitasse platea dictumst. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Donec venenatis dolor et nisl faucibus vitae tristique erat vehicula. Proin vitae neque non magna tempus ultrices id fermentum lorem. Proin sodales mauris nisl.\n\nDuis tempus, dui quis viverra vehicula, massa tellus pulvinar libero, vitae varius tortor velit vel turpis. Aliquam ac massa lectus, ut ultrices turpis. Sed et mi nisl, id laoreet mi. Aenean et felis est. Sed ut libero ipsum, a tincidunt nibh. Integer viverra dictum urna, eget convallis est accumsan et. Praesent posuere orci vel nibh iaculis congue. Proin eget congue dolor. Aliquam mattis laoreet tortor, sit amet porttitor turpis fermentum at. Nulla iaculis dignissim laoreet. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Integer tincidunt tristique egestas. Phasellus ut leo nec neque fringilla vestibulum. Donec id facilisis elit.\n\nVivamus ut vehicula mi. Curabitur est velit, laoreet sodales ornare eget, semper sed felis. Pellentesque nisi velit, faucibus vitae auctor sed, lacinia id leo. Quisque mattis laoreet nisi ut facilisis. Nulla lacus ligula, dictum a malesuada eu, dictum vitae lacus. In a ante sodales dui semper vestibulum mattis non lectus. Sed ligula risus, porttitor eget ultricies ac, imperdiet at quam. Vivamus vulputate, sapien nec congue semper, velit augue bibendum purus, et sollicitudin velit tellus sed mauris. Praesent non purus id odio vehicula facilisis. Integer bibendum porta felis eget suscipit. Mauris elementum suscipit ante, at sagittis libero pharetra sed. Nulla non lectus diam. Vestibulum nisi mi, tincidunt quis convallis a, elementum et justo. Curabitur odio est, fringilla vel consectetur eget, placerat nec risus.\n\nDuis ac lectus enim. Donec interdum enim vulputate dui adipiscing iaculis. Duis sit amet consectetur sapien. Etiam ut leo sed lectus interdum vestibulum et vel mauris. Vestibulum vitae neque vel mi rhoncus condimentum ut vitae libero. Proin pulvinar pretium mi sit amet fermentum. Quisque consectetur felis ac libero molestie interdum. Aliquam erat volutpat. Proin venenatis est sed metus volutpat id egestas turpis congue. Nulla euismod massa euismod ante gravida porttitor. Aenean ultricies fermentum sem vehicula aliquam. Donec mollis augue id ligula sagittis et tempus eros euismod. Etiam euismod tempus velit, non varius purus eleifend sit amet. Fusce sed nunc vitae quam tempus porttitor vel a nibh. Suspendisse potenti. Praesent facilisis justo id est ullamcorper accumsan. Ut elementum, dolor ut commodo aliquam, sem libero elementum tellus, nec iaculis ipsum turpis et sem. ";
68
application_preview->icon_hint = "firefox.png";
69
application_preview->screenshot_icon_hint = "file:///usr/share/backgrounds/warty-final-ubuntu.png";
70
application_preview->primary_action_name = "Launch";
71
application_preview->primary_action_icon_hint = "";
72
application_preview->primary_action_uri = "/notreal/buthey/starwars/is/pretty/great/beep";
74
unity::dash::Preview::Ptr preview = unity::dash::Preview::Ptr(application_preview);
75
unity::PreviewApplications* preview_view = new unity::PreviewApplications (preview, NUX_TRACKER_LOCATION);
77
layout = new nux::VLayout(NUX_TRACKER_LOCATION);
79
layout->AddView (preview_view, 1, nux::MINOR_POSITION_CENTER, nux::MINOR_SIZE_FULL);
81
nux::GetWindowThread()->SetLayout (layout);
84
void TestRunner::InitWindowThread(nux::NThread* thread, void* InitData)
86
TestRunner *self = (TestRunner *) InitData;
91
ControlThread (nux::NThread* thread,
94
// sleep for 3 seconds
95
nux::SleepForMilliseconds (3000);
96
printf ("ControlThread successfully started\n");
100
int main(int argc, char **argv)
102
nux::SystemThread* st = NULL;
103
nux::WindowThread* wt = NULL;
105
// no real tests right now, just make sure we don't get any criticals and such
106
// waiting on nice perceptual diff support before we can build real tests
111
gtk_init (&argc, &argv);
113
nux::NuxInitialize(0);
115
// The instances for the pseudo-singletons.
116
unity::dash::Style dash_style;
118
TestRunner *test_runner = new TestRunner ();
119
wt = nux::CreateGUIThread(TEXT("Unity Places Tile Test"),
122
&TestRunner::InitWindowThread,
125
st = nux::CreateSystemThread (NULL, ControlThread, wt);