The Napp Drawer module extends the Appcelerator Titanium Mobile framework.

Related tags

UI NappDrawer
Overview

Titanium Napp Drawer Module gitTio NPM

Cross Platform Example (iOS / Android)

Description

The Napp Drawer module extends the Appcelerator Titanium Mobile framework. The module is licensed under the MIT license.

There are some minor platform parity differences in this module. iOS version uses Windows whereas Android uses views. The android version still uses the same properties even though its views rather than windows, e.g. isAnyWindowOpen() is the exact same method call on each platform.

Quick Start

Get it

Download the latest distribution ZIP-file and consult the Titanium Documentation on how install it

Or simply use the gitTio CLI gitTio

$ gittio install dk.napp.drawer

Or NPM NPM

$ npm i --save ti-module-dk.napp.drawer

Community Driven

I encourage everyone to send Pull Requests - keeping this module flying with new features.

Author

Mads Møller
web: http://www.napp.dk
email: [email protected]
twitter: @nappdev

Modified by

Marc Bender

License

Copyright (c) 2010-2013 Mads Møller

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
You might also like...
Lightweight framework for Unsplash in Swift
Lightweight framework for Unsplash in Swift

Lightweight framework for Unsplash in Swift

A framework which helps you attach observers to `UIView`s to get updates on its frame changes

FrameObserver is a framework that lets you attach observers to any UIView subclass and get notified when its size changes. It doesn't use any Method S

List tree data souce to display hierachical data structures in lists-like way. It's UI agnostic, just like view-model and doesn't depend on UI framework
List tree data souce to display hierachical data structures in lists-like way. It's UI agnostic, just like view-model and doesn't depend on UI framework

SwiftListTreeDataSource List tree data souce to display hierachical data structures in lists-like way. It's UI agnostic, just like view-model, so can

Swift extensions for UIKit.framework.

XUIKit Example To run the example project, clone the repo, and run pod install from the Example directory first. Requirements Installation XUIKit is a

📹 Framework to Play a Video in the Background of any UIView
📹 Framework to Play a Video in the Background of any UIView

SwiftVideoBackground is an easy to use Swift framework that provides the ability to play a video on any UIView. This provides a beautiful UI for login

Flexible UI Framework Designed for Swift

Overlay Overlay is a very flexible UI framework designed for Swift. Note: Overlay is still under development and many things are subject to change. Fe

Shadow - Syntactic sugar for shadows in the SwiftUI framework

Shadow Syntactic sugar for shadows in the SwiftUI framework. import SwiftUI impo

SwiftCrossUI - A cross-platform SwiftUI-like UI framework built on SwiftGtk.

SwiftCrossUI A SwiftUI-like framework for creating cross-platform apps in Swift. It uses SwiftGtk as its backend. This package is still quite a work-i

UI framework that allows developers to integrate an amazing selection interface into their applications

UI framework that allows developers to integrate an amazing selection interface into their applications! Each bubble has a set of parameters, which could be configured individually.

Comments
  • drawer.setCenterWindow is not a function

    drawer.setCenterWindow is not a function

    Titanium Command-Line Interface, CLI version 5.4.1, Titanium SDK version 10.1.1.GA on a M1 2020 Monterey 12.2.1

    Used this module a lot in the past, now having the same error when using the example app.js (module version 2.2.7).

    As Ti.UI.iOS.createNavigationWindow has been removed in 10.0.0 I changed the example app.js to Ti.UI.createNavigationWindow

    Any suggestions? Thank you :)

    [ERROR] TypeError: drawer.setCenterWindow is not a function. (In 'drawer.setCenterWindow(newWin)', 'drawer.setCenterWindow' is undefined)
    [ERROR]     at  ()
    [ERROR]   
    [ERROR]     Foundation 0x000000010f8238d3 _NSDescriptionWithLocaleFunc + 82
    [ERROR]     CoreFoundation 0x0000000115e8dd1a __CFStringAppendFormatCore + 12108
    [ERROR]     CoreFoundation 0x0000000115e8f793 _CFStringCreateWithFormatAndArgumentsReturningMetadata + 160
    [ERROR]     CoreFoundation 0x0000000115e8f6ed _CFStringCreateWithFormatAndArgumentsAux2 + 21
    [ERROR]     TitaniumKit 0x000000010e6adf1b TiLogMessage + 175
    [ERROR]     TitaniumKit 0x000000010e6eb097 -[TiExceptionHandler reportScriptError:] + 74
    [ERROR]     TitaniumKit 0x000000010e6d831b TiBindingEventProcess + 725
    [ERROR]     TitaniumKit 0x000000010e6f92e5 -[KrollContext invoke:] + 109
    [ERROR]     TitaniumKit 0x000000010e6f9358 -[KrollContext enqueue:] + 93
    [ERROR]     TitaniumKit 0x000000010e7007a6 TiBindingRunLoopEnqueue + 77
    [ERROR]     TitaniumKit 0x000000010e6d839b TiBindingEventProcess + 853
    [ERROR]     TitaniumKit 0x000000010e6f92e5 -[KrollContext invoke:] + 109
    [ERROR]     TitaniumKit 0x000000010e6f9358 -[KrollContext enqueue:] + 93
    [ERROR]     TitaniumKit 0x000000010e7007a6 TiBindingRunLoopEnqueue + 77
    [ERROR]     TitaniumKit 0x000000010e6d839b TiBindingEventProcess + 853
    [ERROR]     TitaniumKit 0x000000010e6f92e5 -[KrollContext invoke:] + 109
    [ERROR]     TitaniumKit 0x000000010e6f9358 -[KrollContext enqueue:] + 93
    [ERROR]     TitaniumKit 0x000000010e7007a6 TiBindingRunLoopEnqueue + 77
    [ERROR]     TitaniumKit 0x000000010e6fee81 -[TiProxy fireEvent:withObject:propagate:reportSuccess:errorCode:message:] + 187
    [ERROR]     TitaniumKit 0x000000010e6dfeeb -[TiViewProxy fireEvent:withObject:propagate:reportSuccess:errorCode:message:] + 224
    
    opened by craigjones-rbh 1
  • fix: handle navigationwindows as left and right properties

    fix: handle navigationwindows as left and right properties

    This PR fixes usage of the NavigationWindows in the leftWindow/rightWindow properties which appears to have broke since SDK 10 due to changes in the SDK. Error and test code below

    [INFO]  *** Terminating app due to uncaught exception 'UIViewControllerHierarchyInconsistency', reason: 'child view controller:<UINavigationController: 0x7fb88902e400> should have parent view controller:<TiViewController: 0x7fb88670be90> but actual parent is:<TiRootViewController: 0x7fb886856400>'
    
    
    const NappDrawerModule = require('dk.napp.drawer');
    
    const mainWindow = Ti.UI.createWindow({ title: "Main View", backgroundColor: 'pink' });
    const detailWindow = Ti.UI.createWindow({ title: "Detail View" });
    detailWindow.add(Ti.UI.createLabel({ text: "Hello World!" }));
    
    const win = Ti.UI.iOS.createSplitWindow({
    	detailView: Ti.UI.createNavigationWindow({ window: detailWindow }),
    	masterView: Ti.UI.createNavigationWindow({ window: mainWindow }),
    	backgroundColor: "white",
    	showMasterInPortrait: true,
    });
    
    const drawer = NappDrawerModule.createDrawer({
    	leftWindow: Ti.UI.createWindow(),
    	centerWindow: win,
    	rightWindow: Ti.UI.createNavigationWindow({window: Ti.UI.createWindow(), backgroundColor: "red"}),
    
    });
    
    drawer.open();
    
    opened by ewanharris 1
Releases(2.2.7)
Owner
null
SwiftUI-Drawer A bottom-up drawer view.

SwiftUI-Drawer A bottom-up drawer view.

Perimeter AI Inc. 9 Dec 29, 2022
🐝 Super ultra drawer view

UltraDrawerView let headerView = HeaderView() headerView.translatesAutoresizingMaskIntoConstraints = false headerView.heightAnchor.constraint(equalToC

Ilya Lobanov 205 Dec 14, 2022
A Swift material design UI module which paints over the parent view when the switch is on.

:octocat: ?? RAMPaperSwitch is a Swift material design UI module which paints over the parent view when the switch is turned on. iOS library by @Ramotion

Ramotion 2.9k Dec 29, 2022
Protocol oriented, type safe, scalable design system foundation swift framework for iOS.

Doric: Design System Foundation Design System foundation written in Swift. Protocol oriented, type safe, scalable framework for iOS. Features Requirem

Jay 93 Dec 6, 2022
A child view controller framework that makes setting up your parent controllers as easy as pie.

Description Family is a child view controller framework that makes setting up your parent controllers as easy as pie. With a simple yet powerful publi

Christoffer Winterkvist 246 Dec 28, 2022
Material, a UI/UX framework for creating beautiful iOS applications

Material Welcome to Material, a UI/UX framework for creating beautiful applications. Material's animation system has been completely reworked to take

Cosmicmind 12k Jan 2, 2023
Neumorphism framework for UIKit.

NeumorphismKit is neumorphism framework for UIKit. Requirements iOS 12.0+ Swift 5.1+ Versions NeumorphismKit version Xcode version 1.0.0 Xcode 11+ 1.1

y-okudera 42 Dec 13, 2022
Full configurable spreadsheet view user interfaces for iOS applications. With this framework, you can easily create complex layouts like schedule, gantt chart or timetable as if you are using Excel.

kishikawakatsumi/SpreadsheetView has moved! It is being actively maintained at bannzai/SpreadsheetView. This fork was created when the project was mov

Kishikawa Katsumi 34 Sep 26, 2022
UIPheonix is a super easy, flexible, dynamic and highly scalable UI framework + concept for building reusable component/control-driven apps for macOS, iOS and tvOS

UIPheonix is a super easy, flexible, dynamic and highly scalable UI framework + concept for building reusable component/control-driven apps for macOS, iOS and tvOS

Mohsan Khan 29 Sep 9, 2022