// // Copyright 2008 Jim Bublitz // Earlier copyrights 1998 - 2007 Jim Bublitz also apply // Generated by twine // This file is part of PyKDE4. // PyKDE4 is free software; you can redistribute it and/or modify // it under the terms of the GNU Lesser General Public License as // published by the Free Software Foundation; either version 2.1 of // the License, or (at your option) any later version. // PyKDE4 is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // You should have received a copy of the GNU General Public License // along with this program. If not, see . class NETPoint { %TypeHeaderCode #include %End public: NETPoint (); int x; int y; }; // NETPoint class NETSize { %TypeHeaderCode #include %End public: NETSize (); int width; int height; }; // NETSize class NETRect { %TypeHeaderCode #include %End public: NETPoint pos; NETSize size; }; // NETRect class NETIcon { %TypeHeaderCode #include %End public: NETIcon (); NETSize size; unsigned char* data; }; // NETIcon class NETExtendedStrut { %TypeHeaderCode #include %End public: NETExtendedStrut (); int left_width; int left_start; int left_end; int right_width; int right_start; int right_end; int top_width; int top_start; int top_end; int bottom_width; int bottom_start; int bottom_end; }; // NETExtendedStrut class NETStrut { %TypeHeaderCode #include %End public: NETStrut (); int left; int right; int top; int bottom; }; // NETStrut class NETFullscreenMonitors { %TypeHeaderCode #include %End public: NETFullscreenMonitors (); int top; int bottom; int left; int right; bool isSet () const; }; // NETFullscreenMonitors class NET { %TypeHeaderCode #include %End public: enum Role { Client, WindowManager }; enum WindowType { Unknown, Normal, Desktop, Dock, Toolbar, Menu, Dialog, TopMenu, Utility, Splash, DropdownMenu, PopupMenu, Tooltip, Notification, ComboBox, DNDIcon }; enum WindowTypeMask { NormalMask, DesktopMask, DockMask, ToolbarMask, MenuMask, DialogMask, TopMenuMask, UtilityMask, SplashMask, DropdownMenuMask, PopupMenuMask, TooltipMask, NotificationMask, ComboBoxMask, DNDIconMask, AllTypesMask }; static bool typeMatchesMask (NET::WindowType type, unsigned long mask); enum State { Modal, Sticky, MaxVert, MaxHoriz, Max, Shaded, SkipTaskbar, KeepAbove, StaysOnTop, SkipPager, Hidden, FullScreen, KeepBelow, DemandsAttention }; enum Direction { TopLeft, Top, TopRight, Right, BottomRight, Bottom, BottomLeft, Left, Move, KeyboardSize, KeyboardMove, MoveResizeCancel }; enum MappingState { Visible, Withdrawn, Iconic }; enum Action { ActionMove, ActionResize, ActionMinimize, ActionShade, ActionStick, ActionMaxVert, ActionMaxHoriz, ActionMax, ActionFullScreen, ActionChangeDesktop, ActionClose }; enum Property { Supported, ClientList, ClientListStacking, NumberOfDesktops, DesktopGeometry, DesktopViewport, CurrentDesktop, DesktopNames, ActiveWindow, WorkArea, SupportingWMCheck, VirtualRoots, CloseWindow, WMMoveResize, WMName, WMVisibleName, WMDesktop, WMWindowType, WMState, WMStrut, WMIconGeometry, WMIcon, WMPid, WMHandledIcons, WMPing, XAWMState, WMFrameExtents, WMIconName, WMVisibleIconName, WMGeometry }; enum Property2 { WM2UserTime, WM2StartupId, WM2TransientFor, WM2GroupLeader, WM2AllowedActions, WM2RestackWindow, WM2MoveResizeWindow, WM2ExtendedStrut, WM2TakeActivity, WM2KDETemporaryRules, WM2WindowClass, WM2WindowRole, WM2ClientMachine, WM2ShowingDesktop, WM2Opacity, WM2DesktopLayout, WM2FullPlacement, WM2FullscreenMonitors, WM2FrameOverlap, WM2BlockCompositing, WM2KDEShadow }; enum { OnAllDesktops }; enum RequestSource { FromUnknown, FromApplication, FromTool }; enum Orientation { OrientationHorizontal, OrientationVertical }; enum DesktopLayoutCorner { DesktopLayoutCornerTopLeft, DesktopLayoutCornerTopRight, DesktopLayoutCornerBottomLeft, DesktopLayoutCornerBottomRight }; static int timestampCompare (unsigned long time1, unsigned long time2); static int timestampDiff (unsigned long time1, unsigned long time2); }; // NET