Sample GUI for LPC4088. Base code to begin dev
Dependencies: DMBasicGUI DMSupport
Fork of lpc4088_displaymodule_shipped_demo by
Diff: AppUSBStatus.h
- Revision:
- 0:b94e330c98ac
diff -r 000000000000 -r b94e330c98ac AppUSBStatus.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/AppUSBStatus.h Fri Mar 20 13:36:44 2015 +0000 @@ -0,0 +1,81 @@ +/* + * Copyright 2014 Embedded Artists AB + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef APP_USB_STATUS_H +#define APP_USB_STATUS_H + +#include "App.h" +#include "DMBoard.h" +#include "lpc_swim.h" +#include "ImageButton.h" +#include "Resource.h" + +/** + * An App example. Static display of information. + * + * The purpose of this example is to show some of the graphics primitives in + * the SWIM library. + */ +class AppUSBStatus : public App { +public: + + AppUSBStatus(); + virtual ~AppUSBStatus(); + + virtual bool setup(); + virtual void runToCompletion(); + virtual bool teardown(); + + enum Resources { + Resource_Ok_button, + }; + + /** Specifies the resource to use + * + * Adds a resource for a specific id. This allows the + * user program to select e.g. which image to use and + * if it should be loaded from a file or an array. + * + * @param id the identifier + * @param res the resource + */ + void addResource(Resources id, Resource* res); + +private: + enum Ids { + USBHost_MassStorage_Inserted, + USBHost_MassStorage_Ejected, + USBHost_Mouse_Inserted, + USBHost_Mouse_Ejected, + USBHost_Keyboard_Inserted, + USBHost_Keyboard_Ejected, + NumImages, + }; + Display* _disp; + SWIM_WINDOW_T* _win; + void* _fb; + Image::ImageData_t _images[NumImages]; + SWIM_WINDOW_T _imageWindows[NumImages/2]; + ImageButton* _btn; + Resource* _resOk; + + void draw(); + void updateStatus(Ids id); +}; + +#endif + +