//
//     Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
//     Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
//     may also apply


//                 Generated by preSip
//            module tdecore  version KDE 3.5.3


// This software is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License as
// published by the Free Software Foundation; either version 2 of
// the License, or (at your option) any later version.
//
// This software 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 library; see the file COPYING.
// If not, write to the Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.


class NETPoint
{
%TypeHeaderCode
#include <netwm_def.h>
%End


public:
                         NETPoint ();
    int                  x;
    int                  y;

};  // class NETPoint


class NETSize
{
%TypeHeaderCode
#include <netwm_def.h>
%End


public:
                         NETSize ();
    int                  width;
    int                  height;

};  // class NETSize


class NETRect
{
%TypeHeaderCode
#include <netwm_def.h>
%End


public:
    NETPoint             pos;
    NETSize              size;

};  // class NETRect


class NETIcon
{
%TypeHeaderCode
#include <netwm_def.h>
%End


public:
                         NETIcon ();
    NETSize              size;
//ig     uchar*               data;

};  // class NETIcon


%If ( KDE_3_3_0 -  )

class NETExtendedStrut
{
%TypeHeaderCode
#include <netwm_def.h>
%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;

};  // class NETExtendedStrut

%End


class NETStrut
{
%TypeHeaderCode
#include <netwm_def.h>
%End


public:
                         NETStrut ();
    int                  left;
    int                  right;
    int                  top;
    int                  bottom;

};  // class NETStrut


class NET
{
%TypeHeaderCode
#include <netwm_def.h>
%End


public:

    enum Role
    {
        Client, 
        WindowManager
    };


%If ( KDE_3_2_0 -  )

    enum WindowType
    {
        Unknown, 
        Normal, 
        Desktop, 
        Dock, 
        Toolbar, 
        Menu, 
        Dialog, 
        Override, 
        TopMenu, 
        Tool, 
        Utility, 
        Splash
    };


    enum WindowTypeMask
    {
        NormalMask, 
        DesktopMask, 
        DockMask, 
        ToolbarMask, 
        MenuMask, 
        DialogMask, 
        OverrideMask, 
        TopMenuMask, 
        UtilityMask, 
        SplashMask
    };


%If ( KDE_3_3_1 -  )

    enum 
    {
        AllTypesMask
    };

%End


%If ( KDE_3_3_0 -  )
    static bool          typeMatchesMask (NET::WindowType, ulong);
%End


    enum State
    {
        Modal, 
        Sticky, 
        MaxVert, 
        MaxHoriz, 
        Max, 
        Shaded, 
        SkipTaskbar, 
        KeepAbove, 
        StaysOnTop, 
        SkipPager, 
        Hidden, 
        FullScreen, 
        KeepBelow, 
        DemandsAttention
    };


%If ( KDE_3_5_1 -  )

    enum Direction
    {
        TopLeft, 
        Top, 
        TopRight, 
        Right, 
        BottomRight, 
        Bottom, 
        BottomLeft, 
        Left, 
        Move, 
        KeyboardSize, 
        KeyboardMove, 
        MoveResizeCancel
    };

%End

%End


    enum MappingState
    {
        Visible, 
        Withdrawn, 
        Iconic
    };


%If ( KDE_3_2_0 -  )

    enum Action
    {
        ActionMove, 
        ActionResize, 
        ActionMinimize, 
        ActionShade, 
        ActionStick, 
        ActionMaxVert, 
        ActionMaxHoriz, 
        ActionMax, 
        ActionFullScreen, 
        ActionChangeDesktop, 
        ActionClose
    };


%If ( KDE_3_5_0 -  )

    enum Property
    {
        Supported, 
        ClientList, 
        ClientListStacking, 
        NumberOfDesktops, 
        DesktopGeometry, 
        DesktopViewport, 
        CurrentDesktop, 
        DesktopNames, 
        ActiveWindow, 
        WorkArea, 
        SupportingWMCheck, 
        VirtualRoots, 
        KDESystemTrayWindows, 
        CloseWindow, 
        WMMoveResize, 
        WMName, 
        WMVisibleName, 
        WMDesktop, 
        WMWindowType, 
        WMState, 
        WMStrut, 
        WMIconGeometry, 
        WMIcon, 
        WMPid, 
        WMHandledIcons, 
        WMPing, 
        WMKDESystemTrayWinFor, 
        XAWMState, 
        WMFrameExtents, 
        WMKDEFrameStrut, 
        WMIconName, 
        WMVisibleIconName, 
        WMGeometry
    };

%End


    enum 
    {
        OnAllDesktops
    };


    enum RequestSource
    {
        FromUnknown, 
        FromApplication, 
        FromTool
    };


%If ( KDE_3_5_3 -  )
    static int           timestampCompare (ulong, ulong);
    static int           timestampDiff (ulong, ulong);
%End

%End


public:

%If ( KDE_3_2_0 - KDE_3_5_1 )

    enum Direction
    {
        TopLeft, 
        Top, 
        TopRight, 
        Right, 
        BottomRight, 
        Bottom, 
        BottomLeft, 
        Left, 
        Move, 
        KeyboardSize, 
        KeyboardMove
    };

%End


public:

%If (  - KDE_3_5_0 )

    enum Property
    {
        Supported, 
        ClientList, 
        ClientListStacking, 
        NumberOfDesktops, 
        DesktopGeometry, 
        DesktopViewport, 
        CurrentDesktop, 
        DesktopNames, 
        ActiveWindow, 
        WorkArea, 
        SupportingWMCheck, 
        VirtualRoots, 
        KDESystemTrayWindows, 
        CloseWindow, 
        WMMoveResize, 
        WMName, 
        WMVisibleName, 
        WMDesktop, 
        WMWindowType, 
        WMState, 
        WMStrut, 
        WMIconGeometry, 
        WMIcon, 
        WMPid, 
        WMHandledIcons, 
        WMPing, 
        WMKDESystemTrayWinFor, 
        XAWMState, 
        WMKDEFrameStrut, 
        WMIconName, 
        WMVisibleIconName, 
        WMGeometry
    };

%End


%If ( KDE_3_3_1 -  )

    enum Property2
    {
        WM2UserTime, 
        WM2StartupId, 
        WM2TransientFor, 
        WM2GroupLeader, 
        WM2AllowedActions, 
        WM2RestackWindow, 
        WM2MoveResizeWindow, 
        WM2ExtendedStrut, 
        WM2TakeActivity, 
        WM2KDETemporaryRules, 
        WM2WindowClass, 
        WM2WindowRole, 
        WM2ClientMachine
    };

%End


public:

%If ( KDE_3_3_0 - KDE_3_3_1 )

    enum 
    {
        AllTypesMask
    };


    enum Property2
    {
        WM2UserTime, 
        WM2StartupId, 
        WM2TransientFor, 
        WM2GroupLeader, 
        WM2AllowedActions, 
        WM2RestackWindow, 
        WM2MoveResizeWindow, 
        WM2ExtendedStrut, 
        WM2TakeActivity, 
        WM2KDETemporaryRules
    };

%End


public:

%If ( KDE_3_2_0 - KDE_3_3_0 )

    enum Property2
    {
        WM2UserTime, 
        WM2StartupId, 
        WM2TransientFor, 
        WM2GroupLeader, 
        WM2AllowedActions, 
        WM2RestackWindow, 
        WM2MoveResizeWindow
    };

%End


public:

%If ( KDE_3_1_0 - KDE_3_2_0 )

    enum WindowType
    {
        Unknown, 
        Normal, 
        Desktop, 
        Dock, 
        Toolbar, 
        Menu, 
        Dialog, 
        Override, 
        TopMenu, 
        Tool
    };

%End


%If (  - KDE_3_2_0 )

    enum State
    {
        Modal, 
        Sticky, 
        MaxVert, 
        MaxHoriz, 
        Max, 
        Shaded, 
        SkipTaskbar, 
        StaysOnTop, 
        SkipPager
    };


    enum Direction
    {
        TopLeft, 
        Top, 
        TopRight, 
        Right, 
        BottomRight, 
        Bottom, 
        BottomLeft, 
        Left, 
        Move
    };

%End


public:

%If (  - KDE_3_1_0 )

    enum WindowType
    {
        Unknown, 
        Normal, 
        Desktop, 
        Dock, 
        Tool, 
        Menu, 
        Dialog, 
        Override, 
        Toolbar
    };

%End


};  // class NET

