Back to index

nux  3.0.0
text_entry_focus.cpp
Go to the documentation of this file.
00001 /*
00002  * Copyright 2010 Inalogic Inc.
00003  *
00004  * This program is free software: you can redistribute it and/or modify it
00005  * under the terms of the GNU General Public License version 3, as published
00006  * by the  Free Software Foundation.
00007  *
00008  * This program is distributed in the hope that it will be useful, but
00009  * WITHOUT ANY WARRANTY; without even the implied warranties of
00010  * MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
00011  * PURPOSE.  See the GNU General Public License for more details.
00012  *
00013  * You should have received a copy of the GNU General Public License
00014  * version 3 along with this program.  If not, see
00015  * <http://www.gnu.org/licenses/>
00016  *
00017  * Authored by: Jay Taoko <jaytaoko@inalogic.com>
00018  *
00019  */
00020 
00021 #include "Nux/Nux.h"
00022 #include "Nux/VLayout.h"
00023 #include "Nux/HLayout.h"
00024 #include "Nux/WindowThread.h"
00025 #include "Nux/TextEntry.h"
00026  
00027 void ThreadWidgetInit(nux::NThread* thread, void* InitData)
00028 {
00029     nux::VLayout* MainVLayout = new nux::VLayout(NUX_TRACKER_LOCATION);
00030 
00031     nux::TextEntry* text_entry_0 = new nux::TextEntry(TEXT("0123456789 abcdefghijklmnopqrstuvwxyz"), NUX_TRACKER_LOCATION);
00032 
00033     nux::TextEntry* text_entry_1 = new nux::TextEntry(TEXT("0123456789 abcdefghijklmnopqrstuvwxyz"), NUX_TRACKER_LOCATION);
00034 
00035     nux::TextEntry* text_entry_2 = new nux::TextEntry(TEXT("0123456789 abcdefghijklmnopqrstuvwxyz"), NUX_TRACKER_LOCATION);
00036 
00037     text_entry_0->SetMaximumWidth(300);
00038     text_entry_0->SetMinimumHeight (20);
00039     text_entry_0->SetCompletion("test completion");
00040 
00041     text_entry_1->SetMaximumWidth(300);
00042     text_entry_1->SetMinimumHeight (20);
00043 
00044     text_entry_2->SetMaximumWidth(300);
00045     text_entry_2->SetMinimumHeight (20);
00046 
00047     MainVLayout->AddView(text_entry_0, 0, nux::eCenter, nux::eFull);
00048     MainVLayout->AddView(text_entry_1, 0, nux::eCenter, nux::eFull);
00049     MainVLayout->AddView(text_entry_2, 0, nux::eCenter, nux::eFull, 1.0, nux::NUX_LAYOUT_BEGIN);
00050 
00051     MainVLayout->SetVerticalInternalMargin(10);
00052 
00053     MainVLayout->SetContentDistribution(nux::eStackCenter);
00054     nux::GetWindowThread ()->SetLayout(MainVLayout);
00055     nux::ColorLayer background(nux::Color(0xFF4D4D4D));
00056     static_cast<nux::WindowThread*>(thread)->SetWindowBackgroundPaintLayer(&background);
00057 }
00058 
00059 int main(int argc, char **argv)
00060 {
00061     nux::NuxInitialize(0);
00062     nux::WindowThread* wt = nux::CreateGUIThread(TEXT("Text Entry"), 400, 300, 0, &ThreadWidgetInit, 0);
00063     wt->Run(NULL);
00064 
00065     delete wt;
00066     return 0;
00067 }